37 lines
1.0 KiB
TypeScript
37 lines
1.0 KiB
TypeScript
import DB from "../database";
|
|
import { ModelDataBase } from "@hibas123/safe_mongo/lib/model";
|
|
import { ObjectID } from "mongodb";
|
|
|
|
export interface ILoginToken extends ModelDataBase {
|
|
token: string;
|
|
special: boolean;
|
|
user: ObjectID;
|
|
validTill: Date;
|
|
valid: boolean;
|
|
validated: boolean;
|
|
}
|
|
const LoginToken = DB.addModel<ILoginToken>({
|
|
name: "login_token",
|
|
versions: [{
|
|
migration: () => { },
|
|
schema: {
|
|
token: { type: String },
|
|
special: { type: Boolean, default: () => false },
|
|
user: { type: ObjectID },
|
|
validTill: { type: Date },
|
|
valid: { type: Boolean }
|
|
}
|
|
}, {
|
|
migration: (doc: ILoginToken) => { doc.validated = true; },
|
|
schema: {
|
|
token: { type: String },
|
|
special: { type: Boolean, default: () => false },
|
|
user: { type: ObjectID },
|
|
validTill: { type: Date },
|
|
valid: { type: Boolean },
|
|
validated: { type: Boolean, default: false }
|
|
}
|
|
}]
|
|
})
|
|
|
|
export default LoginToken; |