// csrf-token.js
// Copyright (C) 2022 DTP Technologies, LLC
// License: Apache-2.0

'use strict';

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const CsrfTokenSchema = new Schema({
  created: { type: Date, required: true, default: Date.now, index: -1, expires: '7d' },
  expires: { type: Date, required: true, default: Date.now, index: -1 },
  claimed: { type: Date },
  token: { type: String, index: 1 },
  user: { type: Schema.ObjectId, ref: 'User' },
  ip: { type: String, required: true },
});

module.exports = mongoose.model('CsrfToken', CsrfTokenSchema);