30 lines
957 B
JavaScript
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 };
|