UNPKG

@rytass/member-base-nestjs-module

Version:

Rytass Member System NestJS Base Module

39 lines (37 loc) 3.28 kB
// Typed injection tokens for better type safety (using Symbol with type annotations) const MEMBER_BASE_MODULE_OPTIONS = Symbol('MEMBER_BASE_MODULE_OPTIONS'); const LOGIN_FAILED_BAN_THRESHOLD = Symbol('LOGIN_FAILED_BAN_THRESHOLD'); const RESET_PASSWORD_TOKEN_EXPIRATION = Symbol('RESET_PASSWORD_TOKEN_EXPIRATION'); const RESET_PASSWORD_TOKEN_SECRET = Symbol('RESET_PASSWORD_TOKEN_SECRET'); const CASBIN_ENFORCER = Symbol('CASBIN_ENFORCER'); const CASBIN_PERMISSION_DECORATOR = Symbol('CASBIN_PERMISSION_DECORATOR'); const CASBIN_PERMISSION_CHECKER = Symbol('CASBIN_PERMISSION_CHECKER'); const ACCESS_TOKEN_SECRET = Symbol('ACCESS_TOKEN_SECRET'); const ACCESS_TOKEN_EXPIRATION = Symbol('ACCESS_TOKEN_EXPIRATION'); const REFRESH_TOKEN_SECRET = Symbol('REFRESH_TOKEN_SECRET'); const REFRESH_TOKEN_EXPIRATION = Symbol('REFRESH_TOKEN_EXPIRATION'); const ENABLE_GLOBAL_GUARD = Symbol('ENABLE_GLOBAL_GUARD'); const ONLY_RESET_REFRESH_TOKEN_EXPIRATION_BY_PASSWORD = Symbol('ONLY_RESET_REFRESH_TOKEN_EXPIRATION_BY_PASSWORD'); const COOKIE_MODE = Symbol('COOKIE_MODE'); const LOGIN_FAILED_AUTO_UNLOCK_SECONDS = Symbol('LOGIN_FAILED_AUTO_UNLOCK_SECONDS'); const ACCESS_TOKEN_COOKIE_NAME = Symbol('ACCESS_TOKEN_COOKIE_NAME'); const REFRESH_TOKEN_COOKIE_NAME = Symbol('REFRESH_TOKEN_COOKIE_NAME'); // Options Entity Providers const PROVIDE_MEMBER_ENTITY = Symbol('PROVIDE_MEMBER_ENTITY'); // Resolved Entity Repository Providers const RESOLVED_MEMBER_REPO = Symbol('RESOLVED_MEMBER_REPO'); // Password Policy Providers const PASSWORD_SHOULD_INCLUDE_UPPERCASE = Symbol('PASSWORD_SHOULD_INCLUDE_UPPERCASE'); const PASSWORD_SHOULD_INCLUDE_LOWERCASE = Symbol('PASSWORD_SHOULD_INCLUDE_LOWERCASE'); const PASSWORD_SHOULD_INCLUDE_DIGIT = Symbol('PASSWORD_SHOULD_INCLUDE_DIGIT'); const PASSWORD_SHOULD_INCLUDE_SPECIAL_CHARACTER = Symbol('PASSWORD_SHOULD_INCLUDE_SPECIAL_CHARACTER'); const PASSWORD_MIN_LENGTH = Symbol('PASSWORD_MIN_LENGTH'); const PASSWORD_POLICY_REGEXP = Symbol('PASSWORD_POLICY_REGEXP'); const PASSWORD_HISTORY_LIMIT = Symbol('PASSWORD_HISTORY_LIMIT'); const PASSWORD_AGE_LIMIT_IN_DAYS = Symbol('PASSWORD_AGE_LIMIT_IN_DAYS'); const FORCE_REJECT_LOGIN_ON_PASSWORD_EXPIRED = Symbol('FORCE_REJECT_LOGIN_ON_PASSWORD_EXPIRED'); const CUSTOMIZED_JWT_PAYLOAD = Symbol('CUSTOMIZED_JWT_PAYLOAD'); // OAuth2 Providers const OAUTH2_PROVIDERS = Symbol('OAUTH2_PROVIDERS'); const OAUTH2_CLIENT_DEST_URL = Symbol('OAUTH2_CLIENT_DEST_URL'); export { ACCESS_TOKEN_COOKIE_NAME, ACCESS_TOKEN_EXPIRATION, ACCESS_TOKEN_SECRET, CASBIN_ENFORCER, CASBIN_PERMISSION_CHECKER, CASBIN_PERMISSION_DECORATOR, COOKIE_MODE, CUSTOMIZED_JWT_PAYLOAD, ENABLE_GLOBAL_GUARD, FORCE_REJECT_LOGIN_ON_PASSWORD_EXPIRED, LOGIN_FAILED_AUTO_UNLOCK_SECONDS, LOGIN_FAILED_BAN_THRESHOLD, MEMBER_BASE_MODULE_OPTIONS, OAUTH2_CLIENT_DEST_URL, OAUTH2_PROVIDERS, ONLY_RESET_REFRESH_TOKEN_EXPIRATION_BY_PASSWORD, PASSWORD_AGE_LIMIT_IN_DAYS, PASSWORD_HISTORY_LIMIT, PASSWORD_MIN_LENGTH, PASSWORD_POLICY_REGEXP, PASSWORD_SHOULD_INCLUDE_DIGIT, PASSWORD_SHOULD_INCLUDE_LOWERCASE, PASSWORD_SHOULD_INCLUDE_SPECIAL_CHARACTER, PASSWORD_SHOULD_INCLUDE_UPPERCASE, PROVIDE_MEMBER_ENTITY, REFRESH_TOKEN_COOKIE_NAME, REFRESH_TOKEN_EXPIRATION, REFRESH_TOKEN_SECRET, RESET_PASSWORD_TOKEN_EXPIRATION, RESET_PASSWORD_TOKEN_SECRET, RESOLVED_MEMBER_REPO };