@ackplus/nest-auth 0.0.26 → 0.0.28
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 +1 -1
- package/src/index.d.ts +6 -10
- package/src/index.js +6 -10
- package/src/index.js.map +1 -1
- package/src/lib/auth/auth.module.d.ts +2 -0
- package/src/lib/auth/auth.module.js +52 -0
- package/src/lib/auth/auth.module.js.map +1 -0
- package/src/lib/{controllers → auth/controllers}/auth.controller.d.ts +6 -5
- package/src/lib/{controllers → auth/controllers}/auth.controller.js +32 -57
- package/src/lib/auth/controllers/auth.controller.js.map +1 -0
- package/src/lib/{controllers → auth/controllers}/mfa.controller.js +18 -20
- package/src/lib/auth/controllers/mfa.controller.js.map +1 -0
- package/src/lib/auth/dto/index.js +1 -0
- package/src/lib/auth/dto/index.js.map +1 -0
- package/src/lib/auth/dto/requests/forgot-password.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/login.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/refresh-token.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/reset-password.request.dto.js.map +1 -0
- package/src/lib/{dto → auth/dto}/requests/send-mfa-code.request.dto.d.ts +1 -1
- package/src/lib/{dto → auth/dto}/requests/send-mfa-code.request.dto.js +3 -3
- package/src/lib/auth/dto/requests/send-mfa-code.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/signup.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/social-login.request.dto.js.map +1 -0
- package/src/lib/{dto → auth/dto}/requests/verify-2fa.request.dto.d.ts +1 -1
- package/src/lib/{dto → auth/dto}/requests/verify-2fa.request.dto.js +3 -3
- package/src/lib/auth/dto/requests/verify-2fa.request.dto.js.map +1 -0
- package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.js.map +1 -0
- package/src/lib/auth/dto/responses/auth.response.dto.js.map +1 -0
- package/src/lib/{entities → auth/entities}/mfa-secret.entity.d.ts +1 -1
- package/src/lib/{entities → auth/entities}/mfa-secret.entity.js +2 -3
- package/src/lib/auth/entities/mfa-secret.entity.js.map +1 -0
- package/src/lib/{entities → auth/entities}/otp.entity.d.ts +5 -8
- package/src/lib/{entities → auth/entities}/otp.entity.js +15 -17
- package/src/lib/auth/entities/otp.entity.js.map +1 -0
- package/src/lib/{events → auth/events}/logged-out-all.event.d.ts +2 -2
- package/src/lib/auth/events/logged-out-all.event.js.map +1 -0
- package/src/lib/{events → auth/events}/logged-out.event.d.ts +2 -2
- package/src/lib/auth/events/logged-out.event.js.map +1 -0
- package/src/lib/{events → auth/events}/password-reset-requested.event.d.ts +2 -2
- package/src/lib/auth/events/password-reset-requested.event.js.map +1 -0
- package/src/lib/{events → auth/events}/password-reset.event.d.ts +1 -1
- package/src/lib/auth/events/password-reset.event.js.map +1 -0
- package/src/lib/{events → auth/events}/user-2fa-verified.event.d.ts +3 -3
- package/src/lib/auth/events/user-2fa-verified.event.js.map +1 -0
- package/src/lib/{events → auth/events}/user-logged-in.event.d.ts +5 -4
- package/src/lib/auth/events/user-logged-in.event.js.map +1 -0
- package/src/lib/{events → auth/events}/user-refresh-token.event.d.ts +2 -2
- package/src/lib/auth/events/user-refresh-token.event.js.map +1 -0
- package/src/lib/auth/index.d.ts +16 -0
- package/src/lib/auth/index.js +20 -0
- package/src/lib/auth/index.js.map +1 -0
- package/src/lib/{services → auth/services}/auth.service.d.ts +13 -13
- package/src/lib/{services → auth/services}/auth.service.js +27 -44
- package/src/lib/auth/services/auth.service.js.map +1 -0
- package/src/lib/{services → auth/services}/cookie.service.d.ts +1 -1
- package/src/lib/{services → auth/services}/cookie.service.js +1 -1
- package/src/lib/auth/services/cookie.service.js.map +1 -0
- package/src/lib/{services → auth/services}/mfa.service.d.ts +5 -5
- package/src/lib/{services → auth/services}/mfa.service.js +16 -15
- package/src/lib/auth/services/mfa.service.js.map +1 -0
- package/src/lib/auth.constants.d.ts +20 -0
- package/src/lib/auth.constants.js +21 -1
- package/src/lib/auth.constants.js.map +1 -1
- package/src/lib/core/core.module.d.ts +5 -0
- package/src/lib/core/core.module.js +67 -0
- package/src/lib/core/core.module.js.map +1 -0
- package/src/lib/core/decorators/role.decorator.d.ts +3 -0
- package/src/lib/{decorators/nest-auth-role.decorator.js → core/decorators/role.decorator.js} +1 -1
- package/src/lib/core/decorators/role.decorator.js.map +1 -0
- package/src/lib/core/decorators/skip-mfa.decorator.js.map +1 -0
- package/src/lib/core/dto/message.response.dto.js.map +1 -0
- package/src/lib/core/entities.d.ts +23 -0
- package/src/lib/core/entities.js +40 -0
- package/src/lib/core/entities.js.map +1 -0
- package/src/lib/{guards → core/guards}/auth.guard.d.ts +6 -6
- package/src/lib/{guards → core/guards}/auth.guard.js +12 -12
- package/src/lib/core/guards/auth.guard.js.map +1 -0
- package/src/lib/{guards/nest-auth-role.guard.js → core/guards/role.guard.js} +8 -5
- package/src/lib/core/guards/role.guard.js.map +1 -0
- package/src/lib/core/index.d.ts +23 -0
- package/src/lib/core/index.js +27 -0
- package/src/lib/core/index.js.map +1 -0
- package/src/lib/core/interfaces/auth-module-options.interface.js.map +1 -0
- package/src/lib/core/interfaces/mfa-options.interface.js.map +1 -0
- package/src/lib/core/interfaces/otp.interface.d.ts +5 -0
- package/src/lib/core/interfaces/otp.interface.js +10 -0
- package/src/lib/core/interfaces/otp.interface.js.map +1 -0
- package/src/lib/core/interfaces/session-options.interface.js.map +1 -0
- package/src/lib/{interfaces → core/interfaces}/token-payload.interface.d.ts +1 -1
- package/src/lib/core/interfaces/token-payload.interface.js.map +1 -0
- package/src/lib/{providers → core/providers}/apple-auth.provider.d.ts +5 -8
- package/src/lib/{providers → core/providers}/apple-auth.provider.js +9 -12
- package/src/lib/{providers → core/providers}/apple-auth.provider.js.map +1 -1
- package/src/lib/{providers → core/providers}/base-auth.provider.d.ts +2 -2
- package/src/lib/{providers → core/providers}/base-auth.provider.js +2 -15
- package/src/lib/core/providers/base-auth.provider.js.map +1 -0
- package/src/lib/core/providers/email-auth.provider.d.ts +19 -0
- package/src/lib/{providers → core/providers}/email-auth.provider.js +10 -13
- package/src/lib/core/providers/email-auth.provider.js.map +1 -0
- package/src/lib/core/providers/facebook-auth.provider.d.ts +20 -0
- package/src/lib/{providers → core/providers}/facebook-auth.provider.js +10 -13
- package/src/lib/{providers → core/providers}/facebook-auth.provider.js.map +1 -1
- package/src/lib/{providers → core/providers}/google-auth.provider.d.ts +4 -7
- package/src/lib/{providers → core/providers}/google-auth.provider.js +10 -13
- package/src/lib/core/providers/google-auth.provider.js.map +1 -0
- package/src/lib/{providers → core/providers}/jwt-auth.provider.d.ts +4 -7
- package/src/lib/{providers → core/providers}/jwt-auth.provider.js +9 -12
- package/src/lib/core/providers/jwt-auth.provider.js.map +1 -0
- package/src/lib/core/providers/phone-auth.provider.d.ts +20 -0
- package/src/lib/{providers → core/providers}/phone-auth.provider.js +10 -13
- package/src/lib/core/providers/phone-auth.provider.js.map +1 -0
- package/src/lib/{services → core/services}/auth-provider-registry.service.js +1 -1
- package/src/lib/core/services/auth-provider-registry.service.js.map +1 -0
- package/src/lib/{services → core/services}/jwt.service.d.ts +2 -2
- package/src/lib/{services → core/services}/jwt.service.js +1 -1
- package/src/lib/core/services/jwt.service.js.map +1 -0
- package/src/lib/nest-auth.module.d.ts +3 -7
- package/src/lib/nest-auth.module.js +54 -196
- package/src/lib/nest-auth.module.js.map +1 -1
- package/src/lib/request-context/request-context.d.ts +1 -1
- package/src/lib/request-context/request-context.js.map +1 -1
- package/src/lib/{entities → role/entities}/permission.entity.js +1 -1
- package/src/lib/role/entities/permission.entity.js.map +1 -0
- package/src/lib/role/entities/role-permission.entity.js.map +1 -0
- package/src/lib/{entities → role/entities}/role.entity.d.ts +1 -1
- package/src/lib/{entities → role/entities}/role.entity.js +2 -2
- package/src/lib/role/entities/role.entity.js.map +1 -0
- package/src/lib/{entities → role/entities}/user-role.entity.d.ts +2 -2
- package/src/lib/{entities → role/entities}/user-role.entity.js +2 -2
- package/src/lib/role/entities/user-role.entity.js.map +1 -0
- package/src/lib/role/index.d.ts +2 -0
- package/src/lib/role/index.js +6 -0
- package/src/lib/role/index.js.map +1 -0
- package/src/lib/role/role.module.d.ts +2 -0
- package/src/lib/role/role.module.js +24 -0
- package/src/lib/role/role.module.js.map +1 -0
- package/src/lib/{services → role/services}/role.service.d.ts +1 -1
- package/src/lib/{services → role/services}/role.service.js +1 -1
- package/src/lib/role/services/role.service.js.map +1 -0
- package/src/lib/{entities → session/entities}/session.entity.d.ts +1 -1
- package/src/lib/{entities → session/entities}/session.entity.js +1 -1
- package/src/lib/session/entities/session.entity.js.map +1 -0
- package/src/lib/session/index.d.ts +4 -0
- package/src/lib/session/index.js +8 -0
- package/src/lib/session/index.js.map +1 -0
- package/src/lib/{services/session → session/services}/base-session.service.d.ts +4 -4
- package/src/lib/{services/session → session/services}/base-session.service.js +1 -1
- package/src/lib/{services/session → session/services}/base-session.service.js.map +1 -1
- package/src/lib/{services/session → session/services}/database-session.service.d.ts +3 -3
- package/src/lib/{services/session → session/services}/database-session.service.js +1 -1
- package/src/lib/{services/session → session/services}/database-session.service.js.map +1 -1
- package/src/lib/{services/session → session/services}/redis-session.service.d.ts +2 -2
- package/src/lib/{services/session → session/services}/redis-session.service.js.map +1 -1
- package/src/lib/session/session.module.d.ts +2 -0
- package/src/lib/session/session.module.js +33 -0
- package/src/lib/session/session.module.js.map +1 -0
- package/src/lib/tenant/entities/tenant.entity.js.map +1 -0
- package/src/lib/{events → tenant/events}/tenant-created.event.d.ts +1 -1
- package/src/lib/tenant/events/tenant-created.event.js.map +1 -0
- package/src/lib/tenant/events/tenant-deleted.event.js.map +1 -0
- package/src/lib/tenant/events/tenant-updated.event.js.map +1 -0
- package/src/lib/tenant/index.d.ts +3 -0
- package/src/lib/tenant/index.js +7 -0
- package/src/lib/tenant/index.js.map +1 -0
- package/src/lib/{services → tenant/services}/tenant.service.d.ts +1 -1
- package/src/lib/{services → tenant/services}/tenant.service.js +8 -6
- package/src/lib/tenant/services/tenant.service.js.map +1 -0
- package/src/lib/tenant/tenant.module.d.ts +2 -0
- package/src/lib/tenant/tenant.module.js +27 -0
- package/src/lib/tenant/tenant.module.js.map +1 -0
- package/src/lib/user/dto/requests/update-user.dto.js.map +1 -0
- package/src/lib/user/entities/access-key.entity.js.map +1 -0
- package/src/lib/{entities → user/entities}/auth-identity.entity.js +1 -1
- package/src/lib/user/entities/auth-identity.entity.js.map +1 -0
- package/src/lib/{entities → user/entities}/user.entity.d.ts +5 -7
- package/src/lib/{entities → user/entities}/user.entity.js +8 -16
- package/src/lib/user/entities/user.entity.js.map +1 -0
- package/src/lib/user/events/user-created.event.js.map +1 -0
- package/src/lib/user/events/user-deleted.event.js.map +1 -0
- package/src/lib/{events → user/events}/user-registered.event.d.ts +4 -3
- package/src/lib/user/events/user-registered.event.js.map +1 -0
- package/src/lib/user/events/user-updated.event.js.map +1 -0
- package/src/lib/user/index.d.ts +4 -0
- package/src/lib/user/index.js +8 -0
- package/src/lib/user/index.js.map +1 -0
- package/src/lib/{services → user/services}/access-key.service.js +4 -4
- package/src/lib/user/services/access-key.service.js.map +1 -0
- package/src/lib/{services → user/services}/user.service.d.ts +1 -1
- package/src/lib/{services → user/services}/user.service.js +7 -6
- package/src/lib/user/services/user.service.js.map +1 -0
- package/src/lib/user/user.module.d.ts +2 -0
- package/src/lib/user/user.module.js +32 -0
- package/src/lib/user/user.module.js.map +1 -0
- package/src/lib/auth.module.js +0 -1
- package/src/lib/auth.module.js.map +0 -1
- package/src/lib/controllers/auth.controller.js.map +0 -1
- package/src/lib/controllers/mfa.controller.js.map +0 -1
- package/src/lib/decorators/nest-auth-role.decorator.d.ts +0 -3
- package/src/lib/decorators/nest-auth-role.decorator.js.map +0 -1
- package/src/lib/decorators/skip-mfa.decorator.js.map +0 -1
- package/src/lib/dto/index.d.ts +0 -12
- package/src/lib/dto/index.js +0 -16
- package/src/lib/dto/index.js.map +0 -1
- package/src/lib/dto/requests/forgot-password.request.dto.js.map +0 -1
- package/src/lib/dto/requests/login.request.dto.js.map +0 -1
- package/src/lib/dto/requests/refresh-token.request.dto.js.map +0 -1
- package/src/lib/dto/requests/reset-password.request.dto.js.map +0 -1
- package/src/lib/dto/requests/send-mfa-code.request.dto.js.map +0 -1
- package/src/lib/dto/requests/signup.request.dto.js.map +0 -1
- package/src/lib/dto/requests/social-login.request.dto.js.map +0 -1
- package/src/lib/dto/requests/update-user.dto.js.map +0 -1
- package/src/lib/dto/requests/verify-2fa.request.dto.js.map +0 -1
- package/src/lib/dto/requests/verify-totp-setup.request.dto.js.map +0 -1
- package/src/lib/dto/responses/auth.response.dto.js.map +0 -1
- package/src/lib/dto/responses/device-info.response.dto.d.ts +0 -6
- package/src/lib/dto/responses/device-info.response.dto.js +0 -25
- package/src/lib/dto/responses/device-info.response.dto.js.map +0 -1
- package/src/lib/dto/responses/message.response.dto.js.map +0 -1
- package/src/lib/entities/access-key.entity.js.map +0 -1
- package/src/lib/entities/auth-identity.entity.js.map +0 -1
- package/src/lib/entities/index.d.ts +0 -12
- package/src/lib/entities/index.js +0 -28
- package/src/lib/entities/index.js.map +0 -1
- package/src/lib/entities/mfa-secret.entity.js.map +0 -1
- package/src/lib/entities/otp.entity.js.map +0 -1
- package/src/lib/entities/permission.entity.js.map +0 -1
- package/src/lib/entities/role-permission.entity.js.map +0 -1
- package/src/lib/entities/role.entity.js.map +0 -1
- package/src/lib/entities/session.entity.js.map +0 -1
- package/src/lib/entities/tenant.entity.js.map +0 -1
- package/src/lib/entities/user-role.entity.js.map +0 -1
- package/src/lib/entities/user.entity.js.map +0 -1
- package/src/lib/events/index.d.ts +0 -34
- package/src/lib/events/index.js +0 -39
- package/src/lib/events/index.js.map +0 -1
- package/src/lib/events/logged-out-all.event.js.map +0 -1
- package/src/lib/events/logged-out.event.js.map +0 -1
- package/src/lib/events/password-reset-requested.event.js.map +0 -1
- package/src/lib/events/password-reset.event.js.map +0 -1
- package/src/lib/events/tenant-created.event.js.map +0 -1
- package/src/lib/events/tenant-deleted.event.js.map +0 -1
- package/src/lib/events/tenant-updated.event.js.map +0 -1
- package/src/lib/events/user-2fa-verified.event.js.map +0 -1
- package/src/lib/events/user-created.event.js.map +0 -1
- package/src/lib/events/user-deleted.event.js.map +0 -1
- package/src/lib/events/user-logged-in.event.js.map +0 -1
- package/src/lib/events/user-refresh-token.event.js.map +0 -1
- package/src/lib/events/user-registered.event.js.map +0 -1
- package/src/lib/events/user-updated.event.js.map +0 -1
- package/src/lib/guards/auth.guard.js.map +0 -1
- package/src/lib/guards/nest-auth-role.guard.js.map +0 -1
- package/src/lib/interceptors/token.interceptor.d.ts +0 -10
- package/src/lib/interceptors/token.interceptor.js +0 -41
- package/src/lib/interceptors/token.interceptor.js.map +0 -1
- package/src/lib/interfaces/auth-module-options.interface.js.map +0 -1
- package/src/lib/interfaces/mfa-options.interface.js.map +0 -1
- package/src/lib/interfaces/session-options.interface.js.map +0 -1
- package/src/lib/interfaces/token-payload.interface.js.map +0 -1
- package/src/lib/migrations/1746242659133-migration.d.ts +0 -6
- package/src/lib/migrations/1746242659133-migration.js +0 -66
- package/src/lib/migrations/1746242659133-migration.js.map +0 -1
- package/src/lib/migrations/1746244352713-migration.d.ts +0 -6
- package/src/lib/migrations/1746244352713-migration.js +0 -16
- package/src/lib/migrations/1746244352713-migration.js.map +0 -1
- package/src/lib/migrations/1746685353680-migration.d.ts +0 -6
- package/src/lib/migrations/1746685353680-migration.js +0 -42
- package/src/lib/migrations/1746685353680-migration.js.map +0 -1
- package/src/lib/providers/base-auth.provider.js.map +0 -1
- package/src/lib/providers/email-auth.provider.d.ts +0 -21
- package/src/lib/providers/email-auth.provider.js.map +0 -1
- package/src/lib/providers/facebook-auth.provider.d.ts +0 -23
- package/src/lib/providers/google-auth.provider.js.map +0 -1
- package/src/lib/providers/index.d.ts +0 -7
- package/src/lib/providers/index.js +0 -16
- package/src/lib/providers/index.js.map +0 -1
- package/src/lib/providers/jwt-auth.provider.js.map +0 -1
- package/src/lib/providers/phone-auth.provider.d.ts +0 -22
- package/src/lib/providers/phone-auth.provider.js.map +0 -1
- package/src/lib/services/access-key.service.js.map +0 -1
- package/src/lib/services/auth-migration-service.d.ts +0 -22
- package/src/lib/services/auth-migration-service.js +0 -129
- package/src/lib/services/auth-migration-service.js.map +0 -1
- package/src/lib/services/auth-provider-registry.service.js.map +0 -1
- package/src/lib/services/auth.service.js.map +0 -1
- package/src/lib/services/cookie.service.js.map +0 -1
- package/src/lib/services/jwt.service.js.map +0 -1
- package/src/lib/services/mfa.service.js.map +0 -1
- package/src/lib/services/role.service.js.map +0 -1
- package/src/lib/services/tenant.service.js.map +0 -1
- package/src/lib/services/user.service.js.map +0 -1
- package/src/typeorm.config.d.ts +0 -2
- package/src/typeorm.config.js +0 -18
- package/src/typeorm.config.js.map +0 -1
- package/src/lib/{controllers → auth/controllers}/mfa.controller.d.ts +0 -0
- package/src/lib/{auth.module.d.ts → auth/dto/index.d.ts} +0 -0
- package/src/lib/{dto → auth/dto}/requests/forgot-password.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/forgot-password.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/login.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/login.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/refresh-token.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/refresh-token.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/reset-password.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/reset-password.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/signup.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/signup.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/social-login.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/social-login.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/requests/verify-totp-setup.request.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/requests/verify-totp-setup.request.dto.js +0 -0
- package/src/lib/{dto → auth/dto}/responses/auth.response.dto.d.ts +0 -0
- package/src/lib/{dto → auth/dto}/responses/auth.response.dto.js +0 -0
- package/src/lib/{events → auth/events}/logged-out-all.event.js +0 -0
- package/src/lib/{events → auth/events}/logged-out.event.js +0 -0
- package/src/lib/{events → auth/events}/password-reset-requested.event.js +0 -0
- package/src/lib/{events → auth/events}/password-reset.event.js +0 -0
- package/src/lib/{events → auth/events}/user-2fa-verified.event.js +0 -0
- package/src/lib/{events → auth/events}/user-logged-in.event.js +0 -0
- package/src/lib/{events → auth/events}/user-refresh-token.event.js +0 -0
- package/src/lib/{decorators → core/decorators}/skip-mfa.decorator.d.ts +0 -0
- package/src/lib/{decorators → core/decorators}/skip-mfa.decorator.js +0 -0
- package/src/lib/{dto/responses → core/dto}/message.response.dto.d.ts +0 -0
- package/src/lib/{dto/responses → core/dto}/message.response.dto.js +0 -0
- package/src/lib/{guards/nest-auth-role.guard.d.ts → core/guards/role.guard.d.ts} +0 -0
- package/src/lib/{interfaces → core/interfaces}/auth-module-options.interface.d.ts +1 -1
- package/src/lib/{interfaces → core/interfaces}/auth-module-options.interface.js +0 -0
- package/src/lib/{interfaces → core/interfaces}/mfa-options.interface.d.ts +0 -0
- package/src/lib/{interfaces → core/interfaces}/mfa-options.interface.js +0 -0
- package/src/lib/{interfaces → core/interfaces}/session-options.interface.d.ts +0 -0
- package/src/lib/{interfaces → core/interfaces}/session-options.interface.js +0 -0
- package/src/lib/{interfaces → core/interfaces}/token-payload.interface.js +0 -0
- package/src/lib/{services → core/services}/auth-provider-registry.service.d.ts +1 -1
- /package/src/lib/{entities → role/entities}/permission.entity.d.ts +0 -0
- /package/src/lib/{entities → role/entities}/role-permission.entity.d.ts +0 -0
- /package/src/lib/{entities → role/entities}/role-permission.entity.js +0 -0
- /package/src/lib/{services/session → session/services}/redis-session.service.js +0 -0
- /package/src/lib/{entities → tenant/entities}/tenant.entity.d.ts +0 -0
- /package/src/lib/{entities → tenant/entities}/tenant.entity.js +0 -0
- /package/src/lib/{events → tenant/events}/tenant-created.event.js +0 -0
- /package/src/lib/{events → tenant/events}/tenant-deleted.event.d.ts +0 -0
- /package/src/lib/{events → tenant/events}/tenant-deleted.event.js +0 -0
- /package/src/lib/{events → tenant/events}/tenant-updated.event.d.ts +0 -0
- /package/src/lib/{events → tenant/events}/tenant-updated.event.js +0 -0
- /package/src/lib/{dto → user/dto}/requests/update-user.dto.d.ts +0 -0
- /package/src/lib/{dto → user/dto}/requests/update-user.dto.js +0 -0
- /package/src/lib/{entities → user/entities}/access-key.entity.d.ts +0 -0
- /package/src/lib/{entities → user/entities}/access-key.entity.js +0 -0
- /package/src/lib/{entities → user/entities}/auth-identity.entity.d.ts +0 -0
- /package/src/lib/{events → user/events}/user-created.event.d.ts +0 -0
- /package/src/lib/{events → user/events}/user-created.event.js +0 -0
- /package/src/lib/{events → user/events}/user-deleted.event.d.ts +0 -0
- /package/src/lib/{events → user/events}/user-deleted.event.js +0 -0
- /package/src/lib/{events → user/events}/user-registered.event.js +0 -0
- /package/src/lib/{events → user/events}/user-updated.event.d.ts +0 -0
- /package/src/lib/{events → user/events}/user-updated.event.js +0 -0
- /package/src/lib/{services → user/services}/access-key.service.d.ts +0 -0
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OTP =
|
|
3
|
+
exports.OTP = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const typeorm_1 = require("typeorm");
|
|
6
|
-
const user_entity_1 = require("
|
|
7
|
-
|
|
8
|
-
(function (OTPTypeEnum) {
|
|
9
|
-
OTPTypeEnum["PASSWORD_RESET"] = "password_reset";
|
|
10
|
-
OTPTypeEnum["VERIFICATION"] = "verification";
|
|
11
|
-
OTPTypeEnum["MFA"] = "mfa";
|
|
12
|
-
})(OTPTypeEnum || (exports.OTPTypeEnum = OTPTypeEnum = {}));
|
|
6
|
+
const user_entity_1 = require("../../user/entities/user.entity");
|
|
7
|
+
const otp_interface_1 = require("../../core/interfaces/otp.interface");
|
|
13
8
|
let OTP = class OTP {
|
|
14
9
|
};
|
|
15
10
|
exports.OTP = OTP;
|
|
@@ -20,10 +15,14 @@ tslib_1.__decorate([
|
|
|
20
15
|
tslib_1.__decorate([
|
|
21
16
|
(0, typeorm_1.Column)(),
|
|
22
17
|
tslib_1.__metadata("design:type", String)
|
|
23
|
-
], OTP.prototype, "
|
|
18
|
+
], OTP.prototype, "userId", void 0);
|
|
24
19
|
tslib_1.__decorate([
|
|
25
20
|
(0, typeorm_1.Column)(),
|
|
26
21
|
tslib_1.__metadata("design:type", String)
|
|
22
|
+
], OTP.prototype, "code", void 0);
|
|
23
|
+
tslib_1.__decorate([
|
|
24
|
+
(0, typeorm_1.Column)({ type: 'text' }),
|
|
25
|
+
tslib_1.__metadata("design:type", String)
|
|
27
26
|
], OTP.prototype, "type", void 0);
|
|
28
27
|
tslib_1.__decorate([
|
|
29
28
|
(0, typeorm_1.Column)(),
|
|
@@ -34,18 +33,17 @@ tslib_1.__decorate([
|
|
|
34
33
|
tslib_1.__metadata("design:type", Boolean)
|
|
35
34
|
], OTP.prototype, "used", void 0);
|
|
36
35
|
tslib_1.__decorate([
|
|
37
|
-
(0, typeorm_1.
|
|
38
|
-
(
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
(0, typeorm_1.CreateDateColumn)(),
|
|
37
|
+
tslib_1.__metadata("design:type", Date)
|
|
38
|
+
], OTP.prototype, "createdAt", void 0);
|
|
39
|
+
tslib_1.__decorate([
|
|
40
|
+
(0, typeorm_1.UpdateDateColumn)(),
|
|
41
|
+
tslib_1.__metadata("design:type", Date)
|
|
42
|
+
], OTP.prototype, "updatedAt", void 0);
|
|
41
43
|
tslib_1.__decorate([
|
|
42
44
|
(0, typeorm_1.ManyToOne)(() => user_entity_1.User, user => user.otps, { onDelete: 'CASCADE' }),
|
|
43
45
|
tslib_1.__metadata("design:type", user_entity_1.User)
|
|
44
46
|
], OTP.prototype, "user", void 0);
|
|
45
|
-
tslib_1.__decorate([
|
|
46
|
-
(0, typeorm_1.CreateDateColumn)(),
|
|
47
|
-
tslib_1.__metadata("design:type", Date)
|
|
48
|
-
], OTP.prototype, "createdAt", void 0);
|
|
49
47
|
exports.OTP = OTP = tslib_1.__decorate([
|
|
50
48
|
(0, typeorm_1.Entity)('nest_auth_otps')
|
|
51
49
|
], OTP);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otp.entity.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/entities/otp.entity.ts"],"names":[],"mappings":";;;;AAAA,qCAAgH;AAChH,iEAAuD;AACvD,uEAAkE;AAG3D,IAAM,GAAG,GAAT,MAAM,GAAG;CA2Bf,CAAA;AA3BY,kBAAG;AAEZ;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;+BACpB;AAGX;IADC,IAAA,gBAAM,GAAE;;mCACM;AAGf;IADC,IAAA,gBAAM,GAAE;;iCACI;AAGb;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;iCACP;AAGlB;IADC,IAAA,gBAAM,GAAE;sCACE,IAAI;sCAAC;AAGhB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;iCACb;AAGd;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;sCAAC;AAGhB;IADC,IAAA,0BAAgB,GAAE;sCACR,IAAI;sCAAC;AAGhB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;sCAC5D,kBAAI;iCAAC;cA1BF,GAAG;IADf,IAAA,gBAAM,EAAC,gBAAgB,CAAC;GACZ,GAAG,CA2Bf"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { SessionPayload } from "../../core";
|
|
2
|
+
import { User } from "../../user/entities/user.entity";
|
|
3
3
|
export interface LoggedOutAllEventPayload {
|
|
4
4
|
user: User;
|
|
5
5
|
tenantId?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logged-out-all.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/logged-out-all.event.ts"],"names":[],"mappings":";;;AAaA,MAAa,iBAAiB;IAC1B,YACoB,OAAiC;QAAjC,YAAO,GAAP,OAAO,CAA0B;IACjD,CAAC;CACR;AAJD,8CAIC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { User } from "
|
|
2
|
-
import { SessionPayload } from "
|
|
1
|
+
import { User } from "../../user/entities/user.entity";
|
|
2
|
+
import { SessionPayload } from "../../core";
|
|
3
3
|
export interface LoggedOutEventPayload {
|
|
4
4
|
user: User;
|
|
5
5
|
tenantId?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logged-out.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/logged-out.event.ts"],"names":[],"mappings":";;;AAUA,MAAa,cAAc;IACvB,YACoB,OAA8B;QAA9B,YAAO,GAAP,OAAO,CAAuB;IAC9C,CAAC;CACR;AAJD,wCAIC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { User } from "
|
|
1
|
+
import { User } from "../../user/entities/user.entity";
|
|
2
2
|
import { ForgotPasswordRequestDto } from "../dto/requests/forgot-password.request.dto";
|
|
3
|
+
import { BaseAuthProvider } from "../../core/providers/base-auth.provider";
|
|
3
4
|
import { OTP } from "../entities/otp.entity";
|
|
4
|
-
import { BaseAuthProvider } from "../providers/base-auth.provider";
|
|
5
5
|
export interface PasswordResetRequestedEventPayload {
|
|
6
6
|
user: User;
|
|
7
7
|
tenantId?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"password-reset-requested.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/password-reset-requested.event.ts"],"names":[],"mappings":";;;AAaA,MAAa,2BAA2B;IACpC,YACoB,OAA2C;QAA3C,YAAO,GAAP,OAAO,CAAoC;IAC3D,CAAC;CACR;AAJD,kEAIC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"password-reset.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/password-reset.event.ts"],"names":[],"mappings":";;;AASA,MAAa,kBAAkB;IAC3B,YACoB,OAAkC;QAAlC,YAAO,GAAP,OAAO,CAA2B;IAClD,CAAC;CACR;AAJD,gDAIC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { User } from "
|
|
1
|
+
import { User } from "../../user/entities/user.entity";
|
|
2
2
|
import { Verify2faRequestDto } from "../dto/requests/verify-2fa.request.dto";
|
|
3
|
-
import { SessionPayload } from "
|
|
4
|
-
import { AuthTokensResponseDto } from "../dto";
|
|
3
|
+
import { SessionPayload } from "../../core";
|
|
4
|
+
import { AuthTokensResponseDto } from "../dto/responses/auth.response.dto";
|
|
5
5
|
export interface User2faVerifiedEventPayload {
|
|
6
6
|
user: User;
|
|
7
7
|
tenantId?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-2fa-verified.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/user-2fa-verified.event.ts"],"names":[],"mappings":";;;AAaA,MAAa,oBAAoB;IAC7B,YACoB,OAAoC;QAApC,YAAO,GAAP,OAAO,CAA6B;IACpD,CAAC;CACR;AAJD,oDAIC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { User } from "
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { SessionPayload } from "
|
|
1
|
+
import { User } from "../../user/entities/user.entity";
|
|
2
|
+
import { AuthTokensResponseDto } from "../dto/responses/auth.response.dto";
|
|
3
|
+
import { LoginRequestDto } from "../dto/requests/login.request.dto";
|
|
4
|
+
import { SessionPayload } from "../../core";
|
|
5
|
+
import { BaseAuthProvider } from "../../core/providers/base-auth.provider";
|
|
5
6
|
export interface UserLoggedInEventPayload {
|
|
6
7
|
user: User;
|
|
7
8
|
tenantId?: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-logged-in.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/user-logged-in.event.ts"],"names":[],"mappings":";;;AAiBA,MAAa,iBAAiB;IAC1B,YACoB,OAAiC;QAAjC,YAAO,GAAP,OAAO,CAA0B;IACjD,CAAC;CACR;AAJD,8CAIC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SessionPayload } from "
|
|
2
|
-
import { AuthTokensResponseDto } from "../dto";
|
|
1
|
+
import { SessionPayload } from "../../core";
|
|
2
|
+
import { AuthTokensResponseDto } from "../dto/responses/auth.response.dto";
|
|
3
3
|
export interface UserRefreshTokenEventPayload {
|
|
4
4
|
session: SessionPayload;
|
|
5
5
|
tokens: AuthTokensResponseDto;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-refresh-token.event.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/user-refresh-token.event.ts"],"names":[],"mappings":";;;AASA,MAAa,qBAAqB;IAC9B,YACoB,OAAqC;QAArC,YAAO,GAAP,OAAO,CAA8B;IACrD,CAAC;CACR;AAJD,sDAIC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export * from './auth.module';
|
|
2
|
+
export * from './services/auth.service';
|
|
3
|
+
export * from './services/cookie.service';
|
|
4
|
+
export * from './services/mfa.service';
|
|
5
|
+
export * from './controllers/auth.controller';
|
|
6
|
+
export * from './controllers/mfa.controller';
|
|
7
|
+
export * from './dto/requests/login.request.dto';
|
|
8
|
+
export * from './dto/requests/signup.request.dto';
|
|
9
|
+
export * from './dto/requests/social-login.request.dto';
|
|
10
|
+
export * from './dto/requests/forgot-password.request.dto';
|
|
11
|
+
export * from './dto/requests/reset-password.request.dto';
|
|
12
|
+
export * from './dto/requests/send-mfa-code.request.dto';
|
|
13
|
+
export * from './dto/requests/refresh-token.request.dto';
|
|
14
|
+
export * from './dto/requests/verify-2fa.request.dto';
|
|
15
|
+
export * from './dto/requests/verify-totp-setup.request.dto';
|
|
16
|
+
export * from './dto/responses/auth.response.dto';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./auth.module"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./services/auth.service"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./services/cookie.service"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./services/mfa.service"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./controllers/auth.controller"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./controllers/mfa.controller"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./dto/requests/login.request.dto"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./dto/requests/signup.request.dto"), exports);
|
|
12
|
+
tslib_1.__exportStar(require("./dto/requests/social-login.request.dto"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./dto/requests/forgot-password.request.dto"), exports);
|
|
14
|
+
tslib_1.__exportStar(require("./dto/requests/reset-password.request.dto"), exports);
|
|
15
|
+
tslib_1.__exportStar(require("./dto/requests/send-mfa-code.request.dto"), exports);
|
|
16
|
+
tslib_1.__exportStar(require("./dto/requests/refresh-token.request.dto"), exports);
|
|
17
|
+
tslib_1.__exportStar(require("./dto/requests/verify-2fa.request.dto"), exports);
|
|
18
|
+
tslib_1.__exportStar(require("./dto/requests/verify-totp-setup.request.dto"), exports);
|
|
19
|
+
tslib_1.__exportStar(require("./dto/responses/auth.response.dto"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/auth/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAG9B,kEAAwC;AACxC,oEAA0C;AAC1C,iEAAuC;AAGvC,wEAA8C;AAC9C,uEAA6C;AAO7C,2EAAiD;AACjD,4EAAkD;AAClD,kFAAwD;AACxD,qFAA2D;AAC3D,oFAA0D;AAC1D,mFAAyD;AACzD,mFAAyD;AACzD,gFAAsD;AACtD,uFAA6D;AAC7D,4EAAkD"}
|
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
import { Repository } from 'typeorm';
|
|
2
|
-
import { User } from '
|
|
3
|
-
import {
|
|
4
|
-
import { OTP } from '../entities/otp.entity';
|
|
5
|
-
import { AuthResponseDto, MessageResponseDto, DeviceInfoDto, SignupRequestDto, LoginRequestDto, ForgotPasswordRequestDto, ResetPasswordRequestDto } from '../dto';
|
|
6
|
-
import { BaseAuthProvider } from '../providers/base-auth.provider';
|
|
2
|
+
import { User } from '../../user/entities/user.entity';
|
|
3
|
+
import { OTP } from '../../auth/entities/otp.entity';
|
|
7
4
|
import { MfaService } from './mfa.service';
|
|
8
|
-
import {
|
|
9
|
-
import { Verify2faRequestDto } from '../dto/requests/verify-2fa.request.dto';
|
|
10
|
-
import { BaseSessionService } from './session/base-session.service';
|
|
11
|
-
import { JwtService } from './jwt.service';
|
|
5
|
+
import { JwtService } from '../../core/services/jwt.service';
|
|
12
6
|
import { EventEmitter2 } from '@nestjs/event-emitter';
|
|
7
|
+
import { BaseSessionService } from '../../session/services/base-session.service';
|
|
8
|
+
import { SignupRequestDto } from '../dto/requests/signup.request.dto';
|
|
9
|
+
import { AuthResponseDto } from '../dto/responses/auth.response.dto';
|
|
10
|
+
import { LoginRequestDto } from '../dto/requests/login.request.dto';
|
|
11
|
+
import { Verify2faRequestDto } from '../dto/requests/verify-2fa.request.dto';
|
|
12
|
+
import { MFAMethodEnum } from '../../core/interfaces/mfa-options.interface';
|
|
13
|
+
import { ForgotPasswordRequestDto } from '../dto/requests/forgot-password.request.dto';
|
|
14
|
+
import { ResetPasswordRequestDto } from '../dto/requests/reset-password.request.dto';
|
|
15
|
+
import { BaseAuthProvider } from '../../core/providers/base-auth.provider';
|
|
13
16
|
export declare class AuthService {
|
|
14
17
|
private readonly userRepository;
|
|
15
|
-
private readonly sessionRepository;
|
|
16
18
|
private otpRepository;
|
|
17
19
|
private readonly authProviders;
|
|
18
20
|
private readonly mfaService;
|
|
19
21
|
private readonly sessionService;
|
|
20
22
|
private readonly jwtService;
|
|
21
23
|
private readonly eventEmitter;
|
|
22
|
-
constructor(userRepository: Repository<User>,
|
|
24
|
+
constructor(userRepository: Repository<User>, otpRepository: Repository<OTP>, authProviders: BaseAuthProvider[], mfaService: MfaService, sessionService: BaseSessionService, jwtService: JwtService, eventEmitter: EventEmitter2);
|
|
23
25
|
getUserWithRolesAndPermissions(userId: string, relations?: string[]): Promise<User>;
|
|
24
26
|
getUser(): Promise<User>;
|
|
25
27
|
signup(input: SignupRequestDto): Promise<AuthResponseDto>;
|
|
@@ -40,8 +42,6 @@ export declare class AuthService {
|
|
|
40
42
|
resetPassword(input: ResetPasswordRequestDto): Promise<boolean>;
|
|
41
43
|
logout(logoutType?: 'user' | 'admin' | 'system', reason?: string): Promise<boolean>;
|
|
42
44
|
logoutAll(userId: string, logoutType?: 'user' | 'admin' | 'system', reason?: string): Promise<boolean>;
|
|
43
|
-
listDevices(userId: string): Promise<DeviceInfoDto[]>;
|
|
44
|
-
deleteDevice(userId: string, deviceId: string): Promise<MessageResponseDto>;
|
|
45
45
|
private generateTokensPayload;
|
|
46
46
|
private generateTokensFromSession;
|
|
47
47
|
}
|
|
@@ -5,27 +5,28 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const common_1 = require("@nestjs/common");
|
|
6
6
|
const typeorm_1 = require("@nestjs/typeorm");
|
|
7
7
|
const typeorm_2 = require("typeorm");
|
|
8
|
-
const user_entity_1 = require("
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const auth_constants_1 = require("
|
|
8
|
+
const user_entity_1 = require("../../user/entities/user.entity");
|
|
9
|
+
const otp_entity_1 = require("../../auth/entities/otp.entity");
|
|
10
|
+
const otp_interface_1 = require("../../core/interfaces/otp.interface");
|
|
11
|
+
const auth_constants_1 = require("../../auth.constants");
|
|
12
12
|
const typeorm_3 = require("typeorm");
|
|
13
|
-
const request_context_1 = require("../request-context/request-context");
|
|
14
13
|
const mfa_service_1 = require("./mfa.service");
|
|
15
|
-
const
|
|
16
|
-
const otp_1 = require("../utils/otp");
|
|
17
|
-
const jwt_service_1 = require("./jwt.service");
|
|
14
|
+
const jwt_service_1 = require("../../core/services/jwt.service");
|
|
18
15
|
const event_emitter_1 = require("@nestjs/event-emitter");
|
|
19
|
-
const
|
|
20
|
-
const
|
|
16
|
+
const base_session_service_1 = require("../../session/services/base-session.service");
|
|
17
|
+
const request_context_1 = require("../../request-context/request-context");
|
|
18
|
+
const otp_1 = require("../../utils/otp");
|
|
19
|
+
const user_registered_event_1 = require("../../user/events/user-registered.event");
|
|
21
20
|
const user_logged_in_event_1 = require("../events/user-logged-in.event");
|
|
22
21
|
const user_2fa_verified_event_1 = require("../events/user-2fa-verified.event");
|
|
23
22
|
const user_refresh_token_event_1 = require("../events/user-refresh-token.event");
|
|
24
|
-
const
|
|
23
|
+
const logged_out_event_1 = require("../events/logged-out.event");
|
|
24
|
+
const logged_out_all_event_1 = require("../events/logged-out-all.event");
|
|
25
|
+
const password_reset_requested_event_1 = require("../events/password-reset-requested.event");
|
|
26
|
+
const password_reset_event_1 = require("../events/password-reset.event");
|
|
25
27
|
let AuthService = class AuthService {
|
|
26
|
-
constructor(userRepository,
|
|
28
|
+
constructor(userRepository, otpRepository, authProviders, mfaService, sessionService, jwtService, eventEmitter) {
|
|
27
29
|
this.userRepository = userRepository;
|
|
28
|
-
this.sessionRepository = sessionRepository;
|
|
29
30
|
this.otpRepository = otpRepository;
|
|
30
31
|
this.authProviders = authProviders;
|
|
31
32
|
this.mfaService = mfaService;
|
|
@@ -68,7 +69,7 @@ let AuthService = class AuthService {
|
|
|
68
69
|
providerUserId = phone;
|
|
69
70
|
}
|
|
70
71
|
if (!provider) {
|
|
71
|
-
throw new common_1.
|
|
72
|
+
throw new common_1.InternalServerErrorException('Phone or email authentication is not enabled');
|
|
72
73
|
}
|
|
73
74
|
const identity = await provider.findIdentity(providerUserId);
|
|
74
75
|
if (identity) {
|
|
@@ -92,7 +93,7 @@ let AuthService = class AuthService {
|
|
|
92
93
|
const session = await this.sessionService.createSessionFromUser(user);
|
|
93
94
|
const tokens = await this.generateTokensFromSession(session);
|
|
94
95
|
const isRequiresMfa = await this.mfaService.isRequiresMfa(user.id);
|
|
95
|
-
await this.eventEmitter.emitAsync(
|
|
96
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.REGISTERED, new user_registered_event_1.UserRegisteredEvent({
|
|
96
97
|
user,
|
|
97
98
|
tenantId: user.tenantId,
|
|
98
99
|
input,
|
|
@@ -130,7 +131,7 @@ let AuthService = class AuthService {
|
|
|
130
131
|
const session = await this.sessionService.createSessionFromUser(user);
|
|
131
132
|
const tokens = await this.generateTokensFromSession(session);
|
|
132
133
|
const isRequiresMfa = await this.mfaService.isRequiresMfa(user.id);
|
|
133
|
-
await this.eventEmitter.emitAsync(
|
|
134
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_IN, new user_logged_in_event_1.UserLoggedInEvent({
|
|
134
135
|
user,
|
|
135
136
|
tenantId: user.tenantId,
|
|
136
137
|
input,
|
|
@@ -168,7 +169,7 @@ let AuthService = class AuthService {
|
|
|
168
169
|
});
|
|
169
170
|
const tokens = await this.generateTokensFromSession(payload);
|
|
170
171
|
const user = await this.getUser();
|
|
171
|
-
await this.eventEmitter.emitAsync(
|
|
172
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.TWO_FACTOR_VERIFIED, new user_2fa_verified_event_1.User2faVerifiedEvent({
|
|
172
173
|
user,
|
|
173
174
|
tenantId: user.tenantId,
|
|
174
175
|
input,
|
|
@@ -233,7 +234,7 @@ let AuthService = class AuthService {
|
|
|
233
234
|
const newSession = await this.sessionService.createSessionFromSession(session);
|
|
234
235
|
await this.sessionService.revokeSession(session.id);
|
|
235
236
|
const tokens = await this.generateTokensFromSession(newSession);
|
|
236
|
-
await this.eventEmitter.emitAsync(
|
|
237
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.REFRESH_TOKEN, new user_refresh_token_event_1.UserRefreshTokenEvent({
|
|
237
238
|
oldRefreshToken: refreshToken,
|
|
238
239
|
session: newSession,
|
|
239
240
|
tokens,
|
|
@@ -274,9 +275,9 @@ let AuthService = class AuthService {
|
|
|
274
275
|
userId: identity.user?.id,
|
|
275
276
|
code: otp,
|
|
276
277
|
expiresAt,
|
|
277
|
-
type:
|
|
278
|
+
type: otp_interface_1.OTPTypeEnum.PASSWORD_RESET
|
|
278
279
|
});
|
|
279
|
-
await this.eventEmitter.emitAsync(
|
|
280
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.PASSWORD_RESET_REQUESTED, new password_reset_requested_event_1.PasswordResetRequestedEvent({
|
|
280
281
|
user: identity.user,
|
|
281
282
|
tenantId: identity.user?.tenantId,
|
|
282
283
|
input,
|
|
@@ -303,7 +304,7 @@ let AuthService = class AuthService {
|
|
|
303
304
|
where: {
|
|
304
305
|
userId: user.id,
|
|
305
306
|
code: otp,
|
|
306
|
-
type:
|
|
307
|
+
type: otp_interface_1.OTPTypeEnum.PASSWORD_RESET,
|
|
307
308
|
expiresAt: (0, typeorm_3.MoreThan)(new Date()),
|
|
308
309
|
used: false
|
|
309
310
|
}
|
|
@@ -315,7 +316,7 @@ let AuthService = class AuthService {
|
|
|
315
316
|
await this.userRepository.save(user);
|
|
316
317
|
validOtp.used = true;
|
|
317
318
|
await this.otpRepository.save(validOtp);
|
|
318
|
-
await this.eventEmitter.emitAsync(
|
|
319
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.PASSWORD_RESET, new password_reset_event_1.PasswordResetEvent({
|
|
319
320
|
user,
|
|
320
321
|
tenantId: user.tenantId,
|
|
321
322
|
input,
|
|
@@ -325,7 +326,7 @@ let AuthService = class AuthService {
|
|
|
325
326
|
async logout(logoutType = 'user', reason) {
|
|
326
327
|
const session = request_context_1.RequestContext.currentSession();
|
|
327
328
|
const user = await this.getUser();
|
|
328
|
-
await this.eventEmitter.emitAsync(
|
|
329
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_OUT, new logged_out_event_1.LoggedOutEvent({
|
|
329
330
|
user,
|
|
330
331
|
tenantId: user?.tenantId,
|
|
331
332
|
session,
|
|
@@ -345,7 +346,7 @@ let AuthService = class AuthService {
|
|
|
345
346
|
const sessions = await this.sessionService.getUserSessions(userId);
|
|
346
347
|
await this.sessionService.revokeUserSessions(userId);
|
|
347
348
|
const user = await this.getUser();
|
|
348
|
-
await this.eventEmitter.emitAsync(
|
|
349
|
+
await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_OUT_ALL, new logged_out_all_event_1.LoggedOutAllEvent({
|
|
349
350
|
user,
|
|
350
351
|
tenantId: user?.tenantId,
|
|
351
352
|
logoutType,
|
|
@@ -355,22 +356,6 @@ let AuthService = class AuthService {
|
|
|
355
356
|
}));
|
|
356
357
|
return true;
|
|
357
358
|
}
|
|
358
|
-
async listDevices(userId) {
|
|
359
|
-
const sessions = await this.sessionRepository.find({
|
|
360
|
-
where: { userId },
|
|
361
|
-
select: ['id', 'deviceName', 'lastActive', 'ipAddress'],
|
|
362
|
-
});
|
|
363
|
-
return sessions.map(session => ({
|
|
364
|
-
id: session.id,
|
|
365
|
-
name: session.deviceName || 'Unknown Device',
|
|
366
|
-
lastActive: session.lastActive,
|
|
367
|
-
ipAddress: session.ipAddress,
|
|
368
|
-
}));
|
|
369
|
-
}
|
|
370
|
-
async deleteDevice(userId, deviceId) {
|
|
371
|
-
await this.sessionRepository.delete({ userId, id: deviceId });
|
|
372
|
-
return { message: 'Device removed successfully' };
|
|
373
|
-
}
|
|
374
359
|
generateTokensPayload(session, otherPayload = {}) {
|
|
375
360
|
const payload = {
|
|
376
361
|
sub: session.userId,
|
|
@@ -396,11 +381,9 @@ exports.AuthService = AuthService;
|
|
|
396
381
|
exports.AuthService = AuthService = tslib_1.__decorate([
|
|
397
382
|
(0, common_1.Injectable)(),
|
|
398
383
|
tslib_1.__param(0, (0, typeorm_1.InjectRepository)(user_entity_1.User)),
|
|
399
|
-
tslib_1.__param(1, (0, typeorm_1.InjectRepository)(
|
|
400
|
-
tslib_1.__param(2, (0,
|
|
401
|
-
tslib_1.__param(3, (0, common_1.Inject)(auth_constants_1.ENABLED_AUTH_PROVIDERS)),
|
|
384
|
+
tslib_1.__param(1, (0, typeorm_1.InjectRepository)(otp_entity_1.OTP)),
|
|
385
|
+
tslib_1.__param(2, (0, common_1.Inject)(auth_constants_1.ENABLED_AUTH_PROVIDERS)),
|
|
402
386
|
tslib_1.__metadata("design:paramtypes", [typeorm_2.Repository,
|
|
403
|
-
typeorm_2.Repository,
|
|
404
387
|
typeorm_2.Repository, Array, mfa_service_1.MfaService,
|
|
405
388
|
base_session_service_1.BaseSessionService,
|
|
406
389
|
jwt_service_1.JwtService,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Response } from 'express';
|
|
2
|
-
import { AuthModuleOptions } from '
|
|
2
|
+
import { AuthModuleOptions } from '../../core/interfaces/auth-module-options.interface';
|
|
3
3
|
export declare class CookieService {
|
|
4
4
|
private options;
|
|
5
5
|
constructor(options: AuthModuleOptions);
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CookieService = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const common_1 = require("@nestjs/common");
|
|
6
|
-
const auth_constants_1 = require("
|
|
6
|
+
const auth_constants_1 = require("../../auth.constants");
|
|
7
7
|
const ms_1 = tslib_1.__importDefault(require("ms"));
|
|
8
8
|
let CookieService = class CookieService {
|
|
9
9
|
constructor(options) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.service.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/cookie.service.ts"],"names":[],"mappings":";;;;AAAA,2CAAoD;AAEpD,yDAAgH;AAEhH,oDAAoB;AAGb,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAEY,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAClC,CAAC;IAEL,oBAAoB,CAAC,QAAkB,EAAE,KAAa;QAClD,QAAQ,CAAC,MAAM,CAAC,yCAAwB,EAAE,KAAK,EAAE;YAC7C,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM;YACzC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ;YAC7C,MAAM,EAAE,IAAA,YAAE,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;SACjD,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CAAC,QAAkB,EAAE,KAAa;QACnD,QAAQ,CAAC,MAAM,CAAC,0CAAyB,EAAE,KAAK,EAAE;YAC9C,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM;YACzC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ;YAC7C,MAAM,EAAE,IAAA,YAAE,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC;SACtD,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,QAAkB;QAC3B,QAAQ,CAAC,WAAW,CAAC,yCAAwB,CAAC,CAAC;QAC/C,QAAQ,CAAC,WAAW,CAAC,0CAAyB,CAAC,CAAC;IACpD,CAAC;IAED,SAAS,CAAC,QAAkB,EAAE,WAAmB,EAAE,YAAoB;QACnE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACvD,CAAC;CACJ,CAAA;AAjCY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;IAGJ,mBAAA,IAAA,eAAM,EAAC,oCAAmB,CAAC,CAAA;;GAFvB,aAAa,CAiCzB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Repository } from 'typeorm';
|
|
2
|
-
import { MFASecret } from '
|
|
3
|
-
import { MFAMethodEnum, MFAOptions } from '
|
|
4
|
-
import { AuthModuleOptions } from '
|
|
5
|
-
import { User } from '
|
|
6
|
-
import { OTP } from '
|
|
2
|
+
import { MFASecret } from '../../auth/entities/mfa-secret.entity';
|
|
3
|
+
import { MFAMethodEnum, MFAOptions } from '../../core/interfaces/mfa-options.interface';
|
|
4
|
+
import { AuthModuleOptions } from '../../core/interfaces/auth-module-options.interface';
|
|
5
|
+
import { User } from '../../user/entities/user.entity';
|
|
6
|
+
import { OTP } from '../../auth/entities/otp.entity';
|
|
7
7
|
export declare class MfaService {
|
|
8
8
|
private mfaSecretRepository;
|
|
9
9
|
private userRepository;
|
|
@@ -5,14 +5,15 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const common_1 = require("@nestjs/common");
|
|
6
6
|
const typeorm_1 = require("@nestjs/typeorm");
|
|
7
7
|
const typeorm_2 = require("typeorm");
|
|
8
|
-
const mfa_secret_entity_1 = require("
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const mfa_options_interface_1 = require("
|
|
12
|
-
const auth_constants_1 = require("
|
|
13
|
-
const user_entity_1 = require("
|
|
14
|
-
const otp_entity_1 = require("
|
|
15
|
-
const
|
|
8
|
+
const mfa_secret_entity_1 = require("../../auth/entities/mfa-secret.entity");
|
|
9
|
+
const speakeasy_1 = tslib_1.__importDefault(require("speakeasy"));
|
|
10
|
+
const qrcode_1 = tslib_1.__importDefault(require("qrcode"));
|
|
11
|
+
const mfa_options_interface_1 = require("../../core/interfaces/mfa-options.interface");
|
|
12
|
+
const auth_constants_1 = require("../../auth.constants");
|
|
13
|
+
const user_entity_1 = require("../../user/entities/user.entity");
|
|
14
|
+
const otp_entity_1 = require("../../auth/entities/otp.entity");
|
|
15
|
+
const otp_interface_1 = require("../../core/interfaces/otp.interface");
|
|
16
|
+
const otp_1 = require("../../utils/otp");
|
|
16
17
|
const ms_1 = tslib_1.__importDefault(require("ms"));
|
|
17
18
|
let MfaService = class MfaService {
|
|
18
19
|
constructor(mfaSecretRepository, userRepository, otpRepository, options) {
|
|
@@ -60,7 +61,7 @@ let MfaService = class MfaService {
|
|
|
60
61
|
const expiresAt = (0, ms_1.default)(this.mfaConfig.otpExpiresIn);
|
|
61
62
|
const otp = await this.otpRepository.create({
|
|
62
63
|
userId,
|
|
63
|
-
type:
|
|
64
|
+
type: otp_interface_1.OTPTypeEnum.MFA,
|
|
64
65
|
expiresAt: new Date(Date.now() + expiresAt),
|
|
65
66
|
code,
|
|
66
67
|
});
|
|
@@ -78,7 +79,7 @@ let MfaService = class MfaService {
|
|
|
78
79
|
where: { userId, verified: true }
|
|
79
80
|
});
|
|
80
81
|
for (const device of devices) {
|
|
81
|
-
const isValid =
|
|
82
|
+
const isValid = speakeasy_1.default.totp.verify({
|
|
82
83
|
secret: device.secret,
|
|
83
84
|
encoding: 'base32',
|
|
84
85
|
token: inputOtp,
|
|
@@ -95,7 +96,7 @@ let MfaService = class MfaService {
|
|
|
95
96
|
const otp = await this.otpRepository.findOne({
|
|
96
97
|
where: {
|
|
97
98
|
userId,
|
|
98
|
-
type:
|
|
99
|
+
type: otp_interface_1.OTPTypeEnum.MFA,
|
|
99
100
|
used: false,
|
|
100
101
|
expiresAt: (0, typeorm_2.MoreThan)(new Date()),
|
|
101
102
|
code: inputOtp
|
|
@@ -115,14 +116,14 @@ let MfaService = class MfaService {
|
|
|
115
116
|
if (!user) {
|
|
116
117
|
throw new Error('User not found');
|
|
117
118
|
}
|
|
118
|
-
const secret =
|
|
119
|
+
const secret = speakeasy_1.default.generateSecret();
|
|
119
120
|
await this.mfaSecretRepository.save({
|
|
120
121
|
userId,
|
|
121
122
|
secret: secret.base32,
|
|
122
123
|
deviceName: deviceName || 'Authenticator',
|
|
123
124
|
verified: false
|
|
124
125
|
});
|
|
125
|
-
const qrCode = await
|
|
126
|
+
const qrCode = await qrcode_1.default.toDataURL(secret.otpauth_url);
|
|
126
127
|
return { secret: secret.base32, qrCode };
|
|
127
128
|
}
|
|
128
129
|
async verifyTotpSetup(userId, secret, inputOtp) {
|
|
@@ -134,7 +135,7 @@ let MfaService = class MfaService {
|
|
|
134
135
|
if (device.verified) {
|
|
135
136
|
return true;
|
|
136
137
|
}
|
|
137
|
-
const isValid =
|
|
138
|
+
const isValid = speakeasy_1.default.totp.verify({
|
|
138
139
|
secret: device.secret,
|
|
139
140
|
encoding: 'base32',
|
|
140
141
|
token: inputOtp,
|
|
@@ -212,7 +213,7 @@ let MfaService = class MfaService {
|
|
|
212
213
|
}
|
|
213
214
|
async generateRecoveryCode(userId) {
|
|
214
215
|
this.checkIsMfaEnabledForApp(true);
|
|
215
|
-
const secret =
|
|
216
|
+
const secret = speakeasy_1.default.generateSecret({
|
|
216
217
|
name: `NestAuth:${userId}`,
|
|
217
218
|
});
|
|
218
219
|
await this.userRepository.update(userId, { mfaRecoveryCode: secret.base32 });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mfa.service.js","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/mfa.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA+F;AAC/F,6CAAmD;AACnD,qCAA+C;AAC/C,6EAAkE;AAClE,kEAAkC;AAClC,4DAA4B;AAC5B,uFAAwF;AACxF,yDAAsH;AAEtH,iEAAuD;AACvD,+DAAqD;AACrD,uEAAkE;AAClE,yCAA8C;AAC9C,oDAAoB;AAIb,IAAM,UAAU,GAAhB,MAAM,UAAU;IAInB,YAEY,mBAA0C,EAG1C,cAAgC,EAGhC,aAA8B,EAGrB,OAA0B;QATnC,wBAAmB,GAAnB,mBAAmB,CAAuB;QAG1C,mBAAc,GAAd,cAAc,CAAkB;QAGhC,kBAAa,GAAb,aAAa,CAAiB;QAGrB,YAAO,GAAP,OAAO,CAAmB;QAI3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IACtC,CAAC;IAED,uBAAuB,CAAC,aAAsB,IAAI;QAC9C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,IAAI,2BAAkB,CAAC,wCAAwC,CAAC,CAAC;YAC3E,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAc;QAElC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,EAAE,CAAA;QAEvB,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,qCAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,YAAY,CAAC,IAAI,CAAC,qCAAa,CAAC,KAAK,CAAC,CAAA;QAC1C,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,qCAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACtD,YAAY,CAAC,IAAI,CAAC,qCAAa,CAAC,GAAG,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;YACtD,KAAK,EAAE;gBACH,MAAM;aACT;SACJ,CAAC,CAAC;QAEH,IAAI,UAAU,EAAE,CAAC;YACb,YAAY,CAAC,IAAI,CAAC,qCAAa,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAGD,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,MAAqB;QAEnD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,IAAI,GAAG,IAAA,iBAAW,EAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,SAAS,GAAG,IAAA,YAAE,EAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAEjD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;YACxC,MAAM;YACN,IAAI,EAAE,2BAAW,CAAC,GAAG;YACrB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC3C,IAAI;SACP,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,MAAM,KAAK,qCAAa,CAAC,KAAK,EAAE,CAAC;QAErC,CAAC;aAAM,IAAI,MAAM,KAAK,qCAAa,CAAC,GAAG,EAAE,CAAC;QAE1C,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,QAAgB,EAAE,MAAqB;QAEnE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,IAAI,MAAM,KAAK,qCAAa,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAChD,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;aACpC,CAAC,CAAC;YAEH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,mBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;oBAClC,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,QAAQ,EAAE,QAAQ;oBAClB,KAAK,EAAE,QAAQ;oBACf,MAAM,EAAE,CAAC;iBACZ,CAAC,CAAC;gBAEH,IAAI,OAAO,EAAE,CAAC;oBAEV,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CACjC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EACjB,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE,CAC7B,CAAC;oBACF,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,MAAM,KAAK,qCAAa,CAAC,KAAK,IAAI,MAAM,KAAK,qCAAa,CAAC,GAAG,EAAE,CAAC;YACjE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;gBACzC,KAAK,EAAE;oBACH,MAAM;oBACN,IAAI,EAAE,2BAAW,CAAC,GAAG;oBACrB,IAAI,EAAE,KAAK;oBACX,SAAS,EAAE,IAAA,kBAAQ,EAAC,IAAI,IAAI,EAAE,CAAC;oBAC/B,IAAI,EAAE,QAAQ;iBACjB;aACJ,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAGD,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,UAAmB;QACrD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,MAAM,GAAG,mBAAS,CAAC,cAAc,EAAE,CAAC;QAE1C,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAChC,MAAM;YACN,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE,UAAU,IAAI,eAAe;YACzC,QAAQ,EAAE,KAAK;SAClB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAc,EAAE,QAAgB;QAElE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;YAClD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;SAC5B,CAAC,CAAC;QAEH,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,MAAM,OAAO,GAAG,mBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;gBAClC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,QAAQ;gBACf,MAAM,EAAE,CAAC;aACZ,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACV,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7E,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAChD,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC;YACtD,KAAK,EAAE,EAAE,MAAM,EAAE;YACjB,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;SAChC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC5B,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB;QAC/B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC3C,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC;YAC9B,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;SACxB,CAAC,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC7B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC3C,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC;gBAC9B,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;aACxB,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC;QAChC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,QAAgB;QACjD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CACjC,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EACxB,EAAE,QAAQ,EAAE,IAAI,EAAE,CACrB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc;QAC1B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc;QAC3B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACnC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAAc;QACrC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,MAAM,GAAG,mBAAS,CAAC,cAAc,CAAC;YACpC,IAAI,EAAE,YAAY,MAAM,EAAE;SAC7B,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,OAAO,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,IAAY;QAEvC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,8BAAqB,CAAC;gBAC5B,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE,8CAA6B;aACtC,CAAC,CAAC;QACP,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YAEhC,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YAGpE,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAElD,OAAO;gBACH,OAAO,EAAE,wBAAwB;aACpC,CAAC;QACN,CAAC;QAED,MAAM,IAAI,8BAAqB,CAAC;YAC5B,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,2CAA0B;SACnC,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAvTY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;IAMJ,mBAAA,IAAA,0BAAgB,EAAC,6BAAS,CAAC,CAAA;IAG3B,mBAAA,IAAA,0BAAgB,EAAC,kBAAI,CAAC,CAAA;IAGtB,mBAAA,IAAA,0BAAgB,EAAC,gBAAG,CAAC,CAAA;IAGrB,mBAAA,IAAA,eAAM,EAAC,oCAAmB,CAAC,CAAA;6CARC,oBAAU;QAGf,oBAAU;QAGX,oBAAU;GAZ5B,UAAU,CAuTtB"}
|