Files
zkl-ccir/models/index.js
2024-10-06 15:33:45 +03:00

30 lines
957 B
JavaScript

const mongoose = require("mongoose");
const NonceSchema = new mongoose.Schema({
walletAddress: String,
nonce: String,
networkType: String,
createdAt: { type: Date, expires: 300, default: Date.now },
});
const AuthTokenSchema = new mongoose.Schema({
walletAddress: String,
authToken: String,
networkType: String,
createdAt: { type: Date, expires: 3600, default: Date.now },
});
const UserSchema = new mongoose.Schema({
walletAddress: { type: String, required: true },
networkType: { type: String, required: true },
profileName: { type: String, required: true, default: "Anonymous" },
publicKey: { type: String, required: true, unique: true },
});
const Nonces = mongoose.model("Nonce", NonceSchema);
const AuthTokens = mongoose.model("AuthToken", AuthTokenSchema);
const Users = mongoose.model("User", UserSchema);
Users.collection.createIndex({ publicKey: 1 }, { unique: true });
module.exports = { Nonces, AuthTokens, Users };