@ackplus/nest-auth 1.1.0 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/{index.ts → index.d.ts} +2 -18
- package/src/index.d.ts.map +1 -0
- package/src/index.js +24 -0
- package/src/lib/admin-console/admin-console.module.d.ts +3 -0
- package/src/lib/admin-console/admin-console.module.d.ts.map +1 -0
- package/src/lib/admin-console/admin-console.module.js +69 -0
- package/src/lib/admin-console/controllers/admin-auth.controller.d.ts +134 -0
- package/src/lib/admin-console/controllers/admin-auth.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-auth.controller.js +374 -0
- package/src/lib/admin-console/controllers/admin-console.controller.d.ts +14 -0
- package/src/lib/admin-console/controllers/admin-console.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-console.controller.js +87 -0
- package/src/lib/admin-console/controllers/admin-permissions.controller.d.ts +86 -0
- package/src/lib/admin-console/controllers/admin-permissions.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-permissions.controller.js +195 -0
- package/src/lib/admin-console/controllers/admin-roles.controller.d.ts +47 -0
- package/src/lib/admin-console/controllers/admin-roles.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-roles.controller.js +95 -0
- package/src/lib/admin-console/controllers/admin-tenants.controller.d.ts +44 -0
- package/src/lib/admin-console/controllers/admin-tenants.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-tenants.controller.js +86 -0
- package/src/lib/admin-console/controllers/admin-users.controller.d.ts +146 -0
- package/src/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -0
- package/src/lib/admin-console/controllers/admin-users.controller.js +400 -0
- package/src/lib/admin-console/decorators/current-admin.decorator.d.ts +2 -0
- package/src/lib/admin-console/decorators/current-admin.decorator.d.ts.map +1 -0
- package/src/lib/admin-console/decorators/current-admin.decorator.js +8 -0
- package/src/lib/admin-console/dto/admin-permission.dto.d.ts +16 -0
- package/src/lib/admin-console/dto/admin-permission.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/admin-permission.dto.js +123 -0
- package/src/lib/admin-console/dto/admin-role.dto.d.ts +13 -0
- package/src/lib/admin-console/dto/admin-role.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/admin-role.dto.js +53 -0
- package/src/lib/admin-console/dto/admin-tenant.dto.d.ts +13 -0
- package/src/lib/admin-console/dto/admin-tenant.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/admin-tenant.dto.js +57 -0
- package/src/lib/admin-console/dto/admin-user.dto.d.ts +21 -0
- package/src/lib/admin-console/dto/admin-user.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/admin-user.dto.js +94 -0
- package/src/lib/admin-console/dto/create-dashboard-admin.dto.d.ts +10 -0
- package/src/lib/admin-console/dto/create-dashboard-admin.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/create-dashboard-admin.dto.js +39 -0
- package/src/lib/admin-console/dto/login.dto.d.ts +5 -0
- package/src/lib/admin-console/dto/login.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/login.dto.js +17 -0
- package/src/lib/admin-console/dto/reset-password.dto.d.ts +6 -0
- package/src/lib/admin-console/dto/reset-password.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/reset-password.dto.js +26 -0
- package/src/lib/admin-console/dto/setup-admin.dto.d.ts +7 -0
- package/src/lib/admin-console/dto/setup-admin.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/setup-admin.dto.js +29 -0
- package/src/lib/admin-console/dto/signup.dto.d.ts +8 -0
- package/src/lib/admin-console/dto/signup.dto.d.ts.map +1 -0
- package/src/lib/admin-console/dto/signup.dto.js +58 -0
- package/src/lib/admin-console/entities/admin-user.entity.d.ts +16 -0
- package/src/lib/admin-console/entities/admin-user.entity.d.ts.map +1 -0
- package/src/lib/admin-console/entities/admin-user.entity.js +86 -0
- package/src/lib/admin-console/guards/admin-session.guard.d.ts +17 -0
- package/src/lib/admin-console/guards/admin-session.guard.d.ts.map +1 -0
- package/src/lib/admin-console/guards/admin-session.guard.js +40 -0
- package/src/lib/admin-console/services/admin-auth.service.d.ts +22 -0
- package/src/lib/admin-console/services/admin-auth.service.d.ts.map +1 -0
- package/src/lib/admin-console/services/admin-auth.service.js +77 -0
- package/src/lib/admin-console/services/admin-console-config.service.d.ts +17 -0
- package/src/lib/admin-console/services/admin-console-config.service.d.ts.map +1 -0
- package/src/lib/admin-console/services/admin-console-config.service.js +58 -0
- package/src/lib/admin-console/services/admin-session.service.d.ts +27 -0
- package/src/lib/admin-console/services/admin-session.service.d.ts.map +1 -0
- package/src/lib/admin-console/services/admin-session.service.js +94 -0
- package/src/lib/admin-console/services/admin-user.service.d.ts +24 -0
- package/src/lib/admin-console/services/admin-user.service.d.ts.map +1 -0
- package/src/lib/admin-console/services/admin-user.service.js +87 -0
- package/src/lib/auth/auth.module.d.ts +3 -0
- package/src/lib/auth/auth.module.d.ts.map +1 -0
- package/src/lib/auth/auth.module.js +64 -0
- package/src/lib/auth/controllers/auth.controller.d.ts +67 -0
- package/src/lib/auth/controllers/auth.controller.d.ts.map +1 -0
- package/src/lib/auth/controllers/auth.controller.js +471 -0
- package/src/lib/auth/controllers/mfa.controller.d.ts +34 -0
- package/src/lib/auth/controllers/mfa.controller.d.ts.map +1 -0
- package/src/lib/auth/controllers/mfa.controller.js +230 -0
- package/src/lib/auth/dto/credentials/email-credentials.dto.d.ts +8 -0
- package/src/lib/auth/dto/credentials/email-credentials.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/credentials/email-credentials.dto.js +31 -0
- package/src/lib/auth/dto/credentials/phone-credentials.dto.d.ts +8 -0
- package/src/lib/auth/dto/credentials/phone-credentials.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/credentials/phone-credentials.dto.js +31 -0
- package/src/lib/auth/dto/credentials/social-credentials.dto.d.ts +7 -0
- package/src/lib/auth/dto/credentials/social-credentials.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/credentials/social-credentials.dto.js +21 -0
- package/src/lib/auth/dto/index.d.ts +1 -0
- package/src/lib/auth/dto/index.d.ts.map +1 -0
- package/src/lib/auth/dto/index.js +0 -0
- package/src/lib/auth/dto/requests/change-password.request.dto.d.ts +5 -0
- package/src/lib/auth/dto/requests/change-password.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/change-password.request.dto.js +42 -0
- package/src/lib/auth/dto/requests/forgot-password.request.dto.d.ts +6 -0
- package/src/lib/auth/dto/requests/forgot-password.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/forgot-password.request.dto.js +38 -0
- package/src/lib/auth/dto/requests/initialize-admin.request.dto.d.ts +8 -0
- package/src/lib/auth/dto/requests/initialize-admin.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/initialize-admin.request.dto.js +58 -0
- package/src/lib/auth/dto/requests/login.request.dto.d.ts +13 -0
- package/src/lib/auth/dto/requests/login.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/login.request.dto.js +75 -0
- package/src/lib/auth/dto/requests/refresh-token.request.dto.d.ts +4 -0
- package/src/lib/auth/dto/requests/refresh-token.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/refresh-token.request.dto.js +18 -0
- package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.d.ts +5 -0
- package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.js +29 -0
- package/src/lib/auth/dto/requests/reset-password.request.dto.d.ts +8 -0
- package/src/lib/auth/dto/requests/reset-password.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/reset-password.request.dto.js +60 -0
- package/src/lib/auth/dto/requests/send-email-verification.request.dto.d.ts +4 -0
- package/src/lib/auth/dto/requests/send-email-verification.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/send-email-verification.request.dto.js +18 -0
- package/src/lib/auth/dto/requests/send-mfa-code.request.dto.d.ts +5 -0
- package/src/lib/auth/dto/requests/send-mfa-code.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/send-mfa-code.request.dto.js +25 -0
- package/src/lib/auth/dto/requests/signup.request.dto.d.ts +8 -0
- package/src/lib/auth/dto/requests/signup.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/signup.request.dto.js +49 -0
- package/src/lib/auth/dto/requests/toggle-mfa.request.dto.d.ts +4 -0
- package/src/lib/auth/dto/requests/toggle-mfa.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/toggle-mfa.request.dto.js +18 -0
- package/src/lib/auth/dto/requests/verify-2fa.request.dto.d.ts +6 -0
- package/src/lib/auth/dto/requests/verify-2fa.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/verify-2fa.request.dto.js +31 -0
- package/src/lib/auth/dto/requests/verify-email.request.dto.d.ts +5 -0
- package/src/lib/auth/dto/requests/verify-email.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/verify-email.request.dto.js +29 -0
- package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.d.ts +7 -0
- package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.js +49 -0
- package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.d.ts +5 -0
- package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.js +29 -0
- package/src/lib/auth/dto/responses/auth-cookie.response.dto.d.ts +41 -0
- package/src/lib/auth/dto/responses/auth-cookie.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/{auth-cookie.response.dto.ts → auth-cookie.response.dto.js} +18 -11
- package/src/lib/auth/dto/responses/auth-success.response.dto.d.ts +41 -0
- package/src/lib/auth/dto/responses/auth-success.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/{auth-success.response.dto.ts → auth-success.response.dto.js} +18 -11
- package/src/lib/auth/dto/responses/auth.response.dto.d.ts +40 -0
- package/src/lib/auth/dto/responses/auth.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/auth.response.dto.js +112 -0
- package/src/lib/auth/dto/responses/client-config.response.dto.d.ts +58 -0
- package/src/lib/auth/dto/responses/client-config.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/client-config.response.dto.js +202 -0
- package/src/lib/auth/dto/responses/initialize-admin.response.dto.d.ts +7 -0
- package/src/lib/auth/dto/responses/initialize-admin.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/initialize-admin.response.dto.js +30 -0
- package/src/lib/auth/dto/responses/mfa-code-response.dto.d.ts +7 -0
- package/src/lib/auth/dto/responses/mfa-code-response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/mfa-code-response.dto.js +36 -0
- package/src/lib/auth/dto/responses/mfa-status.response.dto.d.ts +19 -0
- package/src/lib/auth/dto/responses/mfa-status.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/mfa-status.response.dto.js +108 -0
- package/src/lib/auth/dto/responses/verify-otp.response.dto.d.ts +5 -0
- package/src/lib/auth/dto/responses/verify-otp.response.dto.d.ts.map +1 -0
- package/src/lib/auth/dto/responses/verify-otp.response.dto.js +16 -0
- package/src/lib/auth/entities/mfa-secret.entity.d.ts +13 -0
- package/src/lib/auth/entities/mfa-secret.entity.d.ts.map +1 -0
- package/src/lib/auth/entities/mfa-secret.entity.js +49 -0
- package/src/lib/auth/entities/otp.entity.d.ts +14 -0
- package/src/lib/auth/entities/otp.entity.d.ts.map +1 -0
- package/src/lib/auth/entities/otp.entity.js +49 -0
- package/src/lib/auth/events/{logged-out-all.event.ts → logged-out-all.event.d.ts} +4 -6
- package/src/lib/auth/events/logged-out-all.event.d.ts.map +1 -0
- package/src/lib/auth/events/logged-out-all.event.js +9 -0
- package/src/lib/auth/events/{logged-out.event.ts → logged-out.event.d.ts} +4 -5
- package/src/lib/auth/events/logged-out.event.d.ts.map +1 -0
- package/src/lib/auth/events/logged-out.event.js +9 -0
- package/src/lib/auth/events/{password-reset-requested.event.ts → password-reset-requested.event.d.ts} +4 -6
- package/src/lib/auth/events/password-reset-requested.event.d.ts.map +1 -0
- package/src/lib/auth/events/password-reset-requested.event.js +9 -0
- package/src/lib/auth/events/{password-reset.event.ts → password-reset.event.d.ts} +4 -6
- package/src/lib/auth/events/password-reset.event.d.ts.map +1 -0
- package/src/lib/auth/events/password-reset.event.js +9 -0
- package/src/lib/auth/events/{user-2fa-verified.event.ts → user-2fa-verified.event.d.ts} +4 -6
- package/src/lib/auth/events/user-2fa-verified.event.d.ts.map +1 -0
- package/src/lib/auth/events/user-2fa-verified.event.js +9 -0
- package/src/lib/auth/events/{user-logged-in.event.ts → user-logged-in.event.d.ts} +4 -7
- package/src/lib/auth/events/user-logged-in.event.d.ts.map +1 -0
- package/src/lib/auth/events/user-logged-in.event.js +10 -0
- package/src/lib/auth/events/{user-refresh-token.event.ts → user-refresh-token.event.d.ts} +4 -6
- package/src/lib/auth/events/user-refresh-token.event.d.ts.map +1 -0
- package/src/lib/auth/events/user-refresh-token.event.js +9 -0
- package/src/lib/auth/events/{user-registered.event.ts → user-registered.event.d.ts} +4 -7
- package/src/lib/auth/events/user-registered.event.d.ts.map +1 -0
- package/src/lib/auth/events/user-registered.event.js +10 -0
- package/src/lib/auth/guards/auth.guard.d.ts +56 -0
- package/src/lib/auth/guards/auth.guard.d.ts.map +1 -0
- package/src/lib/auth/guards/{auth.guard.ts → auth.guard.js} +92 -135
- package/src/lib/auth/{index.ts → index.d.ts} +1 -13
- package/src/lib/auth/index.d.ts.map +1 -0
- package/src/lib/auth/index.js +51 -0
- package/src/lib/auth/interceptors/refresh-token.interceptor.d.ts +43 -0
- package/src/lib/auth/interceptors/refresh-token.interceptor.d.ts.map +1 -0
- package/src/lib/auth/interceptors/{refresh-token.interceptor.ts → refresh-token.interceptor.js} +38 -40
- package/src/lib/auth/services/auth.service.d.ts +67 -0
- package/src/lib/auth/services/auth.service.d.ts.map +1 -0
- package/src/lib/auth/services/{auth.service.ts → auth.service.js} +262 -475
- package/src/lib/auth/services/client-config.service.d.ts +12 -0
- package/src/lib/auth/services/client-config.service.d.ts.map +1 -0
- package/src/lib/auth/services/{client-config.service.ts → client-config.service.js} +28 -33
- package/src/lib/auth/services/cookie.service.d.ts +10 -0
- package/src/lib/auth/services/cookie.service.d.ts.map +1 -0
- package/src/lib/auth/services/cookie.service.js +42 -0
- package/src/lib/auth/services/mfa.service.d.ts +45 -0
- package/src/lib/auth/services/mfa.service.d.ts.map +1 -0
- package/src/lib/auth/services/{mfa.service.ts → mfa.service.js} +105 -184
- package/src/lib/auth.constants.d.ts +43 -0
- package/src/lib/auth.constants.d.ts.map +1 -0
- package/src/lib/auth.constants.js +54 -0
- package/src/lib/core/core.module.d.ts +7 -0
- package/src/lib/core/core.module.d.ts.map +1 -0
- package/src/lib/core/core.module.js +57 -0
- package/src/lib/core/decorators/{auth.decorator.ts → auth.decorator.d.ts} +2 -7
- package/src/lib/core/decorators/auth.decorator.d.ts.map +1 -0
- package/src/lib/core/decorators/auth.decorator.js +38 -0
- package/src/lib/core/decorators/permissions.decorator.d.ts +8 -0
- package/src/lib/core/decorators/permissions.decorator.d.ts.map +1 -0
- package/src/lib/core/decorators/permissions.decorator.js +18 -0
- package/src/lib/core/decorators/{public.decorator.ts → public.decorator.d.ts} +3 -5
- package/src/lib/core/decorators/public.decorator.d.ts.map +1 -0
- package/src/lib/core/decorators/public.decorator.js +35 -0
- package/src/lib/core/decorators/role.decorator.d.ts +4 -0
- package/src/lib/core/decorators/role.decorator.d.ts.map +1 -0
- package/src/lib/core/decorators/role.decorator.js +13 -0
- package/src/lib/core/decorators/skip-mfa.decorator.d.ts +3 -0
- package/src/lib/core/decorators/skip-mfa.decorator.d.ts.map +1 -0
- package/src/lib/core/decorators/skip-mfa.decorator.js +7 -0
- package/src/lib/core/dto/message.response.dto.d.ts +4 -0
- package/src/lib/core/dto/message.response.dto.d.ts.map +1 -0
- package/src/lib/core/dto/message.response.dto.js +12 -0
- package/src/lib/core/{entities.ts → entities.d.ts} +2 -14
- package/src/lib/core/entities.d.ts.map +1 -0
- package/src/lib/core/entities.js +37 -0
- package/src/lib/core/{index.ts → index.d.ts} +1 -15
- package/src/lib/core/index.d.ts.map +1 -0
- package/src/lib/core/index.js +35 -0
- package/src/lib/core/interfaces/{auth-module-options.interface.ts → auth-module-options.interface.d.ts} +13 -16
- package/src/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -0
- package/src/lib/core/interfaces/auth-module-options.interface.js +2 -0
- package/src/lib/core/interfaces/mfa-options.interface.d.ts +26 -0
- package/src/lib/core/interfaces/mfa-options.interface.d.ts.map +1 -0
- package/src/lib/core/interfaces/mfa-options.interface.js +9 -0
- package/src/lib/core/interfaces/otp.interface.d.ts +6 -0
- package/src/lib/core/interfaces/otp.interface.d.ts.map +1 -0
- package/src/lib/core/interfaces/otp.interface.js +9 -0
- package/src/lib/core/interfaces/session-options.interface.d.ts +16 -0
- package/src/lib/core/interfaces/session-options.interface.d.ts.map +1 -0
- package/src/lib/core/interfaces/session-options.interface.js +9 -0
- package/src/lib/core/interfaces/{token-payload.interface.ts → token-payload.interface.d.ts} +2 -4
- package/src/lib/core/interfaces/token-payload.interface.d.ts.map +1 -0
- package/src/lib/core/interfaces/token-payload.interface.js +2 -0
- package/src/lib/core/providers/apple-auth.provider.d.ts +19 -0
- package/src/lib/core/providers/apple-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/apple-auth.provider.js +56 -0
- package/src/lib/core/providers/base-auth.provider.d.ts +33 -0
- package/src/lib/core/providers/base-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/base-auth.provider.js +48 -0
- package/src/lib/core/providers/email-auth.provider.d.ts +31 -0
- package/src/lib/core/providers/email-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/email-auth.provider.js +66 -0
- package/src/lib/core/providers/facebook-auth.provider.d.ts +19 -0
- package/src/lib/core/providers/facebook-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/facebook-auth.provider.js +55 -0
- package/src/lib/core/providers/github-auth.provider.d.ts +24 -0
- package/src/lib/core/providers/github-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/{github-auth.provider.ts → github-auth.provider.js} +31 -36
- package/src/lib/core/providers/google-auth.provider.d.ts +22 -0
- package/src/lib/core/providers/google-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/google-auth.provider.js +57 -0
- package/src/lib/core/providers/jwt-auth.provider.d.ts +34 -0
- package/src/lib/core/providers/jwt-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/jwt-auth.provider.js +49 -0
- package/src/lib/core/providers/phone-auth.provider.d.ts +19 -0
- package/src/lib/core/providers/phone-auth.provider.d.ts.map +1 -0
- package/src/lib/core/providers/phone-auth.provider.js +42 -0
- package/src/lib/core/services/auth-config.service.d.ts +39 -0
- package/src/lib/core/services/auth-config.service.d.ts.map +1 -0
- package/src/lib/core/services/auth-config.service.js +167 -0
- package/src/lib/core/services/auth-provider-registry.service.d.ts +42 -0
- package/src/lib/core/services/auth-provider-registry.service.d.ts.map +1 -0
- package/src/lib/core/services/auth-provider-registry.service.js +91 -0
- package/src/lib/core/services/debug-logger.service.d.ts +39 -0
- package/src/lib/core/services/debug-logger.service.d.ts.map +1 -0
- package/src/lib/core/services/{debug-logger.service.ts → debug-logger.service.js} +57 -88
- package/src/lib/core/services/initialization.service.d.ts +11 -0
- package/src/lib/core/services/initialization.service.d.ts.map +1 -0
- package/src/lib/core/services/initialization.service.js +35 -0
- package/src/lib/core/services/jwt.service.d.ts +23 -0
- package/src/lib/core/services/jwt.service.d.ts.map +1 -0
- package/src/lib/core/services/jwt.service.js +119 -0
- package/src/lib/nest-auth.module.d.ts +11 -0
- package/src/lib/nest-auth.module.d.ts.map +1 -0
- package/src/lib/nest-auth.module.js +144 -0
- package/src/lib/permission/entities/permission.entity.d.ts +27 -0
- package/src/lib/permission/entities/permission.entity.d.ts.map +1 -0
- package/src/lib/permission/entities/permission.entity.js +62 -0
- package/src/lib/permission/{index.ts → index.d.ts} +1 -1
- package/src/lib/permission/index.d.ts.map +1 -0
- package/src/lib/permission/index.js +6 -0
- package/src/lib/permission/permission.module.d.ts +3 -0
- package/src/lib/permission/permission.module.d.ts.map +1 -0
- package/src/lib/permission/permission.module.js +20 -0
- package/src/lib/permission/services/permission.service.d.ts +44 -0
- package/src/lib/permission/services/permission.service.d.ts.map +1 -0
- package/src/lib/permission/services/{permission.service.ts → permission.service.js} +48 -108
- package/src/lib/request-context/{index.ts → index.d.ts} +1 -0
- package/src/lib/request-context/index.d.ts.map +1 -0
- package/src/lib/request-context/index.js +5 -0
- package/src/lib/request-context/request-context.d.ts +23 -0
- package/src/lib/request-context/request-context.d.ts.map +1 -0
- package/src/lib/request-context/{request-context.ts → request-context.js} +26 -44
- package/src/lib/request-context/request-context.middleware.d.ts +5 -0
- package/src/lib/request-context/request-context.middleware.d.ts.map +1 -0
- package/src/lib/request-context/request-context.middleware.js +15 -0
- package/src/lib/role/entities/role.entity.d.ts +21 -0
- package/src/lib/role/entities/role.entity.d.ts.map +1 -0
- package/src/lib/role/entities/role.entity.js +110 -0
- package/src/lib/role/{index.ts → index.d.ts} +1 -2
- package/src/lib/role/index.d.ts.map +1 -0
- package/src/lib/role/index.js +5 -0
- package/src/lib/role/role.module.d.ts +3 -0
- package/src/lib/role/role.module.d.ts.map +1 -0
- package/src/lib/role/role.module.js +22 -0
- package/src/lib/role/services/role.service.d.ts +21 -0
- package/src/lib/role/services/role.service.d.ts.map +1 -0
- package/src/lib/role/services/{role.service.ts → role.service.js} +51 -107
- package/src/lib/session/entities/session.entity.d.ts +17 -0
- package/src/lib/session/entities/session.entity.d.ts.map +1 -0
- package/src/lib/session/entities/session.entity.js +62 -0
- package/src/lib/session/{index.ts → index.d.ts} +1 -11
- package/src/lib/session/index.d.ts.map +1 -0
- package/src/lib/session/index.js +18 -0
- package/src/lib/session/interfaces/{session-repository.interface.ts → session-repository.interface.d.ts} +1 -10
- package/src/lib/session/interfaces/session-repository.interface.d.ts.map +1 -0
- package/src/lib/session/interfaces/session-repository.interface.js +2 -0
- package/src/lib/session/repositories/{base-session.repository.ts → base-session.repository.d.ts} +7 -41
- package/src/lib/session/repositories/base-session.repository.d.ts.map +1 -0
- package/src/lib/session/repositories/base-session.repository.js +59 -0
- package/src/lib/session/repositories/memory-session.repository.d.ts +27 -0
- package/src/lib/session/repositories/memory-session.repository.d.ts.map +1 -0
- package/src/lib/session/repositories/{memory-session.repository.ts → memory-session.repository.js} +41 -61
- package/src/lib/session/repositories/redis-session.repository.d.ts +30 -0
- package/src/lib/session/repositories/redis-session.repository.d.ts.map +1 -0
- package/src/lib/session/repositories/{redis-session.repository.ts → redis-session.repository.js} +45 -75
- package/src/lib/session/repositories/typeorm-session.repository.d.ts +23 -0
- package/src/lib/session/repositories/typeorm-session.repository.d.ts.map +1 -0
- package/src/lib/session/repositories/typeorm-session.repository.js +79 -0
- package/src/lib/session/services/session-manager.service.d.ts +100 -0
- package/src/lib/session/services/session-manager.service.d.ts.map +1 -0
- package/src/lib/session/services/{session-manager.service.ts → session-manager.service.js} +54 -94
- package/src/lib/session/session.module.d.ts +14 -0
- package/src/lib/session/session.module.d.ts.map +1 -0
- package/src/lib/session/session.module.js +96 -0
- package/src/lib/session/utils/session.util.d.ts +73 -0
- package/src/lib/session/utils/session.util.d.ts.map +1 -0
- package/src/lib/session/utils/{session.util.ts → session.util.js} +24 -63
- package/src/lib/tenant/entities/{tenant.entity.ts → tenant.entity.d.ts} +2 -21
- package/src/lib/tenant/entities/tenant.entity.d.ts.map +1 -0
- package/src/lib/tenant/entities/tenant.entity.js +47 -0
- package/src/lib/tenant/events/tenant-created.event.d.ts +9 -0
- package/src/lib/tenant/events/tenant-created.event.d.ts.map +1 -0
- package/src/lib/tenant/events/tenant-created.event.js +9 -0
- package/src/lib/tenant/events/tenant-deleted.event.d.ts +9 -0
- package/src/lib/tenant/events/tenant-deleted.event.d.ts.map +1 -0
- package/src/lib/tenant/events/tenant-deleted.event.js +9 -0
- package/src/lib/tenant/events/tenant-updated.event.d.ts +10 -0
- package/src/lib/tenant/events/tenant-updated.event.d.ts.map +1 -0
- package/src/lib/tenant/events/tenant-updated.event.js +9 -0
- package/src/lib/tenant/{index.ts → index.d.ts} +1 -2
- package/src/lib/tenant/index.d.ts.map +1 -0
- package/src/lib/tenant/index.js +14 -0
- package/src/lib/tenant/services/tenant.service.d.ts +35 -0
- package/src/lib/tenant/services/tenant.service.d.ts.map +1 -0
- package/src/lib/tenant/services/{tenant.service.ts → tenant.service.js} +83 -137
- package/src/lib/tenant/tenant.module.d.ts +3 -0
- package/src/lib/tenant/tenant.module.d.ts.map +1 -0
- package/src/lib/tenant/tenant.module.js +26 -0
- package/src/lib/user/dto/requests/update-user.dto.d.ts +6 -0
- package/src/lib/user/dto/requests/update-user.dto.d.ts.map +1 -0
- package/src/lib/user/dto/requests/update-user.dto.js +23 -0
- package/src/lib/user/entities/access-key.entity.d.ts +17 -0
- package/src/lib/user/entities/access-key.entity.d.ts.map +1 -0
- package/src/lib/user/entities/access-key.entity.js +62 -0
- package/src/lib/user/entities/identity.entity.d.ts +13 -0
- package/src/lib/user/entities/identity.entity.d.ts.map +1 -0
- package/src/lib/user/entities/identity.entity.js +46 -0
- package/src/lib/user/entities/user.entity.d.ts +40 -0
- package/src/lib/user/entities/user.entity.d.ts.map +1 -0
- package/src/lib/user/entities/user.entity.js +218 -0
- package/src/lib/user/events/user-created.event.d.ts +10 -0
- package/src/lib/user/events/user-created.event.d.ts.map +1 -0
- package/src/lib/user/events/user-created.event.js +9 -0
- package/src/lib/user/events/user-deleted.event.d.ts +10 -0
- package/src/lib/user/events/user-deleted.event.d.ts.map +1 -0
- package/src/lib/user/events/user-deleted.event.js +9 -0
- package/src/lib/user/events/user-updated.event.d.ts +11 -0
- package/src/lib/user/events/user-updated.event.d.ts.map +1 -0
- package/src/lib/user/events/user-updated.event.js +9 -0
- package/src/lib/user/{index.ts → index.d.ts} +1 -5
- package/src/lib/user/index.d.ts.map +1 -0
- package/src/lib/user/index.js +12 -0
- package/src/lib/user/services/access-key.service.d.ts +20 -0
- package/src/lib/user/services/access-key.service.d.ts.map +1 -0
- package/src/lib/user/services/access-key.service.js +121 -0
- package/src/lib/user/services/user.service.d.ts +28 -0
- package/src/lib/user/services/user.service.d.ts.map +1 -0
- package/src/lib/user/services/{user.service.ts → user.service.js} +92 -164
- package/src/lib/user/user.module.d.ts +3 -0
- package/src/lib/user/user.module.d.ts.map +1 -0
- package/src/lib/user/user.module.js +33 -0
- package/src/lib/utils/database.utils.d.ts +3 -0
- package/src/lib/utils/database.utils.d.ts.map +1 -0
- package/src/lib/utils/database.utils.js +7 -0
- package/src/lib/utils/date.util.d.ts +41 -0
- package/src/lib/utils/date.util.d.ts.map +1 -0
- package/src/lib/utils/{date.util.ts → date.util.js} +28 -35
- package/src/lib/utils/device.util.d.ts +50 -0
- package/src/lib/utils/device.util.d.ts.map +1 -0
- package/src/lib/utils/device.util.js +114 -0
- package/src/lib/utils/{index.ts → index.d.ts} +1 -0
- package/src/lib/utils/index.d.ts.map +1 -0
- package/src/lib/utils/index.js +9 -0
- package/src/lib/utils/otp.d.ts +2 -0
- package/src/lib/utils/otp.d.ts.map +1 -0
- package/src/lib/utils/otp.js +6 -0
- package/src/lib/utils/security.util.d.ts +11 -0
- package/src/lib/utils/security.util.d.ts.map +1 -0
- package/src/lib/utils/{security.util.ts → security.util.js} +10 -9
- package/src/lib/utils/slug.util.d.ts +38 -0
- package/src/lib/utils/slug.util.d.ts.map +1 -0
- package/src/lib/utils/{slug.util.ts → slug.util.js} +10 -9
- package/eslint.config.mjs +0 -59
- package/jest.config.ts +0 -10
- package/project.json +0 -86
- package/src/lib/admin-console/admin-console.module.ts +0 -62
- package/src/lib/admin-console/controllers/admin-auth.controller.ts +0 -339
- package/src/lib/admin-console/controllers/admin-console.controller.ts +0 -82
- package/src/lib/admin-console/controllers/admin-permissions.controller.ts +0 -180
- package/src/lib/admin-console/controllers/admin-roles.controller.ts +0 -89
- package/src/lib/admin-console/controllers/admin-tenants.controller.ts +0 -68
- package/src/lib/admin-console/controllers/admin-users.controller.ts +0 -379
- package/src/lib/admin-console/decorators/current-admin.decorator.ts +0 -9
- package/src/lib/admin-console/dto/admin-permission.dto.ts +0 -106
- package/src/lib/admin-console/dto/admin-role.dto.ts +0 -45
- package/src/lib/admin-console/dto/admin-tenant.dto.ts +0 -43
- package/src/lib/admin-console/dto/admin-user.dto.ts +0 -87
- package/src/lib/admin-console/dto/create-dashboard-admin.dto.ts +0 -34
- package/src/lib/admin-console/dto/login.dto.ts +0 -10
- package/src/lib/admin-console/dto/reset-password.dto.ts +0 -21
- package/src/lib/admin-console/dto/setup-admin.dto.ts +0 -23
- package/src/lib/admin-console/dto/signup.dto.ts +0 -51
- package/src/lib/admin-console/entities/admin-user.entity.ts +0 -74
- package/src/lib/admin-console/guards/admin-session.guard.ts +0 -47
- package/src/lib/admin-console/services/admin-auth.service.ts +0 -82
- package/src/lib/admin-console/services/admin-console-config.service.ts +0 -62
- package/src/lib/admin-console/services/admin-session.service.ts +0 -106
- package/src/lib/admin-console/services/admin-user.service.ts +0 -96
- package/src/lib/auth/auth.module.ts +0 -58
- package/src/lib/auth/controllers/auth.controller.ts +0 -393
- package/src/lib/auth/controllers/mfa.controller.ts +0 -200
- package/src/lib/auth/dto/credentials/email-credentials.dto.ts +0 -24
- package/src/lib/auth/dto/credentials/phone-credentials.dto.ts +0 -24
- package/src/lib/auth/dto/credentials/social-credentials.dto.ts +0 -15
- package/src/lib/auth/dto/index.ts +0 -1
- package/src/lib/auth/dto/requests/change-password.request.dto.ts +0 -34
- package/src/lib/auth/dto/requests/forgot-password.request.dto.ts +0 -30
- package/src/lib/auth/dto/requests/initialize-admin.request.dto.ts +0 -51
- package/src/lib/auth/dto/requests/login.request.dto.ts +0 -65
- package/src/lib/auth/dto/requests/refresh-token.request.dto.ts +0 -12
- package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.ts +0 -22
- package/src/lib/auth/dto/requests/reset-password.request.dto.ts +0 -50
- package/src/lib/auth/dto/requests/send-email-verification.request.dto.ts +0 -12
- package/src/lib/auth/dto/requests/send-mfa-code.request.dto.ts +0 -19
- package/src/lib/auth/dto/requests/signup.request.dto.ts +0 -42
- package/src/lib/auth/dto/requests/toggle-mfa.request.dto.ts +0 -12
- package/src/lib/auth/dto/requests/verify-2fa.request.dto.ts +0 -24
- package/src/lib/auth/dto/requests/verify-email.request.dto.ts +0 -22
- package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.ts +0 -41
- package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.ts +0 -22
- package/src/lib/auth/dto/responses/auth.response.dto.ts +0 -99
- package/src/lib/auth/dto/responses/client-config.response.dto.ts +0 -153
- package/src/lib/auth/dto/responses/initialize-admin.response.dto.ts +0 -22
- package/src/lib/auth/dto/responses/mfa-code-response.dto.ts +0 -27
- package/src/lib/auth/dto/responses/mfa-status.response.dto.ts +0 -89
- package/src/lib/auth/dto/responses/verify-otp.response.dto.ts +0 -9
- package/src/lib/auth/entities/mfa-secret.entity.ts +0 -33
- package/src/lib/auth/entities/otp.entity.ts +0 -33
- package/src/lib/auth/services/cookie.service.ts +0 -43
- package/src/lib/auth.constants.ts +0 -63
- package/src/lib/core/core.module.ts +0 -50
- package/src/lib/core/decorators/permissions.decorator.ts +0 -17
- package/src/lib/core/decorators/role.decorator.ts +0 -12
- package/src/lib/core/decorators/skip-mfa.decorator.ts +0 -4
- package/src/lib/core/dto/message.response.dto.ts +0 -6
- package/src/lib/core/interfaces/mfa-options.interface.ts +0 -46
- package/src/lib/core/interfaces/otp.interface.ts +0 -6
- package/src/lib/core/interfaces/session-options.interface.ts +0 -19
- package/src/lib/core/providers/apple-auth.provider.ts +0 -61
- package/src/lib/core/providers/base-auth.provider.ts +0 -74
- package/src/lib/core/providers/email-auth.provider.ts +0 -71
- package/src/lib/core/providers/facebook-auth.provider.ts +0 -55
- package/src/lib/core/providers/google-auth.provider.ts +0 -61
- package/src/lib/core/providers/jwt-auth.provider.ts +0 -50
- package/src/lib/core/providers/phone-auth.provider.ts +0 -45
- package/src/lib/core/services/auth-config.service.ts +0 -184
- package/src/lib/core/services/auth-provider-registry.service.ts +0 -93
- package/src/lib/core/services/initialization.service.ts +0 -29
- package/src/lib/core/services/jwt.service.ts +0 -137
- package/src/lib/nest-auth.module.ts +0 -152
- package/src/lib/permission/entities/permission.entity.ts +0 -56
- package/src/lib/permission/permission.module.ts +0 -14
- package/src/lib/request-context/request-context.middleware.ts +0 -13
- package/src/lib/role/entities/role.entity.ts +0 -103
- package/src/lib/role/role.module.ts +0 -15
- package/src/lib/session/entities/session.entity.ts +0 -54
- package/src/lib/session/repositories/typeorm-session.repository.ts +0 -86
- package/src/lib/session/session.module.ts +0 -102
- package/src/lib/tenant/events/tenant-created.event.ts +0 -9
- package/src/lib/tenant/events/tenant-deleted.event.ts +0 -11
- package/src/lib/tenant/events/tenant-updated.event.ts +0 -12
- package/src/lib/tenant/tenant.module.ts +0 -19
- package/src/lib/types/express.d.ts +0 -14
- package/src/lib/user/dto/requests/update-user.dto.ts +0 -15
- package/src/lib/user/entities/access-key.entity.ts +0 -53
- package/src/lib/user/entities/identity.entity.ts +0 -31
- package/src/lib/user/entities/user.entity.ts +0 -212
- package/src/lib/user/events/user-created.event.ts +0 -10
- package/src/lib/user/events/user-deleted.event.ts +0 -12
- package/src/lib/user/events/user-updated.event.ts +0 -13
- package/src/lib/user/services/access-key.service.ts +0 -145
- package/src/lib/user/user.module.ts +0 -26
- package/src/lib/utils/database.utils.ts +0 -6
- package/src/lib/utils/device.util.ts +0 -111
- package/src/lib/utils/otp.ts +0 -3
- package/src/types/ms.d.ts +0 -1
- package/test/access-key.service.spec.ts +0 -204
- package/test/auth.service.spec.ts +0 -541
- package/test/mfa.service.spec.ts +0 -359
- package/test/role.service.spec.ts +0 -418
- package/test/tenant.service.spec.ts +0 -218
- package/test/test.setup.ts +0 -66
- package/test/user.service.spec.ts +0 -374
- package/tsconfig.json +0 -17
- package/tsconfig.lib.json +0 -15
- package/tsconfig.spec.json +0 -15
- package/tsconfig.tsbuildinfo +0 -1
- package/ui/.env +0 -1
- package/ui/.env.example +0 -1
- package/ui/.eslintignore +0 -7
- package/ui/README.md +0 -288
- package/ui/index.html +0 -17
- package/ui/package.json +0 -34
- package/ui/postcss.config.js +0 -6
- package/ui/src/App.tsx +0 -245
- package/ui/src/components/AuthGuard.tsx +0 -59
- package/ui/src/components/AuthProvider.tsx +0 -76
- package/ui/src/components/Button.tsx +0 -37
- package/ui/src/components/Card.tsx +0 -37
- package/ui/src/components/ErrorMessage.tsx +0 -15
- package/ui/src/components/FormDialog.tsx +0 -61
- package/ui/src/components/FormFooter.tsx +0 -37
- package/ui/src/components/Layout.tsx +0 -112
- package/ui/src/components/LoadingMessage.tsx +0 -11
- package/ui/src/components/Modal.tsx +0 -97
- package/ui/src/components/MultiSelect.tsx +0 -145
- package/ui/src/components/PageHeader.tsx +0 -42
- package/ui/src/components/PanelHeader.tsx +0 -28
- package/ui/src/components/PermissionInput.tsx +0 -473
- package/ui/src/components/SearchInput.tsx +0 -69
- package/ui/src/components/Select.tsx +0 -51
- package/ui/src/components/SwaggerUIWrapper.tsx +0 -316
- package/ui/src/components/Table.tsx +0 -207
- package/ui/src/components/Tag.tsx +0 -9
- package/ui/src/components/TagsInput.tsx +0 -96
- package/ui/src/components/admin/AdminForm.tsx +0 -170
- package/ui/src/components/admin/CreateAdminDialog.tsx +0 -38
- package/ui/src/components/auth/LoginFooter.tsx +0 -17
- package/ui/src/components/auth/LoginHeader.tsx +0 -14
- package/ui/src/components/auth/components/CodeBlock.tsx +0 -43
- package/ui/src/components/auth/components/CreateAccountCodeExamples.tsx +0 -60
- package/ui/src/components/auth/components/PasswordRequirements.tsx +0 -16
- package/ui/src/components/auth/components/PasswordStrengthIndicator.tsx +0 -48
- package/ui/src/components/auth/components/ResetPasswordCodeExamples.tsx +0 -76
- package/ui/src/components/auth/components/Tabs.tsx +0 -32
- package/ui/src/components/auth/dialogs/CreateAccountDialog.tsx +0 -79
- package/ui/src/components/auth/dialogs/ForgotPasswordDialog.tsx +0 -79
- package/ui/src/components/auth/forms/CreateAccountForm.tsx +0 -226
- package/ui/src/components/auth/forms/LoginForm.tsx +0 -149
- package/ui/src/components/auth/forms/ResetPasswordForm.tsx +0 -202
- package/ui/src/components/auth/types.ts +0 -17
- package/ui/src/components/auth/utils/security.ts +0 -82
- package/ui/src/components/auth/utils/utils.ts +0 -25
- package/ui/src/components/form/EmailField.tsx +0 -25
- package/ui/src/components/form/FormField.tsx +0 -102
- package/ui/src/components/form/FormMultiSelect.tsx +0 -46
- package/ui/src/components/form/FormSelect.tsx +0 -60
- package/ui/src/components/form/FormTagsInput.tsx +0 -42
- package/ui/src/components/form/FormTextarea.tsx +0 -42
- package/ui/src/components/form/PasswordField.tsx +0 -93
- package/ui/src/components/form/SecretKeyField.tsx +0 -49
- package/ui/src/components/permission/CreatePermissionDialog.tsx +0 -44
- package/ui/src/components/permission/EditPermissionDialog.tsx +0 -55
- package/ui/src/components/permission/PermissionForm.tsx +0 -251
- package/ui/src/components/role/CreateRoleDialog.tsx +0 -45
- package/ui/src/components/role/EditRoleDialog.tsx +0 -55
- package/ui/src/components/role/RoleDialog.tsx +0 -252
- package/ui/src/components/role/RoleForm.tsx +0 -246
- package/ui/src/components/tenant/CreateTenantDialog.tsx +0 -41
- package/ui/src/components/tenant/EditTenantDialog.tsx +0 -52
- package/ui/src/components/tenant/TenantForm.tsx +0 -160
- package/ui/src/components/user/CreateUserDialog.tsx +0 -45
- package/ui/src/components/user/UserDetailModal.tsx +0 -815
- package/ui/src/components/user/UserForm.tsx +0 -191
- package/ui/src/data/nest-auth.json +0 -1687
- package/ui/src/hooks/useApi.ts +0 -69
- package/ui/src/hooks/useAuth.ts +0 -100
- package/ui/src/hooks/useConfirm.tsx +0 -105
- package/ui/src/hooks/useFormFooter.tsx +0 -42
- package/ui/src/hooks/usePagination.ts +0 -69
- package/ui/src/index.css +0 -59
- package/ui/src/main.tsx +0 -13
- package/ui/src/pages/AdminsPage.tsx +0 -178
- package/ui/src/pages/ApiPage.tsx +0 -89
- package/ui/src/pages/DashboardPage.tsx +0 -281
- package/ui/src/pages/LoginPage.tsx +0 -39
- package/ui/src/pages/PermissionsPage.tsx +0 -376
- package/ui/src/pages/RolesPage.tsx +0 -274
- package/ui/src/pages/TenantsPage.tsx +0 -221
- package/ui/src/pages/UsersPage.tsx +0 -387
- package/ui/src/services/api.ts +0 -115
- package/ui/src/types/index.ts +0 -136
- package/ui/src/vite-env.d.ts +0 -9
- package/ui/tailwind.config.js +0 -45
- package/ui/tsconfig.json +0 -24
- package/ui/tsconfig.node.json +0 -10
- package/ui/vite.config.ts +0 -37
- package/ui/yarn.lock +0 -3137
|
@@ -1,178 +1,140 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export const SESSION_REPOSITORY = 'SESSION_REPOSITORY';
|
|
13
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SessionManagerService = exports.SESSION_REPOSITORY = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const auth_config_service_1 = require("../../core/services/auth-config.service");
|
|
7
|
+
const request_context_1 = require("../../request-context/request-context");
|
|
8
|
+
const uuid_1 = require("uuid");
|
|
9
|
+
const ms_1 = tslib_1.__importDefault(require("ms"));
|
|
10
|
+
exports.SESSION_REPOSITORY = 'SESSION_REPOSITORY';
|
|
14
11
|
/**
|
|
15
12
|
* High-level session manager
|
|
16
13
|
* Handles session lifecycle using repository pattern
|
|
17
14
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
private readonly slidingExpiration: boolean;
|
|
23
|
-
|
|
24
|
-
constructor(
|
|
25
|
-
@Inject(SESSION_REPOSITORY)
|
|
26
|
-
private readonly repository: ISessionRepository,
|
|
27
|
-
) {
|
|
28
|
-
this.options = AuthConfigService.getOptions();
|
|
15
|
+
let SessionManagerService = class SessionManagerService {
|
|
16
|
+
constructor(repository) {
|
|
17
|
+
this.repository = repository;
|
|
18
|
+
this.options = auth_config_service_1.AuthConfigService.getOptions();
|
|
29
19
|
this.maxSessionsPerUser = this.options.session?.maxSessionsPerUser || 10;
|
|
30
20
|
this.slidingExpiration = this.options.session?.slidingExpiration ?? true;
|
|
31
21
|
}
|
|
32
|
-
|
|
33
22
|
/**
|
|
34
23
|
* Create a new session
|
|
35
24
|
*/
|
|
36
|
-
async createSession(payload
|
|
37
|
-
userId: string;
|
|
38
|
-
refreshToken?: string;
|
|
39
|
-
data?: any;
|
|
40
|
-
userAgent?: string;
|
|
41
|
-
deviceName?: string;
|
|
42
|
-
ipAddress?: string;
|
|
43
|
-
}): Promise<NestAuthSession> {
|
|
25
|
+
async createSession(payload) {
|
|
44
26
|
const { userId, refreshToken, data, userAgent, deviceName, ipAddress } = payload;
|
|
45
|
-
|
|
46
27
|
// Check max sessions limit
|
|
47
28
|
await this.enforceMaxSessions(userId);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
id: uuidv4(),
|
|
29
|
+
const sessionPayload = {
|
|
30
|
+
id: (0, uuid_1.v4)(),
|
|
51
31
|
userId,
|
|
52
32
|
refreshToken: refreshToken || '',
|
|
53
33
|
data: data || {},
|
|
54
34
|
expiresAt: this.calculateExpiration(),
|
|
55
|
-
userAgent: userAgent || RequestContext.currentRequest()?.headers['user-agent'] || 'Unknown',
|
|
56
|
-
deviceName: deviceName || RequestContext.getDeviceInfo().deviceName,
|
|
57
|
-
ipAddress: ipAddress || RequestContext.getDeviceInfo().ipAddress,
|
|
35
|
+
userAgent: userAgent || request_context_1.RequestContext.currentRequest()?.headers['user-agent'] || 'Unknown',
|
|
36
|
+
deviceName: deviceName || request_context_1.RequestContext.getDeviceInfo().deviceName,
|
|
37
|
+
ipAddress: ipAddress || request_context_1.RequestContext.getDeviceInfo().ipAddress,
|
|
58
38
|
lastActive: new Date(),
|
|
59
39
|
};
|
|
60
|
-
|
|
61
40
|
return await this.repository.create(sessionPayload);
|
|
62
41
|
}
|
|
63
|
-
|
|
64
42
|
/**
|
|
65
43
|
* Get session by ID and optionally refresh it
|
|
66
44
|
*/
|
|
67
|
-
async getSession(sessionId
|
|
45
|
+
async getSession(sessionId, refreshSession = true) {
|
|
68
46
|
const session = await this.repository.findById(sessionId);
|
|
69
|
-
|
|
70
47
|
if (!session) {
|
|
71
|
-
throw new UnauthorizedException('Session not found');
|
|
48
|
+
throw new common_1.UnauthorizedException('Session not found');
|
|
72
49
|
}
|
|
73
|
-
|
|
74
50
|
// Check if expired
|
|
75
51
|
if (this.isExpired(session)) {
|
|
76
52
|
await this.repository.delete(sessionId);
|
|
77
|
-
throw new UnauthorizedException('Session expired');
|
|
53
|
+
throw new common_1.UnauthorizedException('Session expired');
|
|
78
54
|
}
|
|
79
|
-
|
|
80
55
|
// Update last active if sliding expiration enabled
|
|
81
56
|
if (refreshSession && this.slidingExpiration) {
|
|
82
57
|
await this.repository.updateLastActive(sessionId);
|
|
83
58
|
}
|
|
84
|
-
|
|
85
59
|
return session;
|
|
86
60
|
}
|
|
87
|
-
|
|
88
61
|
/**
|
|
89
62
|
* Get all sessions for a user
|
|
90
63
|
*/
|
|
91
|
-
async getUserSessions(userId
|
|
64
|
+
async getUserSessions(userId) {
|
|
92
65
|
return await this.repository.findByUserId(userId);
|
|
93
66
|
}
|
|
94
|
-
|
|
95
67
|
/**
|
|
96
68
|
* Get active sessions for a user
|
|
97
69
|
*/
|
|
98
|
-
async getActiveSessions(userId
|
|
70
|
+
async getActiveSessions(userId) {
|
|
99
71
|
return await this.repository.findActiveByUserId(userId);
|
|
100
72
|
}
|
|
101
|
-
|
|
102
73
|
/**
|
|
103
74
|
* Update session data
|
|
104
75
|
*/
|
|
105
|
-
async updateSession(sessionId
|
|
76
|
+
async updateSession(sessionId, updates) {
|
|
106
77
|
return await this.repository.update(sessionId, updates);
|
|
107
78
|
}
|
|
108
|
-
|
|
109
79
|
/**
|
|
110
80
|
* Revoke (delete) a session
|
|
111
81
|
*/
|
|
112
|
-
async revokeSession(sessionId
|
|
82
|
+
async revokeSession(sessionId) {
|
|
113
83
|
await this.repository.delete(sessionId);
|
|
114
84
|
}
|
|
115
|
-
|
|
116
85
|
/**
|
|
117
86
|
* Revoke all sessions for a user
|
|
118
87
|
*/
|
|
119
|
-
async revokeAllUserSessions(userId
|
|
88
|
+
async revokeAllUserSessions(userId) {
|
|
120
89
|
await this.repository.deleteByUserId(userId);
|
|
121
90
|
}
|
|
122
|
-
|
|
123
91
|
/**
|
|
124
92
|
* Revoke all sessions except the current one
|
|
125
93
|
*/
|
|
126
|
-
async revokeOtherSessions(userId
|
|
94
|
+
async revokeOtherSessions(userId, currentSessionId) {
|
|
127
95
|
const sessions = await this.repository.findByUserId(userId);
|
|
128
|
-
|
|
129
96
|
for (const session of sessions) {
|
|
130
97
|
if (session.id !== currentSessionId) {
|
|
131
98
|
await this.repository.delete(session.id);
|
|
132
99
|
}
|
|
133
100
|
}
|
|
134
101
|
}
|
|
135
|
-
|
|
136
102
|
/**
|
|
137
103
|
* Clean up expired sessions
|
|
138
104
|
*/
|
|
139
|
-
async cleanupExpiredSessions()
|
|
105
|
+
async cleanupExpiredSessions() {
|
|
140
106
|
return await this.repository.deleteExpired();
|
|
141
107
|
}
|
|
142
|
-
|
|
143
108
|
/**
|
|
144
109
|
* Extend session expiration
|
|
145
110
|
*/
|
|
146
|
-
async extendSession(sessionId
|
|
111
|
+
async extendSession(sessionId, duration) {
|
|
147
112
|
const expiresAt = this.calculateExpiration(duration);
|
|
148
|
-
return await this.repository.update(sessionId, { expiresAt }
|
|
113
|
+
return await this.repository.update(sessionId, { expiresAt });
|
|
149
114
|
}
|
|
150
|
-
|
|
151
115
|
/**
|
|
152
116
|
* Validate session and return it if valid
|
|
153
117
|
*/
|
|
154
|
-
async validateSession(sessionId
|
|
118
|
+
async validateSession(sessionId) {
|
|
155
119
|
try {
|
|
156
120
|
return await this.getSession(sessionId, true);
|
|
157
|
-
}
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
158
123
|
return null;
|
|
159
124
|
}
|
|
160
125
|
}
|
|
161
|
-
|
|
162
126
|
/**
|
|
163
127
|
* Check if user has reached max sessions limit
|
|
164
128
|
*/
|
|
165
|
-
async hasReachedMaxSessions(userId
|
|
129
|
+
async hasReachedMaxSessions(userId) {
|
|
166
130
|
const count = await this.repository.countActiveByUserId(userId);
|
|
167
131
|
return count >= this.maxSessionsPerUser;
|
|
168
132
|
}
|
|
169
|
-
|
|
170
133
|
/**
|
|
171
134
|
* Enforce max sessions per user by removing oldest sessions
|
|
172
135
|
*/
|
|
173
|
-
|
|
136
|
+
async enforceMaxSessions(userId) {
|
|
174
137
|
const activeSessions = await this.repository.findActiveByUserId(userId);
|
|
175
|
-
|
|
176
138
|
if (activeSessions.length >= this.maxSessionsPerUser) {
|
|
177
139
|
// Sort by lastActive (oldest first)
|
|
178
140
|
const sorted = activeSessions.sort((a, b) => {
|
|
@@ -180,7 +142,6 @@ export class SessionManagerService {
|
|
|
180
142
|
const bTime = b.lastActive?.getTime() || 0;
|
|
181
143
|
return aTime - bTime;
|
|
182
144
|
});
|
|
183
|
-
|
|
184
145
|
// Remove oldest session(s)
|
|
185
146
|
const toRemove = sorted.slice(0, activeSessions.length - this.maxSessionsPerUser + 1);
|
|
186
147
|
for (const session of toRemove) {
|
|
@@ -188,39 +149,34 @@ export class SessionManagerService {
|
|
|
188
149
|
}
|
|
189
150
|
}
|
|
190
151
|
}
|
|
191
|
-
|
|
192
152
|
/**
|
|
193
153
|
* Calculate session expiration date
|
|
194
154
|
*/
|
|
195
|
-
|
|
155
|
+
calculateExpiration(duration) {
|
|
196
156
|
const expiryDuration = duration || this.options.session?.sessionExpiry || '7d';
|
|
197
|
-
const milliseconds =
|
|
157
|
+
const milliseconds = (0, ms_1.default)(expiryDuration);
|
|
198
158
|
return new Date(Date.now() + milliseconds);
|
|
199
159
|
}
|
|
200
|
-
|
|
201
160
|
/**
|
|
202
161
|
* Check if session is expired
|
|
203
162
|
*/
|
|
204
|
-
|
|
205
|
-
if (!session.expiresAt)
|
|
163
|
+
isExpired(session) {
|
|
164
|
+
if (!session.expiresAt)
|
|
165
|
+
return false;
|
|
206
166
|
return new Date() > new Date(session.expiresAt);
|
|
207
167
|
}
|
|
208
|
-
|
|
209
168
|
/**
|
|
210
169
|
* Create session from user (helper method from old BaseSessionService)
|
|
211
170
|
* For backward compatibility with AuthService
|
|
212
171
|
*/
|
|
213
|
-
async createSessionFromUser(user
|
|
214
|
-
const { deviceName, ipAddress, browser } = RequestContext.getDeviceInfo();
|
|
172
|
+
async createSessionFromUser(user, extraData = {}) {
|
|
173
|
+
const { deviceName, ipAddress, browser } = request_context_1.RequestContext.getDeviceInfo();
|
|
215
174
|
const { isMfaVerified = false } = extraData;
|
|
216
|
-
|
|
217
175
|
if (!user) {
|
|
218
|
-
throw new UnauthorizedException('User not found');
|
|
176
|
+
throw new common_1.UnauthorizedException('User not found');
|
|
219
177
|
}
|
|
220
|
-
|
|
221
178
|
const roles = await user.getRoles();
|
|
222
179
|
const permissions = await user.getPermissions();
|
|
223
|
-
|
|
224
180
|
// Create session using createSession method
|
|
225
181
|
return await this.createSession({
|
|
226
182
|
userId: user.id,
|
|
@@ -235,12 +191,11 @@ export class SessionManagerService {
|
|
|
235
191
|
deviceName,
|
|
236
192
|
});
|
|
237
193
|
}
|
|
238
|
-
|
|
239
194
|
/**
|
|
240
195
|
* Create new session from existing session (for refresh)
|
|
241
196
|
* For backward compatibility with AuthService
|
|
242
197
|
*/
|
|
243
|
-
async createSessionFromSession(session
|
|
198
|
+
async createSessionFromSession(session) {
|
|
244
199
|
return await this.createSession({
|
|
245
200
|
userId: session.userId,
|
|
246
201
|
refreshToken: session.refreshToken,
|
|
@@ -250,12 +205,17 @@ export class SessionManagerService {
|
|
|
250
205
|
ipAddress: session.ipAddress,
|
|
251
206
|
});
|
|
252
207
|
}
|
|
253
|
-
|
|
254
208
|
/**
|
|
255
209
|
* Get current active sessions for a user
|
|
256
210
|
* For backward compatibility with AuthService
|
|
257
211
|
*/
|
|
258
|
-
async getCurrentSessions(userId
|
|
212
|
+
async getCurrentSessions(userId) {
|
|
259
213
|
return await this.getActiveSessions(userId);
|
|
260
214
|
}
|
|
261
|
-
}
|
|
215
|
+
};
|
|
216
|
+
exports.SessionManagerService = SessionManagerService;
|
|
217
|
+
exports.SessionManagerService = SessionManagerService = tslib_1.__decorate([
|
|
218
|
+
(0, common_1.Injectable)(),
|
|
219
|
+
tslib_1.__param(0, (0, common_1.Inject)(exports.SESSION_REPOSITORY)),
|
|
220
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
221
|
+
], SessionManagerService);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Module
|
|
3
|
+
*
|
|
4
|
+
* DEFAULT: Uses TypeORM (Database) for session storage
|
|
5
|
+
* OPTIONAL: Can use Redis if configured (requires ioredis packages)
|
|
6
|
+
*/
|
|
7
|
+
export declare class SessionModule {
|
|
8
|
+
/**
|
|
9
|
+
* Create Redis repository instance
|
|
10
|
+
* Only called if Redis storage is configured
|
|
11
|
+
*/
|
|
12
|
+
private static createRedisRepository;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=session.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.module.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/session/session.module.ts"],"names":[],"mappings":"AAUA;;;;;GAKG;AACH,qBA0Ca,aAAa;IACtB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;CAsCvC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SessionModule = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const typeorm_1 = require("@nestjs/typeorm");
|
|
7
|
+
const session_entity_1 = require("./entities/session.entity");
|
|
8
|
+
const session_manager_service_1 = require("./services/session-manager.service");
|
|
9
|
+
const typeorm_session_repository_1 = require("./repositories/typeorm-session.repository");
|
|
10
|
+
const memory_session_repository_1 = require("./repositories/memory-session.repository");
|
|
11
|
+
const core_module_1 = require("../core/core.module");
|
|
12
|
+
const session_options_interface_1 = require("../core/interfaces/session-options.interface");
|
|
13
|
+
const auth_config_service_1 = require("../core/services/auth-config.service");
|
|
14
|
+
/**
|
|
15
|
+
* Session Module
|
|
16
|
+
*
|
|
17
|
+
* DEFAULT: Uses TypeORM (Database) for session storage
|
|
18
|
+
* OPTIONAL: Can use Redis if configured (requires ioredis packages)
|
|
19
|
+
*/
|
|
20
|
+
let SessionModule = class SessionModule {
|
|
21
|
+
/**
|
|
22
|
+
* Create Redis repository instance
|
|
23
|
+
* Only called if Redis storage is configured
|
|
24
|
+
*/
|
|
25
|
+
static createRedisRepository(redisUrl) {
|
|
26
|
+
let RedisSessionRepository;
|
|
27
|
+
let ioredisModule;
|
|
28
|
+
let redisClient;
|
|
29
|
+
// Try to load Redis modules
|
|
30
|
+
try {
|
|
31
|
+
// Lazy load Redis repository
|
|
32
|
+
RedisSessionRepository = require('./repositories/redis-session.repository').RedisSessionRepository;
|
|
33
|
+
ioredisModule = require('@nestjs-modules/ioredis');
|
|
34
|
+
const Redis = require('ioredis').default || require('ioredis');
|
|
35
|
+
// Create Redis client
|
|
36
|
+
if (redisUrl) {
|
|
37
|
+
redisClient = new Redis(redisUrl);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
redisClient = new Redis(); // Uses default localhost:6379
|
|
41
|
+
}
|
|
42
|
+
// Return repository instance
|
|
43
|
+
return new RedisSessionRepository(redisClient);
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
47
|
+
if (errorMessage.includes('Cannot find module')) {
|
|
48
|
+
throw new Error('❌ Redis session storage is configured but packages are not installed.\n' +
|
|
49
|
+
' Install them with: npm install ioredis @nestjs-modules/ioredis\n' +
|
|
50
|
+
' Or change session.storageType to SessionStorageType.DATABASE');
|
|
51
|
+
}
|
|
52
|
+
throw new Error(`❌ Failed to initialize Redis session storage: ${errorMessage}\n` +
|
|
53
|
+
' Make sure Redis server is running and accessible.');
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.SessionModule = SessionModule;
|
|
58
|
+
exports.SessionModule = SessionModule = tslib_1.__decorate([
|
|
59
|
+
(0, common_1.Module)({
|
|
60
|
+
imports: [
|
|
61
|
+
typeorm_1.TypeOrmModule.forFeature([session_entity_1.NestAuthSession]),
|
|
62
|
+
(0, common_1.forwardRef)(() => core_module_1.CoreModule),
|
|
63
|
+
],
|
|
64
|
+
providers: [
|
|
65
|
+
// Repository implementations
|
|
66
|
+
typeorm_session_repository_1.TypeORMSessionRepository,
|
|
67
|
+
memory_session_repository_1.MemorySessionRepository,
|
|
68
|
+
// Session Repository Provider (dynamically chooses storage)
|
|
69
|
+
{
|
|
70
|
+
provide: session_manager_service_1.SESSION_REPOSITORY,
|
|
71
|
+
useFactory: (typeormRepo) => {
|
|
72
|
+
const config = auth_config_service_1.AuthConfigService.getOptions();
|
|
73
|
+
const storageType = config.session?.storageType || session_options_interface_1.SessionStorageType.DATABASE;
|
|
74
|
+
// Handle Redis storage
|
|
75
|
+
if (storageType === session_options_interface_1.SessionStorageType.REDIS) {
|
|
76
|
+
return SessionModule.createRedisRepository(config.session?.redisUrl);
|
|
77
|
+
}
|
|
78
|
+
if (storageType === session_options_interface_1.SessionStorageType.MEMORY) {
|
|
79
|
+
return new memory_session_repository_1.MemorySessionRepository();
|
|
80
|
+
}
|
|
81
|
+
// Default to database storage
|
|
82
|
+
return typeormRepo;
|
|
83
|
+
},
|
|
84
|
+
inject: [typeorm_session_repository_1.TypeORMSessionRepository],
|
|
85
|
+
},
|
|
86
|
+
// Session Manager
|
|
87
|
+
session_manager_service_1.SessionManagerService,
|
|
88
|
+
],
|
|
89
|
+
exports: [
|
|
90
|
+
session_manager_service_1.SESSION_REPOSITORY,
|
|
91
|
+
session_manager_service_1.SessionManagerService,
|
|
92
|
+
typeorm_session_repository_1.TypeORMSessionRepository,
|
|
93
|
+
memory_session_repository_1.MemorySessionRepository,
|
|
94
|
+
],
|
|
95
|
+
})
|
|
96
|
+
], SessionModule);
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { NestAuthSession } from '../entities/session.entity';
|
|
2
|
+
/**
|
|
3
|
+
* Session utility functions
|
|
4
|
+
*/
|
|
5
|
+
export declare class SessionUtil {
|
|
6
|
+
/**
|
|
7
|
+
* Extract session metadata (device, location, etc.)
|
|
8
|
+
*/
|
|
9
|
+
static extractMetadata(session: NestAuthSession): {
|
|
10
|
+
device: string;
|
|
11
|
+
ip: string;
|
|
12
|
+
location?: string;
|
|
13
|
+
browser?: string;
|
|
14
|
+
os?: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Calculate remaining session time
|
|
18
|
+
*/
|
|
19
|
+
static getRemainingTime(session: NestAuthSession): {
|
|
20
|
+
milliseconds: number;
|
|
21
|
+
seconds: number;
|
|
22
|
+
minutes: number;
|
|
23
|
+
hours: number;
|
|
24
|
+
formatted: string;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Check if session is about to expire (within threshold)
|
|
28
|
+
*/
|
|
29
|
+
static isExpiringSoon(session: NestAuthSession, thresholdMs?: number): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Check if session is expired
|
|
32
|
+
*/
|
|
33
|
+
static isExpired(session: NestAuthSession): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Check if session is active (not expired)
|
|
36
|
+
*/
|
|
37
|
+
static isActive(session: NestAuthSession): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Format session for display
|
|
40
|
+
*/
|
|
41
|
+
static formatForDisplay(session: NestAuthSession): {
|
|
42
|
+
id: string;
|
|
43
|
+
device: string;
|
|
44
|
+
ipAddress: string;
|
|
45
|
+
lastActive: string;
|
|
46
|
+
expiresAt: string;
|
|
47
|
+
isActive: boolean;
|
|
48
|
+
isCurrent?: boolean;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Sanitize session data (remove sensitive information)
|
|
52
|
+
*/
|
|
53
|
+
static sanitize(session: NestAuthSession): Partial<NestAuthSession>;
|
|
54
|
+
/**
|
|
55
|
+
* Compare two sessions
|
|
56
|
+
*/
|
|
57
|
+
static isSameDevice(session1: NestAuthSession, session2: NestAuthSession): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Get session age
|
|
60
|
+
*/
|
|
61
|
+
static getAge(session: NestAuthSession): {
|
|
62
|
+
milliseconds: number;
|
|
63
|
+
formatted: string;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Get idle time (time since last activity)
|
|
67
|
+
*/
|
|
68
|
+
static getIdleTime(session: NestAuthSession): {
|
|
69
|
+
milliseconds: number;
|
|
70
|
+
formatted: string;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=session.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.util.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/session/utils/session.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D;;GAEG;AACH,qBAAa,WAAW;IACpB;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG;QAC9C,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,EAAE,CAAC,EAAE,MAAM,CAAC;KACf;IAQD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG;QAC/C,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KACrB;IA4BD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,WAAW,GAAE,MAAsB,GAAG,OAAO;IAK7F;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAKnD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAIlD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG;QAC/C,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACvB;IAeD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAKnE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO;IAQlF;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,GAAG;QACrC,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACrB;IAYD;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG;QAC1C,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACrB;CAWJ"}
|