verben-authentication-ui 1.0.13 → 1.0.15
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/esm2022/public-api.mjs +17 -35
- package/esm2022/src/lib/base/base-data.component.mjs +80 -0
- package/esm2022/src/lib/base/base-data.facade.mjs +130 -0
- package/esm2022/src/lib/base/base-data.service.mjs +21 -0
- package/esm2022/src/lib/base/base-data.state.mjs +74 -0
- package/esm2022/src/lib/base/index.mjs +2 -0
- package/esm2022/src/lib/base/models.mjs +2 -0
- package/esm2022/src/lib/base/public-api.mjs +6 -0
- package/esm2022/src/lib/base/verben-authentication-ui-src-lib-base.mjs +5 -0
- package/esm2022/src/lib/components/auth-callback/auth-callback.component.mjs +57 -0
- package/esm2022/{lib → src/lib}/components/auth-callback/auth-callback.module.mjs +1 -1
- package/esm2022/src/lib/components/auth-callback/index.mjs +2 -0
- package/esm2022/src/lib/components/auth-callback/public-api.mjs +3 -0
- package/esm2022/src/lib/components/auth-callback/verben-authentication-ui-src-lib-components-auth-callback.mjs +5 -0
- package/esm2022/{lib → src/lib}/components/button/button.component.mjs +1 -1
- package/esm2022/src/lib/components/button/button.module.mjs +20 -0
- package/esm2022/src/lib/components/button/index.mjs +2 -0
- package/esm2022/src/lib/components/button/public-api.mjs +3 -0
- package/esm2022/src/lib/components/button/verben-authentication-ui-src-lib-components-button.mjs +5 -0
- package/esm2022/src/lib/components/forgot-password/ForgotPasswordData.mjs +2 -0
- package/esm2022/{lib → src/lib}/components/forgot-password/forgot-password.component.mjs +8 -9
- package/esm2022/{lib → src/lib}/components/forgot-password/forgot-password.module.mjs +1 -1
- package/esm2022/src/lib/components/forgot-password/index.mjs +2 -0
- package/esm2022/src/lib/components/forgot-password/public-api.mjs +4 -0
- package/esm2022/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.mjs +5 -0
- package/esm2022/src/lib/components/mail/index.mjs +2 -0
- package/esm2022/src/lib/components/mail/mail.component.mjs +69 -0
- package/esm2022/src/lib/components/mail/mail.module.mjs +21 -0
- package/esm2022/src/lib/components/mail/public-api.mjs +3 -0
- package/esm2022/src/lib/components/mail/verben-authentication-ui-src-lib-components-mail.mjs +5 -0
- package/esm2022/src/lib/components/mail-validation/index.mjs +2 -0
- package/esm2022/{lib → src/lib}/components/mail-validation/mail-validation.component.mjs +1 -1
- package/esm2022/{lib → src/lib}/components/mail-validation/mail-validation.module.mjs +1 -1
- package/esm2022/src/lib/components/mail-validation/public-api.mjs +3 -0
- package/esm2022/src/lib/components/mail-validation/verben-authentication-ui-src-lib-components-mail-validation.mjs +5 -0
- package/esm2022/src/lib/components/o-auth/index.mjs +2 -0
- package/esm2022/src/lib/components/o-auth/o-auth.component.mjs +107 -0
- package/esm2022/{lib → src/lib}/components/o-auth/o-auth.module.mjs +1 -1
- package/esm2022/src/lib/components/o-auth/public-api.mjs +3 -0
- package/esm2022/src/lib/components/o-auth/verben-authentication-ui-src-lib-components-o-auth.mjs +5 -0
- package/esm2022/src/lib/components/otp-input/index.mjs +2 -0
- package/esm2022/src/lib/components/otp-input/otp-input.component.mjs +86 -0
- package/esm2022/src/lib/components/otp-input/otp-input.module.mjs +42 -0
- package/esm2022/src/lib/components/otp-input/public-api.mjs +3 -0
- package/esm2022/src/lib/components/otp-input/verben-authentication-ui-src-lib-components-otp-input.mjs +5 -0
- package/esm2022/src/lib/components/reset-password/ResetPasswordData.mjs +2 -0
- package/esm2022/src/lib/components/reset-password/index.mjs +2 -0
- package/esm2022/src/lib/components/reset-password/public-api.mjs +4 -0
- package/esm2022/{lib → src/lib}/components/reset-password/reset-password.component.mjs +8 -9
- package/esm2022/{lib → src/lib}/components/reset-password/reset-password.module.mjs +1 -1
- package/esm2022/src/lib/components/reset-password/verben-authentication-ui-src-lib-components-reset-password.mjs +5 -0
- package/esm2022/src/lib/components/role-control/ChildrenType.mjs +6 -0
- package/esm2022/src/lib/components/role-control/MappedRole.mjs +2 -0
- package/esm2022/src/lib/components/role-control/MappedRoleAction.mjs +2 -0
- package/esm2022/src/lib/components/role-control/MappedRoleContext.mjs +2 -0
- package/esm2022/src/lib/components/role-control/UIActions.mjs +7 -0
- package/esm2022/src/lib/components/role-control/UIs.mjs +40 -0
- package/esm2022/src/lib/components/role-control/base-table-style.mjs +53 -0
- package/esm2022/src/lib/components/role-control/index.mjs +2 -0
- package/esm2022/src/lib/components/role-control/public-api.mjs +3 -0
- package/esm2022/src/lib/components/role-control/role-control.component.mjs +1720 -0
- package/esm2022/src/lib/components/role-control/role-control.module.mjs +18 -0
- package/esm2022/src/lib/components/role-control/role-control.service.mjs +57 -0
- package/esm2022/src/lib/components/role-control/verben-authentication-ui-src-lib-components-role-control.mjs +5 -0
- package/esm2022/src/lib/components/sign-in/index.mjs +2 -0
- package/esm2022/src/lib/components/sign-in/public-api.mjs +3 -0
- package/esm2022/src/lib/components/sign-in/sign-in.component.mjs +316 -0
- package/esm2022/src/lib/components/sign-in/sign-in.module.mjs +46 -0
- package/esm2022/src/lib/components/sign-in/verben-authentication-ui-src-lib-components-sign-in.mjs +5 -0
- package/esm2022/src/lib/components/sign-up/index.mjs +2 -0
- package/esm2022/src/lib/components/sign-up/public-api.mjs +3 -0
- package/esm2022/src/lib/components/sign-up/sign-up.component.mjs +227 -0
- package/esm2022/src/lib/components/sign-up/sign-up.module.mjs +43 -0
- package/esm2022/src/lib/components/sign-up/verben-authentication-ui-src-lib-components-sign-up.mjs +5 -0
- package/esm2022/src/lib/components/sso/base-table-style.mjs +53 -0
- package/esm2022/src/lib/components/sso/helper.mjs +16 -0
- package/esm2022/src/lib/components/sso/index.mjs +2 -0
- package/esm2022/src/lib/components/sso/public-api.mjs +3 -0
- package/esm2022/{lib → src/lib}/components/sso/sso-form/sso-form.component.mjs +1 -1
- package/esm2022/src/lib/components/sso/sso.columns.mjs +29 -0
- package/esm2022/src/lib/components/sso/sso.component.mjs +234 -0
- package/esm2022/src/lib/components/sso/sso.module.mjs +63 -0
- package/esm2022/src/lib/components/sso/verben-authentication-ui-src-lib-components-sso.mjs +5 -0
- package/esm2022/src/lib/components/two-factor-auth-otp/index.mjs +2 -0
- package/esm2022/src/lib/components/two-factor-auth-otp/public-api.mjs +3 -0
- package/esm2022/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.mjs +208 -0
- package/esm2022/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.module.mjs +35 -0
- package/esm2022/src/lib/components/two-factor-auth-otp/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs +5 -0
- package/esm2022/src/lib/components/two-factor-auth-setup/index.mjs +2 -0
- package/esm2022/src/lib/components/two-factor-auth-setup/public-api.mjs +3 -0
- package/esm2022/{lib → src/lib}/components/two-factor-auth-setup/two-factor-auth-setup.component.mjs +1 -1
- package/esm2022/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.module.mjs +19 -0
- package/esm2022/src/lib/components/two-factor-auth-setup/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs +5 -0
- package/esm2022/src/lib/components/user-management/base-table-style.mjs +53 -0
- package/esm2022/src/lib/components/user-management/index.mjs +2 -0
- package/esm2022/src/lib/components/user-management/public-api.mjs +3 -0
- package/esm2022/src/lib/components/user-management/services/user-management.service.mjs +88 -0
- package/esm2022/{lib/components/user-management/user-management-form/use-management-form.component.mjs → src/lib/components/user-management/user-management-form/user-management-form.component.mjs} +2 -2
- package/esm2022/src/lib/components/user-management/user-management.columns.mjs +53 -0
- package/esm2022/{lib → src/lib}/components/user-management/user-management.component.mjs +20 -23
- package/esm2022/src/lib/components/user-management/user-management.module.mjs +91 -0
- package/esm2022/src/lib/components/user-management/user-status-badge/user-status-badge.component.mjs +26 -0
- package/esm2022/src/lib/components/user-management/verben-authentication-ui-src-lib-components-user-management.mjs +5 -0
- package/esm2022/src/lib/components/user-request/index.mjs +2 -0
- package/esm2022/src/lib/components/user-request/public-api.mjs +3 -0
- package/esm2022/src/lib/components/user-request/user-request.component.mjs +318 -0
- package/esm2022/src/lib/components/user-request/user-request.module.mjs +38 -0
- package/esm2022/src/lib/components/user-request/verben-authentication-ui-src-lib-components-user-request.mjs +5 -0
- package/esm2022/src/lib/components/user-request-approval/access-request.columns.mjs +29 -0
- package/esm2022/src/lib/components/user-request-approval/base-table-style.mjs +53 -0
- package/esm2022/src/lib/components/user-request-approval/facades/user-access-request.facade.mjs +260 -0
- package/esm2022/src/lib/components/user-request-approval/helper.mjs +56 -0
- package/esm2022/src/lib/components/user-request-approval/index.mjs +2 -0
- package/esm2022/src/lib/components/user-request-approval/public-api.mjs +5 -0
- package/esm2022/src/lib/components/user-request-approval/services/user-access-request.service.mjs +93 -0
- package/esm2022/src/lib/components/user-request-approval/states/user-access-request.state.mjs +92 -0
- package/esm2022/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.mjs +26 -0
- package/esm2022/{lib → src/lib}/components/user-request-approval/user-request-approval.component.mjs +3 -3
- package/esm2022/src/lib/components/user-request-approval/user-request-approval.module.mjs +83 -0
- package/esm2022/{lib/components/user-request-approval/user-request-form/use-request-form.component.mjs → src/lib/components/user-request-approval/user-request-form/user-request-form.component.mjs} +2 -2
- package/esm2022/src/lib/components/user-request-approval/verben-authentication-ui-src-lib-components-user-request-approval.mjs +5 -0
- package/esm2022/src/lib/components/user-request-process/index.mjs +2 -0
- package/esm2022/src/lib/components/user-request-process/public-api.mjs +3 -0
- package/esm2022/src/lib/components/user-request-process/user-request-process.component.mjs +11 -0
- package/esm2022/src/lib/components/user-request-process/user-request-process.module.mjs +18 -0
- package/esm2022/src/lib/components/user-request-process/verben-authentication-ui-src-lib-components-user-request-process.mjs +5 -0
- package/esm2022/src/lib/models/ApplicationRoleAction.mjs +2 -0
- package/esm2022/src/lib/models/ApplicationRoleContext.mjs +2 -0
- package/esm2022/src/lib/models/ErrorResponse.mjs +11 -0
- package/esm2022/src/lib/models/FilterTypes.mjs +9 -0
- package/esm2022/src/lib/models/MailConfig.mjs +2 -0
- package/esm2022/src/lib/models/MessageConfig.mjs +2 -0
- package/esm2022/src/lib/models/MessageMedium.mjs +6 -0
- package/esm2022/src/lib/models/OAuthParam.mjs +2 -0
- package/esm2022/src/lib/models/OAuthType.mjs +9 -0
- package/esm2022/src/lib/models/PagedResult.mjs +2 -0
- package/esm2022/src/lib/models/PasswordRequestParam.mjs +2 -0
- package/esm2022/src/lib/models/PeriodMode.mjs +12 -0
- package/esm2022/src/lib/models/PermissionConfig.mjs +2 -0
- package/esm2022/src/lib/models/ReportSchedule.mjs +2 -0
- package/esm2022/src/lib/models/ReportType.mjs +7 -0
- package/esm2022/src/lib/models/ResponseKeyValue.mjs +2 -0
- package/esm2022/src/lib/models/Role.mjs +2 -0
- package/esm2022/src/lib/models/RoleAction.mjs +2 -0
- package/esm2022/src/lib/models/RoleContext.mjs +2 -0
- package/esm2022/src/lib/models/SMSConfig.mjs +2 -0
- package/esm2022/src/lib/models/SearchDynamicWrapper.mjs +2 -0
- package/esm2022/src/lib/models/SearchOperator.mjs +6 -0
- package/esm2022/src/lib/models/SearchPropertySign.mjs +11 -0
- package/esm2022/src/lib/models/SearchPropertyValue.mjs +2 -0
- package/esm2022/src/lib/models/SearchPropertyValueType.mjs +11 -0
- package/esm2022/src/lib/models/SortDirection.mjs +7 -0
- package/esm2022/src/lib/models/Tag.mjs +2 -0
- package/esm2022/src/lib/models/TaskNotification.mjs +2 -0
- package/esm2022/src/lib/models/TaskNotificationMessageType.mjs +6 -0
- package/esm2022/src/lib/models/TaskNotificationType.mjs +6 -0
- package/esm2022/src/lib/models/Tenant.mjs +2 -0
- package/esm2022/src/lib/models/TenantConfig.mjs +2 -0
- package/esm2022/src/lib/models/UserRequest.mjs +2 -0
- package/esm2022/src/lib/models/auth-mechanism.mjs +8 -0
- package/esm2022/src/lib/models/base.mjs +2 -0
- package/esm2022/src/lib/models/conditions.mjs +13 -0
- package/esm2022/src/lib/models/index.mjs +2 -0
- package/esm2022/src/lib/models/log-in.mjs +2 -0
- package/esm2022/src/lib/models/mainUser.mjs +2 -0
- package/esm2022/src/lib/models/oauth-resp.mjs +2 -0
- package/esm2022/src/lib/models/oauth-response.mjs +2 -0
- package/esm2022/src/lib/models/object-state.mjs +8 -0
- package/esm2022/src/lib/models/otpValue.mjs +2 -0
- package/esm2022/src/lib/models/paged.mjs +2 -0
- package/esm2022/src/lib/models/public-api.mjs +53 -0
- package/esm2022/src/lib/models/query-params.mjs +2 -0
- package/esm2022/src/lib/models/request-status.mjs +5 -0
- package/esm2022/src/lib/models/resend-otp-data.mjs +2 -0
- package/esm2022/src/lib/models/sign-up.mjs +2 -0
- package/esm2022/src/lib/models/single-sign-on.mjs +2 -0
- package/esm2022/src/lib/models/status.mjs +6 -0
- package/esm2022/src/lib/models/user-access-request-status.mjs +7 -0
- package/esm2022/src/lib/models/user-access-request.mjs +2 -0
- package/esm2022/src/lib/models/user.mjs +2 -0
- package/esm2022/src/lib/models/verben-authentication-ui-src-lib-models.mjs +5 -0
- package/esm2022/src/lib/pipes/async-label.pipe.mjs +25 -0
- package/esm2022/src/lib/pipes/index.mjs +2 -0
- package/esm2022/src/lib/pipes/public-api.mjs +2 -0
- package/esm2022/src/lib/pipes/verben-authentication-ui-src-lib-pipes.mjs +5 -0
- package/esm2022/src/lib/services/authorization.service.mjs +26 -0
- package/esm2022/src/lib/services/encryption.service.mjs +52 -0
- package/esm2022/src/lib/services/environment.service.mjs +26 -0
- package/esm2022/src/lib/services/http-web-request.service.mjs +85 -0
- package/esm2022/src/lib/services/import.service.mjs +248 -0
- package/esm2022/src/lib/services/index.mjs +2 -0
- package/esm2022/src/lib/services/label.service.mjs +134 -0
- package/esm2022/src/lib/services/public-api.mjs +8 -0
- package/esm2022/src/lib/services/util.service.mjs +55 -0
- package/esm2022/src/lib/services/verben-authentication-ui-src-lib-services.mjs +5 -0
- package/esm2022/src/lib/shared/index.mjs +2 -0
- package/esm2022/src/lib/shared/public-api.mjs +2 -0
- package/esm2022/src/lib/shared/shared.module.mjs +90 -0
- package/esm2022/src/lib/shared/verben-authentication-ui-src-lib-shared.mjs +5 -0
- package/esm2022/src/utils/components/base-data-view.component.mjs +111 -0
- package/esm2022/src/utils/index.mjs +2 -0
- package/esm2022/src/utils/models/DataViewConfig.mjs +2 -0
- package/esm2022/src/utils/public-api.mjs +3 -0
- package/esm2022/src/utils/verben-authentication-ui-src-utils.mjs +5 -0
- package/fesm2022/verben-authentication-ui-src-lib-base.mjs +305 -0
- package/fesm2022/verben-authentication-ui-src-lib-base.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-auth-callback.mjs +79 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-auth-callback.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-button.mjs +70 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-button.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs +128 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-mail-validation.mjs +146 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-mail-validation.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-mail.mjs +94 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-mail.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-o-auth.mjs +130 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-o-auth.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-otp-input.mjs +131 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-otp-input.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs +144 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs +1893 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs +363 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs +271 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sso.mjs +462 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-sso.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs +245 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs +113 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs +894 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs +1021 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-process.mjs +34 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request-process.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs +355 -0
- package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-models.mjs +153 -0
- package/fesm2022/verben-authentication-ui-src-lib-models.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-pipes.mjs +32 -0
- package/fesm2022/verben-authentication-ui-src-lib-pipes.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-services.mjs +610 -0
- package/fesm2022/verben-authentication-ui-src-lib-services.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-lib-shared.mjs +97 -0
- package/fesm2022/verben-authentication-ui-src-lib-shared.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui-src-utils.mjs +118 -0
- package/fesm2022/verben-authentication-ui-src-utils.mjs.map +1 -0
- package/fesm2022/verben-authentication-ui.mjs +16 -6610
- package/fesm2022/verben-authentication-ui.mjs.map +1 -1
- package/package.json +146 -2
- package/public-api.d.ts +16 -34
- package/src/lib/base/base-data.component.d.ts +32 -0
- package/src/lib/base/base-data.facade.d.ts +27 -0
- package/src/lib/base/base-data.service.d.ts +14 -0
- package/src/lib/base/base-data.state.d.ts +28 -0
- package/src/lib/base/index.d.ts +1 -0
- package/src/lib/base/models.d.ts +11 -0
- package/src/lib/base/public-api.d.ts +5 -0
- package/src/lib/components/auth-callback/index.d.ts +1 -0
- package/src/lib/components/auth-callback/public-api.d.ts +2 -0
- package/src/lib/components/button/index.d.ts +1 -0
- package/src/lib/components/button/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/forgot-password/forgot-password.component.d.ts +4 -4
- package/src/lib/components/forgot-password/index.d.ts +1 -0
- package/src/lib/components/forgot-password/public-api.d.ts +3 -0
- package/src/lib/components/mail/index.d.ts +1 -0
- package/{lib → src/lib}/components/mail/mail.module.d.ts +1 -1
- package/src/lib/components/mail/public-api.d.ts +2 -0
- package/src/lib/components/mail-validation/index.d.ts +1 -0
- package/src/lib/components/mail-validation/public-api.d.ts +2 -0
- package/src/lib/components/o-auth/index.d.ts +1 -0
- package/{lib → src/lib}/components/o-auth/o-auth.component.d.ts +1 -1
- package/src/lib/components/o-auth/public-api.d.ts +2 -0
- package/src/lib/components/otp-input/index.d.ts +1 -0
- package/{lib → src/lib}/components/otp-input/otp-input.module.d.ts +2 -2
- package/src/lib/components/otp-input/public-api.d.ts +2 -0
- package/src/lib/components/reset-password/index.d.ts +1 -0
- package/src/lib/components/reset-password/public-api.d.ts +3 -0
- package/{lib → src/lib}/components/reset-password/reset-password.component.d.ts +4 -4
- package/{lib → src/lib}/components/role-control/MappedRole.d.ts +1 -1
- package/{lib → src/lib}/components/role-control/MappedRoleAction.d.ts +1 -1
- package/{lib → src/lib}/components/role-control/MappedRoleContext.d.ts +1 -1
- package/src/lib/components/role-control/index.d.ts +1 -0
- package/src/lib/components/role-control/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/role-control/role-control.component.d.ts +21 -13
- package/{lib → src/lib}/components/role-control/role-control.module.d.ts +1 -1
- package/src/lib/components/sign-in/index.d.ts +1 -0
- package/src/lib/components/sign-in/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/sign-in/sign-in.component.d.ts +10 -10
- package/{lib → src/lib}/components/sign-in/sign-in.module.d.ts +2 -2
- package/src/lib/components/sign-up/index.d.ts +1 -0
- package/src/lib/components/sign-up/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/sign-up/sign-up.component.d.ts +6 -6
- package/{lib → src/lib}/components/sign-up/sign-up.module.d.ts +2 -2
- package/src/lib/components/sso/helper.d.ts +2 -0
- package/src/lib/components/sso/index.d.ts +1 -0
- package/src/lib/components/sso/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/sso/sso.columns.d.ts +1 -1
- package/{lib → src/lib}/components/sso/sso.component.d.ts +1 -1
- package/src/lib/components/two-factor-auth-otp/index.d.ts +1 -0
- package/src/lib/components/two-factor-auth-otp/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/two-factor-auth-otp/two-factor-auth-otp.component.d.ts +6 -6
- package/{lib → src/lib}/components/two-factor-auth-otp/two-factor-auth-otp.module.d.ts +2 -2
- package/src/lib/components/two-factor-auth-setup/index.d.ts +1 -0
- package/src/lib/components/two-factor-auth-setup/public-api.d.ts +2 -0
- package/src/lib/components/user-management/index.d.ts +1 -0
- package/src/lib/components/user-management/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/user-management/services/user-management.service.d.ts +4 -4
- package/{lib/components/user-management/user-management-form/use-management-form.component.d.ts → src/lib/components/user-management/user-management-form/user-management-form.component.d.ts} +4 -4
- package/{lib → src/lib}/components/user-management/user-management.columns.d.ts +1 -1
- package/{lib → src/lib}/components/user-management/user-management.component.d.ts +11 -11
- package/{lib → src/lib}/components/user-management/user-management.module.d.ts +2 -2
- package/{lib → src/lib}/components/user-management/user-status-badge/user-status-badge.component.d.ts +1 -1
- package/src/lib/components/user-request/index.d.ts +1 -0
- package/src/lib/components/user-request/public-api.d.ts +2 -0
- package/{lib → src/lib}/components/user-request/user-request.component.d.ts +7 -7
- package/{lib → src/lib}/components/user-request/user-request.module.d.ts +1 -1
- package/{lib → src/lib}/components/user-request-approval/access-request.columns.d.ts +1 -1
- package/{lib → src/lib}/components/user-request-approval/facades/user-access-request.facade.d.ts +4 -4
- package/{lib → src/lib}/components/user-request-approval/helper.d.ts +1 -1
- package/src/lib/components/user-request-approval/index.d.ts +1 -0
- package/src/lib/components/user-request-approval/public-api.d.ts +4 -0
- package/{lib → src/lib}/components/user-request-approval/services/user-access-request.service.d.ts +6 -6
- package/{lib → src/lib}/components/user-request-approval/states/user-access-request.state.d.ts +3 -3
- package/{lib → src/lib}/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.d.ts +1 -1
- package/{lib → src/lib}/components/user-request-approval/user-request-approval.component.d.ts +2 -2
- package/{lib → src/lib}/components/user-request-approval/user-request-approval.module.d.ts +1 -1
- package/{lib/components/user-request-approval/user-request-form/use-request-form.component.d.ts → src/lib/components/user-request-approval/user-request-form/user-request-form.component.d.ts} +1 -1
- package/src/lib/components/user-request-process/index.d.ts +1 -0
- package/src/lib/components/user-request-process/public-api.d.ts +2 -0
- package/src/lib/components/user-request-process/user-request-process.component.d.ts +5 -0
- package/src/lib/components/user-request-process/user-request-process.module.d.ts +7 -0
- package/src/lib/models/FilterTypes.d.ts +6 -0
- package/src/lib/models/MailConfig.d.ts +12 -0
- package/src/lib/models/MessageConfig.d.ts +3 -0
- package/src/lib/models/MessageMedium.d.ts +4 -0
- package/src/lib/models/PeriodMode.d.ts +10 -0
- package/src/lib/models/ReportSchedule.d.ts +22 -0
- package/src/lib/models/ReportType.d.ts +5 -0
- package/src/lib/models/SMSConfig.d.ts +10 -0
- package/src/lib/models/TaskNotification.d.ts +12 -0
- package/src/lib/models/TaskNotificationMessageType.d.ts +4 -0
- package/src/lib/models/TaskNotificationType.d.ts +4 -0
- package/src/lib/models/Tenant.d.ts +21 -0
- package/{lib → src/lib}/models/UserRequest.d.ts +6 -9
- package/src/lib/models/index.d.ts +1 -0
- package/src/lib/models/public-api.d.ts +52 -0
- package/{lib → src/lib}/pipes/async-label.pipe.d.ts +1 -1
- package/src/lib/pipes/index.d.ts +1 -0
- package/src/lib/pipes/public-api.d.ts +1 -0
- package/src/lib/services/import.service.d.ts +15 -0
- package/src/lib/services/index.d.ts +1 -0
- package/src/lib/services/public-api.d.ts +7 -0
- package/src/lib/shared/index.d.ts +1 -0
- package/src/lib/shared/public-api.d.ts +1 -0
- package/{lib → src/lib}/shared/shared.module.d.ts +2 -2
- package/src/utils/components/base-data-view.component.d.ts +34 -0
- package/src/utils/index.d.ts +1 -0
- package/src/utils/models/DataViewConfig.d.ts +11 -0
- package/src/utils/public-api.d.ts +2 -0
- package/esm2022/lib/components/auth-callback/auth-callback.component.mjs +0 -57
- package/esm2022/lib/components/button/button.module.mjs +0 -20
- package/esm2022/lib/components/forgot-password/ForgotPasswordData.mjs +0 -2
- package/esm2022/lib/components/mail/mail.component.mjs +0 -69
- package/esm2022/lib/components/mail/mail.module.mjs +0 -21
- package/esm2022/lib/components/o-auth/o-auth.component.mjs +0 -107
- package/esm2022/lib/components/otp-input/otp-input.component.mjs +0 -86
- package/esm2022/lib/components/otp-input/otp-input.module.mjs +0 -23
- package/esm2022/lib/components/reset-password/ResetPasswordData.mjs +0 -2
- package/esm2022/lib/components/role-control/ChildrenType.mjs +0 -6
- package/esm2022/lib/components/role-control/MappedRole.mjs +0 -2
- package/esm2022/lib/components/role-control/MappedRoleAction.mjs +0 -2
- package/esm2022/lib/components/role-control/MappedRoleContext.mjs +0 -2
- package/esm2022/lib/components/role-control/UIActions.mjs +0 -7
- package/esm2022/lib/components/role-control/UIs.mjs +0 -40
- package/esm2022/lib/components/role-control/base-table-style.mjs +0 -53
- package/esm2022/lib/components/role-control/role-control.component.mjs +0 -1608
- package/esm2022/lib/components/role-control/role-control.module.mjs +0 -18
- package/esm2022/lib/components/role-control/role-control.service.mjs +0 -54
- package/esm2022/lib/components/sign-in/sign-in.component.mjs +0 -318
- package/esm2022/lib/components/sign-in/sign-in.module.mjs +0 -24
- package/esm2022/lib/components/sign-up/sign-up.component.mjs +0 -229
- package/esm2022/lib/components/sign-up/sign-up.module.mjs +0 -24
- package/esm2022/lib/components/sso/base-table-style.mjs +0 -53
- package/esm2022/lib/components/sso/helper.mjs +0 -16
- package/esm2022/lib/components/sso/sso.columns.mjs +0 -29
- package/esm2022/lib/components/sso/sso.component.mjs +0 -236
- package/esm2022/lib/components/sso/sso.module.mjs +0 -63
- package/esm2022/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.mjs +0 -209
- package/esm2022/lib/components/two-factor-auth-otp/two-factor-auth-otp.module.mjs +0 -22
- package/esm2022/lib/components/two-factor-auth-setup/two-factor-auth-setup.module.mjs +0 -19
- package/esm2022/lib/components/user-management/base-table-style.mjs +0 -53
- package/esm2022/lib/components/user-management/services/user-management.service.mjs +0 -88
- package/esm2022/lib/components/user-management/user-management.columns.mjs +0 -53
- package/esm2022/lib/components/user-management/user-management.module.mjs +0 -85
- package/esm2022/lib/components/user-management/user-status-badge/user-status-badge.component.mjs +0 -26
- package/esm2022/lib/components/user-request/user-request.component.mjs +0 -320
- package/esm2022/lib/components/user-request/user-request.module.mjs +0 -38
- package/esm2022/lib/components/user-request-approval/access-request.columns.mjs +0 -29
- package/esm2022/lib/components/user-request-approval/base-table-style.mjs +0 -53
- package/esm2022/lib/components/user-request-approval/facades/user-access-request.facade.mjs +0 -260
- package/esm2022/lib/components/user-request-approval/helper.mjs +0 -56
- package/esm2022/lib/components/user-request-approval/services/user-access-request.service.mjs +0 -93
- package/esm2022/lib/components/user-request-approval/states/user-access-request.state.mjs +0 -92
- package/esm2022/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.mjs +0 -26
- package/esm2022/lib/components/user-request-approval/user-request-approval.module.mjs +0 -83
- package/esm2022/lib/models/ApplicationRoleAction.mjs +0 -2
- package/esm2022/lib/models/ApplicationRoleContext.mjs +0 -2
- package/esm2022/lib/models/ErrorResponse.mjs +0 -11
- package/esm2022/lib/models/OAuthParam.mjs +0 -2
- package/esm2022/lib/models/OAuthType.mjs +0 -9
- package/esm2022/lib/models/PagedResult.mjs +0 -2
- package/esm2022/lib/models/PasswordRequestParam.mjs +0 -2
- package/esm2022/lib/models/PermissionConfig.mjs +0 -2
- package/esm2022/lib/models/ResponseKeyValue.mjs +0 -2
- package/esm2022/lib/models/Role.mjs +0 -2
- package/esm2022/lib/models/RoleAction.mjs +0 -2
- package/esm2022/lib/models/RoleContext.mjs +0 -2
- package/esm2022/lib/models/SearchDynamicWrapper.mjs +0 -2
- package/esm2022/lib/models/SearchOperator.mjs +0 -6
- package/esm2022/lib/models/SearchPropertySign.mjs +0 -11
- package/esm2022/lib/models/SearchPropertyValue.mjs +0 -2
- package/esm2022/lib/models/SearchPropertyValueType.mjs +0 -11
- package/esm2022/lib/models/SortDirection.mjs +0 -7
- package/esm2022/lib/models/Tag.mjs +0 -2
- package/esm2022/lib/models/TenantConfig.mjs +0 -2
- package/esm2022/lib/models/UserRequest.mjs +0 -2
- package/esm2022/lib/models/auth-mechanism.mjs +0 -8
- package/esm2022/lib/models/base.mjs +0 -2
- package/esm2022/lib/models/conditions.mjs +0 -13
- package/esm2022/lib/models/log-in.mjs +0 -2
- package/esm2022/lib/models/mainUser.mjs +0 -2
- package/esm2022/lib/models/oauth-resp.mjs +0 -2
- package/esm2022/lib/models/oauth-response.mjs +0 -2
- package/esm2022/lib/models/object-state.mjs +0 -8
- package/esm2022/lib/models/otpValue.mjs +0 -2
- package/esm2022/lib/models/paged.mjs +0 -2
- package/esm2022/lib/models/query-params.mjs +0 -2
- package/esm2022/lib/models/request-status.mjs +0 -5
- package/esm2022/lib/models/resend-otp-data.mjs +0 -2
- package/esm2022/lib/models/sign-up.mjs +0 -2
- package/esm2022/lib/models/single-sign-on.mjs +0 -2
- package/esm2022/lib/models/status.mjs +0 -6
- package/esm2022/lib/models/user-access-request-status.mjs +0 -7
- package/esm2022/lib/models/user-access-request.mjs +0 -2
- package/esm2022/lib/models/user.mjs +0 -2
- package/esm2022/lib/pipes/async-label.pipe.mjs +0 -25
- package/esm2022/lib/services/authorization.service.mjs +0 -26
- package/esm2022/lib/services/encryption.service.mjs +0 -52
- package/esm2022/lib/services/environment.service.mjs +0 -26
- package/esm2022/lib/services/http-web-request.service.mjs +0 -85
- package/esm2022/lib/services/label.service.mjs +0 -134
- package/esm2022/lib/services/util.service.mjs +0 -55
- package/esm2022/lib/shared/shared.module.mjs +0 -84
- package/lib/components/sso/helper.d.ts +0 -2
- /package/{lib → src/lib}/components/auth-callback/auth-callback.component.d.ts +0 -0
- /package/{lib → src/lib}/components/auth-callback/auth-callback.module.d.ts +0 -0
- /package/{lib → src/lib}/components/button/button.component.d.ts +0 -0
- /package/{lib → src/lib}/components/button/button.module.d.ts +0 -0
- /package/{lib → src/lib}/components/forgot-password/ForgotPasswordData.d.ts +0 -0
- /package/{lib → src/lib}/components/forgot-password/forgot-password.module.d.ts +0 -0
- /package/{lib → src/lib}/components/mail/mail.component.d.ts +0 -0
- /package/{lib → src/lib}/components/mail-validation/mail-validation.component.d.ts +0 -0
- /package/{lib → src/lib}/components/mail-validation/mail-validation.module.d.ts +0 -0
- /package/{lib → src/lib}/components/o-auth/o-auth.module.d.ts +0 -0
- /package/{lib → src/lib}/components/otp-input/otp-input.component.d.ts +0 -0
- /package/{lib → src/lib}/components/reset-password/ResetPasswordData.d.ts +0 -0
- /package/{lib → src/lib}/components/reset-password/reset-password.module.d.ts +0 -0
- /package/{lib → src/lib}/components/role-control/ChildrenType.d.ts +0 -0
- /package/{lib → src/lib}/components/role-control/UIActions.d.ts +0 -0
- /package/{lib → src/lib}/components/role-control/UIs.d.ts +0 -0
- /package/{lib → src/lib}/components/role-control/base-table-style.d.ts +0 -0
- /package/{lib → src/lib}/components/role-control/role-control.service.d.ts +0 -0
- /package/{lib → src/lib}/components/sso/base-table-style.d.ts +0 -0
- /package/{lib → src/lib}/components/sso/sso-form/sso-form.component.d.ts +0 -0
- /package/{lib → src/lib}/components/sso/sso.module.d.ts +0 -0
- /package/{lib → src/lib}/components/two-factor-auth-setup/two-factor-auth-setup.component.d.ts +0 -0
- /package/{lib → src/lib}/components/two-factor-auth-setup/two-factor-auth-setup.module.d.ts +0 -0
- /package/{lib → src/lib}/components/user-management/base-table-style.d.ts +0 -0
- /package/{lib → src/lib}/components/user-request-approval/base-table-style.d.ts +0 -0
- /package/{lib → src/lib}/models/ApplicationRoleAction.d.ts +0 -0
- /package/{lib → src/lib}/models/ApplicationRoleContext.d.ts +0 -0
- /package/{lib → src/lib}/models/ErrorResponse.d.ts +0 -0
- /package/{lib → src/lib}/models/OAuthParam.d.ts +0 -0
- /package/{lib → src/lib}/models/OAuthType.d.ts +0 -0
- /package/{lib → src/lib}/models/PagedResult.d.ts +0 -0
- /package/{lib → src/lib}/models/PasswordRequestParam.d.ts +0 -0
- /package/{lib → src/lib}/models/PermissionConfig.d.ts +0 -0
- /package/{lib → src/lib}/models/ResponseKeyValue.d.ts +0 -0
- /package/{lib → src/lib}/models/Role.d.ts +0 -0
- /package/{lib → src/lib}/models/RoleAction.d.ts +0 -0
- /package/{lib → src/lib}/models/RoleContext.d.ts +0 -0
- /package/{lib → src/lib}/models/SearchDynamicWrapper.d.ts +0 -0
- /package/{lib → src/lib}/models/SearchOperator.d.ts +0 -0
- /package/{lib → src/lib}/models/SearchPropertySign.d.ts +0 -0
- /package/{lib → src/lib}/models/SearchPropertyValue.d.ts +0 -0
- /package/{lib → src/lib}/models/SearchPropertyValueType.d.ts +0 -0
- /package/{lib → src/lib}/models/SortDirection.d.ts +0 -0
- /package/{lib → src/lib}/models/Tag.d.ts +0 -0
- /package/{lib → src/lib}/models/TenantConfig.d.ts +0 -0
- /package/{lib → src/lib}/models/auth-mechanism.d.ts +0 -0
- /package/{lib → src/lib}/models/base.d.ts +0 -0
- /package/{lib → src/lib}/models/conditions.d.ts +0 -0
- /package/{lib → src/lib}/models/log-in.d.ts +0 -0
- /package/{lib → src/lib}/models/mainUser.d.ts +0 -0
- /package/{lib → src/lib}/models/oauth-resp.d.ts +0 -0
- /package/{lib → src/lib}/models/oauth-response.d.ts +0 -0
- /package/{lib → src/lib}/models/object-state.d.ts +0 -0
- /package/{lib → src/lib}/models/otpValue.d.ts +0 -0
- /package/{lib → src/lib}/models/paged.d.ts +0 -0
- /package/{lib → src/lib}/models/query-params.d.ts +0 -0
- /package/{lib → src/lib}/models/request-status.d.ts +0 -0
- /package/{lib → src/lib}/models/resend-otp-data.d.ts +0 -0
- /package/{lib → src/lib}/models/sign-up.d.ts +0 -0
- /package/{lib → src/lib}/models/single-sign-on.d.ts +0 -0
- /package/{lib → src/lib}/models/status.d.ts +0 -0
- /package/{lib → src/lib}/models/user-access-request-status.d.ts +0 -0
- /package/{lib → src/lib}/models/user-access-request.d.ts +0 -0
- /package/{lib → src/lib}/models/user.d.ts +0 -0
- /package/{lib → src/lib}/services/authorization.service.d.ts +0 -0
- /package/{lib → src/lib}/services/encryption.service.d.ts +0 -0
- /package/{lib → src/lib}/services/environment.service.d.ts +0 -0
- /package/{lib → src/lib}/services/http-web-request.service.d.ts +0 -0
- /package/{lib → src/lib}/services/label.service.d.ts +0 -0
- /package/{lib → src/lib}/services/util.service.d.ts +0 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/forms';
|
|
4
|
+
import { FormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import { ErrorResponse } from 'verben-authentication-ui/src/lib/models';
|
|
6
|
+
import * as i2 from 'verben-authentication-ui/src/lib/services';
|
|
7
|
+
import * as i3 from 'verben-ng-ui';
|
|
8
|
+
import { VerbenaInputModule, VerbenaButtonModule } from 'verben-ng-ui';
|
|
9
|
+
import * as i4 from '@angular/common';
|
|
10
|
+
import { CommonModule } from '@angular/common';
|
|
11
|
+
|
|
12
|
+
class ForgotPasswordComponent {
|
|
13
|
+
fb;
|
|
14
|
+
server;
|
|
15
|
+
utilService;
|
|
16
|
+
title = 'Forgot Password';
|
|
17
|
+
subTitle = 'Enter the e-mail you used during registration';
|
|
18
|
+
buttonCaption = 'Submit';
|
|
19
|
+
buttonTextColor;
|
|
20
|
+
buttonBackgroundColor;
|
|
21
|
+
tenant = '';
|
|
22
|
+
onSubmit = new EventEmitter();
|
|
23
|
+
onSubmitEnd = new EventEmitter();
|
|
24
|
+
forgotPasswordForm;
|
|
25
|
+
isSubmitted = false;
|
|
26
|
+
constructor(fb, server, utilService) {
|
|
27
|
+
this.fb = fb;
|
|
28
|
+
this.server = server;
|
|
29
|
+
this.utilService = utilService;
|
|
30
|
+
this.forgotPasswordForm = this.fb.group({
|
|
31
|
+
Email: new FormControl(null, [
|
|
32
|
+
Validators.required,
|
|
33
|
+
this.emailValidator.bind(this),
|
|
34
|
+
]),
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
isValidEmail(mail) {
|
|
38
|
+
const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
39
|
+
return emailPattern.test(mail);
|
|
40
|
+
}
|
|
41
|
+
emailValidator(control) {
|
|
42
|
+
const value = control.value;
|
|
43
|
+
if (this.isValidEmail(value) == false) {
|
|
44
|
+
return { customValidation: true };
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
checkForm() {
|
|
49
|
+
return this.forgotPasswordForm.valid;
|
|
50
|
+
}
|
|
51
|
+
async submit() {
|
|
52
|
+
if (!this.checkForm()) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
var data = {
|
|
56
|
+
Email: this.forgotPasswordForm.controls['Email'].value,
|
|
57
|
+
};
|
|
58
|
+
this.onSubmit.emit(data);
|
|
59
|
+
this.utilService.sendBI(true);
|
|
60
|
+
const res = await this.server.get(`User/PasswordChangeRequest/${data.Email}/${this.tenant}`);
|
|
61
|
+
this.utilService.sendBI(false);
|
|
62
|
+
if (res instanceof ErrorResponse) {
|
|
63
|
+
this.onSubmitEnd.emit(res);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
var result = res;
|
|
67
|
+
this.onSubmitEnd.emit(result);
|
|
68
|
+
this.isSubmitted = true;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1.FormBuilder }, { token: i2.HttpWebRequestService }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Component });
|
|
72
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ForgotPasswordComponent, selector: "verben-forgot-password", inputs: { title: "title", subTitle: "subTitle", buttonCaption: "buttonCaption", buttonTextColor: "buttonTextColor", buttonBackgroundColor: "buttonBackgroundColor", tenant: "tenant" }, outputs: { onSubmit: "onSubmit", onSubmitEnd: "onSubmitEnd" }, ngImport: i0, template: "<div\n *ngIf=\"!isSubmitted\"\n [formGroup]=\"this.forgotPasswordForm\"\n class=\"reset-password-container flex flex-col\"\n>\n <div class=\"reset-password-header flex flex-col\">\n <div class=\"reset-password-title\">{{ title }}</div>\n <div class=\"reset-password-subtitle\">{{ subTitle }}</div>\n </div>\n <div class=\"form-field flex flex-col\">\n <div class=\"form-field-caption\">Email</div>\n <verbena-input\n bgColor=\"white\"\n borderRadius=\"12px\"\n formControlName=\"Email\"\n type=\"email\"\n ></verbena-input>\n </div>\n <verbena-button\n fontWeight=\"700\"\n (click)=\"submit()\"\n [text]=\"buttonCaption\"\n width=\"100%\"\n [textColor]=\"buttonTextColor\"\n [bgColor]=\"buttonBackgroundColor\"\n borderRadius=\"25px\"\n [disable]=\"!this.checkForm()\"\n ></verbena-button>\n</div>\n<div *ngIf=\"isSubmitted\" class=\"reset-password-container flex flex-col\">\n <div class=\"reset-password-title resend-title\">\n Follow the link sent to your e-mail to proceed\n </div>\n <div class=\"resend-text flex gap-1\">\n <span class=\"resend-caption\">Didn't get a link?</span>\n <span class=\"resend-caption resend-link\" (click)=\"submit()\">Resend</span>\n </div>\n</div>\n", styles: ["*{font-family:sans-serif;font-size:16px}.flex{display:flex}.flex-col{flex-direction:column}.font-bold{font-weight:700}.justify-center{justify-content:center}.justify-end{justify-content:end}.align-items-center{align-items:center}.grid{display:grid}.verben-error-message{font-size:.8rem;color:red}.verben-input{border:1px solid #cbd5e1;outline:none;border-radius:5px;color:#334155;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,outline-color .2s}.verben-input::placeholder{color:#64748b}.verben-input:hover{border:1px solid #697e97}.verben-input.disabled{opacity:1;background-color:light-dark(rgba(239,239,239,.3),rgba(59,59,59,.3));pointer-events:none;color:#64748b}.verben-input:disabled{opacity:1;background-color:light-dark(rgba(239,239,239,.3),rgba(59,59,59,.3));pointer-events:none;color:#64748b}.verben-input.focused{border-color:#3b82f6;outline:none}.verben-input:focus{border-color:#3b82f6;outline:none}.verben-input.ng-invalid{border-color:red}.verben-button{padding:8px 15px;border-radius:4px;border:none;text-align:center}.verben-button.primary{background-color:#ffe681}.verben-button.secondary{background-color:#d9d9d940}.reset-password-container{gap:25px;padding:50px;border:1px solid rgba(102,102,102,.5);box-shadow:4px 4px 4px #00000040;border-radius:24px}.reset-password-title{font-size:30px;font-weight:700}.reset-password-subtitle{font-size:14px;font-weight:500;color:#666}.form-field{gap:5px}.form-field-caption{color:#666}.resend-caption{font-size:13px}.resend-link{color:#00f;cursor:pointer}.resend-link:hover{text-decoration:underline}.resend-title{color:#666}.resend-text>span{font-size:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.VerbenaInputComponent, selector: "verbena-input", inputs: ["label", "placeHolder", "required", "svgPosition", "minLength", "maxLength", "type", "bgColor", "border", "borderRadius", "textColor", "value", "labelPosition", "labelColor", "disable", "readOnly", "min", "max", "showBorder", "showErrorMessage", "errorMessageColor", "errorBorderColor", "errorPosition", "svg", "fontSize", "svgWidth", "svgHeight", "svgColor", "capitalization", "inputContainerClass", "inputFieldClass", "passLength", "inputWrapperClass", "passwordToggle", "customErrorMessages", "icon", "textPass"], outputs: ["valueChange"] }, { kind: "component", type: i3.VerbenaButtonComponent, selector: "verbena-button", inputs: ["text", "icon", "useIcon", "svgPosition", "iconPosition", "bgColor", "textColor", "border", "borderRadius", "pd", "width", "height", "fontSize", "fontWeight", "disable", "svgSize", "weight", "variant", "styleType", "svg", "svgWidth", "svgHeight", "iconColor", "svgColor", "buttonClass", "buttonTextClass", "isLoading", "spinnerSize", "spinnerColor"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
73
|
+
}
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
|
|
75
|
+
type: Component,
|
|
76
|
+
args: [{ selector: 'verben-forgot-password', template: "<div\n *ngIf=\"!isSubmitted\"\n [formGroup]=\"this.forgotPasswordForm\"\n class=\"reset-password-container flex flex-col\"\n>\n <div class=\"reset-password-header flex flex-col\">\n <div class=\"reset-password-title\">{{ title }}</div>\n <div class=\"reset-password-subtitle\">{{ subTitle }}</div>\n </div>\n <div class=\"form-field flex flex-col\">\n <div class=\"form-field-caption\">Email</div>\n <verbena-input\n bgColor=\"white\"\n borderRadius=\"12px\"\n formControlName=\"Email\"\n type=\"email\"\n ></verbena-input>\n </div>\n <verbena-button\n fontWeight=\"700\"\n (click)=\"submit()\"\n [text]=\"buttonCaption\"\n width=\"100%\"\n [textColor]=\"buttonTextColor\"\n [bgColor]=\"buttonBackgroundColor\"\n borderRadius=\"25px\"\n [disable]=\"!this.checkForm()\"\n ></verbena-button>\n</div>\n<div *ngIf=\"isSubmitted\" class=\"reset-password-container flex flex-col\">\n <div class=\"reset-password-title resend-title\">\n Follow the link sent to your e-mail to proceed\n </div>\n <div class=\"resend-text flex gap-1\">\n <span class=\"resend-caption\">Didn't get a link?</span>\n <span class=\"resend-caption resend-link\" (click)=\"submit()\">Resend</span>\n </div>\n</div>\n", styles: ["*{font-family:sans-serif;font-size:16px}.flex{display:flex}.flex-col{flex-direction:column}.font-bold{font-weight:700}.justify-center{justify-content:center}.justify-end{justify-content:end}.align-items-center{align-items:center}.grid{display:grid}.verben-error-message{font-size:.8rem;color:red}.verben-input{border:1px solid #cbd5e1;outline:none;border-radius:5px;color:#334155;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,outline-color .2s}.verben-input::placeholder{color:#64748b}.verben-input:hover{border:1px solid #697e97}.verben-input.disabled{opacity:1;background-color:light-dark(rgba(239,239,239,.3),rgba(59,59,59,.3));pointer-events:none;color:#64748b}.verben-input:disabled{opacity:1;background-color:light-dark(rgba(239,239,239,.3),rgba(59,59,59,.3));pointer-events:none;color:#64748b}.verben-input.focused{border-color:#3b82f6;outline:none}.verben-input:focus{border-color:#3b82f6;outline:none}.verben-input.ng-invalid{border-color:red}.verben-button{padding:8px 15px;border-radius:4px;border:none;text-align:center}.verben-button.primary{background-color:#ffe681}.verben-button.secondary{background-color:#d9d9d940}.reset-password-container{gap:25px;padding:50px;border:1px solid rgba(102,102,102,.5);box-shadow:4px 4px 4px #00000040;border-radius:24px}.reset-password-title{font-size:30px;font-weight:700}.reset-password-subtitle{font-size:14px;font-weight:500;color:#666}.form-field{gap:5px}.form-field-caption{color:#666}.resend-caption{font-size:13px}.resend-link{color:#00f;cursor:pointer}.resend-link:hover{text-decoration:underline}.resend-title{color:#666}.resend-text>span{font-size:16px}\n"] }]
|
|
77
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.HttpWebRequestService }, { type: i2.UtilService }], propDecorators: { title: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], subTitle: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], buttonCaption: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], buttonTextColor: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], buttonBackgroundColor: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], tenant: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], onSubmit: [{
|
|
90
|
+
type: Output
|
|
91
|
+
}], onSubmitEnd: [{
|
|
92
|
+
type: Output
|
|
93
|
+
}] } });
|
|
94
|
+
|
|
95
|
+
class ForgotPasswordModule {
|
|
96
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
97
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordModule, declarations: [ForgotPasswordComponent], imports: [FormsModule,
|
|
98
|
+
ReactiveFormsModule,
|
|
99
|
+
VerbenaInputModule,
|
|
100
|
+
VerbenaButtonModule,
|
|
101
|
+
CommonModule], exports: [ForgotPasswordComponent] });
|
|
102
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordModule, imports: [FormsModule,
|
|
103
|
+
ReactiveFormsModule,
|
|
104
|
+
VerbenaInputModule,
|
|
105
|
+
VerbenaButtonModule,
|
|
106
|
+
CommonModule] });
|
|
107
|
+
}
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordModule, decorators: [{
|
|
109
|
+
type: NgModule,
|
|
110
|
+
args: [{
|
|
111
|
+
declarations: [ForgotPasswordComponent],
|
|
112
|
+
imports: [
|
|
113
|
+
FormsModule,
|
|
114
|
+
ReactiveFormsModule,
|
|
115
|
+
VerbenaInputModule,
|
|
116
|
+
VerbenaButtonModule,
|
|
117
|
+
CommonModule,
|
|
118
|
+
],
|
|
119
|
+
exports: [ForgotPasswordComponent],
|
|
120
|
+
}]
|
|
121
|
+
}] });
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Generated bundle index. Do not edit.
|
|
125
|
+
*/
|
|
126
|
+
|
|
127
|
+
export { ForgotPasswordComponent, ForgotPasswordModule };
|
|
128
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-forgot-password.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-forgot-password.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/forgot-password/forgot-password.component.ts","../../../projects/verben-authentication-ui/src/lib/components/forgot-password/forgot-password.component.html","../../../projects/verben-authentication-ui/src/lib/components/forgot-password/forgot-password.module.ts","../../../projects/verben-authentication-ui/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { ForgotPasswordData } from './ForgotPasswordData';\nimport { HttpWebRequestService } from 'verben-authentication-ui/src/lib/services';\nimport { ErrorResponse } from 'verben-authentication-ui/src/lib/models';\nimport { ResponseKeyValue } from 'verben-authentication-ui/src/lib/models';\nimport { UtilService } from 'verben-authentication-ui/src/lib/services';\nimport { EnvironmentService } from 'verben-authentication-ui/src/lib/services';\n\n@Component({\n selector: 'verben-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrl: './forgot-password.component.css',\n})\nexport class ForgotPasswordComponent {\n @Input() title: string = 'Forgot Password';\n @Input() subTitle: string = 'Enter the e-mail you used during registration';\n @Input() buttonCaption: string = 'Submit';\n @Input() buttonTextColor?: string;\n @Input() buttonBackgroundColor?: string;\n @Input() tenant: string = '';\n\n @Output() onSubmit: EventEmitter<ForgotPasswordData> = new EventEmitter();\n @Output() onSubmitEnd: EventEmitter<ResponseKeyValue | ErrorResponse> =\n new EventEmitter();\n\n forgotPasswordForm: FormGroup;\n isSubmitted: boolean = false;\n\n constructor(\n private fb: FormBuilder,\n private server: HttpWebRequestService,\n private utilService: UtilService\n ) {\n this.forgotPasswordForm = this.fb.group({\n Email: new FormControl<string | null>(null, [\n Validators.required,\n this.emailValidator.bind(this),\n ]),\n });\n }\n\n isValidEmail(mail: string): boolean {\n const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/;\n return emailPattern.test(mail);\n }\n\n emailValidator(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (this.isValidEmail(value) == false) {\n return { customValidation: true };\n }\n\n return null;\n }\n\n checkForm(): boolean {\n return this.forgotPasswordForm.valid;\n }\n\n async submit() {\n if (!this.checkForm()) {\n return;\n }\n var data: ForgotPasswordData = {\n Email: this.forgotPasswordForm.controls['Email'].value,\n };\n this.onSubmit.emit(data);\n this.utilService.sendBI(true);\n const res = await this.server.get(\n `User/PasswordChangeRequest/${data.Email}/${this.tenant}`\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n this.onSubmitEnd.emit(res);\n } else {\n var result = res as ResponseKeyValue;\n this.onSubmitEnd.emit(result);\n this.isSubmitted = true;\n }\n }\n}\n","<div\n *ngIf=\"!isSubmitted\"\n [formGroup]=\"this.forgotPasswordForm\"\n class=\"reset-password-container flex flex-col\"\n>\n <div class=\"reset-password-header flex flex-col\">\n <div class=\"reset-password-title\">{{ title }}</div>\n <div class=\"reset-password-subtitle\">{{ subTitle }}</div>\n </div>\n <div class=\"form-field flex flex-col\">\n <div class=\"form-field-caption\">Email</div>\n <verbena-input\n bgColor=\"white\"\n borderRadius=\"12px\"\n formControlName=\"Email\"\n type=\"email\"\n ></verbena-input>\n </div>\n <verbena-button\n fontWeight=\"700\"\n (click)=\"submit()\"\n [text]=\"buttonCaption\"\n width=\"100%\"\n [textColor]=\"buttonTextColor\"\n [bgColor]=\"buttonBackgroundColor\"\n borderRadius=\"25px\"\n [disable]=\"!this.checkForm()\"\n ></verbena-button>\n</div>\n<div *ngIf=\"isSubmitted\" class=\"reset-password-container flex flex-col\">\n <div class=\"reset-password-title resend-title\">\n Follow the link sent to your e-mail to proceed\n </div>\n <div class=\"resend-text flex gap-1\">\n <span class=\"resend-caption\">Didn't get a link?</span>\n <span class=\"resend-caption resend-link\" (click)=\"submit()\">Resend</span>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ForgotPasswordComponent } from './forgot-password.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { VerbenaButtonModule, VerbenaInputModule } from 'verben-ng-ui';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ForgotPasswordComponent],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n VerbenaInputModule,\n VerbenaButtonModule,\n CommonModule,\n ],\n exports: [ForgotPasswordComponent],\n})\nexport class ForgotPasswordModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from 'verben-ng-ui';
|
|
4
|
+
import { VerbenaInputModule, VerbenaButtonModule } from 'verben-ng-ui';
|
|
5
|
+
import * as i2 from '@angular/common';
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
8
|
+
|
|
9
|
+
class MailValidationComponent {
|
|
10
|
+
customClass = '';
|
|
11
|
+
bgColor = '#fff';
|
|
12
|
+
boxShadow = '4px 4px 4px rgba(0, 0, 0, 0.25)';
|
|
13
|
+
border = '1px solid #66666680';
|
|
14
|
+
borderRadius = '24px';
|
|
15
|
+
textColor = '#666666';
|
|
16
|
+
height = 'auto';
|
|
17
|
+
pd = '32px 48px';
|
|
18
|
+
width = '600px';
|
|
19
|
+
text = 'Login';
|
|
20
|
+
textAlign = 'center';
|
|
21
|
+
color = 'black';
|
|
22
|
+
textSize = '32px';
|
|
23
|
+
btnBorder = '1px solid #FFE681';
|
|
24
|
+
btnBorderRadius = "40px";
|
|
25
|
+
btnBgColor = '#FFE681';
|
|
26
|
+
btnWidth = '100%';
|
|
27
|
+
btnPd = '7px 10px';
|
|
28
|
+
resendOtp = new EventEmitter();
|
|
29
|
+
proceedToNextStep = new EventEmitter();
|
|
30
|
+
login = new EventEmitter();
|
|
31
|
+
currentStep = 'linkSent';
|
|
32
|
+
handleResendOtp() {
|
|
33
|
+
this.resendOtp.emit();
|
|
34
|
+
}
|
|
35
|
+
goToNextStep() {
|
|
36
|
+
switch (this.currentStep) {
|
|
37
|
+
case 'linkSent':
|
|
38
|
+
this.currentStep = 'verified';
|
|
39
|
+
this.proceedToNextStep.emit(this.currentStep);
|
|
40
|
+
break;
|
|
41
|
+
case 'verified':
|
|
42
|
+
this.currentStep = 'accessGranted';
|
|
43
|
+
this.proceedToNextStep.emit(this.currentStep);
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
get styles() {
|
|
48
|
+
return {
|
|
49
|
+
'background-color': this.bgColor,
|
|
50
|
+
'box-shadow': this.boxShadow,
|
|
51
|
+
'border': this.border,
|
|
52
|
+
'border-radius': this.borderRadius,
|
|
53
|
+
'color': this.textColor,
|
|
54
|
+
'max-width': this.width,
|
|
55
|
+
'margin': '0 auto',
|
|
56
|
+
'height': this.height,
|
|
57
|
+
'padding': this.pd,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
handleLogin() {
|
|
61
|
+
this.login.emit();
|
|
62
|
+
}
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailValidationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MailValidationComponent, selector: "lib-mail-validation", inputs: { customClass: "customClass", bgColor: "bgColor", boxShadow: "boxShadow", border: "border", borderRadius: "borderRadius", textColor: "textColor", height: "height", pd: "pd", width: "width", text: "text", textAlign: "textAlign", color: "color", textSize: "textSize", btnBorder: "btnBorder", btnBorderRadius: "btnBorderRadius", btnBgColor: "btnBgColor", btnWidth: "btnWidth", btnPd: "btnPd" }, outputs: { resendOtp: "resendOtp", proceedToNextStep: "proceedToNextStep", login: "login" }, ngImport: i0, template: "<section [ngStyle]=\"styles\" class=\"{{ customClass }}\">\n <div *ngIf=\"currentStep === 'linkSent'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Follow the link sent to your e-mail to verify your e-mail address\n </p>\n <p class=\"mt-4\" (click)=\"handleResendOtp()\">\n Didn't get a link? <a href=\"#\" class=\"underline resend\">Resend</a>\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'verified'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified! You will be notified when your access has\n been authorized\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'accessGranted'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified!\n </p>\n <div class=\"mt-4\">\n <verbena-button\n [text]=\"text\"\n [bgColor]=\"btnBgColor\"\n [textColor]=\"color\"\n [border]=\"btnBorder\"\n [borderRadius]=\"btnBorderRadius\"\n [pd]=\"btnPd\"\n (click)=\"handleLogin()\"\n [width]=\"btnWidth\"\n textSize=\"'22px'\"\n buttonClass=\"font-medium text-[22px] leading-[33px]\"\n ></verbena-button>\n </div>\n </div>\n</section>\n", styles: [".flex{display:flex}.overflow-hidden{overflow:hidden}.h-full{height:100%}.underline{text-decoration:underline}.mt-4{margin-top:1rem}.resend{color:#00f}.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}.gap-1>:not([hidden])~:not([hidden]){gap:.25rem}.pt-3{padding-top:.75rem}.mt-5{margin-top:1.25rem}.border{border-width:1px}.rounded-xl{border-radius:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.flex-col{flex-direction:column}.w-full{width:100%}\n"], dependencies: [{ kind: "component", type: i1.VerbenaButtonComponent, selector: "verbena-button", inputs: ["text", "icon", "useIcon", "svgPosition", "iconPosition", "bgColor", "textColor", "border", "borderRadius", "pd", "width", "height", "fontSize", "fontWeight", "disable", "svgSize", "weight", "variant", "styleType", "svg", "svgWidth", "svgHeight", "iconColor", "svgColor", "buttonClass", "buttonTextClass", "isLoading", "spinnerSize", "spinnerColor"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
65
|
+
}
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailValidationComponent, decorators: [{
|
|
67
|
+
type: Component,
|
|
68
|
+
args: [{ selector: 'lib-mail-validation', template: "<section [ngStyle]=\"styles\" class=\"{{ customClass }}\">\n <div *ngIf=\"currentStep === 'linkSent'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Follow the link sent to your e-mail to verify your e-mail address\n </p>\n <p class=\"mt-4\" (click)=\"handleResendOtp()\">\n Didn't get a link? <a href=\"#\" class=\"underline resend\">Resend</a>\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'verified'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified! You will be notified when your access has\n been authorized\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'accessGranted'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified!\n </p>\n <div class=\"mt-4\">\n <verbena-button\n [text]=\"text\"\n [bgColor]=\"btnBgColor\"\n [textColor]=\"color\"\n [border]=\"btnBorder\"\n [borderRadius]=\"btnBorderRadius\"\n [pd]=\"btnPd\"\n (click)=\"handleLogin()\"\n [width]=\"btnWidth\"\n textSize=\"'22px'\"\n buttonClass=\"font-medium text-[22px] leading-[33px]\"\n ></verbena-button>\n </div>\n </div>\n</section>\n", styles: [".flex{display:flex}.overflow-hidden{overflow:hidden}.h-full{height:100%}.underline{text-decoration:underline}.mt-4{margin-top:1rem}.resend{color:#00f}.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}.gap-1>:not([hidden])~:not([hidden]){gap:.25rem}.pt-3{padding-top:.75rem}.mt-5{margin-top:1.25rem}.border{border-width:1px}.rounded-xl{border-radius:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.flex-col{flex-direction:column}.w-full{width:100%}\n"] }]
|
|
69
|
+
}], propDecorators: { customClass: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], bgColor: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], boxShadow: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], border: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}], borderRadius: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], textColor: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], height: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], pd: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], width: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], text: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], textAlign: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], color: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], textSize: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], btnBorder: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], btnBorderRadius: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], btnBgColor: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], btnWidth: [{
|
|
102
|
+
type: Input
|
|
103
|
+
}], btnPd: [{
|
|
104
|
+
type: Input
|
|
105
|
+
}], resendOtp: [{
|
|
106
|
+
type: Output
|
|
107
|
+
}], proceedToNextStep: [{
|
|
108
|
+
type: Output
|
|
109
|
+
}], login: [{
|
|
110
|
+
type: Output
|
|
111
|
+
}] } });
|
|
112
|
+
|
|
113
|
+
class MailValidationModule {
|
|
114
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailValidationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
115
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: MailValidationModule, declarations: [MailValidationComponent], imports: [FormsModule,
|
|
116
|
+
ReactiveFormsModule,
|
|
117
|
+
VerbenaInputModule,
|
|
118
|
+
VerbenaButtonModule,
|
|
119
|
+
CommonModule], exports: [MailValidationComponent] });
|
|
120
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailValidationModule, imports: [FormsModule,
|
|
121
|
+
ReactiveFormsModule,
|
|
122
|
+
VerbenaInputModule,
|
|
123
|
+
VerbenaButtonModule,
|
|
124
|
+
CommonModule] });
|
|
125
|
+
}
|
|
126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailValidationModule, decorators: [{
|
|
127
|
+
type: NgModule,
|
|
128
|
+
args: [{
|
|
129
|
+
declarations: [MailValidationComponent],
|
|
130
|
+
imports: [
|
|
131
|
+
FormsModule,
|
|
132
|
+
ReactiveFormsModule,
|
|
133
|
+
VerbenaInputModule,
|
|
134
|
+
VerbenaButtonModule,
|
|
135
|
+
CommonModule,
|
|
136
|
+
],
|
|
137
|
+
exports: [MailValidationComponent],
|
|
138
|
+
}]
|
|
139
|
+
}] });
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Generated bundle index. Do not edit.
|
|
143
|
+
*/
|
|
144
|
+
|
|
145
|
+
export { MailValidationComponent, MailValidationModule };
|
|
146
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-mail-validation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-mail-validation.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/mail-validation/mail-validation.component.ts","../../../projects/verben-authentication-ui/src/lib/components/mail-validation/mail-validation.component.html","../../../projects/verben-authentication-ui/src/lib/components/mail-validation/mail-validation.module.ts","../../../projects/verben-authentication-ui/src/lib/components/mail-validation/verben-authentication-ui-src-lib-components-mail-validation.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'lib-mail-validation',\n templateUrl: './mail-validation.component.html',\n styleUrls: ['./mail-validation.component.css']\n})\nexport class MailValidationComponent {\n @Input() customClass: string = '';\n @Input() bgColor: string = '#fff';\n @Input() boxShadow: string = '4px 4px 4px rgba(0, 0, 0, 0.25)';\n @Input() border: string = '1px solid #66666680';\n @Input() borderRadius: string = '24px';\n @Input() textColor: string = '#666666';\n @Input() height: string = 'auto';\n @Input() pd: string = '32px 48px';\n @Input() width: string = '600px';\n @Input() text: string = 'Login';\n @Input() textAlign: string = 'center';\n @Input() color: string = 'black';\n @Input() textSize: string = '32px';\n @Input() btnBorder: string = '1px solid #FFE681';\n @Input() btnBorderRadius: string = \"40px\";\n @Input() btnBgColor: string = '#FFE681';\n @Input() btnWidth: string = '100%';\n @Input() btnPd: string = '7px 10px';\n\n @Output() resendOtp = new EventEmitter<void>();\n @Output() proceedToNextStep = new EventEmitter<'verified' | 'accessGranted'>();\n @Output() login = new EventEmitter<void>();\n\n currentStep: 'linkSent' | 'verified' | 'accessGranted' = 'linkSent';\n\n handleResendOtp() {\n this.resendOtp.emit();\n }\n\n goToNextStep() {\n switch (this.currentStep) {\n case 'linkSent':\n this.currentStep = 'verified';\n this.proceedToNextStep.emit(this.currentStep);\n break;\n case 'verified':\n this.currentStep = 'accessGranted';\n this.proceedToNextStep.emit(this.currentStep);\n break;\n }\n }\n get styles() {\n return {\n 'background-color': this.bgColor,\n 'box-shadow': this.boxShadow,\n 'border': this.border,\n 'border-radius': this.borderRadius,\n 'color': this.textColor,\n 'max-width': this.width,\n 'margin': '0 auto',\n 'height': this.height,\n 'padding': this.pd,\n };\n }\n handleLogin() {\n this.login.emit();\n }\n}\n","<section [ngStyle]=\"styles\" class=\"{{ customClass }}\">\n <div *ngIf=\"currentStep === 'linkSent'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Follow the link sent to your e-mail to verify your e-mail address\n </p>\n <p class=\"mt-4\" (click)=\"handleResendOtp()\">\n Didn't get a link? <a href=\"#\" class=\"underline resend\">Resend</a>\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'verified'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified! You will be notified when your access has\n been authorized\n </p>\n </div>\n\n <div *ngIf=\"currentStep === 'accessGranted'\">\n <p [style.color]=\"textColor\" [style.font-size]=\"textSize\">\n Your e-mail has been verified!\n </p>\n <div class=\"mt-4\">\n <verbena-button\n [text]=\"text\"\n [bgColor]=\"btnBgColor\"\n [textColor]=\"color\"\n [border]=\"btnBorder\"\n [borderRadius]=\"btnBorderRadius\"\n [pd]=\"btnPd\"\n (click)=\"handleLogin()\"\n [width]=\"btnWidth\"\n textSize=\"'22px'\"\n buttonClass=\"font-medium text-[22px] leading-[33px]\"\n ></verbena-button>\n </div>\n </div>\n</section>\n","import { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { VerbenaButtonModule, VerbenaInputModule } from 'verben-ng-ui';\nimport { CommonModule } from '@angular/common';\nimport { MailValidationComponent } from './mail-validation.component';\n\n@NgModule({\n declarations: [MailValidationComponent],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n VerbenaInputModule,\n VerbenaButtonModule,\n CommonModule,\n ],\n exports: [MailValidationComponent],\n})\nexport class MailValidationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/common';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i2 from 'verben-authentication-ui/src/lib/components/button';
|
|
6
|
+
import { ButtonModule } from 'verben-authentication-ui/src/lib/components/button';
|
|
7
|
+
import { FormsModule } from '@angular/forms';
|
|
8
|
+
import { RouterLink } from '@angular/router';
|
|
9
|
+
|
|
10
|
+
class MailComponent {
|
|
11
|
+
customClass = '';
|
|
12
|
+
headlingClass = '';
|
|
13
|
+
width = '';
|
|
14
|
+
maxWidth = '';
|
|
15
|
+
margin = '';
|
|
16
|
+
pd = '';
|
|
17
|
+
bgColor = '#fff';
|
|
18
|
+
boxShadow = '4px 4px 4px rgba(0, 0, 0, 0.25)';
|
|
19
|
+
border = '1px solid #66666680';
|
|
20
|
+
borderRadius = '24px';
|
|
21
|
+
textColor = '#333';
|
|
22
|
+
height = 'auto';
|
|
23
|
+
buttonClick = new EventEmitter();
|
|
24
|
+
goToLogin() {
|
|
25
|
+
this.buttonClick.emit();
|
|
26
|
+
}
|
|
27
|
+
get styles() {
|
|
28
|
+
return {
|
|
29
|
+
'background-color': this.bgColor,
|
|
30
|
+
'box-shadow': this.boxShadow,
|
|
31
|
+
'border': this.border,
|
|
32
|
+
'border-radius': this.borderRadius,
|
|
33
|
+
'color': this.textColor,
|
|
34
|
+
'width': this.width,
|
|
35
|
+
'max-width': this.maxWidth,
|
|
36
|
+
'margin': this.margin,
|
|
37
|
+
'height': this.height,
|
|
38
|
+
'padding': this.pd
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
42
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MailComponent, selector: "verben-mail-message", inputs: { customClass: "customClass", headlingClass: "headlingClass", width: "width", maxWidth: "maxWidth", margin: "margin", pd: "pd", bgColor: "bgColor", boxShadow: "boxShadow", border: "border", borderRadius: "borderRadius", textColor: "textColor", height: "height" }, outputs: { buttonClick: "buttonClick" }, ngImport: i0, template: "<section\n[ngStyle]=\"styles\"\nclass=\"{{ customClass }}\"\n>\n <h3 class=\"{{headlingClass}}\">Your e-mail has been verified!</h3>\n <lib-button \n text=\"Login\" \n buttonClass=\"\"\n (click)=\"goToLogin()\"\n ></lib-button> \n</section>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.ButtonComponent, selector: "lib-button", inputs: ["text", "color", "border", "borderRadius", "bgColor", "width", "pd", "buttonClass", "disabled"], outputs: ["buttonClick"] }] });
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'verben-mail-message', template: "<section\n[ngStyle]=\"styles\"\nclass=\"{{ customClass }}\"\n>\n <h3 class=\"{{headlingClass}}\">Your e-mail has been verified!</h3>\n <lib-button \n text=\"Login\" \n buttonClass=\"\"\n (click)=\"goToLogin()\"\n ></lib-button> \n</section>\n" }]
|
|
47
|
+
}], propDecorators: { customClass: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], headlingClass: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], width: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], maxWidth: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], margin: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], pd: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], bgColor: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], boxShadow: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], border: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], borderRadius: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], textColor: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], height: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], buttonClick: [{
|
|
72
|
+
type: Output
|
|
73
|
+
}] } });
|
|
74
|
+
|
|
75
|
+
class MailModule {
|
|
76
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
77
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: MailModule, declarations: [MailComponent], imports: [CommonModule, FormsModule, RouterLink, ButtonModule], exports: [MailComponent] });
|
|
78
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailModule, imports: [CommonModule, FormsModule, ButtonModule] });
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MailModule, decorators: [{
|
|
81
|
+
type: NgModule,
|
|
82
|
+
args: [{
|
|
83
|
+
declarations: [MailComponent],
|
|
84
|
+
imports: [CommonModule, FormsModule, RouterLink, ButtonModule],
|
|
85
|
+
exports: [MailComponent],
|
|
86
|
+
}]
|
|
87
|
+
}] });
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Generated bundle index. Do not edit.
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
export { MailComponent, MailModule };
|
|
94
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-mail.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-mail.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/mail/mail.component.ts","../../../projects/verben-authentication-ui/src/lib/components/mail/mail.component.html","../../../projects/verben-authentication-ui/src/lib/components/mail/mail.module.ts","../../../projects/verben-authentication-ui/src/lib/components/mail/verben-authentication-ui-src-lib-components-mail.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n\n@Component({\n selector: 'verben-mail-message',\n templateUrl: './mail.component.html',\n styleUrl: './mail.component.css'\n})\n\n\nexport class MailComponent {\n @Input() customClass: string = ''\n @Input() headlingClass: string = ''\n @Input() width: string = '';\n @Input() maxWidth: string = '';\n @Input() margin: string = '';\n @Input() pd: string = '';\n @Input() bgColor: string = '#fff';\n @Input() boxShadow: string = '4px 4px 4px rgba(0, 0, 0, 0.25)';\n @Input() border: string = '1px solid #66666680';\n @Input() borderRadius: string = '24px';\n @Input() textColor: string = '#333';\n @Input() height: string = 'auto';\n\n @Output() buttonClick = new EventEmitter();\n\n goToLogin(){ \n this.buttonClick.emit()\n }\n\n get styles() {\n return {\n 'background-color': this.bgColor,\n 'box-shadow': this.boxShadow,\n 'border': this.border,\n 'border-radius': this.borderRadius,\n 'color': this.textColor,\n 'width': this.width,\n 'max-width':this.maxWidth,\n 'margin':this.margin,\n 'height': this.height,\n 'padding':this.pd\n };\n }\n\n}\n\n","<section\n[ngStyle]=\"styles\"\nclass=\"{{ customClass }}\"\n>\n <h3 class=\"{{headlingClass}}\">Your e-mail has been verified!</h3>\n <lib-button \n text=\"Login\" \n buttonClass=\"\"\n (click)=\"goToLogin()\"\n ></lib-button> \n</section>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { RouterLink } from '@angular/router';\nimport { ButtonModule } from 'verben-authentication-ui/src/lib/components/button';\nimport { MailComponent } from './mail.component';\n\n@NgModule({\n declarations: [MailComponent],\n imports: [CommonModule, FormsModule, RouterLink, ButtonModule],\n exports: [MailComponent],\n})\nexport class MailModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
3
|
+
import { MechanismType } from 'verben-authentication-ui/src/lib/models';
|
|
4
|
+
import * as i1 from '@angular/router';
|
|
5
|
+
import * as i2 from '@angular/common';
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import * as i3 from 'verben-ng-ui';
|
|
8
|
+
import { VerbenaInputModule, VerbenaButtonModule } from 'verben-ng-ui';
|
|
9
|
+
|
|
10
|
+
class OAuthComponent {
|
|
11
|
+
router;
|
|
12
|
+
showGoogle = false;
|
|
13
|
+
showMicrosoft = false;
|
|
14
|
+
showApple = false;
|
|
15
|
+
authMechanisms = null;
|
|
16
|
+
emitMechanismFn = new EventEmitter();
|
|
17
|
+
page = '';
|
|
18
|
+
type = '';
|
|
19
|
+
constructor(router) {
|
|
20
|
+
this.router = router;
|
|
21
|
+
}
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
this.loadPage();
|
|
24
|
+
this.loadGoogleScript();
|
|
25
|
+
if (this.authMechanisms !== null) {
|
|
26
|
+
this.authMechanisms = this.authMechanisms.filter((item) => item.AuthMechanism !== MechanismType.InApp);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
loadPage() {
|
|
30
|
+
this.page = this.router.url;
|
|
31
|
+
}
|
|
32
|
+
loadGoogleScript() {
|
|
33
|
+
if (!document.getElementById('google-jssdk')) {
|
|
34
|
+
const script = document.createElement('script');
|
|
35
|
+
script.src = 'https://accounts.google.com/gsi/client';
|
|
36
|
+
script.id = 'google-jssdk';
|
|
37
|
+
script.async = true;
|
|
38
|
+
script.defer = true;
|
|
39
|
+
script.onload = () => console.log('Google SDK loaded');
|
|
40
|
+
script.onerror = () => console.log('Error loading Google SDK');
|
|
41
|
+
document.head.appendChild(script);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
oAuthWithGoogle(data) {
|
|
45
|
+
this.type = data.AuthMechanism;
|
|
46
|
+
localStorage.setItem('type', JSON.stringify(this.type));
|
|
47
|
+
const redirectUri = encodeURIComponent(data.RedirectUri);
|
|
48
|
+
const scope = encodeURIComponent('openid email profile');
|
|
49
|
+
const responseType = 'code';
|
|
50
|
+
const state = encodeURIComponent(JSON.stringify({ returnTo: this.page }));
|
|
51
|
+
const authUrl = `https://accounts.google.com/o/oauth2/v2/auth?client_id=${data.ClientId}&redirect_uri=${redirectUri}&response_type=${responseType}&scope=${scope}&state=${state}`;
|
|
52
|
+
window.location.href = authUrl;
|
|
53
|
+
}
|
|
54
|
+
oAuthWithApple() { }
|
|
55
|
+
oAuthWithMicrosoft(data) {
|
|
56
|
+
this.type = data.AuthMechanism;
|
|
57
|
+
const cleanUrl = window.location.href.split('?')[0];
|
|
58
|
+
window.history.replaceState({}, document.title, cleanUrl); // Update the URL without reloading
|
|
59
|
+
localStorage.setItem('type', JSON.stringify(this.type));
|
|
60
|
+
const redirectUri = encodeURIComponent(data.RedirectUri);
|
|
61
|
+
const scope = encodeURIComponent('openid email profile');
|
|
62
|
+
const responseType = 'code';
|
|
63
|
+
const state = encodeURIComponent(JSON.stringify({ returnTo: this.page }));
|
|
64
|
+
// const authUrl = `https://login.microsoftonline.com/${data.TenantId}/oauth2/v2.0/authorize?client_id=${data.ClientId}&response_type=${responseType}&redirect_uri=${redirectUri}&response_mode=query&state=${state}`;
|
|
65
|
+
const authUrl = `https://login.microsoftonline.com/common/oauth2/v2.0/authorize
|
|
66
|
+
?client_id=${data.ClientId}
|
|
67
|
+
&response_type=${responseType}
|
|
68
|
+
&redirect_uri=${redirectUri}&scope=${scope}
|
|
69
|
+
&response_mode=query&state=${state}`;
|
|
70
|
+
window.location.href = authUrl;
|
|
71
|
+
}
|
|
72
|
+
checkForValue(value) {
|
|
73
|
+
switch (value) {
|
|
74
|
+
case MechanismType.Google:
|
|
75
|
+
return 'google-logo';
|
|
76
|
+
case MechanismType.Apple:
|
|
77
|
+
return 'apple-logo';
|
|
78
|
+
case MechanismType.MicrosoftAD:
|
|
79
|
+
return 'microsoft-logo';
|
|
80
|
+
default:
|
|
81
|
+
return '';
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
handleOauthClick(value) {
|
|
85
|
+
switch (value.AuthMechanism) {
|
|
86
|
+
case MechanismType.Google:
|
|
87
|
+
return this.oAuthWithGoogle(value);
|
|
88
|
+
break;
|
|
89
|
+
case MechanismType.Apple:
|
|
90
|
+
return this.oAuthWithApple();
|
|
91
|
+
break;
|
|
92
|
+
case MechanismType.MicrosoftAD:
|
|
93
|
+
return this.oAuthWithMicrosoft(value);
|
|
94
|
+
break;
|
|
95
|
+
default:
|
|
96
|
+
return '';
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OAuthComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
100
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OAuthComponent, selector: "verben-o-auth", inputs: { authMechanisms: "authMechanisms" }, outputs: { emitMechanismFn: "emitMechanismFn" }, ngImport: i0, template: "<section class=\"oauthWrapper\"> \n <div class=\"OrFlexWrapper\">\n <hr/>\n <span>OR</span>\n <hr/>\n </div>\n <div class=\"btnWrapper\">\n <div *ngFor=\"let btn of authMechanisms, let i = index\"> \n <verbena-button\n [svg]=\"checkForValue(btn.AuthMechanism)\"\n [svgHeight]=\"24\"\n [svgWidth]=\"24\"\n [text]=\"'Continue with ' + btn.AuthMechanism\"\n bgColor=\"white\"\n textColor=\"black\"\n border=\"1px solid #333\"\n borderRadius=\"40px\"\n pd=\"10px 20px\"\n width=\"100%\"\n svgPosition=\"left\"\n buttonClass=\"font-normal text-[24px] leading-[29.05px] text-[#333] mt-2\"\n (click)=\"handleOauthClick(btn)\"\n ></verbena-button>\n </div> \n </div> \n</section>\n", styles: ["hr{height:1px;margin:0;border:1px solid #66666640;flex:1}.OR{margin:0 2px;color:#666}.oauthWrapper{display:flex;flex-direction:column;gap:12px}.btnWrapper{display:flex;flex-direction:column;gap:10px}.OrFlexWrapper{display:flex;align-items:center;gap:8px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.VerbenaButtonComponent, selector: "verbena-button", inputs: ["text", "icon", "useIcon", "svgPosition", "iconPosition", "bgColor", "textColor", "border", "borderRadius", "pd", "width", "height", "fontSize", "fontWeight", "disable", "svgSize", "weight", "variant", "styleType", "svg", "svgWidth", "svgHeight", "iconColor", "svgColor", "buttonClass", "buttonTextClass", "isLoading", "spinnerSize", "spinnerColor"] }] });
|
|
101
|
+
}
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OAuthComponent, decorators: [{
|
|
103
|
+
type: Component,
|
|
104
|
+
args: [{ selector: 'verben-o-auth', template: "<section class=\"oauthWrapper\"> \n <div class=\"OrFlexWrapper\">\n <hr/>\n <span>OR</span>\n <hr/>\n </div>\n <div class=\"btnWrapper\">\n <div *ngFor=\"let btn of authMechanisms, let i = index\"> \n <verbena-button\n [svg]=\"checkForValue(btn.AuthMechanism)\"\n [svgHeight]=\"24\"\n [svgWidth]=\"24\"\n [text]=\"'Continue with ' + btn.AuthMechanism\"\n bgColor=\"white\"\n textColor=\"black\"\n border=\"1px solid #333\"\n borderRadius=\"40px\"\n pd=\"10px 20px\"\n width=\"100%\"\n svgPosition=\"left\"\n buttonClass=\"font-normal text-[24px] leading-[29.05px] text-[#333] mt-2\"\n (click)=\"handleOauthClick(btn)\"\n ></verbena-button>\n </div> \n </div> \n</section>\n", styles: ["hr{height:1px;margin:0;border:1px solid #66666640;flex:1}.OR{margin:0 2px;color:#666}.oauthWrapper{display:flex;flex-direction:column;gap:12px}.btnWrapper{display:flex;flex-direction:column;gap:10px}.OrFlexWrapper{display:flex;align-items:center;gap:8px}\n"] }]
|
|
105
|
+
}], ctorParameters: () => [{ type: i1.Router }], propDecorators: { authMechanisms: [{
|
|
106
|
+
type: Input
|
|
107
|
+
}], emitMechanismFn: [{
|
|
108
|
+
type: Output
|
|
109
|
+
}] } });
|
|
110
|
+
|
|
111
|
+
class OAuthModule {
|
|
112
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
113
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: OAuthModule, declarations: [OAuthComponent], imports: [CommonModule, VerbenaInputModule, VerbenaButtonModule], exports: [OAuthComponent] });
|
|
114
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OAuthModule, imports: [CommonModule, VerbenaInputModule, VerbenaButtonModule] });
|
|
115
|
+
}
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OAuthModule, decorators: [{
|
|
117
|
+
type: NgModule,
|
|
118
|
+
args: [{
|
|
119
|
+
declarations: [OAuthComponent],
|
|
120
|
+
imports: [CommonModule, VerbenaInputModule, VerbenaButtonModule],
|
|
121
|
+
exports: [OAuthComponent]
|
|
122
|
+
}]
|
|
123
|
+
}] });
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Generated bundle index. Do not edit.
|
|
127
|
+
*/
|
|
128
|
+
|
|
129
|
+
export { OAuthComponent, OAuthModule };
|
|
130
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-o-auth.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-o-auth.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/o-auth/o-auth.component.ts","../../../projects/verben-authentication-ui/src/lib/components/o-auth/o-auth.component.html","../../../projects/verben-authentication-ui/src/lib/components/o-auth/o-auth.module.ts","../../../projects/verben-authentication-ui/src/lib/components/o-auth/verben-authentication-ui-src-lib-components-o-auth.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport {\n AuthMechanism,\n MechanismType,\n} from 'verben-authentication-ui/src/lib/models';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { HttpWebRequestService } from 'verben-authentication-ui/src/lib/services';\nimport { UtilService } from 'verben-authentication-ui/src/lib/services';\n\ndeclare global {\n interface Window {\n google: any;\n }\n}\n\n@Component({\n selector: 'verben-o-auth',\n templateUrl: './o-auth.component.html',\n styleUrl: './o-auth.component.css',\n})\nexport class OAuthComponent implements OnInit {\n showGoogle: boolean = false;\n showMicrosoft: boolean = false;\n showApple: boolean = false;\n @Input() authMechanisms: AuthMechanism[] | null = null;\n @Output() emitMechanismFn = new EventEmitter<string>();\n page: string = '';\n type: string = '';\n\n constructor(private router: Router) {}\n\n ngOnInit(): void {\n this.loadPage();\n this.loadGoogleScript();\n if (this.authMechanisms !== null) {\n this.authMechanisms = this.authMechanisms.filter(\n (item) => item.AuthMechanism !== MechanismType.InApp\n );\n }\n }\n\n loadPage() {\n this.page = this.router.url;\n }\n\n loadGoogleScript(): void {\n if (!document.getElementById('google-jssdk')) {\n const script = document.createElement('script');\n script.src = 'https://accounts.google.com/gsi/client';\n script.id = 'google-jssdk';\n script.async = true;\n script.defer = true;\n script.onload = () => console.log('Google SDK loaded');\n script.onerror = () => console.log('Error loading Google SDK');\n document.head.appendChild(script);\n }\n }\n\n oAuthWithGoogle(data: AuthMechanism) {\n this.type = data.AuthMechanism;\n localStorage.setItem('type', JSON.stringify(this.type));\n const redirectUri = encodeURIComponent(data.RedirectUri);\n const scope = encodeURIComponent('openid email profile');\n const responseType = 'code';\n const state = encodeURIComponent(JSON.stringify({ returnTo: this.page }));\n const authUrl = `https://accounts.google.com/o/oauth2/v2/auth?client_id=${data.ClientId}&redirect_uri=${redirectUri}&response_type=${responseType}&scope=${scope}&state=${state}`;\n window.location.href = authUrl;\n }\n\n oAuthWithApple() {}\n\n oAuthWithMicrosoft(data: AuthMechanism) {\n this.type = data.AuthMechanism;\n const cleanUrl = window.location.href.split('?')[0];\n window.history.replaceState({}, document.title, cleanUrl); // Update the URL without reloading\n localStorage.setItem('type', JSON.stringify(this.type));\n const redirectUri = encodeURIComponent(data.RedirectUri);\n const scope = encodeURIComponent('openid email profile');\n const responseType = 'code';\n const state = encodeURIComponent(JSON.stringify({ returnTo: this.page }));\n // const authUrl = `https://login.microsoftonline.com/${data.TenantId}/oauth2/v2.0/authorize?client_id=${data.ClientId}&response_type=${responseType}&redirect_uri=${redirectUri}&response_mode=query&state=${state}`;\n const authUrl = `https://login.microsoftonline.com/common/oauth2/v2.0/authorize\n?client_id=${data.ClientId}\n&response_type=${responseType}\n&redirect_uri=${redirectUri}&scope=${scope}\n&response_mode=query&state=${state}`;\n window.location.href = authUrl;\n }\n\n checkForValue(value: string) {\n switch (value) {\n case MechanismType.Google:\n return 'google-logo';\n case MechanismType.Apple:\n return 'apple-logo';\n case MechanismType.MicrosoftAD:\n return 'microsoft-logo';\n default:\n return '';\n }\n }\n\n handleOauthClick(value: AuthMechanism) {\n switch (value.AuthMechanism) {\n case MechanismType.Google:\n return this.oAuthWithGoogle(value);\n break;\n case MechanismType.Apple:\n return this.oAuthWithApple();\n break;\n case MechanismType.MicrosoftAD:\n return this.oAuthWithMicrosoft(value);\n break;\n default:\n return '';\n }\n }\n}\n","<section class=\"oauthWrapper\"> \n <div class=\"OrFlexWrapper\">\n <hr/>\n <span>OR</span>\n <hr/>\n </div>\n <div class=\"btnWrapper\">\n <div *ngFor=\"let btn of authMechanisms, let i = index\"> \n <verbena-button\n [svg]=\"checkForValue(btn.AuthMechanism)\"\n [svgHeight]=\"24\"\n [svgWidth]=\"24\"\n [text]=\"'Continue with ' + btn.AuthMechanism\"\n bgColor=\"white\"\n textColor=\"black\"\n border=\"1px solid #333\"\n borderRadius=\"40px\"\n pd=\"10px 20px\"\n width=\"100%\"\n svgPosition=\"left\"\n buttonClass=\"font-normal text-[24px] leading-[29.05px] text-[#333] mt-2\"\n (click)=\"handleOauthClick(btn)\"\n ></verbena-button>\n </div> \n </div> \n</section>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VerbenaButtonModule, VerbenaInputModule } from 'verben-ng-ui';\nimport { OAuthComponent } from './o-auth.component';\n\n@NgModule({\n declarations: [OAuthComponent],\n imports: [CommonModule,VerbenaInputModule,VerbenaButtonModule],\n exports: [OAuthComponent]\n})\nexport class OAuthModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|