Thomas R Underwood II
01/21/2024, 3:13 PMimport { Inject, Injectable } from '@nestjs/common';
import supertokens from "supertokens-node";
import Session from 'supertokens-node/recipe/session';
import Passwordless from 'supertokens-node/recipe/passwordless';
import Dashboard from "supertokens-node/recipe/dashboard";
import { ConfigInjectionToken, AuthModuleConfig } from "../config.interface";
import UserRoles from "supertokens-node/recipe/userroles"
@Injectable()
export class SupertokensService {
constructor(@Inject(ConfigInjectionToken) private config: AuthModuleConfig) {
supertokens.init({
appInfo: config.appInfo,
supertokens: {
connectionURI: config.connectionURI,
apiKey: config.apiKey,
},
recipeList: [
Dashboard.init({
admins: [ ],
}),
UserRoles.init(),
Passwordless.init({
flowType: "USER_INPUT_CODE",
contactMethod: "EMAIL_OR_PHONE"
}),
Session.init(),
],
});
}
}