@nauth-toolkit/core 0.1.14 → 0.1.18
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/dist/adapters/database-columns.d.ts +70 -0
- package/dist/adapters/database-columns.d.ts.map +1 -1
- package/dist/adapters/database-columns.js +76 -2
- package/dist/adapters/database-columns.js.map +1 -1
- package/dist/adapters/express.adapter.d.ts +66 -0
- package/dist/adapters/express.adapter.d.ts.map +1 -1
- package/dist/adapters/express.adapter.js +80 -0
- package/dist/adapters/express.adapter.js.map +1 -1
- package/dist/adapters/fastify.adapter.d.ts +42 -0
- package/dist/adapters/fastify.adapter.d.ts.map +1 -1
- package/dist/adapters/fastify.adapter.js +86 -0
- package/dist/adapters/fastify.adapter.js.map +1 -1
- package/dist/adapters/index.d.ts +5 -0
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +9 -0
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/storage.factory.d.ts +107 -0
- package/dist/adapters/storage.factory.d.ts.map +1 -1
- package/dist/adapters/storage.factory.js +114 -0
- package/dist/adapters/storage.factory.js.map +1 -1
- package/dist/adapters.d.ts +8 -0
- package/dist/adapters.d.ts.map +1 -1
- package/dist/adapters.js +8 -0
- package/dist/adapters.js.map +1 -1
- package/dist/bootstrap.d.ts +82 -0
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +106 -0
- package/dist/bootstrap.js.map +1 -1
- package/dist/dto/admin-set-password.dto.d.ts +90 -0
- package/dist/dto/admin-set-password.dto.d.ts.map +1 -1
- package/dist/dto/admin-set-password.dto.js +91 -0
- package/dist/dto/admin-set-password.dto.js.map +1 -1
- package/dist/dto/auth-challenge.dto.d.ts +170 -0
- package/dist/dto/auth-challenge.dto.d.ts.map +1 -1
- package/dist/dto/auth-challenge.dto.js +170 -0
- package/dist/dto/auth-challenge.dto.js.map +1 -1
- package/dist/dto/auth-response.dto.d.ts +196 -0
- package/dist/dto/auth-response.dto.d.ts.map +1 -1
- package/dist/dto/auth-response.dto.js +149 -0
- package/dist/dto/auth-response.dto.js.map +1 -1
- package/dist/dto/challenge-response.dto.d.ts +155 -0
- package/dist/dto/challenge-response.dto.d.ts.map +1 -1
- package/dist/dto/challenge-response.dto.js +8 -0
- package/dist/dto/challenge-response.dto.js.map +1 -1
- package/dist/dto/change-password-request.dto.d.ts +35 -0
- package/dist/dto/change-password-request.dto.d.ts.map +1 -1
- package/dist/dto/change-password-request.dto.js +35 -0
- package/dist/dto/change-password-request.dto.js.map +1 -1
- package/dist/dto/change-password-response.dto.d.ts +25 -0
- package/dist/dto/change-password-response.dto.d.ts.map +1 -1
- package/dist/dto/change-password-response.dto.js +25 -0
- package/dist/dto/change-password-response.dto.js.map +1 -1
- package/dist/dto/change-password.dto.d.ts +45 -0
- package/dist/dto/change-password.dto.d.ts.map +1 -1
- package/dist/dto/change-password.dto.js +45 -0
- package/dist/dto/change-password.dto.js.map +1 -1
- package/dist/dto/confirm-forgot-password.dto.d.ts +59 -0
- package/dist/dto/confirm-forgot-password.dto.d.ts.map +1 -1
- package/dist/dto/confirm-forgot-password.dto.js +59 -0
- package/dist/dto/confirm-forgot-password.dto.js.map +1 -1
- package/dist/dto/error-response.dto.d.ts +103 -0
- package/dist/dto/error-response.dto.d.ts.map +1 -1
- package/dist/dto/error-response.dto.js +103 -0
- package/dist/dto/error-response.dto.js.map +1 -1
- package/dist/dto/forgot-password.dto.d.ts +58 -0
- package/dist/dto/forgot-password.dto.d.ts.map +1 -1
- package/dist/dto/forgot-password.dto.js +58 -0
- package/dist/dto/forgot-password.dto.js.map +1 -1
- package/dist/dto/get-available-methods.dto.d.ts +37 -0
- package/dist/dto/get-available-methods.dto.d.ts.map +1 -1
- package/dist/dto/get-available-methods.dto.js +37 -0
- package/dist/dto/get-available-methods.dto.js.map +1 -1
- package/dist/dto/get-challenge-data-response.dto.d.ts +24 -0
- package/dist/dto/get-challenge-data-response.dto.d.ts.map +1 -1
- package/dist/dto/get-challenge-data-response.dto.js +24 -0
- package/dist/dto/get-challenge-data-response.dto.js.map +1 -1
- package/dist/dto/get-challenge-data.dto.d.ts +46 -0
- package/dist/dto/get-challenge-data.dto.d.ts.map +1 -1
- package/dist/dto/get-challenge-data.dto.js +46 -0
- package/dist/dto/get-challenge-data.dto.js.map +1 -1
- package/dist/dto/get-client-info.dto.d.ts +74 -0
- package/dist/dto/get-client-info.dto.d.ts.map +1 -1
- package/dist/dto/get-client-info.dto.js +74 -0
- package/dist/dto/get-client-info.dto.js.map +1 -1
- package/dist/dto/get-device-token-response.dto.d.ts +21 -0
- package/dist/dto/get-device-token-response.dto.d.ts.map +1 -1
- package/dist/dto/get-device-token-response.dto.js +21 -0
- package/dist/dto/get-device-token-response.dto.js.map +1 -1
- package/dist/dto/get-events-by-type.dto.d.ts +50 -0
- package/dist/dto/get-events-by-type.dto.d.ts.map +1 -1
- package/dist/dto/get-events-by-type.dto.js +50 -0
- package/dist/dto/get-events-by-type.dto.js.map +1 -1
- package/dist/dto/get-ip-address-response.dto.d.ts +20 -0
- package/dist/dto/get-ip-address-response.dto.d.ts.map +1 -1
- package/dist/dto/get-ip-address-response.dto.js +20 -0
- package/dist/dto/get-ip-address-response.dto.js.map +1 -1
- package/dist/dto/get-mfa-status.dto.d.ts +59 -0
- package/dist/dto/get-mfa-status.dto.d.ts.map +1 -1
- package/dist/dto/get-mfa-status.dto.js +59 -0
- package/dist/dto/get-mfa-status.dto.js.map +1 -1
- package/dist/dto/get-risk-assessment-history.dto.d.ts +28 -0
- package/dist/dto/get-risk-assessment-history.dto.d.ts.map +1 -1
- package/dist/dto/get-risk-assessment-history.dto.js +28 -0
- package/dist/dto/get-risk-assessment-history.dto.js.map +1 -1
- package/dist/dto/get-session-id-response.dto.d.ts +21 -0
- package/dist/dto/get-session-id-response.dto.d.ts.map +1 -1
- package/dist/dto/get-session-id-response.dto.js +21 -0
- package/dist/dto/get-session-id-response.dto.js.map +1 -1
- package/dist/dto/get-setup-data-response.dto.d.ts +27 -0
- package/dist/dto/get-setup-data-response.dto.d.ts.map +1 -1
- package/dist/dto/get-setup-data-response.dto.js +27 -0
- package/dist/dto/get-setup-data-response.dto.js.map +1 -1
- package/dist/dto/get-setup-data.dto.d.ts +51 -0
- package/dist/dto/get-setup-data.dto.d.ts.map +1 -1
- package/dist/dto/get-setup-data.dto.js +51 -0
- package/dist/dto/get-setup-data.dto.js.map +1 -1
- package/dist/dto/get-suspicious-activity.dto.d.ts +31 -0
- package/dist/dto/get-suspicious-activity.dto.d.ts.map +1 -1
- package/dist/dto/get-suspicious-activity.dto.js +31 -0
- package/dist/dto/get-suspicious-activity.dto.js.map +1 -1
- package/dist/dto/get-user-agent-response.dto.d.ts +19 -0
- package/dist/dto/get-user-agent-response.dto.d.ts.map +1 -1
- package/dist/dto/get-user-agent-response.dto.js +19 -0
- package/dist/dto/get-user-agent-response.dto.js.map +1 -1
- package/dist/dto/get-user-auth-history.dto.d.ts +64 -0
- package/dist/dto/get-user-auth-history.dto.d.ts.map +1 -1
- package/dist/dto/get-user-auth-history.dto.js +64 -0
- package/dist/dto/get-user-auth-history.dto.js.map +1 -1
- package/dist/dto/get-user-by-email.dto.d.ts +42 -0
- package/dist/dto/get-user-by-email.dto.d.ts.map +1 -1
- package/dist/dto/get-user-by-email.dto.js +42 -0
- package/dist/dto/get-user-by-email.dto.js.map +1 -1
- package/dist/dto/get-user-by-id.dto.d.ts +32 -0
- package/dist/dto/get-user-by-id.dto.d.ts.map +1 -1
- package/dist/dto/get-user-by-id.dto.js +32 -0
- package/dist/dto/get-user-by-id.dto.js.map +1 -1
- package/dist/dto/get-user-devices.dto.d.ts +34 -0
- package/dist/dto/get-user-devices.dto.d.ts.map +1 -1
- package/dist/dto/get-user-devices.dto.js +34 -0
- package/dist/dto/get-user-devices.dto.js.map +1 -1
- package/dist/dto/get-user-response.dto.d.ts +14 -0
- package/dist/dto/get-user-response.dto.d.ts.map +1 -1
- package/dist/dto/get-user-response.dto.js +15 -0
- package/dist/dto/get-user-response.dto.js.map +1 -1
- package/dist/dto/has-provider.dto.d.ts +33 -0
- package/dist/dto/has-provider.dto.d.ts.map +1 -1
- package/dist/dto/has-provider.dto.js +33 -0
- package/dist/dto/has-provider.dto.js.map +1 -1
- package/dist/dto/index.js +5 -0
- package/dist/dto/index.js.map +1 -1
- package/dist/dto/is-trusted-device-response.dto.d.ts +28 -0
- package/dist/dto/is-trusted-device-response.dto.d.ts.map +1 -1
- package/dist/dto/is-trusted-device-response.dto.js +28 -0
- package/dist/dto/is-trusted-device-response.dto.js.map +1 -1
- package/dist/dto/list-providers-response.dto.d.ts +19 -0
- package/dist/dto/list-providers-response.dto.d.ts.map +1 -1
- package/dist/dto/list-providers-response.dto.js +19 -0
- package/dist/dto/list-providers-response.dto.js.map +1 -1
- package/dist/dto/login.dto.d.ts +48 -0
- package/dist/dto/login.dto.d.ts.map +1 -1
- package/dist/dto/login.dto.js +50 -1
- package/dist/dto/login.dto.js.map +1 -1
- package/dist/dto/logout-all-response.dto.d.ts +20 -0
- package/dist/dto/logout-all-response.dto.d.ts.map +1 -1
- package/dist/dto/logout-all-response.dto.js +20 -0
- package/dist/dto/logout-all-response.dto.js.map +1 -1
- package/dist/dto/logout-all.dto.d.ts +42 -0
- package/dist/dto/logout-all.dto.d.ts.map +1 -1
- package/dist/dto/logout-all.dto.js +42 -0
- package/dist/dto/logout-all.dto.js.map +1 -1
- package/dist/dto/logout-response.dto.d.ts +21 -0
- package/dist/dto/logout-response.dto.d.ts.map +1 -1
- package/dist/dto/logout-response.dto.js +21 -0
- package/dist/dto/logout-response.dto.js.map +1 -1
- package/dist/dto/logout.dto.d.ts +45 -0
- package/dist/dto/logout.dto.d.ts.map +1 -1
- package/dist/dto/logout.dto.js +45 -0
- package/dist/dto/logout.dto.js.map +1 -1
- package/dist/dto/refresh-token.dto.d.ts +28 -0
- package/dist/dto/refresh-token.dto.d.ts.map +1 -1
- package/dist/dto/refresh-token.dto.js +28 -0
- package/dist/dto/refresh-token.dto.js.map +1 -1
- package/dist/dto/remove-devices.dto.d.ts +51 -0
- package/dist/dto/remove-devices.dto.d.ts.map +1 -1
- package/dist/dto/remove-devices.dto.js +51 -0
- package/dist/dto/remove-devices.dto.js.map +1 -1
- package/dist/dto/resend-code-response.dto.d.ts +28 -0
- package/dist/dto/resend-code-response.dto.d.ts.map +1 -1
- package/dist/dto/resend-code-response.dto.js +28 -0
- package/dist/dto/resend-code-response.dto.js.map +1 -1
- package/dist/dto/resend-code.dto.d.ts +37 -0
- package/dist/dto/resend-code.dto.d.ts.map +1 -1
- package/dist/dto/resend-code.dto.js +37 -0
- package/dist/dto/resend-code.dto.js.map +1 -1
- package/dist/dto/reset-password.dto.d.ts +74 -0
- package/dist/dto/reset-password.dto.d.ts.map +1 -1
- package/dist/dto/reset-password.dto.js +76 -1
- package/dist/dto/reset-password.dto.js.map +1 -1
- package/dist/dto/respond-challenge.dto.d.ts +147 -0
- package/dist/dto/respond-challenge.dto.d.ts.map +1 -1
- package/dist/dto/respond-challenge.dto.js +162 -0
- package/dist/dto/respond-challenge.dto.js.map +1 -1
- package/dist/dto/set-mfa-exemption.dto.d.ts +65 -0
- package/dist/dto/set-mfa-exemption.dto.d.ts.map +1 -1
- package/dist/dto/set-mfa-exemption.dto.js +65 -0
- package/dist/dto/set-mfa-exemption.dto.js.map +1 -1
- package/dist/dto/set-must-change-password-response.dto.d.ts +23 -0
- package/dist/dto/set-must-change-password-response.dto.d.ts.map +1 -1
- package/dist/dto/set-must-change-password-response.dto.js +23 -0
- package/dist/dto/set-must-change-password-response.dto.js.map +1 -1
- package/dist/dto/set-must-change-password.dto.d.ts +32 -0
- package/dist/dto/set-must-change-password.dto.d.ts.map +1 -1
- package/dist/dto/set-must-change-password.dto.js +32 -0
- package/dist/dto/set-must-change-password.dto.js.map +1 -1
- package/dist/dto/set-preferred-method.dto.d.ts +48 -0
- package/dist/dto/set-preferred-method.dto.d.ts.map +1 -1
- package/dist/dto/set-preferred-method.dto.js +48 -0
- package/dist/dto/set-preferred-method.dto.js.map +1 -1
- package/dist/dto/setup-mfa.dto.d.ts +62 -0
- package/dist/dto/setup-mfa.dto.d.ts.map +1 -1
- package/dist/dto/setup-mfa.dto.js +62 -0
- package/dist/dto/setup-mfa.dto.js.map +1 -1
- package/dist/dto/signup.dto.d.ts +92 -0
- package/dist/dto/signup.dto.d.ts.map +1 -1
- package/dist/dto/signup.dto.js +93 -0
- package/dist/dto/signup.dto.js.map +1 -1
- package/dist/dto/social-auth.dto.d.ts +234 -0
- package/dist/dto/social-auth.dto.d.ts.map +1 -1
- package/dist/dto/social-auth.dto.js +234 -0
- package/dist/dto/social-auth.dto.js.map +1 -1
- package/dist/dto/trust-device-response.dto.d.ts +26 -0
- package/dist/dto/trust-device-response.dto.d.ts.map +1 -1
- package/dist/dto/trust-device-response.dto.js +26 -0
- package/dist/dto/trust-device-response.dto.js.map +1 -1
- package/dist/dto/trust-device.dto.d.ts +9 -0
- package/dist/dto/trust-device.dto.d.ts.map +1 -1
- package/dist/dto/trust-device.dto.js +9 -0
- package/dist/dto/trust-device.dto.js.map +1 -1
- package/dist/dto/update-user-attributes-request.dto.d.ts +36 -0
- package/dist/dto/update-user-attributes-request.dto.d.ts.map +1 -1
- package/dist/dto/update-user-attributes-request.dto.js +36 -0
- package/dist/dto/update-user-attributes-request.dto.js.map +1 -1
- package/dist/dto/user-response.dto.d.ts +81 -0
- package/dist/dto/user-response.dto.d.ts.map +1 -1
- package/dist/dto/user-response.dto.js +84 -2
- package/dist/dto/user-response.dto.js.map +1 -1
- package/dist/dto/user-update.dto.d.ts +132 -0
- package/dist/dto/user-update.dto.d.ts.map +1 -1
- package/dist/dto/user-update.dto.js +133 -0
- package/dist/dto/user-update.dto.js.map +1 -1
- package/dist/dto/verify-email.dto.d.ts +171 -0
- package/dist/dto/verify-email.dto.d.ts.map +1 -1
- package/dist/dto/verify-email.dto.js +173 -1
- package/dist/dto/verify-email.dto.js.map +1 -1
- package/dist/dto/verify-mfa-code.dto.d.ts +65 -0
- package/dist/dto/verify-mfa-code.dto.d.ts.map +1 -1
- package/dist/dto/verify-mfa-code.dto.js +65 -0
- package/dist/dto/verify-mfa-code.dto.js.map +1 -1
- package/dist/dto/verify-phone-by-sub.dto.d.ts +49 -0
- package/dist/dto/verify-phone-by-sub.dto.d.ts.map +1 -1
- package/dist/dto/verify-phone-by-sub.dto.js +49 -0
- package/dist/dto/verify-phone-by-sub.dto.js.map +1 -1
- package/dist/dto/verify-phone.dto.d.ts +139 -0
- package/dist/dto/verify-phone.dto.d.ts.map +1 -1
- package/dist/dto/verify-phone.dto.js +142 -1
- package/dist/dto/verify-phone.dto.js.map +1 -1
- package/dist/dto.d.ts +10 -0
- package/dist/dto.d.ts.map +1 -1
- package/dist/dto.js +10 -0
- package/dist/dto.js.map +1 -1
- package/dist/entities/auth-audit.entity.d.ts +159 -0
- package/dist/entities/auth-audit.entity.d.ts.map +1 -1
- package/dist/entities/auth-audit.entity.js +166 -0
- package/dist/entities/auth-audit.entity.js.map +1 -1
- package/dist/entities/challenge-session.entity.d.ts +87 -0
- package/dist/entities/challenge-session.entity.d.ts.map +1 -1
- package/dist/entities/challenge-session.entity.js +87 -0
- package/dist/entities/challenge-session.entity.js.map +1 -1
- package/dist/entities/index.d.ts +18 -0
- package/dist/entities/index.d.ts.map +1 -1
- package/dist/entities/index.js +18 -0
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/login-attempt.entity.d.ts +43 -0
- package/dist/entities/login-attempt.entity.d.ts.map +1 -1
- package/dist/entities/login-attempt.entity.js +43 -0
- package/dist/entities/login-attempt.entity.js.map +1 -1
- package/dist/entities/mfa-device.entity.d.ts +112 -0
- package/dist/entities/mfa-device.entity.d.ts.map +1 -1
- package/dist/entities/mfa-device.entity.js +112 -0
- package/dist/entities/mfa-device.entity.js.map +1 -1
- package/dist/entities/rate-limit.entity.d.ts +31 -0
- package/dist/entities/rate-limit.entity.d.ts.map +1 -1
- package/dist/entities/rate-limit.entity.js +31 -0
- package/dist/entities/rate-limit.entity.js.map +1 -1
- package/dist/entities/session.entity.d.ts +121 -0
- package/dist/entities/session.entity.d.ts.map +1 -1
- package/dist/entities/session.entity.js +121 -0
- package/dist/entities/session.entity.js.map +1 -1
- package/dist/entities/social-account.entity.d.ts +75 -0
- package/dist/entities/social-account.entity.d.ts.map +1 -1
- package/dist/entities/social-account.entity.js +75 -0
- package/dist/entities/social-account.entity.js.map +1 -1
- package/dist/entities/storage-lock.entity.d.ts +28 -0
- package/dist/entities/storage-lock.entity.d.ts.map +1 -1
- package/dist/entities/storage-lock.entity.js +28 -0
- package/dist/entities/storage-lock.entity.js.map +1 -1
- package/dist/entities/trusted-device.entity.d.ts +83 -0
- package/dist/entities/trusted-device.entity.d.ts.map +1 -1
- package/dist/entities/trusted-device.entity.js +83 -0
- package/dist/entities/trusted-device.entity.js.map +1 -1
- package/dist/entities/user.entity.d.ts +166 -0
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +166 -0
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/entities/verification-token.entity.d.ts +102 -0
- package/dist/entities/verification-token.entity.d.ts.map +1 -1
- package/dist/entities/verification-token.entity.js +102 -0
- package/dist/entities/verification-token.entity.js.map +1 -1
- package/dist/entities.d.ts +8 -0
- package/dist/entities.d.ts.map +1 -1
- package/dist/entities.js +8 -0
- package/dist/entities.js.map +1 -1
- package/dist/enums/auth-audit-event-type.enum.d.ts +211 -0
- package/dist/enums/auth-audit-event-type.enum.d.ts.map +1 -1
- package/dist/enums/auth-audit-event-type.enum.js +244 -0
- package/dist/enums/auth-audit-event-type.enum.js.map +1 -1
- package/dist/enums/error-codes.enum.d.ts +296 -0
- package/dist/enums/error-codes.enum.d.ts.map +1 -1
- package/dist/enums/error-codes.enum.js +332 -0
- package/dist/enums/error-codes.enum.js.map +1 -1
- package/dist/enums/mfa-method.enum.d.ts +74 -0
- package/dist/enums/mfa-method.enum.d.ts.map +1 -1
- package/dist/enums/mfa-method.enum.js +64 -0
- package/dist/enums/mfa-method.enum.js.map +1 -1
- package/dist/enums/risk-factor.enum.d.ts +91 -0
- package/dist/enums/risk-factor.enum.d.ts.map +1 -1
- package/dist/enums/risk-factor.enum.js +97 -0
- package/dist/enums/risk-factor.enum.js.map +1 -1
- package/dist/exceptions/nauth.exception.d.ts +149 -0
- package/dist/exceptions/nauth.exception.d.ts.map +1 -1
- package/dist/exceptions/nauth.exception.js +159 -0
- package/dist/exceptions/nauth.exception.js.map +1 -1
- package/dist/handlers/auth.handler.d.ts +32 -0
- package/dist/handlers/auth.handler.d.ts.map +1 -1
- package/dist/handlers/auth.handler.js +47 -1
- package/dist/handlers/auth.handler.js.map +1 -1
- package/dist/handlers/client-info.handler.d.ts +25 -0
- package/dist/handlers/client-info.handler.d.ts.map +1 -1
- package/dist/handlers/client-info.handler.js +36 -2
- package/dist/handlers/client-info.handler.js.map +1 -1
- package/dist/handlers/csrf.handler.d.ts +32 -0
- package/dist/handlers/csrf.handler.d.ts.map +1 -1
- package/dist/handlers/csrf.handler.js +49 -1
- package/dist/handlers/csrf.handler.js.map +1 -1
- package/dist/handlers/token-delivery.handler.d.ts +16 -0
- package/dist/handlers/token-delivery.handler.d.ts.map +1 -1
- package/dist/handlers/token-delivery.handler.js +22 -1
- package/dist/handlers/token-delivery.handler.js.map +1 -1
- package/dist/index.d.ts +34 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +67 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/client-info.interface.d.ts +58 -0
- package/dist/interfaces/client-info.interface.d.ts.map +1 -1
- package/dist/interfaces/config.interface.d.ts +1780 -0
- package/dist/interfaces/config.interface.d.ts.map +1 -1
- package/dist/interfaces/config.interface.js +16 -0
- package/dist/interfaces/config.interface.js.map +1 -1
- package/dist/interfaces/entities.interface.d.ts +48 -0
- package/dist/interfaces/entities.interface.d.ts.map +1 -1
- package/dist/interfaces/entities.interface.js +8 -0
- package/dist/interfaces/entities.interface.js.map +1 -1
- package/dist/interfaces/index.js +5 -0
- package/dist/interfaces/index.js.map +1 -1
- package/dist/interfaces/logger.interface.d.ts +213 -0
- package/dist/interfaces/logger.interface.d.ts.map +1 -1
- package/dist/interfaces/logger.interface.js +35 -0
- package/dist/interfaces/logger.interface.js.map +1 -1
- package/dist/interfaces/mfa-provider.interface.d.ts +134 -0
- package/dist/interfaces/mfa-provider.interface.d.ts.map +1 -1
- package/dist/interfaces/oauth.interface.d.ts +110 -0
- package/dist/interfaces/oauth.interface.d.ts.map +1 -1
- package/dist/interfaces/provider.interface.d.ts +83 -0
- package/dist/interfaces/provider.interface.d.ts.map +1 -1
- package/dist/interfaces/sms-template.interface.d.ts +246 -0
- package/dist/interfaces/sms-template.interface.d.ts.map +1 -1
- package/dist/interfaces/sms-template.interface.js +26 -0
- package/dist/interfaces/sms-template.interface.js.map +1 -1
- package/dist/interfaces/social-auth-provider.interface.d.ts +115 -0
- package/dist/interfaces/social-auth-provider.interface.d.ts.map +1 -1
- package/dist/interfaces/storage-adapter.interface.d.ts +37 -0
- package/dist/interfaces/storage-adapter.interface.d.ts.map +1 -1
- package/dist/interfaces/template.interface.d.ts +351 -0
- package/dist/interfaces/template.interface.d.ts.map +1 -1
- package/dist/interfaces/template.interface.js +13 -0
- package/dist/interfaces/template.interface.js.map +1 -1
- package/dist/interfaces/token-verifier.interface.d.ts +101 -0
- package/dist/interfaces/token-verifier.interface.d.ts.map +1 -1
- package/dist/interfaces.d.ts +8 -0
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js +8 -0
- package/dist/interfaces.js.map +1 -1
- package/dist/internal.d.ts +120 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +138 -0
- package/dist/internal.js.map +1 -1
- package/dist/platform/interfaces.d.ts +187 -0
- package/dist/platform/interfaces.d.ts.map +1 -1
- package/dist/platform/interfaces.js +11 -0
- package/dist/platform/interfaces.js.map +1 -1
- package/dist/schemas/auth-config.schema.d.ts +62 -0
- package/dist/schemas/auth-config.schema.d.ts.map +1 -1
- package/dist/schemas/auth-config.schema.js +189 -9
- package/dist/schemas/auth-config.schema.js.map +1 -1
- package/dist/services/adaptive-mfa-decision.service.d.ts +144 -0
- package/dist/services/adaptive-mfa-decision.service.d.ts.map +1 -1
- package/dist/services/adaptive-mfa-decision.service.js +151 -5
- package/dist/services/adaptive-mfa-decision.service.js.map +1 -1
- package/dist/services/auth-audit.service.d.ts +195 -0
- package/dist/services/auth-audit.service.d.ts.map +1 -1
- package/dist/services/auth-audit.service.js +228 -1
- package/dist/services/auth-audit.service.js.map +1 -1
- package/dist/services/auth-challenge-helper.service.d.ts +144 -1
- package/dist/services/auth-challenge-helper.service.d.ts.map +1 -1
- package/dist/services/auth-challenge-helper.service.js +295 -16
- package/dist/services/auth-challenge-helper.service.js.map +1 -1
- package/dist/services/auth-flow-context-builder.service.d.ts +120 -1
- package/dist/services/auth-flow-context-builder.service.d.ts.map +1 -1
- package/dist/services/auth-flow-context-builder.service.js +184 -5
- package/dist/services/auth-flow-context-builder.service.js.map +1 -1
- package/dist/services/auth-flow-rules.d.ts +136 -0
- package/dist/services/auth-flow-rules.d.ts.map +1 -1
- package/dist/services/auth-flow-rules.js +137 -0
- package/dist/services/auth-flow-rules.js.map +1 -1
- package/dist/services/auth-flow-state-definitions.d.ts +40 -0
- package/dist/services/auth-flow-state-definitions.d.ts.map +1 -1
- package/dist/services/auth-flow-state-definitions.js +98 -0
- package/dist/services/auth-flow-state-definitions.js.map +1 -1
- package/dist/services/auth-flow-state-machine.service.d.ts +91 -0
- package/dist/services/auth-flow-state-machine.service.d.ts.map +1 -1
- package/dist/services/auth-flow-state-machine.service.js +102 -0
- package/dist/services/auth-flow-state-machine.service.js.map +1 -1
- package/dist/services/auth-flow-state-machine.types.d.ts +221 -0
- package/dist/services/auth-flow-state-machine.types.d.ts.map +1 -1
- package/dist/services/auth-flow-state-machine.types.js +47 -0
- package/dist/services/auth-flow-state-machine.types.js.map +1 -1
- package/dist/services/auth.service.d.ts +397 -1
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +943 -27
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/challenge.service.d.ts +255 -1
- package/dist/services/challenge.service.d.ts.map +1 -1
- package/dist/services/challenge.service.js +327 -3
- package/dist/services/challenge.service.js.map +1 -1
- package/dist/services/client-info.service.d.ts +143 -0
- package/dist/services/client-info.service.d.ts.map +1 -1
- package/dist/services/client-info.service.js +161 -0
- package/dist/services/client-info.service.js.map +1 -1
- package/dist/services/csrf.service.d.ts +15 -0
- package/dist/services/csrf.service.d.ts.map +1 -1
- package/dist/services/csrf.service.js +16 -0
- package/dist/services/csrf.service.js.map +1 -1
- package/dist/services/email-verification.service.d.ts +52 -0
- package/dist/services/email-verification.service.d.ts.map +1 -1
- package/dist/services/email-verification.service.js +152 -12
- package/dist/services/email-verification.service.js.map +1 -1
- package/dist/services/geo-location.service.d.ts +105 -0
- package/dist/services/geo-location.service.d.ts.map +1 -1
- package/dist/services/geo-location.service.js +188 -2
- package/dist/services/geo-location.service.js.map +1 -1
- package/dist/services/jwt.service.d.ts +257 -0
- package/dist/services/jwt.service.d.ts.map +1 -1
- package/dist/services/jwt.service.js +284 -1
- package/dist/services/jwt.service.js.map +1 -1
- package/dist/services/mfa-base.service.d.ts +179 -1
- package/dist/services/mfa-base.service.d.ts.map +1 -1
- package/dist/services/mfa-base.service.js +256 -2
- package/dist/services/mfa-base.service.js.map +1 -1
- package/dist/services/mfa.service.d.ts +304 -0
- package/dist/services/mfa.service.d.ts.map +1 -1
- package/dist/services/mfa.service.js +380 -0
- package/dist/services/mfa.service.js.map +1 -1
- package/dist/services/password-reset.service.d.ts +46 -0
- package/dist/services/password-reset.service.d.ts.map +1 -1
- package/dist/services/password-reset.service.js +79 -0
- package/dist/services/password-reset.service.js.map +1 -1
- package/dist/services/password.service.d.ts +139 -0
- package/dist/services/password.service.d.ts.map +1 -1
- package/dist/services/password.service.js +167 -9
- package/dist/services/password.service.js.map +1 -1
- package/dist/services/phone-verification.service.d.ts +75 -0
- package/dist/services/phone-verification.service.d.ts.map +1 -1
- package/dist/services/phone-verification.service.js +188 -6
- package/dist/services/phone-verification.service.js.map +1 -1
- package/dist/services/risk-detection.service.d.ts +198 -0
- package/dist/services/risk-detection.service.d.ts.map +1 -1
- package/dist/services/risk-detection.service.js +358 -11
- package/dist/services/risk-detection.service.js.map +1 -1
- package/dist/services/risk-scoring.service.d.ts +84 -0
- package/dist/services/risk-scoring.service.d.ts.map +1 -1
- package/dist/services/risk-scoring.service.js +87 -0
- package/dist/services/risk-scoring.service.js.map +1 -1
- package/dist/services/session.service.d.ts +204 -0
- package/dist/services/session.service.d.ts.map +1 -1
- package/dist/services/session.service.js +289 -4
- package/dist/services/session.service.js.map +1 -1
- package/dist/services/social-auth-base.service.d.ts +123 -1
- package/dist/services/social-auth-base.service.d.ts.map +1 -1
- package/dist/services/social-auth-base.service.js +155 -2
- package/dist/services/social-auth-base.service.js.map +1 -1
- package/dist/services/social-auth.service.d.ts +191 -0
- package/dist/services/social-auth.service.d.ts.map +1 -1
- package/dist/services/social-auth.service.js +215 -2
- package/dist/services/social-auth.service.js.map +1 -1
- package/dist/services/social-provider-registry.service.d.ts +86 -0
- package/dist/services/social-provider-registry.service.d.ts.map +1 -1
- package/dist/services/social-provider-registry.service.js +86 -0
- package/dist/services/social-provider-registry.service.js.map +1 -1
- package/dist/services/trusted-device.service.d.ts +105 -0
- package/dist/services/trusted-device.service.d.ts.map +1 -1
- package/dist/services/trusted-device.service.js +133 -4
- package/dist/services/trusted-device.service.js.map +1 -1
- package/dist/storage/account-lockout-storage.service.d.ts +35 -0
- package/dist/storage/account-lockout-storage.service.d.ts.map +1 -1
- package/dist/storage/account-lockout-storage.service.js +35 -0
- package/dist/storage/account-lockout-storage.service.js.map +1 -1
- package/dist/storage/memory-storage.adapter.d.ts +148 -0
- package/dist/storage/memory-storage.adapter.d.ts.map +1 -1
- package/dist/storage/memory-storage.adapter.js +201 -6
- package/dist/storage/memory-storage.adapter.js.map +1 -1
- package/dist/storage/rate-limit-storage.service.d.ts +3 -0
- package/dist/storage/rate-limit-storage.service.d.ts.map +1 -1
- package/dist/storage/rate-limit-storage.service.js +4 -0
- package/dist/storage/rate-limit-storage.service.js.map +1 -1
- package/dist/storage.d.ts +8 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +8 -0
- package/dist/storage.js.map +1 -1
- package/dist/templates/html-template.engine.d.ts +110 -0
- package/dist/templates/html-template.engine.d.ts.map +1 -1
- package/dist/templates/html-template.engine.js +147 -0
- package/dist/templates/html-template.engine.js.map +1 -1
- package/dist/templates/index.d.ts +5 -0
- package/dist/templates/index.d.ts.map +1 -1
- package/dist/templates/index.js +5 -0
- package/dist/templates/index.js.map +1 -1
- package/dist/templates/sms-template.engine.d.ts +151 -0
- package/dist/templates/sms-template.engine.d.ts.map +1 -1
- package/dist/templates/sms-template.engine.js +171 -0
- package/dist/templates/sms-template.engine.js.map +1 -1
- package/dist/templates.d.ts +8 -0
- package/dist/templates.d.ts.map +1 -1
- package/dist/templates.js +8 -0
- package/dist/templates.js.map +1 -1
- package/dist/utils/common-passwords.d.ts +42 -0
- package/dist/utils/common-passwords.d.ts.map +1 -1
- package/dist/utils/common-passwords.js +88 -0
- package/dist/utils/common-passwords.js.map +1 -1
- package/dist/utils/context-storage.d.ts +129 -0
- package/dist/utils/context-storage.d.ts.map +1 -1
- package/dist/utils/context-storage.js +129 -0
- package/dist/utils/context-storage.js.map +1 -1
- package/dist/utils/cookie-names.util.d.ts +35 -0
- package/dist/utils/cookie-names.util.d.ts.map +1 -1
- package/dist/utils/cookie-names.util.js +37 -0
- package/dist/utils/cookie-names.util.js.map +1 -1
- package/dist/utils/cookies.util.d.ts +19 -0
- package/dist/utils/cookies.util.d.ts.map +1 -1
- package/dist/utils/cookies.util.js +30 -3
- package/dist/utils/cookies.util.js.map +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +4 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/ip-extractor.d.ts +88 -0
- package/dist/utils/ip-extractor.d.ts.map +1 -1
- package/dist/utils/ip-extractor.js +109 -16
- package/dist/utils/ip-extractor.js.map +1 -1
- package/dist/utils/nauth-logger.d.ts +70 -0
- package/dist/utils/nauth-logger.d.ts.map +1 -1
- package/dist/utils/nauth-logger.js +82 -4
- package/dist/utils/nauth-logger.js.map +1 -1
- package/dist/utils/pii-redactor.d.ts +70 -0
- package/dist/utils/pii-redactor.d.ts.map +1 -1
- package/dist/utils/pii-redactor.js +102 -0
- package/dist/utils/pii-redactor.js.map +1 -1
- package/dist/utils/setup/get-repositories.d.ts +16 -0
- package/dist/utils/setup/get-repositories.d.ts.map +1 -1
- package/dist/utils/setup/get-repositories.js +21 -0
- package/dist/utils/setup/get-repositories.js.map +1 -1
- package/dist/utils/setup/init-services.d.ts +40 -1
- package/dist/utils/setup/init-services.d.ts.map +1 -1
- package/dist/utils/setup/init-services.js +98 -0
- package/dist/utils/setup/init-services.js.map +1 -1
- package/dist/utils/setup/init-social.d.ts +27 -0
- package/dist/utils/setup/init-social.d.ts.map +1 -1
- package/dist/utils/setup/init-social.js +49 -0
- package/dist/utils/setup/init-social.js.map +1 -1
- package/dist/utils/setup/init-storage.d.ts +22 -0
- package/dist/utils/setup/init-storage.d.ts.map +1 -1
- package/dist/utils/setup/init-storage.js +36 -0
- package/dist/utils/setup/init-storage.js.map +1 -1
- package/dist/utils/setup/register-mfa.d.ts +22 -0
- package/dist/utils/setup/register-mfa.d.ts.map +1 -1
- package/dist/utils/setup/register-mfa.js +41 -0
- package/dist/utils/setup/register-mfa.js.map +1 -1
- package/dist/utils/setup/run-nauth-migrations.d.ts +7 -0
- package/dist/utils/setup/run-nauth-migrations.d.ts.map +1 -1
- package/dist/utils/setup/run-nauth-migrations.js +8 -0
- package/dist/utils/setup/run-nauth-migrations.js.map +1 -1
- package/dist/utils/token-delivery-policy.d.ts +17 -0
- package/dist/utils/token-delivery-policy.d.ts.map +1 -1
- package/dist/utils/token-delivery-policy.js +17 -0
- package/dist/utils/token-delivery-policy.js.map +1 -1
- package/dist/utils.d.ts +8 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +8 -0
- package/dist/utils.js.map +1 -1
- package/dist/validators/template.validator.d.ts +80 -0
- package/dist/validators/template.validator.d.ts.map +1 -1
- package/dist/validators/template.validator.js +94 -0
- package/dist/validators/template.validator.js.map +1 -1
- package/package.json +7 -2
|
@@ -1,17 +1,166 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AuthResponseDTO = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Unified Authentication Response DTO
|
|
6
|
+
*
|
|
7
|
+
* Used for ALL authentication operations:
|
|
8
|
+
* - Email/password login
|
|
9
|
+
* - User signup
|
|
10
|
+
* - Social authentication (Google, Apple, Facebook)
|
|
11
|
+
* - Token refresh
|
|
12
|
+
* - Challenge completions
|
|
13
|
+
*
|
|
14
|
+
* This provides a consistent interface regardless of authentication method,
|
|
15
|
+
* improving developer experience and code maintainability.
|
|
16
|
+
*
|
|
17
|
+
* When challenges are present, tokens will not be issued until all challenges
|
|
18
|
+
* are completed. This ensures proper verification and security enforcement.
|
|
19
|
+
*
|
|
20
|
+
* No validators needed - this is generated internally by the library.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // Successful auth with no challenges
|
|
25
|
+
* const loginResult = await authService.login(dto);
|
|
26
|
+
* // { accessToken: '...', refreshToken: '...', user: {...} }
|
|
27
|
+
*
|
|
28
|
+
* // Auth with pending challenge
|
|
29
|
+
* const signupResult = await authService.signup(dto);
|
|
30
|
+
* // { challengeName: 'VERIFY_EMAIL', session: '...', challengeParameters: {...} }
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
4
33
|
class AuthResponseDTO {
|
|
34
|
+
/**
|
|
35
|
+
* JWT access token for API authentication
|
|
36
|
+
* Short-lived (typically 15 minutes)
|
|
37
|
+
*
|
|
38
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
39
|
+
*/
|
|
5
40
|
accessToken;
|
|
41
|
+
/**
|
|
42
|
+
* JWT refresh token for obtaining new access tokens
|
|
43
|
+
* Long-lived (typically 30 days)
|
|
44
|
+
*
|
|
45
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
46
|
+
*/
|
|
6
47
|
refreshToken;
|
|
48
|
+
/**
|
|
49
|
+
* Access token expiration timestamp
|
|
50
|
+
* Unix timestamp in seconds
|
|
51
|
+
*
|
|
52
|
+
* @example 1730000000 (represents a specific date/time)
|
|
53
|
+
*
|
|
54
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
55
|
+
*/
|
|
7
56
|
accessTokenExpiresAt;
|
|
57
|
+
/**
|
|
58
|
+
* Refresh token expiration timestamp
|
|
59
|
+
* Unix timestamp in seconds
|
|
60
|
+
*
|
|
61
|
+
* @example 1732592000 (30 days after access token)
|
|
62
|
+
*
|
|
63
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
64
|
+
*/
|
|
8
65
|
refreshTokenExpiresAt;
|
|
66
|
+
/**
|
|
67
|
+
* Whether the current device is already trusted
|
|
68
|
+
*
|
|
69
|
+
* When true, the device has a valid trusted device token and UI should NOT show
|
|
70
|
+
* "trust device" popup.
|
|
71
|
+
*
|
|
72
|
+
* When false and rememberDevices === 'user_opt_in', UI can show popup after login
|
|
73
|
+
* to allow user to opt-in for device trust.
|
|
74
|
+
*
|
|
75
|
+
* When rememberDevices === 'always', this will always be true after successful login.
|
|
76
|
+
*
|
|
77
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
78
|
+
*/
|
|
9
79
|
trusted;
|
|
80
|
+
/**
|
|
81
|
+
* Device token for trusted device feature (UUID v4)
|
|
82
|
+
*
|
|
83
|
+
* Server-generated UUID token for identifying trusted devices.
|
|
84
|
+
* Only returned when rememberDevices is not 'never' and device is trusted.
|
|
85
|
+
*
|
|
86
|
+
* Delivery by mode:
|
|
87
|
+
* - **cookies mode**: Token set as `nauth_device_token` httpOnly cookie (not in response body)
|
|
88
|
+
* - **json/hybrid mode**: Token returned in response body for mobile apps
|
|
89
|
+
*
|
|
90
|
+
* Mobile apps should:
|
|
91
|
+
* - Store token in secure storage (iOS Keychain / Android EncryptedSharedPreferences)
|
|
92
|
+
* - Send token in `X-Device-Token` header on subsequent logins
|
|
93
|
+
* - Token persists across app restarts and survives logout
|
|
94
|
+
*
|
|
95
|
+
* Web apps:
|
|
96
|
+
* - Token automatically handled via httpOnly cookie (cookies mode)
|
|
97
|
+
* - No manual handling required
|
|
98
|
+
*
|
|
99
|
+
* @example "a21b654c-2746-4168-acee-c175083a65cd"
|
|
100
|
+
*
|
|
101
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
102
|
+
* WARNING: For JSON mode, ensure secure storage - token in response body can be intercepted
|
|
103
|
+
*/
|
|
10
104
|
deviceToken;
|
|
105
|
+
/**
|
|
106
|
+
* User information
|
|
107
|
+
* Standardized across all authentication methods
|
|
108
|
+
*
|
|
109
|
+
* NOTE: Only present when authentication is complete (no pending challenges)
|
|
110
|
+
*/
|
|
11
111
|
user;
|
|
112
|
+
// ============================================================================
|
|
113
|
+
// Challenge System (Similar to AWS Cognito)
|
|
114
|
+
// ============================================================================
|
|
115
|
+
/**
|
|
116
|
+
* Challenge that must be completed before authentication is granted
|
|
117
|
+
*
|
|
118
|
+
* When present, the user must complete this challenge using the
|
|
119
|
+
* challenge completion endpoint before they can access the system.
|
|
120
|
+
*
|
|
121
|
+
* Tokens (accessToken, refreshToken) will NOT be present when a challenge exists.
|
|
122
|
+
*
|
|
123
|
+
* @example 'VERIFY_EMAIL' | 'VERIFY_PHONE' | 'MFA_REQUIRED'
|
|
124
|
+
*/
|
|
12
125
|
challengeName;
|
|
126
|
+
/**
|
|
127
|
+
* Temporary session identifier for challenge completion (UUID v4)
|
|
128
|
+
*
|
|
129
|
+
* This is NOT a JWT token - it's a temporary identifier that must be
|
|
130
|
+
* submitted when completing the challenge. It expires after a short time
|
|
131
|
+
* (typically 15 minutes) or after successful challenge completion.
|
|
132
|
+
*
|
|
133
|
+
* @example "a21b654c-2746-4168-acee-c175083a65cd"
|
|
134
|
+
*
|
|
135
|
+
* NOTE: Only present when challengeName is set
|
|
136
|
+
*/
|
|
13
137
|
session;
|
|
138
|
+
/**
|
|
139
|
+
* Challenge-specific parameters
|
|
140
|
+
*
|
|
141
|
+
* Contains information needed to complete the challenge, such as:
|
|
142
|
+
* - Masked email/phone for delivery confirmation
|
|
143
|
+
* - Challenge type details
|
|
144
|
+
* - Instructions for the user
|
|
145
|
+
*
|
|
146
|
+
* NOTE: Only present when challengeName is set
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```typescript
|
|
150
|
+
* {
|
|
151
|
+
* email: 'user@example.com',
|
|
152
|
+
* codeDeliveryDestination: 'u***@example.com'
|
|
153
|
+
* }
|
|
154
|
+
* ```
|
|
155
|
+
*/
|
|
14
156
|
challengeParameters;
|
|
157
|
+
/**
|
|
158
|
+
* User's unique identifier (UUID v4)
|
|
159
|
+
* Present in both successful auth and challenge responses
|
|
160
|
+
* Helps the client track which user is authenticating
|
|
161
|
+
*
|
|
162
|
+
* @example "a21b654c-2746-4168-acee-c175083a65cd"
|
|
163
|
+
*/
|
|
15
164
|
userSub;
|
|
16
165
|
}
|
|
17
166
|
exports.AuthResponseDTO = AuthResponseDTO;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-response.dto.js","sourceRoot":"","sources":["../../src/dto/auth-response.dto.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"auth-response.dto.js","sourceRoot":"","sources":["../../src/dto/auth-response.dto.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAa,eAAe;IAC1B;;;;;OAKG;IACH,WAAW,CAAU;IAErB;;;;;OAKG;IACH,YAAY,CAAU;IAEtB;;;;;;;OAOG;IACH,oBAAoB,CAAU;IAE9B;;;;;;;OAOG;IACH,qBAAqB,CAAU;IAE/B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAW;IAElB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,WAAW,CAAU;IAErB;;;;;OAKG;IACH,IAAI,CAkDF;IAEF,+EAA+E;IAC/E,4CAA4C;IAC5C,+EAA+E;IAE/E;;;;;;;;;OASG;IACH,aAAa,CAAiB;IAE9B;;;;;;;;;;OAUG;IACH,OAAO,CAAU;IAEjB;;;;;;;;;;;;;;;;;OAiBG;IACH,mBAAmB,CAA2B;IAE9C;;;;;;OAMG;IACH,OAAO,CAAU;CAClB;AAjMD,0CAiMC"}
|
|
@@ -1,36 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Challenge Response DTOs for Unified Challenge System
|
|
3
|
+
*
|
|
4
|
+
* Discriminated union types for responding to authentication challenges.
|
|
5
|
+
* Each challenge type has specific required parameters.
|
|
6
|
+
*
|
|
7
|
+
* @module ChallengeResponseDTO
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Base interface for all challenge responses
|
|
11
|
+
*/
|
|
1
12
|
export interface BaseChallengeResponse {
|
|
13
|
+
/** Challenge session token */
|
|
2
14
|
session: string;
|
|
3
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* Response for email verification challenge
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const response: VerifyEmailResponse = {
|
|
22
|
+
* session: 'challenge-session-token',
|
|
23
|
+
* type: 'VERIFY_EMAIL',
|
|
24
|
+
* code: '123456'
|
|
25
|
+
* };
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
4
28
|
export interface VerifyEmailResponse extends BaseChallengeResponse {
|
|
5
29
|
type: 'VERIFY_EMAIL';
|
|
30
|
+
/** 6-digit verification code sent to email */
|
|
6
31
|
code: string;
|
|
7
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Response for collecting phone number (first step)
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const response: CollectPhoneResponse = {
|
|
39
|
+
* session: 'challenge-session-token',
|
|
40
|
+
* type: 'VERIFY_PHONE',
|
|
41
|
+
* phone: '+1234567890'
|
|
42
|
+
* };
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
8
45
|
export interface CollectPhoneResponse extends BaseChallengeResponse {
|
|
9
46
|
type: 'VERIFY_PHONE';
|
|
47
|
+
/** Phone number in E.164 format */
|
|
10
48
|
phone: string;
|
|
11
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Response for verifying phone with code (second step)
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const response: VerifyPhoneResponse = {
|
|
56
|
+
* session: 'challenge-session-token',
|
|
57
|
+
* type: 'VERIFY_PHONE',
|
|
58
|
+
* code: '123456'
|
|
59
|
+
* };
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
12
62
|
export interface VerifyPhoneResponse extends BaseChallengeResponse {
|
|
13
63
|
type: 'VERIFY_PHONE';
|
|
64
|
+
/** 6-digit verification code sent to phone */
|
|
14
65
|
code: string;
|
|
15
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Response for MFA verification with code (SMS/TOTP/Backup)
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const response: VerifyMFACodeResponse = {
|
|
73
|
+
* session: 'challenge-session-token',
|
|
74
|
+
* type: 'MFA_REQUIRED',
|
|
75
|
+
* method: 'totp',
|
|
76
|
+
* code: '123456'
|
|
77
|
+
* };
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
16
80
|
export interface VerifyMFACodeResponse extends BaseChallengeResponse {
|
|
17
81
|
type: 'MFA_REQUIRED';
|
|
82
|
+
/** MFA method being used */
|
|
18
83
|
method: 'sms' | 'totp' | 'backup';
|
|
84
|
+
/** Verification code */
|
|
19
85
|
code: string;
|
|
20
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Response for MFA verification with passkey
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```typescript
|
|
92
|
+
* const response: VerifyMFAPasskeyResponse = {
|
|
93
|
+
* session: 'challenge-session-token',
|
|
94
|
+
* type: 'MFA_REQUIRED',
|
|
95
|
+
* method: 'passkey',
|
|
96
|
+
* credential: { id: '...', rawId: '...', response: {...} }
|
|
97
|
+
* };
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
21
100
|
export interface VerifyMFAPasskeyResponse extends BaseChallengeResponse {
|
|
22
101
|
type: 'MFA_REQUIRED';
|
|
102
|
+
/** Passkey method */
|
|
23
103
|
method: 'passkey';
|
|
104
|
+
/** WebAuthn credential from navigator.credentials.get() */
|
|
24
105
|
credential: Record<string, unknown>;
|
|
25
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Response for forced password change challenge
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```typescript
|
|
112
|
+
* const response: ForceChangePasswordResponse = {
|
|
113
|
+
* session: 'challenge-session-token',
|
|
114
|
+
* type: 'FORCE_CHANGE_PASSWORD',
|
|
115
|
+
* newPassword: 'NewSecurePassword123!'
|
|
116
|
+
* };
|
|
117
|
+
* ```
|
|
118
|
+
*/
|
|
26
119
|
export interface ForceChangePasswordResponse extends BaseChallengeResponse {
|
|
27
120
|
type: 'FORCE_CHANGE_PASSWORD';
|
|
121
|
+
/** New password meeting security requirements */
|
|
28
122
|
newPassword: string;
|
|
29
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Response for MFA setup during challenge
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* ```typescript
|
|
129
|
+
* // SMS setup
|
|
130
|
+
* const smsResponse: MFASetupResponse = {
|
|
131
|
+
* session: 'challenge-session-token',
|
|
132
|
+
* type: 'MFA_SETUP_REQUIRED',
|
|
133
|
+
* method: 'sms',
|
|
134
|
+
* setupData: { phone: '+1234567890', code: '123456' }
|
|
135
|
+
* };
|
|
136
|
+
*
|
|
137
|
+
* // TOTP setup
|
|
138
|
+
* const totpResponse: MFASetupResponse = {
|
|
139
|
+
* session: 'challenge-session-token',
|
|
140
|
+
* type: 'MFA_SETUP_REQUIRED',
|
|
141
|
+
* method: 'totp',
|
|
142
|
+
* setupData: { code: '123456' }
|
|
143
|
+
* };
|
|
144
|
+
*
|
|
145
|
+
* // Passkey setup
|
|
146
|
+
* const passkeyResponse: MFASetupResponse = {
|
|
147
|
+
* session: 'challenge-session-token',
|
|
148
|
+
* type: 'MFA_SETUP_REQUIRED',
|
|
149
|
+
* method: 'passkey',
|
|
150
|
+
* setupData: { credential: {...} }
|
|
151
|
+
* };
|
|
152
|
+
* ```
|
|
153
|
+
*/
|
|
30
154
|
export interface MFASetupResponse extends BaseChallengeResponse {
|
|
31
155
|
type: 'MFA_SETUP_REQUIRED';
|
|
156
|
+
/** MFA method being set up */
|
|
32
157
|
method: 'sms' | 'email' | 'totp' | 'passkey';
|
|
158
|
+
/**
|
|
159
|
+
* Method-specific setup data
|
|
160
|
+
* - SMS: { phone: string, code: string }
|
|
161
|
+
* - TOTP: { code: string }
|
|
162
|
+
* - Passkey: { credential: Record<string, unknown> }
|
|
163
|
+
*/
|
|
33
164
|
setupData: Record<string, unknown>;
|
|
34
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Discriminated union of all challenge response types
|
|
168
|
+
*
|
|
169
|
+
* Use this type for the unified respondToChallenge() API.
|
|
170
|
+
* TypeScript will narrow the type based on the 'type' discriminator.
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```typescript
|
|
174
|
+
* async function handleChallenge(response: ChallengeResponseData) {
|
|
175
|
+
* switch (response.type) {
|
|
176
|
+
* case 'VERIFY_EMAIL':
|
|
177
|
+
* // TypeScript knows response.code is available
|
|
178
|
+
* break;
|
|
179
|
+
* case 'MFA_REQUIRED':
|
|
180
|
+
* if (response.method === 'passkey') {
|
|
181
|
+
* // TypeScript knows response.credential is available
|
|
182
|
+
* } else {
|
|
183
|
+
* // TypeScript knows response.code is available
|
|
184
|
+
* }
|
|
185
|
+
* break;
|
|
186
|
+
* }
|
|
187
|
+
* }
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
35
190
|
export type ChallengeResponseData = VerifyEmailResponse | CollectPhoneResponse | VerifyPhoneResponse | VerifyMFACodeResponse | VerifyMFAPasskeyResponse | ForceChangePasswordResponse | MFASetupResponse;
|
|
36
191
|
//# sourceMappingURL=challenge-response.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenge-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"challenge-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,IAAI,EAAE,cAAc,CAAC;IACrB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,IAAI,EAAE,cAAc,CAAC;IACrB,4BAA4B;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IAClC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,qBAAqB;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,8BAA8B;IAC9B,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAC7C;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,qBAAqB,GAC7B,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,qBAAqB,GACrB,wBAAwB,GACxB,2BAA2B,GAC3B,gBAAgB,CAAC"}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Challenge Response DTOs for Unified Challenge System
|
|
4
|
+
*
|
|
5
|
+
* Discriminated union types for responding to authentication challenges.
|
|
6
|
+
* Each challenge type has specific required parameters.
|
|
7
|
+
*
|
|
8
|
+
* @module ChallengeResponseDTO
|
|
9
|
+
*/
|
|
2
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
11
|
//# sourceMappingURL=challenge-response.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenge-response.dto.js","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"challenge-response.dto.js","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
|
|
@@ -1,5 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Change Password Request DTO
|
|
3
|
+
*
|
|
4
|
+
* Request DTO for changing a user's password (includes user sub).
|
|
5
|
+
*
|
|
6
|
+
* Security:
|
|
7
|
+
* - User sub validated (UUID)
|
|
8
|
+
* - Password validation enforced
|
|
9
|
+
* - Current password required for security
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* await authService.changePassword({
|
|
14
|
+
* sub: 'user-uuid',
|
|
15
|
+
* currentPassword: 'OldPass123!',
|
|
16
|
+
* newPassword: 'NewPass456!'
|
|
17
|
+
* });
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
1
20
|
import { ChangePasswordDTO } from './change-password.dto';
|
|
21
|
+
/**
|
|
22
|
+
* Request DTO for changing password (includes user sub)
|
|
23
|
+
*/
|
|
2
24
|
export declare class ChangePasswordRequestDTO extends ChangePasswordDTO {
|
|
25
|
+
/**
|
|
26
|
+
* User's unique identifier (UUID v4)
|
|
27
|
+
*
|
|
28
|
+
* Validation:
|
|
29
|
+
* - Must be a valid UUID v4 format
|
|
30
|
+
* - Matches DB constraint: char(36) or uuid
|
|
31
|
+
*
|
|
32
|
+
* Sanitization:
|
|
33
|
+
* - Trimmed
|
|
34
|
+
* - Lowercased for consistency
|
|
35
|
+
*
|
|
36
|
+
* @example "a21b654c-2746-4168-acee-c175083a65cd"
|
|
37
|
+
*/
|
|
3
38
|
sub: string;
|
|
4
39
|
}
|
|
5
40
|
//# sourceMappingURL=change-password-request.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-password-request.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password-request.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"change-password-request.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password-request.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D;;;;;;;;;;;;OAYG;IAQH,GAAG,EAAG,MAAM,CAAC;CACd"}
|
|
@@ -1,4 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Change Password Request DTO
|
|
4
|
+
*
|
|
5
|
+
* Request DTO for changing a user's password (includes user sub).
|
|
6
|
+
*
|
|
7
|
+
* Security:
|
|
8
|
+
* - User sub validated (UUID)
|
|
9
|
+
* - Password validation enforced
|
|
10
|
+
* - Current password required for security
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* await authService.changePassword({
|
|
15
|
+
* sub: 'user-uuid',
|
|
16
|
+
* currentPassword: 'OldPass123!',
|
|
17
|
+
* newPassword: 'NewPass456!'
|
|
18
|
+
* });
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
2
21
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
22
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
23
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -13,7 +32,23 @@ exports.ChangePasswordRequestDTO = void 0;
|
|
|
13
32
|
const class_validator_1 = require("class-validator");
|
|
14
33
|
const class_transformer_1 = require("class-transformer");
|
|
15
34
|
const change_password_dto_1 = require("./change-password.dto");
|
|
35
|
+
/**
|
|
36
|
+
* Request DTO for changing password (includes user sub)
|
|
37
|
+
*/
|
|
16
38
|
class ChangePasswordRequestDTO extends change_password_dto_1.ChangePasswordDTO {
|
|
39
|
+
/**
|
|
40
|
+
* User's unique identifier (UUID v4)
|
|
41
|
+
*
|
|
42
|
+
* Validation:
|
|
43
|
+
* - Must be a valid UUID v4 format
|
|
44
|
+
* - Matches DB constraint: char(36) or uuid
|
|
45
|
+
*
|
|
46
|
+
* Sanitization:
|
|
47
|
+
* - Trimmed
|
|
48
|
+
* - Lowercased for consistency
|
|
49
|
+
*
|
|
50
|
+
* @example "a21b654c-2746-4168-acee-c175083a65cd"
|
|
51
|
+
*/
|
|
17
52
|
sub;
|
|
18
53
|
}
|
|
19
54
|
exports.ChangePasswordRequestDTO = ChangePasswordRequestDTO;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-password-request.dto.js","sourceRoot":"","sources":["../../src/dto/change-password-request.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"change-password-request.dto.js","sourceRoot":"","sources":["../../src/dto/change-password-request.dto.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;;;;;;;;;;AAEH,qDAAyC;AACzC,yDAA8C;AAC9C,+DAA0D;AAE1D;;GAEG;AACH,MAAa,wBAAyB,SAAQ,uCAAiB;IAC7D;;;;;;;;;;;;OAYG;IAQH,GAAG,CAAU;CACd;AAtBD,4DAsBC;AADC;IAPC,IAAA,wBAAM,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,yCAAyC,EAAE,CAAC;IACnE,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;;qDACW"}
|
|
@@ -1,4 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Change Password Response DTO
|
|
3
|
+
*
|
|
4
|
+
* Response DTO for changing password.
|
|
5
|
+
* No validators needed - this is generated internally by the library.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* await authService.changePassword({
|
|
10
|
+
* sub: 'user-uuid',
|
|
11
|
+
* oldPassword: 'OldPass123!',
|
|
12
|
+
* newPassword: 'NewPass456!'
|
|
13
|
+
* });
|
|
14
|
+
* // Returns: { success: true }
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Response DTO for change password
|
|
19
|
+
*/
|
|
1
20
|
export declare class ChangePasswordResponseDTO {
|
|
21
|
+
/**
|
|
22
|
+
* Success indicator
|
|
23
|
+
* Always true on successful password change
|
|
24
|
+
*
|
|
25
|
+
* @example true
|
|
26
|
+
*/
|
|
2
27
|
success: boolean;
|
|
3
28
|
}
|
|
4
29
|
//# sourceMappingURL=change-password-response.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-password-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password-response.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"change-password-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password-response.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;GAEG;AACH,qBAAa,yBAAyB;IACpC;;;;;OAKG;IACH,OAAO,EAAG,OAAO,CAAC;CACnB"}
|
|
@@ -1,7 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Change Password Response DTO
|
|
4
|
+
*
|
|
5
|
+
* Response DTO for changing password.
|
|
6
|
+
* No validators needed - this is generated internally by the library.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* await authService.changePassword({
|
|
11
|
+
* sub: 'user-uuid',
|
|
12
|
+
* oldPassword: 'OldPass123!',
|
|
13
|
+
* newPassword: 'NewPass456!'
|
|
14
|
+
* });
|
|
15
|
+
* // Returns: { success: true }
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
2
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
19
|
exports.ChangePasswordResponseDTO = void 0;
|
|
20
|
+
/**
|
|
21
|
+
* Response DTO for change password
|
|
22
|
+
*/
|
|
4
23
|
class ChangePasswordResponseDTO {
|
|
24
|
+
/**
|
|
25
|
+
* Success indicator
|
|
26
|
+
* Always true on successful password change
|
|
27
|
+
*
|
|
28
|
+
* @example true
|
|
29
|
+
*/
|
|
5
30
|
success;
|
|
6
31
|
}
|
|
7
32
|
exports.ChangePasswordResponseDTO = ChangePasswordResponseDTO;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-password-response.dto.js","sourceRoot":"","sources":["../../src/dto/change-password-response.dto.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"change-password-response.dto.js","sourceRoot":"","sources":["../../src/dto/change-password-response.dto.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH;;GAEG;AACH,MAAa,yBAAyB;IACpC;;;;;OAKG;IACH,OAAO,CAAW;CACnB;AARD,8DAQC"}
|
|
@@ -1,5 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Change Password DTO
|
|
3
|
+
*
|
|
4
|
+
* Used for authenticated password changes.
|
|
5
|
+
* User must provide their current password for security verification.
|
|
6
|
+
*
|
|
7
|
+
* Security:
|
|
8
|
+
* - Old password verified before allowing change
|
|
9
|
+
* - New password validated for minimum strength
|
|
10
|
+
* - Password history checked (configurable)
|
|
11
|
+
* - Max length prevents DoS via bcrypt
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* POST /auth/change-password
|
|
16
|
+
* Authorization: Bearer <access-token>
|
|
17
|
+
* {
|
|
18
|
+
* "oldPassword": "currentPassword123",
|
|
19
|
+
* "newPassword": "newSecurePassword456"
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
1
23
|
export declare class ChangePasswordDTO {
|
|
24
|
+
/**
|
|
25
|
+
* Current password
|
|
26
|
+
*
|
|
27
|
+
* Validation:
|
|
28
|
+
* - Must be a string
|
|
29
|
+
*
|
|
30
|
+
* Note: NOT trimmed (passwords can have leading/trailing spaces)
|
|
31
|
+
*/
|
|
2
32
|
oldPassword: string;
|
|
33
|
+
/**
|
|
34
|
+
* New password
|
|
35
|
+
*
|
|
36
|
+
* Validation:
|
|
37
|
+
* - Must be a string
|
|
38
|
+
* - Min 8 characters (security requirement)
|
|
39
|
+
* - Max 128 characters (prevents DoS via bcrypt)
|
|
40
|
+
*
|
|
41
|
+
* Note: NOT trimmed (passwords can have leading/trailing spaces)
|
|
42
|
+
*
|
|
43
|
+
* Additional checks in service layer:
|
|
44
|
+
* - Password history (prevent reuse of recent passwords)
|
|
45
|
+
* - Password strength (if configured)
|
|
46
|
+
* - Not same as old password
|
|
47
|
+
*/
|
|
3
48
|
newPassword: string;
|
|
4
49
|
}
|
|
5
50
|
//# sourceMappingURL=change-password.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-password.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"change-password.dto.d.ts","sourceRoot":"","sources":["../../src/dto/change-password.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,qBAAa,iBAAiB;IAC5B;;;;;;;OAOG;IAEH,WAAW,EAAG,MAAM,CAAC;IAErB;;;;;;;;;;;;;;OAcG;IAIH,WAAW,EAAG,MAAM,CAAC;CACtB"}
|
|
@@ -1,4 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Change Password DTO
|
|
4
|
+
*
|
|
5
|
+
* Used for authenticated password changes.
|
|
6
|
+
* User must provide their current password for security verification.
|
|
7
|
+
*
|
|
8
|
+
* Security:
|
|
9
|
+
* - Old password verified before allowing change
|
|
10
|
+
* - New password validated for minimum strength
|
|
11
|
+
* - Password history checked (configurable)
|
|
12
|
+
* - Max length prevents DoS via bcrypt
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* POST /auth/change-password
|
|
17
|
+
* Authorization: Bearer <access-token>
|
|
18
|
+
* {
|
|
19
|
+
* "oldPassword": "currentPassword123",
|
|
20
|
+
* "newPassword": "newSecurePassword456"
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
2
24
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
25
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
26
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -12,7 +34,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
34
|
exports.ChangePasswordDTO = void 0;
|
|
13
35
|
const class_validator_1 = require("class-validator");
|
|
14
36
|
class ChangePasswordDTO {
|
|
37
|
+
/**
|
|
38
|
+
* Current password
|
|
39
|
+
*
|
|
40
|
+
* Validation:
|
|
41
|
+
* - Must be a string
|
|
42
|
+
*
|
|
43
|
+
* Note: NOT trimmed (passwords can have leading/trailing spaces)
|
|
44
|
+
*/
|
|
15
45
|
oldPassword;
|
|
46
|
+
/**
|
|
47
|
+
* New password
|
|
48
|
+
*
|
|
49
|
+
* Validation:
|
|
50
|
+
* - Must be a string
|
|
51
|
+
* - Min 8 characters (security requirement)
|
|
52
|
+
* - Max 128 characters (prevents DoS via bcrypt)
|
|
53
|
+
*
|
|
54
|
+
* Note: NOT trimmed (passwords can have leading/trailing spaces)
|
|
55
|
+
*
|
|
56
|
+
* Additional checks in service layer:
|
|
57
|
+
* - Password history (prevent reuse of recent passwords)
|
|
58
|
+
* - Password strength (if configured)
|
|
59
|
+
* - Not same as old password
|
|
60
|
+
*/
|
|
16
61
|
newPassword;
|
|
17
62
|
}
|
|
18
63
|
exports.ChangePasswordDTO = ChangePasswordDTO;
|