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,305 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable, EventEmitter, Component, Input, Output } from '@angular/core';
|
|
3
|
+
import { BehaviorSubject, Subject, debounceTime, distinctUntilChanged, takeUntil } from 'rxjs';
|
|
4
|
+
import { takeUntil as takeUntil$1 } from 'rxjs/operators';
|
|
5
|
+
|
|
6
|
+
class BaseDataState {
|
|
7
|
+
updating$ = new BehaviorSubject(false);
|
|
8
|
+
items$ = new BehaviorSubject([]);
|
|
9
|
+
searchTerm$ = new BehaviorSubject('');
|
|
10
|
+
queryParams$ = new BehaviorSubject({
|
|
11
|
+
skip: 0,
|
|
12
|
+
limit: 20,
|
|
13
|
+
sortOrder: 'asc',
|
|
14
|
+
});
|
|
15
|
+
columns$ = new BehaviorSubject([]);
|
|
16
|
+
isUpdating$() {
|
|
17
|
+
return this.updating$.asObservable();
|
|
18
|
+
}
|
|
19
|
+
setUpdating(isUpdating) {
|
|
20
|
+
this.updating$.next(isUpdating);
|
|
21
|
+
}
|
|
22
|
+
getItems$() {
|
|
23
|
+
return this.items$.asObservable();
|
|
24
|
+
}
|
|
25
|
+
setItems(items) {
|
|
26
|
+
this.items$.next(items);
|
|
27
|
+
}
|
|
28
|
+
appendItems(newItems) {
|
|
29
|
+
const currentItems = this.items$.getValue();
|
|
30
|
+
this.items$.next([...currentItems, ...newItems]);
|
|
31
|
+
}
|
|
32
|
+
getSearchTerm$() {
|
|
33
|
+
return this.searchTerm$.asObservable();
|
|
34
|
+
}
|
|
35
|
+
getSearchTermValue() {
|
|
36
|
+
return this.searchTerm$.getValue();
|
|
37
|
+
}
|
|
38
|
+
setSearchTerm(term) {
|
|
39
|
+
this.searchTerm$.next(term);
|
|
40
|
+
}
|
|
41
|
+
getQueryParams$() {
|
|
42
|
+
return this.queryParams$.asObservable();
|
|
43
|
+
}
|
|
44
|
+
getQueryParamsValue() {
|
|
45
|
+
return this.queryParams$.getValue();
|
|
46
|
+
}
|
|
47
|
+
updateQueryParams(params) {
|
|
48
|
+
this.queryParams$.next({ ...this.queryParams$.getValue(), ...params });
|
|
49
|
+
}
|
|
50
|
+
resetPagination() {
|
|
51
|
+
const currentParams = this.queryParams$.getValue();
|
|
52
|
+
this.queryParams$.next({ ...currentParams, skip: 0 });
|
|
53
|
+
}
|
|
54
|
+
getColumns$() {
|
|
55
|
+
return this.columns$.asObservable();
|
|
56
|
+
}
|
|
57
|
+
setColumns(columns) {
|
|
58
|
+
this.columns$.next(columns);
|
|
59
|
+
}
|
|
60
|
+
// CRUD Operations
|
|
61
|
+
addItem(item) {
|
|
62
|
+
const currentItems = this.items$.getValue();
|
|
63
|
+
this.items$.next([...currentItems, item]);
|
|
64
|
+
}
|
|
65
|
+
updateItem(updatedItem) {
|
|
66
|
+
const items = this.items$.getValue();
|
|
67
|
+
const index = items.findIndex((item) => item.Id === updatedItem.Id);
|
|
68
|
+
if (index !== -1) {
|
|
69
|
+
items[index] = updatedItem;
|
|
70
|
+
this.items$.next([...items]);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
removeItem(itemId) {
|
|
74
|
+
const currentItems = this.items$.getValue();
|
|
75
|
+
this.items$.next(currentItems.filter((item) => item.Id !== itemId));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
class BaseDataService {
|
|
80
|
+
http;
|
|
81
|
+
baseUrl;
|
|
82
|
+
constructor(http, baseUrl) {
|
|
83
|
+
this.http = http;
|
|
84
|
+
this.baseUrl = baseUrl;
|
|
85
|
+
}
|
|
86
|
+
getItems(skip, limit, sortParam, sortOrder) {
|
|
87
|
+
return this.http.get(`${this.baseUrl}/${this.getEndpoint()}/${skip}/${limit}/${String(sortParam)}/${sortOrder}`);
|
|
88
|
+
}
|
|
89
|
+
getItemsBySearchTerm(searchTerm, skip, limit, sortParam, sortOrder) {
|
|
90
|
+
return this.http.get(`${this.baseUrl}/${this.getEndpoint()}/search/${searchTerm}/${skip}/${limit}/${String(sortParam)}/${sortOrder}`);
|
|
91
|
+
}
|
|
92
|
+
saveItems(items) {
|
|
93
|
+
return this.http.post(`${this.baseUrl}/${this.getEndpoint()}`, items);
|
|
94
|
+
}
|
|
95
|
+
deleteItems(itemIds) {
|
|
96
|
+
return this.http.delete(`${this.baseUrl}/${this.getEndpoint()}?ids=${itemIds.join(',')}`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
class BaseDataFacade {
|
|
101
|
+
state;
|
|
102
|
+
service;
|
|
103
|
+
searchSubject = new Subject();
|
|
104
|
+
destroy$ = new Subject();
|
|
105
|
+
constructor(state, service) {
|
|
106
|
+
this.state = state;
|
|
107
|
+
this.service = service;
|
|
108
|
+
this.setupSearchHandler();
|
|
109
|
+
}
|
|
110
|
+
setupSearchHandler() {
|
|
111
|
+
this.searchSubject
|
|
112
|
+
.pipe(debounceTime(300), distinctUntilChanged(), takeUntil(this.destroy$))
|
|
113
|
+
.subscribe((searchTerm) => {
|
|
114
|
+
this.handleSearch(searchTerm);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
destroy() {
|
|
118
|
+
this.destroy$.next();
|
|
119
|
+
this.destroy$.complete();
|
|
120
|
+
}
|
|
121
|
+
// State Observables
|
|
122
|
+
isUpdating$() {
|
|
123
|
+
return this.state.isUpdating$();
|
|
124
|
+
}
|
|
125
|
+
getItems$() {
|
|
126
|
+
return this.state.getItems$();
|
|
127
|
+
}
|
|
128
|
+
getSearchTerm$() {
|
|
129
|
+
return this.state.getSearchTerm$();
|
|
130
|
+
}
|
|
131
|
+
getQueryParams$() {
|
|
132
|
+
return this.state.getQueryParams$();
|
|
133
|
+
}
|
|
134
|
+
// Actions
|
|
135
|
+
search(term) {
|
|
136
|
+
this.searchSubject.next(term);
|
|
137
|
+
}
|
|
138
|
+
async handleSearch(searchTerm) {
|
|
139
|
+
this.state.setSearchTerm(searchTerm);
|
|
140
|
+
this.state.resetPagination();
|
|
141
|
+
await this.loadItems();
|
|
142
|
+
}
|
|
143
|
+
async loadItems() {
|
|
144
|
+
try {
|
|
145
|
+
this.state.setUpdating(true);
|
|
146
|
+
const params = this.state.getQueryParamsValue();
|
|
147
|
+
const searchTerm = this.state.getSearchTermValue();
|
|
148
|
+
const response = searchTerm
|
|
149
|
+
? await this.service
|
|
150
|
+
.getItemsBySearchTerm(searchTerm, params.skip, params.limit, params.sortParam, params.sortOrder)
|
|
151
|
+
.toPromise()
|
|
152
|
+
: await this.service
|
|
153
|
+
.getItems(params.skip, params.limit, params.sortParam, params.sortOrder)
|
|
154
|
+
.toPromise();
|
|
155
|
+
if (response?.Result) {
|
|
156
|
+
this.state.setItems(response?.Result);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
catch (error) {
|
|
160
|
+
console.error('Failed to load items:', error);
|
|
161
|
+
throw error;
|
|
162
|
+
}
|
|
163
|
+
finally {
|
|
164
|
+
this.state.setUpdating(false);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
async loadMore() {
|
|
168
|
+
try {
|
|
169
|
+
this.state.setUpdating(true);
|
|
170
|
+
const currentParams = this.state.getQueryParamsValue();
|
|
171
|
+
const newSkip = currentParams.skip + currentParams.limit;
|
|
172
|
+
this.state.updateQueryParams({ skip: newSkip });
|
|
173
|
+
const response = await this.service
|
|
174
|
+
.getItems(newSkip, currentParams.limit, currentParams.sortParam, currentParams.sortOrder)
|
|
175
|
+
.toPromise();
|
|
176
|
+
if (response?.Result) {
|
|
177
|
+
this.state.appendItems(response.Result);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
catch (error) {
|
|
181
|
+
console.error('Failed to load more items:', error);
|
|
182
|
+
throw error;
|
|
183
|
+
}
|
|
184
|
+
finally {
|
|
185
|
+
this.state.setUpdating(false);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
async saveItem(item) {
|
|
189
|
+
try {
|
|
190
|
+
this.state.setUpdating(true);
|
|
191
|
+
const response = await this.service.saveItems([item]).toPromise();
|
|
192
|
+
if (response?.[0]) {
|
|
193
|
+
this.state.updateItem(response[0]);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
catch (error) {
|
|
197
|
+
console.error('Failed to save item:', error);
|
|
198
|
+
throw error;
|
|
199
|
+
}
|
|
200
|
+
finally {
|
|
201
|
+
this.state.setUpdating(false);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
async deleteItem(itemId) {
|
|
205
|
+
try {
|
|
206
|
+
this.state.setUpdating(true);
|
|
207
|
+
await this.service.deleteItems([itemId]).toPromise();
|
|
208
|
+
this.state.removeItem(itemId);
|
|
209
|
+
}
|
|
210
|
+
catch (error) {
|
|
211
|
+
console.error('Failed to delete item:', error);
|
|
212
|
+
throw error;
|
|
213
|
+
}
|
|
214
|
+
finally {
|
|
215
|
+
this.state.setUpdating(false);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade, deps: [{ token: BaseDataState }, { token: BaseDataService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
219
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade });
|
|
220
|
+
}
|
|
221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataFacade, decorators: [{
|
|
222
|
+
type: Injectable
|
|
223
|
+
}], ctorParameters: () => [{ type: BaseDataState }, { type: BaseDataService }] });
|
|
224
|
+
|
|
225
|
+
class BaseDataComponent {
|
|
226
|
+
facade;
|
|
227
|
+
columns;
|
|
228
|
+
selectionChange = new EventEmitter();
|
|
229
|
+
exportData = new EventEmitter();
|
|
230
|
+
destroy$ = new Subject();
|
|
231
|
+
isLoading = false;
|
|
232
|
+
items = [];
|
|
233
|
+
selectedItems = [];
|
|
234
|
+
isGridView = true;
|
|
235
|
+
constructor(facade) {
|
|
236
|
+
this.facade = facade;
|
|
237
|
+
}
|
|
238
|
+
ngOnInit() {
|
|
239
|
+
this.setupSubscriptions();
|
|
240
|
+
this.loadInitialData();
|
|
241
|
+
}
|
|
242
|
+
ngOnDestroy() {
|
|
243
|
+
this.destroy$.next();
|
|
244
|
+
this.destroy$.complete();
|
|
245
|
+
}
|
|
246
|
+
setupSubscriptions() {
|
|
247
|
+
this.facade
|
|
248
|
+
.isUpdating$()
|
|
249
|
+
.pipe(takeUntil$1(this.destroy$))
|
|
250
|
+
.subscribe((loading) => (this.isLoading = loading));
|
|
251
|
+
this.facade
|
|
252
|
+
.getItems$()
|
|
253
|
+
.pipe(takeUntil$1(this.destroy$))
|
|
254
|
+
.subscribe((items) => (this.items = items));
|
|
255
|
+
}
|
|
256
|
+
async loadInitialData() {
|
|
257
|
+
try {
|
|
258
|
+
await this.facade.loadItems();
|
|
259
|
+
}
|
|
260
|
+
catch (error) {
|
|
261
|
+
// Handle error appropriately
|
|
262
|
+
console.error('Failed to load initial data:', error);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
onSearch(event) {
|
|
266
|
+
this.facade.search(event.value);
|
|
267
|
+
}
|
|
268
|
+
async onLoadMore() {
|
|
269
|
+
try {
|
|
270
|
+
await this.facade.loadMore();
|
|
271
|
+
}
|
|
272
|
+
catch (error) {
|
|
273
|
+
console.error('Failed to load more:', error);
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
onViewChange(isGridView) {
|
|
277
|
+
this.isGridView = isGridView;
|
|
278
|
+
}
|
|
279
|
+
onSelectionChange(selected) {
|
|
280
|
+
this.selectedItems = selected;
|
|
281
|
+
this.selectionChange.emit(selected);
|
|
282
|
+
}
|
|
283
|
+
onExport(data) {
|
|
284
|
+
this.exportData.emit(data);
|
|
285
|
+
}
|
|
286
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataComponent, deps: [{ token: BaseDataFacade }], target: i0.ɵɵFactoryTarget.Component });
|
|
287
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseDataComponent, selector: "ng-component", inputs: { columns: "columns" }, outputs: { selectionChange: "selectionChange", exportData: "exportData" }, ngImport: i0, template: '', isInline: true });
|
|
288
|
+
}
|
|
289
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseDataComponent, decorators: [{
|
|
290
|
+
type: Component,
|
|
291
|
+
args: [{ template: '' }]
|
|
292
|
+
}], ctorParameters: () => [{ type: BaseDataFacade }], propDecorators: { columns: [{
|
|
293
|
+
type: Input
|
|
294
|
+
}], selectionChange: [{
|
|
295
|
+
type: Output
|
|
296
|
+
}], exportData: [{
|
|
297
|
+
type: Output
|
|
298
|
+
}] } });
|
|
299
|
+
|
|
300
|
+
/**
|
|
301
|
+
* Generated bundle index. Do not edit.
|
|
302
|
+
*/
|
|
303
|
+
|
|
304
|
+
export { BaseDataComponent, BaseDataFacade, BaseDataService, BaseDataState };
|
|
305
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-base.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-base.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/base/base-data.state.ts","../../../projects/verben-authentication-ui/src/lib/base/base-data.service.ts","../../../projects/verben-authentication-ui/src/lib/base/base-data.facade.ts","../../../projects/verben-authentication-ui/src/lib/base/base-data.component.ts","../../../projects/verben-authentication-ui/src/lib/base/verben-authentication-ui-src-lib-base.ts"],"sourcesContent":["import { BehaviorSubject, Observable } from 'rxjs';\nimport { BaseModel } from 'verben-authentication-ui/src/lib/models';\nimport { IQueryParams } from './models';\nimport { ColumnDefinition } from 'verben-ng-ui';\n\nexport abstract class BaseDataState<T extends BaseModel> {\n protected updating$ = new BehaviorSubject<boolean>(false);\n protected items$ = new BehaviorSubject<T[]>([]);\n protected searchTerm$ = new BehaviorSubject<string>('');\n protected queryParams$ = new BehaviorSubject<IQueryParams<T>>({\n skip: 0,\n limit: 20,\n sortOrder: 'asc',\n });\n protected columns$ = new BehaviorSubject<ColumnDefinition<T>[]>([]);\n\n isUpdating$(): Observable<boolean> {\n return this.updating$.asObservable();\n }\n\n setUpdating(isUpdating: boolean): void {\n this.updating$.next(isUpdating);\n }\n\n getItems$(): Observable<T[]> {\n return this.items$.asObservable();\n }\n\n setItems(items: T[]): void {\n this.items$.next(items);\n }\n\n appendItems(newItems: T[]): void {\n const currentItems = this.items$.getValue();\n this.items$.next([...currentItems, ...newItems]);\n }\n\n getSearchTerm$(): Observable<string> {\n return this.searchTerm$.asObservable();\n }\n\n getSearchTermValue(): string {\n return this.searchTerm$.getValue();\n }\n\n setSearchTerm(term: string): void {\n this.searchTerm$.next(term);\n }\n\n getQueryParams$(): Observable<IQueryParams<T>> {\n return this.queryParams$.asObservable();\n }\n\n getQueryParamsValue(): IQueryParams<T> {\n return this.queryParams$.getValue();\n }\n\n updateQueryParams(params: Partial<IQueryParams<T>>): void {\n this.queryParams$.next({ ...this.queryParams$.getValue(), ...params });\n }\n\n resetPagination(): void {\n const currentParams = this.queryParams$.getValue();\n this.queryParams$.next({ ...currentParams, skip: 0 });\n }\n\n getColumns$(): Observable<ColumnDefinition<T>[]> {\n return this.columns$.asObservable();\n }\n\n setColumns(columns: ColumnDefinition<T>[]): void {\n this.columns$.next(columns);\n }\n\n // CRUD Operations\n addItem(item: T): void {\n const currentItems = this.items$.getValue();\n this.items$.next([...currentItems, item]);\n }\n\n updateItem(updatedItem: T): void {\n const items = this.items$.getValue();\n const index = items.findIndex((item) => item.Id === updatedItem.Id);\n if (index !== -1) {\n items[index] = updatedItem;\n this.items$.next([...items]);\n }\n }\n\n removeItem(itemId: string): void {\n const currentItems = this.items$.getValue();\n this.items$.next(currentItems.filter((item) => item.Id !== itemId));\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { BaseModel } from 'verben-authentication-ui/src/lib/models';\nimport { Paged } from 'verben-authentication-ui/src/lib/models';\n\nexport abstract class BaseDataService<T extends BaseModel> {\n constructor(protected http: HttpClient, protected baseUrl: string) {}\n\n abstract getEndpoint(): string;\n\n getItems(\n skip: number,\n limit: number,\n sortParam: keyof T,\n sortOrder: string\n ): Observable<Paged<T>> {\n return this.http.get<Paged<T>>(\n `${this.baseUrl}/${this.getEndpoint()}/${skip}/${limit}/${String(\n sortParam\n )}/${sortOrder}`\n );\n }\n\n getItemsBySearchTerm(\n searchTerm: string,\n skip: number,\n limit: number,\n sortParam: keyof T,\n sortOrder: string\n ): Observable<Paged<T>> {\n return this.http.get<Paged<T>>(\n `${\n this.baseUrl\n }/${this.getEndpoint()}/search/${searchTerm}/${skip}/${limit}/${String(\n sortParam\n )}/${sortOrder}`\n );\n }\n\n saveItems(items: T[]): Observable<T[]> {\n return this.http.post<T[]>(`${this.baseUrl}/${this.getEndpoint()}`, items);\n }\n\n deleteItems(itemIds: string[]): Observable<void> {\n return this.http.delete<void>(\n `${this.baseUrl}/${this.getEndpoint()}?ids=${itemIds.join(',')}`\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n Observable,\n Subject,\n debounceTime,\n distinctUntilChanged,\n takeUntil,\n} from 'rxjs';\nimport { IQueryParams } from './models';\nimport { BaseDataState } from './base-data.state';\nimport { BaseDataService } from './base-data.service';\nimport { BaseModel } from 'verben-authentication-ui/src/lib/models';\n\n@Injectable()\nexport abstract class BaseDataFacade<T extends BaseModel> {\n private searchSubject = new Subject<string>();\n private destroy$ = new Subject<void>();\n\n constructor(\n protected state: BaseDataState<T>,\n protected service: BaseDataService<T>\n ) {\n this.setupSearchHandler();\n }\n\n private setupSearchHandler(): void {\n this.searchSubject\n .pipe(debounceTime(300), distinctUntilChanged(), takeUntil(this.destroy$))\n .subscribe((searchTerm) => {\n this.handleSearch(searchTerm);\n });\n }\n\n destroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n // State Observables\n isUpdating$(): Observable<boolean> {\n return this.state.isUpdating$();\n }\n\n getItems$(): Observable<T[]> {\n return this.state.getItems$();\n }\n\n getSearchTerm$(): Observable<string> {\n return this.state.getSearchTerm$();\n }\n\n getQueryParams$(): Observable<IQueryParams<T>> {\n return this.state.getQueryParams$();\n }\n\n // Actions\n search(term: string): void {\n this.searchSubject.next(term);\n }\n\n protected async handleSearch(searchTerm: string): Promise<void> {\n this.state.setSearchTerm(searchTerm);\n this.state.resetPagination();\n await this.loadItems();\n }\n\n async loadItems(): Promise<void> {\n try {\n this.state.setUpdating(true);\n const params = this.state.getQueryParamsValue();\n const searchTerm = this.state.getSearchTermValue();\n\n const response = searchTerm\n ? await this.service\n .getItemsBySearchTerm(\n searchTerm,\n params.skip,\n params.limit,\n params.sortParam!,\n params.sortOrder\n )\n .toPromise()\n : await this.service\n .getItems(\n params.skip,\n params.limit,\n params.sortParam!,\n params.sortOrder\n )\n .toPromise();\n\n if (response?.Result) {\n this.state.setItems(response?.Result);\n }\n } catch (error) {\n console.error('Failed to load items:', error);\n throw error;\n } finally {\n this.state.setUpdating(false);\n }\n }\n\n async loadMore(): Promise<void> {\n try {\n this.state.setUpdating(true);\n const currentParams = this.state.getQueryParamsValue();\n const newSkip = currentParams.skip + currentParams.limit;\n this.state.updateQueryParams({ skip: newSkip });\n\n const response = await this.service\n .getItems(\n newSkip,\n currentParams.limit,\n currentParams.sortParam!,\n currentParams.sortOrder\n )\n .toPromise();\n\n if (response?.Result) {\n this.state.appendItems(response.Result);\n }\n } catch (error) {\n console.error('Failed to load more items:', error);\n throw error;\n } finally {\n this.state.setUpdating(false);\n }\n }\n\n async saveItem(item: T): Promise<void> {\n try {\n this.state.setUpdating(true);\n const response = await this.service.saveItems([item]).toPromise();\n if (response?.[0]) {\n this.state.updateItem(response[0]);\n }\n } catch (error) {\n console.error('Failed to save item:', error);\n throw error;\n } finally {\n this.state.setUpdating(false);\n }\n }\n\n async deleteItem(itemId: string): Promise<void> {\n try {\n this.state.setUpdating(true);\n await this.service.deleteItems([itemId]).toPromise();\n this.state.removeItem(itemId);\n } catch (error) {\n console.error('Failed to delete item:', error);\n throw error;\n } finally {\n this.state.setUpdating(false);\n }\n }\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BaseModel } from 'verben-authentication-ui/src/lib/models';\nimport { ColumnDefinition } from 'verben-ng-ui';\nimport { BaseDataFacade } from './base-data.facade';\n\n@Component({ template: '' })\nexport abstract class BaseDataComponent<T extends BaseModel>\n implements OnInit, OnDestroy\n{\n @Input() columns!: ColumnDefinition<T>[];\n @Output() selectionChange = new EventEmitter<T[]>();\n @Output() exportData = new EventEmitter<Record<string, any>[]>();\n\n protected destroy$ = new Subject<void>();\n isLoading = false;\n items: T[] = [];\n selectedItems: T[] = [];\n isGridView = true;\n\n constructor(protected facade: BaseDataFacade<T>) {}\n\n ngOnInit(): void {\n this.setupSubscriptions();\n this.loadInitialData();\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n protected setupSubscriptions(): void {\n this.facade\n .isUpdating$()\n .pipe(takeUntil(this.destroy$))\n .subscribe((loading) => (this.isLoading = loading));\n\n this.facade\n .getItems$()\n .pipe(takeUntil(this.destroy$))\n .subscribe((items) => (this.items = items));\n }\n\n protected async loadInitialData(): Promise<void> {\n try {\n await this.facade.loadItems();\n } catch (error) {\n // Handle error appropriately\n console.error('Failed to load initial data:', error);\n }\n }\n\n onSearch(event: { key: string; value: string }): void {\n this.facade.search(event.value);\n }\n\n async onLoadMore(): Promise<void> {\n try {\n await this.facade.loadMore();\n } catch (error) {\n console.error('Failed to load more:', error);\n }\n }\n\n onViewChange(isGridView: boolean): void {\n this.isGridView = isGridView;\n }\n\n onSelectionChange(selected: T[]): void {\n this.selectedItems = selected;\n this.selectionChange.emit(selected);\n }\n\n onExport(data: Record<string, any>[]): void {\n this.exportData.emit(data);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BaseDataState","i2.BaseDataService","takeUntil","i1.BaseDataFacade"],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, Input, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/router';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
|
|
6
|
+
class AuthCallbackComponent {
|
|
7
|
+
router;
|
|
8
|
+
route;
|
|
9
|
+
code = '';
|
|
10
|
+
previousUrl = '';
|
|
11
|
+
type = '';
|
|
12
|
+
redirectText;
|
|
13
|
+
constructor(router, route) {
|
|
14
|
+
this.router = router;
|
|
15
|
+
this.route = route;
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this.getType();
|
|
19
|
+
this.handleRedirect();
|
|
20
|
+
}
|
|
21
|
+
getType() {
|
|
22
|
+
const data = localStorage.getItem('type');
|
|
23
|
+
if (data) {
|
|
24
|
+
this.type = JSON.parse(data);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
handleRedirect() {
|
|
28
|
+
const params = new URLSearchParams(window.location.search);
|
|
29
|
+
const code = params.get('code');
|
|
30
|
+
const stateParam = params.get('state');
|
|
31
|
+
console.log({ code: code, state: stateParam }, 'data');
|
|
32
|
+
if (code && stateParam) {
|
|
33
|
+
try {
|
|
34
|
+
const state = JSON.parse(decodeURIComponent(stateParam));
|
|
35
|
+
// const returnTo = state.returnTo || '/';
|
|
36
|
+
const splitStateArray = state.returnTo.split('?');
|
|
37
|
+
const returnTo = splitStateArray.length > 0 ? splitStateArray[0] : state.returnTo;
|
|
38
|
+
const queryParams = { code };
|
|
39
|
+
if (this.type) {
|
|
40
|
+
queryParams.type = this.type;
|
|
41
|
+
}
|
|
42
|
+
this.router.navigate([returnTo], { queryParams });
|
|
43
|
+
// this.router.navigate([returnTo], { queryParams: { code } });
|
|
44
|
+
}
|
|
45
|
+
catch (e) {
|
|
46
|
+
const msg = e;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
51
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AuthCallbackComponent, selector: "verben-auth-callback", inputs: { redirectText: "redirectText" }, ngImport: i0, template: "<section class=\"wrapper\"> \n <div class=\"flexWrapper\"> \n <p class=\"{{redirectText}}\">Redirecting ...</p>\n <div class=\"loader\"></div>\n </div>\n</section>", styles: [".wrapper{width:100%;min-height:100%;display:flex;align-items:center;justify-content:center}.flexWrapper{display:flex;align-items:center;justify-content:center}.loader{border:2px solid white;border-radius:50%;border-top:2px solid black;width:40px;height:40px;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] });
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackComponent, decorators: [{
|
|
54
|
+
type: Component,
|
|
55
|
+
args: [{ selector: 'verben-auth-callback', template: "<section class=\"wrapper\"> \n <div class=\"flexWrapper\"> \n <p class=\"{{redirectText}}\">Redirecting ...</p>\n <div class=\"loader\"></div>\n </div>\n</section>", styles: [".wrapper{width:100%;min-height:100%;display:flex;align-items:center;justify-content:center}.flexWrapper{display:flex;align-items:center;justify-content:center}.loader{border:2px solid white;border-radius:50%;border-top:2px solid black;width:40px;height:40px;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
|
|
56
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }], propDecorators: { redirectText: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}] } });
|
|
59
|
+
|
|
60
|
+
class AuthCallbackModule {
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
62
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackModule, declarations: [AuthCallbackComponent], imports: [CommonModule], exports: [AuthCallbackComponent] });
|
|
63
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackModule, imports: [CommonModule] });
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthCallbackModule, decorators: [{
|
|
66
|
+
type: NgModule,
|
|
67
|
+
args: [{
|
|
68
|
+
declarations: [AuthCallbackComponent],
|
|
69
|
+
imports: [CommonModule],
|
|
70
|
+
exports: [AuthCallbackComponent]
|
|
71
|
+
}]
|
|
72
|
+
}] });
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Generated bundle index. Do not edit.
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
export { AuthCallbackComponent, AuthCallbackModule };
|
|
79
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-auth-callback.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-auth-callback.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/auth-callback/auth-callback.component.ts","../../../projects/verben-authentication-ui/src/lib/components/auth-callback/auth-callback.component.html","../../../projects/verben-authentication-ui/src/lib/components/auth-callback/auth-callback.module.ts","../../../projects/verben-authentication-ui/src/lib/components/auth-callback/verben-authentication-ui-src-lib-components-auth-callback.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\n@Component({\n selector: 'verben-auth-callback',\n templateUrl: './auth-callback.component.html',\n styleUrl: './auth-callback.component.css'\n})\nexport class AuthCallbackComponent implements OnInit {\n code: string = '';\n previousUrl: string = '';\n type: string = '';\n @Input() redirectText?:string;\n \n constructor(private router: Router,\n private route: ActivatedRoute\n ) {}\n\n ngOnInit() {\n this.getType()\n this.handleRedirect();\n }\n \n getType(){ \n const data = localStorage.getItem('type')\n if(data){ \n this.type = JSON.parse(data)\n }\n }\n handleRedirect() {\n const params = new URLSearchParams(window.location.search);\n const code = params.get('code');\n const stateParam = params.get('state');\n console.log({code:code, state:stateParam}, 'data');\n \n\n if (code && stateParam) {\n try {\n const state = JSON.parse(decodeURIComponent(stateParam));\n // const returnTo = state.returnTo || '/';\n const splitStateArray=state.returnTo.split('?');\n const returnTo = splitStateArray.length>0?splitStateArray[0]:state.returnTo;\n const queryParams: any = { code };\n if (this.type) {\n queryParams.type = this.type;\n }\n\n this.router.navigate([returnTo], { queryParams });\n // this.router.navigate([returnTo], { queryParams: { code } });\n } catch (e) {\n const msg = e\n }\n }\n }\n \n}\n","<section class=\"wrapper\"> \n <div class=\"flexWrapper\"> \n <p class=\"{{redirectText}}\">Redirecting ...</p>\n <div class=\"loader\"></div>\n </div>\n</section>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AuthCallbackComponent } from './auth-callback.component';\n\n@NgModule({\n declarations: [AuthCallbackComponent],\n imports: [CommonModule],\n exports: [AuthCallbackComponent]\n})\nexport class AuthCallbackModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAQa,qBAAqB,CAAA;AAMZ,IAAA,MAAA,CAAA;AACV,IAAA,KAAA,CAAA;IANV,IAAI,GAAW,EAAE,CAAC;IAClB,WAAW,GAAW,EAAE,CAAC;IACzB,IAAI,GAAW,EAAE,CAAC;AACT,IAAA,YAAY,CAAS;IAE9B,WAAoB,CAAA,MAAc,EACxB,KAAqB,EAAA;QADX,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACxB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAgB;KAC3B;IAEJ,QAAQ,GAAA;QACN,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,IAAI,CAAC,cAAc,EAAE,CAAC;KACvB;IAED,OAAO,GAAA;QACP,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACzC,IAAG,IAAI,EAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;SAC7B;KACA;IACD,cAAc,GAAA;QACZ,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACzC,QAAA,OAAO,CAAC,GAAG,CAAC,EAAC,IAAI,EAAC,IAAI,EAAE,KAAK,EAAC,UAAU,EAAC,EAAE,MAAM,CAAC,CAAC;AAGjD,QAAA,IAAI,IAAI,IAAI,UAAU,EAAE;AACtB,YAAA,IAAI;gBACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;;gBAEzD,MAAM,eAAe,GAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChD,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,GAAC,CAAC,GAAC,eAAe,CAAC,CAAC,CAAC,GAAC,KAAK,CAAC,QAAQ,CAAC;AAC5E,gBAAA,MAAM,WAAW,GAAQ,EAAE,IAAI,EAAE,CAAC;AACpC,gBAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,oBAAA,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;iBAC9B;AAED,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;;aAEjD;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,GAAG,GAAG,CAAC,CAAA;aACb;SACF;KACF;wGA7CU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,sGCRlC,yLAKU,EAAA,MAAA,EAAA,CAAA,qfAAA,CAAA,EAAA,CAAA,CAAA;;4FDGG,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,sBAAsB,EAAA,QAAA,EAAA,yLAAA,EAAA,MAAA,EAAA,CAAA,qfAAA,CAAA,EAAA,CAAA;wGAQvB,YAAY,EAAA,CAAA;sBAApB,KAAK;;;MEHK,kBAAkB,CAAA;wGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAJd,YAAA,EAAA,CAAA,qBAAqB,CAC1B,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAEpB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAHnB,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAGX,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;oBACrC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,qBAAqB,CAAC;AACjC,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -0,0 +1,70 @@
|
|
|
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-ng-ui';
|
|
6
|
+
import { VerbenaButtonModule } from 'verben-ng-ui';
|
|
7
|
+
import { FormsModule } from '@angular/forms';
|
|
8
|
+
|
|
9
|
+
class ButtonComponent {
|
|
10
|
+
text = '';
|
|
11
|
+
color = 'black';
|
|
12
|
+
border = '1px solid #FFE681';
|
|
13
|
+
borderRadius = "40px";
|
|
14
|
+
bgColor = '#FFE681';
|
|
15
|
+
width = '100%';
|
|
16
|
+
pd = '10px 20px';
|
|
17
|
+
buttonClass = '';
|
|
18
|
+
disabled = false;
|
|
19
|
+
buttonClick = new EventEmitter();
|
|
20
|
+
handleClick() {
|
|
21
|
+
this.buttonClick.emit();
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ButtonComponent, selector: "lib-button", inputs: { text: "text", color: "color", border: "border", borderRadius: "borderRadius", bgColor: "bgColor", width: "width", pd: "pd", buttonClass: "buttonClass", disabled: "disabled" }, outputs: { buttonClick: "buttonClick" }, ngImport: i0, template: "<verbena-button\n[text]=\"text\"\n[bgColor]=\"bgColor\"\n[textColor]=\"color\"\n[border]=\"border\"\n[borderRadius]=\"borderRadius\"\n[pd]=\"pd\"\n[width]=\"width\"\n[disable]=\"disabled\"\n[ngStyle]=\"{'cursor': disabled ? 'not-allowed' : 'pointer' }\"\nbuttonClass=\"font-medium text-[22px] leading-[33px] {{buttonClass}}\"\n(click)=\"handleClick()\"\n></verbena-button>\n", styles: [".disable-btn{cursor:not-allowed}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.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"] }] });
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{ selector: 'lib-button', template: "<verbena-button\n[text]=\"text\"\n[bgColor]=\"bgColor\"\n[textColor]=\"color\"\n[border]=\"border\"\n[borderRadius]=\"borderRadius\"\n[pd]=\"pd\"\n[width]=\"width\"\n[disable]=\"disabled\"\n[ngStyle]=\"{'cursor': disabled ? 'not-allowed' : 'pointer' }\"\nbuttonClass=\"font-medium text-[22px] leading-[33px] {{buttonClass}}\"\n(click)=\"handleClick()\"\n></verbena-button>\n", styles: [".disable-btn{cursor:not-allowed}\n"] }]
|
|
29
|
+
}], propDecorators: { text: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}], color: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], border: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], borderRadius: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], bgColor: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], width: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], pd: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], buttonClass: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], disabled: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], buttonClick: [{
|
|
48
|
+
type: Output
|
|
49
|
+
}] } });
|
|
50
|
+
|
|
51
|
+
class ButtonModule {
|
|
52
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
53
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ButtonModule, declarations: [ButtonComponent], imports: [CommonModule, VerbenaButtonModule, FormsModule], exports: [ButtonComponent] });
|
|
54
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonModule, imports: [CommonModule, VerbenaButtonModule, FormsModule] });
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonModule, decorators: [{
|
|
57
|
+
type: NgModule,
|
|
58
|
+
args: [{
|
|
59
|
+
declarations: [ButtonComponent],
|
|
60
|
+
imports: [CommonModule, VerbenaButtonModule, FormsModule],
|
|
61
|
+
exports: [ButtonComponent]
|
|
62
|
+
}]
|
|
63
|
+
}] });
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Generated bundle index. Do not edit.
|
|
67
|
+
*/
|
|
68
|
+
|
|
69
|
+
export { ButtonComponent, ButtonModule };
|
|
70
|
+
//# sourceMappingURL=verben-authentication-ui-src-lib-components-button.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verben-authentication-ui-src-lib-components-button.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/button/button.component.ts","../../../projects/verben-authentication-ui/src/lib/components/button/button.component.html","../../../projects/verben-authentication-ui/src/lib/components/button/button.module.ts","../../../projects/verben-authentication-ui/src/lib/components/button/verben-authentication-ui-src-lib-components-button.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'lib-button',\n templateUrl: './button.component.html',\n styleUrl: './button.component.css'\n})\nexport class ButtonComponent{\n @Input() text: string = '';\n @Input() color: string = 'black';\n @Input() border: string = '1px solid #FFE681';\n @Input() borderRadius:string = \"40px\"\n @Input() bgColor: string = '#FFE681';\n @Input() width: string = '100%';\n @Input() pd: string = '10px 20px';\n @Input() buttonClass: string = '';\n @Input() disabled: boolean = false;\n\n @Output() buttonClick = new EventEmitter<void>();\n\n handleClick(){ \n this.buttonClick.emit();\n }\n}\n","<verbena-button\n[text]=\"text\"\n[bgColor]=\"bgColor\"\n[textColor]=\"color\"\n[border]=\"border\"\n[borderRadius]=\"borderRadius\"\n[pd]=\"pd\"\n[width]=\"width\"\n[disable]=\"disabled\"\n[ngStyle]=\"{'cursor': disabled ? 'not-allowed' : 'pointer' }\"\nbuttonClass=\"font-medium text-[22px] leading-[33px] {{buttonClass}}\"\n(click)=\"handleClick()\"\n></verbena-button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VerbenaButtonModule } from 'verben-ng-ui';\nimport { ButtonComponent } from './button.component';\nimport { FormsModule } from '@angular/forms';\n@NgModule({\n declarations: [ButtonComponent],\n imports: [CommonModule,VerbenaButtonModule,FormsModule],\n exports: [ButtonComponent]\n})\nexport class ButtonModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|