const AUTH_PROVIDERS = Object.freeze({ LOCAL: 'local', GOOGLE: 'google', MICROSOFT: 'microsoft', }); const BCRYPT_SALT_ROUNDS = 12; const JWT_EXPIRES_IN = '15m'; const JWT_EXPIRES_IN_MS = 15 * 60 * 1000; const AUTH_COOKIE_NAME = 'school_chain_session'; const AUTH_REFRESH_COOKIE_NAME = 'school_chain_refresh'; const AUTH_COOKIE_PATH = '/'; const REFRESH_TOKEN_EXPIRES_IN_MS = 14 * 24 * 60 * 60 * 1000; const REFRESH_TOKEN_BYTES = 64; const REFRESH_TOKEN_HASH_ALGORITHM = 'sha256'; const AUTH_COOKIE_SAME_SITE_VALUES = Object.freeze([ 'strict', 'lax', 'none', ]); const DEFAULT_AUTH_COOKIE_SAME_SITE = 'lax'; const UNSAFE_HTTP_METHODS = Object.freeze([ 'POST', 'PUT', 'PATCH', 'DELETE', ]); module.exports = { AUTH_PROVIDERS, AUTH_COOKIE_NAME, AUTH_REFRESH_COOKIE_NAME, AUTH_COOKIE_PATH, AUTH_COOKIE_SAME_SITE_VALUES, BCRYPT_SALT_ROUNDS, DEFAULT_AUTH_COOKIE_SAME_SITE, JWT_EXPIRES_IN, JWT_EXPIRES_IN_MS, REFRESH_TOKEN_BYTES, REFRESH_TOKEN_EXPIRES_IN_MS, REFRESH_TOKEN_HASH_ALGORITHM, UNSAFE_HTTP_METHODS, };