@keycloakify/angular 0.0.10 → 0.1.0
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/account/DefaultPage/index.d.ts +1 -5
- package/account/KcContext/index.d.ts +1 -5
- package/account/classes/component-reference/index.d.ts +1 -5
- package/account/directives/kc-class/index.d.ts +1 -5
- package/account/i18n/index.d.ts +1 -5
- package/account/index.d.ts +1 -5
- package/account/pages/account/index.d.ts +1 -5
- package/account/pages/applications/index.d.ts +1 -5
- package/account/pages/federatedIdentity/index.d.ts +1 -5
- package/account/pages/log/index.d.ts +1 -5
- package/account/pages/password/index.d.ts +1 -5
- package/account/pages/sessions/index.d.ts +1 -5
- package/account/pages/totp/index.d.ts +1 -5
- package/account/providers/keycloakify-angular/index.d.ts +1 -5
- package/account/services/account-resource-injector/index.d.ts +1 -5
- package/account/services/i18n/index.d.ts +1 -5
- package/account/{containers/template → template}/template.component.d.ts +2 -9
- package/account/tokens/classes/index.d.ts +1 -5
- package/account/tokens/i18n/index.d.ts +1 -5
- package/account/tokens/kc-context/index.d.ts +1 -5
- package/bin/108.index.js +242 -0
- package/bin/338.index.js +105 -54
- package/bin/402.index.js +1250 -0
- package/bin/758.index.js +778 -53
- package/bin/{925.index.js → 84.index.js} +125 -625
- package/bin/main.js +63 -6
- package/esm2022/account/DefaultPage/index.mjs +2 -0
- package/esm2022/account/DefaultPage/keycloakify-angular-account-DefaultPage.mjs +2 -2
- package/esm2022/account/KcContext/index.mjs +2 -0
- package/esm2022/account/KcContext/keycloakify-angular-account-KcContext.mjs +2 -2
- package/esm2022/account/classes/component-reference/index.mjs +2 -0
- package/esm2022/account/classes/component-reference/keycloakify-angular-account-classes-component-reference.mjs +2 -2
- package/esm2022/account/directives/kc-class/index.mjs +2 -0
- package/esm2022/account/directives/kc-class/kc-class.directive.mjs +4 -4
- package/esm2022/account/directives/kc-class/keycloakify-angular-account-directives-kc-class.mjs +2 -2
- package/esm2022/account/i18n/index.mjs +2 -0
- package/esm2022/account/i18n/keycloakify-angular-account-i18n.mjs +2 -2
- package/esm2022/account/index.mjs +2 -0
- package/esm2022/account/keycloakify-angular-account.mjs +2 -2
- package/esm2022/account/pages/account/account.component.mjs +4 -4
- package/esm2022/account/pages/account/index.mjs +2 -0
- package/esm2022/account/pages/account/keycloakify-angular-account-pages-account.mjs +2 -2
- package/esm2022/account/pages/applications/applications.component.mjs +4 -4
- package/esm2022/account/pages/applications/index.mjs +2 -0
- package/esm2022/account/pages/applications/keycloakify-angular-account-pages-applications.mjs +2 -2
- package/esm2022/account/pages/federatedIdentity/federatedIdentity.component.mjs +4 -4
- package/esm2022/account/pages/federatedIdentity/index.mjs +2 -0
- package/esm2022/account/pages/federatedIdentity/keycloakify-angular-account-pages-federatedIdentity.mjs +2 -2
- package/esm2022/account/pages/log/index.mjs +2 -0
- package/esm2022/account/pages/log/keycloakify-angular-account-pages-log.mjs +2 -2
- package/esm2022/account/pages/log/log.component.mjs +4 -4
- package/esm2022/account/pages/password/index.mjs +2 -0
- package/esm2022/account/pages/password/keycloakify-angular-account-pages-password.mjs +2 -2
- package/esm2022/account/pages/password/password.component.mjs +4 -4
- package/esm2022/account/pages/sessions/index.mjs +2 -0
- package/esm2022/account/pages/sessions/keycloakify-angular-account-pages-sessions.mjs +2 -2
- package/esm2022/account/pages/sessions/sessions.component.mjs +4 -4
- package/esm2022/account/pages/totp/index.mjs +2 -0
- package/esm2022/account/pages/totp/keycloakify-angular-account-pages-totp.mjs +2 -2
- package/esm2022/account/pages/totp/totp.component.mjs +4 -4
- package/esm2022/account/providers/keycloakify-angular/index.mjs +2 -0
- package/esm2022/account/providers/keycloakify-angular/keycloakify-angular-account-providers-keycloakify-angular.mjs +2 -2
- package/esm2022/account/services/account-resource-injector/account-resource-injector.service.mjs +4 -4
- package/esm2022/account/services/account-resource-injector/index.mjs +2 -0
- package/esm2022/account/services/account-resource-injector/keycloakify-angular-account-services-account-resource-injector.mjs +2 -2
- package/esm2022/account/services/i18n/i18n.service.mjs +4 -4
- package/esm2022/account/services/i18n/index.mjs +2 -0
- package/esm2022/account/services/i18n/keycloakify-angular-account-services-i18n.mjs +2 -2
- package/esm2022/account/template/index.mjs +2 -0
- package/esm2022/account/template/keycloakify-angular-account-template.mjs +5 -0
- package/esm2022/account/template/template.component.mjs +83 -0
- package/esm2022/account/tokens/classes/index.mjs +2 -0
- package/esm2022/account/tokens/classes/keycloakify-angular-account-tokens-classes.mjs +2 -2
- package/esm2022/account/tokens/i18n/index.mjs +2 -0
- package/esm2022/account/tokens/i18n/keycloakify-angular-account-tokens-i18n.mjs +2 -2
- package/esm2022/account/tokens/kc-context/index.mjs +2 -0
- package/esm2022/account/tokens/kc-context/keycloakify-angular-account-tokens-kc-context.mjs +2 -2
- package/esm2022/index.mjs +2 -0
- package/esm2022/keycloakify-angular.mjs +2 -2
- package/esm2022/lib/directives/attributes/attributes.directive.mjs +4 -4
- package/esm2022/lib/directives/attributes/index.mjs +2 -0
- package/esm2022/lib/directives/attributes/keycloakify-angular-lib-directives-attributes.mjs +2 -2
- package/esm2022/lib/index.mjs +2 -0
- package/esm2022/lib/keycloakify-angular-lib.mjs +2 -2
- package/esm2022/lib/models/script/index.mjs +2 -0
- package/esm2022/lib/models/script/keycloakify-angular-lib-models-script.mjs +2 -2
- package/esm2022/lib/pipes/input-type/index.mjs +2 -0
- package/esm2022/lib/pipes/input-type/input-type.pipe.mjs +4 -4
- package/esm2022/lib/pipes/input-type/keycloakify-angular-lib-pipes-input-type.mjs +2 -2
- package/esm2022/lib/pipes/is-array-with-empty-object/index.mjs +2 -0
- package/esm2022/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.mjs +4 -4
- package/esm2022/lib/pipes/is-array-with-empty-object/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +2 -2
- package/esm2022/lib/pipes/kc-sanitize/index.mjs +2 -0
- package/esm2022/lib/pipes/kc-sanitize/kc-sanitize.pipe.mjs +4 -4
- package/esm2022/lib/pipes/kc-sanitize/keycloakify-angular-lib-pipes-kc-sanitize.mjs +2 -2
- package/esm2022/lib/pipes/to-array/index.mjs +2 -0
- package/esm2022/lib/pipes/to-array/keycloakify-angular-lib-pipes-to-array.mjs +2 -2
- package/esm2022/lib/pipes/to-array/to-array.pipe.mjs +4 -4
- package/esm2022/lib/pipes/to-number/index.mjs +2 -0
- package/esm2022/lib/pipes/to-number/keycloakify-angular-lib-pipes-to-number.mjs +2 -2
- package/esm2022/lib/pipes/to-number/to-number.pipe.mjs +4 -4
- package/esm2022/lib/services/resource-injector/index.mjs +2 -0
- package/esm2022/lib/services/resource-injector/keycloakify-angular-lib-services-resource-injector.mjs +2 -2
- package/esm2022/lib/services/resource-injector/resource-injector.service.mjs +4 -4
- package/esm2022/lib/tokens/use-default-css/index.mjs +2 -0
- package/esm2022/lib/tokens/use-default-css/keycloakify-angular-lib-tokens-use-default-css.mjs +2 -2
- package/esm2022/login/KcContext/index.mjs +2 -0
- package/esm2022/login/KcContext/keycloakify-angular-login-KcContext.mjs +2 -2
- package/esm2022/login/classes/component-reference/index.mjs +2 -0
- package/esm2022/login/classes/component-reference/keycloakify-angular-login-classes-component-reference.mjs +2 -2
- package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.mjs +4 -4
- package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/index.mjs +2 -0
- package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs +2 -2
- package/esm2022/login/components/field-errors/field-errors.component.mjs +4 -4
- package/esm2022/login/components/field-errors/index.mjs +2 -0
- package/esm2022/login/components/field-errors/keycloakify-angular-login-components-field-errors.mjs +2 -2
- package/esm2022/login/components/group-label/group-label.component.mjs +4 -4
- package/esm2022/login/components/group-label/index.mjs +2 -0
- package/esm2022/login/components/group-label/keycloakify-angular-login-components-group-label.mjs +2 -2
- package/esm2022/login/components/input-field-by-type/index.mjs +2 -0
- package/esm2022/login/components/input-field-by-type/input-field-by-type.component.mjs +4 -4
- package/esm2022/login/components/input-field-by-type/keycloakify-angular-login-components-input-field-by-type.mjs +2 -2
- package/esm2022/login/components/input-tag/index.mjs +2 -0
- package/esm2022/login/components/input-tag/input-tag.component.mjs +4 -4
- package/esm2022/login/components/input-tag/keycloakify-angular-login-components-input-tag.mjs +2 -2
- package/esm2022/login/components/input-tag-selects/index.mjs +2 -0
- package/esm2022/login/components/input-tag-selects/input-tag-selects.component.mjs +4 -4
- package/esm2022/login/components/input-tag-selects/keycloakify-angular-login-components-input-tag-selects.mjs +2 -2
- package/esm2022/login/components/logout-other-sessions/index.mjs +2 -0
- package/esm2022/login/components/logout-other-sessions/keycloakify-angular-login-components-logout-other-sessions.mjs +2 -2
- package/esm2022/login/components/logout-other-sessions/logout-other-sessions.component.mjs +4 -4
- package/esm2022/login/components/password-wrapper/index.mjs +2 -0
- package/esm2022/login/components/password-wrapper/keycloakify-angular-login-components-password-wrapper.mjs +2 -2
- package/esm2022/login/components/password-wrapper/password-wrapper.component.mjs +4 -4
- package/esm2022/login/components/select-tag/index.mjs +2 -0
- package/esm2022/login/components/select-tag/keycloakify-angular-login-components-select-tag.mjs +2 -2
- package/esm2022/login/components/select-tag/select-tag.component.mjs +4 -4
- package/esm2022/login/components/textarea-tag/index.mjs +2 -0
- package/esm2022/login/components/textarea-tag/keycloakify-angular-login-components-textarea-tag.mjs +2 -2
- package/esm2022/login/components/textarea-tag/textarea-tag.component.mjs +4 -4
- package/esm2022/login/components/user-profile-form-fields/index.mjs +2 -0
- package/esm2022/login/components/user-profile-form-fields/keycloakify-angular-login-components-user-profile-form-fields.mjs +2 -2
- package/esm2022/login/components/user-profile-form-fields/user-profile-form-fields.component.mjs +4 -4
- package/esm2022/login/directives/kc-class/index.mjs +2 -0
- package/esm2022/login/directives/kc-class/kc-class.directive.mjs +4 -4
- package/esm2022/login/directives/kc-class/keycloakify-angular-login-directives-kc-class.mjs +2 -2
- package/esm2022/login/i18n/index.mjs +2 -0
- package/esm2022/login/i18n/keycloakify-angular-login-i18n.mjs +2 -2
- package/esm2022/login/index.mjs +2 -0
- package/esm2022/login/keycloakify-angular-login.mjs +2 -2
- package/esm2022/login/pages/code/code.component.mjs +4 -4
- package/esm2022/login/pages/code/index.mjs +2 -0
- package/esm2022/login/pages/code/keycloakify-angular-login-pages-code.mjs +2 -2
- package/esm2022/login/pages/delete-account-confirm/delete-account-confirm.component.mjs +4 -4
- package/esm2022/login/pages/delete-account-confirm/index.mjs +2 -0
- package/esm2022/login/pages/delete-account-confirm/keycloakify-angular-login-pages-delete-account-confirm.mjs +2 -2
- package/esm2022/login/pages/delete-credential/delete-credential.component.mjs +4 -4
- package/esm2022/login/pages/delete-credential/index.mjs +2 -0
- package/esm2022/login/pages/delete-credential/keycloakify-angular-login-pages-delete-credential.mjs +2 -2
- package/esm2022/login/pages/error/error.component.mjs +4 -4
- package/esm2022/login/pages/error/index.mjs +2 -0
- package/esm2022/login/pages/error/keycloakify-angular-login-pages-error.mjs +2 -2
- package/esm2022/login/pages/frontchannel-logout/frontchannel-logout.component.mjs +4 -4
- package/esm2022/login/pages/frontchannel-logout/index.mjs +2 -0
- package/esm2022/login/pages/frontchannel-logout/keycloakify-angular-login-pages-frontchannel-logout.mjs +2 -2
- package/esm2022/login/pages/idp-review-user-profile/idp-review-user-profile.component.mjs +4 -4
- package/esm2022/login/pages/idp-review-user-profile/index.mjs +2 -0
- package/esm2022/login/pages/idp-review-user-profile/keycloakify-angular-login-pages-idp-review-user-profile.mjs +2 -2
- package/esm2022/login/pages/info/index.mjs +2 -0
- package/esm2022/login/pages/info/info.component.mjs +4 -4
- package/esm2022/login/pages/info/keycloakify-angular-login-pages-info.mjs +2 -2
- package/esm2022/login/pages/login/index.mjs +2 -0
- package/esm2022/login/pages/login/keycloakify-angular-login-pages-login.mjs +2 -2
- package/esm2022/login/pages/login/login.component.mjs +4 -4
- package/esm2022/login/pages/login-config-totp/index.mjs +2 -0
- package/esm2022/login/pages/login-config-totp/keycloakify-angular-login-pages-login-config-totp.mjs +2 -2
- package/esm2022/login/pages/login-config-totp/login-config-totp.component.mjs +4 -4
- package/esm2022/login/pages/login-idp-link-confirm/index.mjs +2 -0
- package/esm2022/login/pages/login-idp-link-confirm/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +2 -2
- package/esm2022/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.mjs +4 -4
- package/esm2022/login/pages/login-idp-link-confirm-override/index.mjs +2 -0
- package/esm2022/login/pages/login-idp-link-confirm-override/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +2 -2
- package/esm2022/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.mjs +4 -4
- package/esm2022/login/pages/login-idp-link-email/index.mjs +2 -0
- package/esm2022/login/pages/login-idp-link-email/keycloakify-angular-login-pages-login-idp-link-email.mjs +2 -2
- package/esm2022/login/pages/login-idp-link-email/login-idp-link-email.component.mjs +4 -4
- package/esm2022/login/pages/login-oauth-grant/index.mjs +2 -0
- package/esm2022/login/pages/login-oauth-grant/keycloakify-angular-login-pages-login-oauth-grant.mjs +2 -2
- package/esm2022/login/pages/login-oauth-grant/login-oauth-grant.component.mjs +4 -4
- package/esm2022/login/pages/login-oauth2-device-verify-user-code/index.mjs +2 -0
- package/esm2022/login/pages/login-oauth2-device-verify-user-code/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +2 -2
- package/esm2022/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.mjs +4 -4
- package/esm2022/login/pages/login-otp/index.mjs +2 -0
- package/esm2022/login/pages/login-otp/keycloakify-angular-login-pages-login-otp.mjs +2 -2
- package/esm2022/login/pages/login-otp/login-otp.component.mjs +4 -4
- package/esm2022/login/pages/login-page-expired/index.mjs +2 -0
- package/esm2022/login/pages/login-page-expired/keycloakify-angular-login-pages-login-page-expired.mjs +2 -2
- package/esm2022/login/pages/login-page-expired/login-page-expired.component.mjs +4 -4
- package/esm2022/login/pages/login-passkeys-conditional-authenticate/index.mjs +2 -0
- package/esm2022/login/pages/login-passkeys-conditional-authenticate/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +2 -2
- package/esm2022/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.mjs +4 -4
- package/esm2022/login/pages/login-password/index.mjs +2 -0
- package/esm2022/login/pages/login-password/keycloakify-angular-login-pages-login-password.mjs +2 -2
- package/esm2022/login/pages/login-password/login-password.component.mjs +4 -4
- package/esm2022/login/pages/login-recovery-authn-code-config/index.mjs +2 -0
- package/esm2022/login/pages/login-recovery-authn-code-config/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +2 -2
- package/esm2022/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.mjs +4 -4
- package/esm2022/login/pages/login-recovery-authn-code-input/index.mjs +2 -0
- package/esm2022/login/pages/login-recovery-authn-code-input/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +2 -2
- package/esm2022/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.mjs +4 -4
- package/esm2022/login/pages/login-reset-otp/index.mjs +2 -0
- package/esm2022/login/pages/login-reset-otp/keycloakify-angular-login-pages-login-reset-otp.mjs +2 -2
- package/esm2022/login/pages/login-reset-otp/login-reset-otp.component.mjs +4 -4
- package/esm2022/login/pages/login-reset-password/index.mjs +2 -0
- package/esm2022/login/pages/login-reset-password/keycloakify-angular-login-pages-login-reset-password.mjs +2 -2
- package/esm2022/login/pages/login-reset-password/login-reset-password.component.mjs +4 -4
- package/esm2022/login/pages/login-update-password/index.mjs +2 -0
- package/esm2022/login/pages/login-update-password/keycloakify-angular-login-pages-login-update-password.mjs +2 -2
- package/esm2022/login/pages/login-update-password/login-update-password.component.mjs +4 -4
- package/esm2022/login/pages/login-update-profile/index.mjs +2 -0
- package/esm2022/login/pages/login-update-profile/keycloakify-angular-login-pages-login-update-profile.mjs +2 -2
- package/esm2022/login/pages/login-update-profile/login-update-profile.component.mjs +4 -4
- package/esm2022/login/pages/login-username/index.mjs +2 -0
- package/esm2022/login/pages/login-username/keycloakify-angular-login-pages-login-username.mjs +2 -2
- package/esm2022/login/pages/login-username/login-username.component.mjs +4 -4
- package/esm2022/login/pages/login-verify-email/index.mjs +2 -0
- package/esm2022/login/pages/login-verify-email/keycloakify-angular-login-pages-login-verify-email.mjs +2 -2
- package/esm2022/login/pages/login-verify-email/login-verify-email.component.mjs +4 -4
- package/esm2022/login/pages/login-x509-info/index.mjs +2 -0
- package/esm2022/login/pages/login-x509-info/keycloakify-angular-login-pages-login-x509-info.mjs +2 -2
- package/esm2022/login/pages/login-x509-info/login-x509-info.component.mjs +4 -4
- package/esm2022/login/pages/logout-confirm/index.mjs +2 -0
- package/esm2022/login/pages/logout-confirm/keycloakify-angular-login-pages-logout-confirm.mjs +2 -2
- package/esm2022/login/pages/logout-confirm/logout-confirm.component.mjs +4 -4
- package/esm2022/login/pages/register/index.mjs +2 -0
- package/esm2022/login/pages/register/keycloakify-angular-login-pages-register.mjs +2 -2
- package/esm2022/login/pages/register/register.component.mjs +4 -4
- package/esm2022/login/pages/saml-post-form/index.mjs +2 -0
- package/esm2022/login/pages/saml-post-form/keycloakify-angular-login-pages-saml-post-form.mjs +2 -2
- package/esm2022/login/pages/saml-post-form/saml-post-form.component.mjs +4 -4
- package/esm2022/login/pages/select-authenticator/index.mjs +2 -0
- package/esm2022/login/pages/select-authenticator/keycloakify-angular-login-pages-select-authenticator.mjs +2 -2
- package/esm2022/login/pages/select-authenticator/select-authenticator.component.mjs +4 -4
- package/esm2022/login/pages/terms/index.mjs +2 -0
- package/esm2022/login/pages/terms/keycloakify-angular-login-pages-terms.mjs +2 -2
- package/esm2022/login/pages/terms/terms.component.mjs +4 -4
- package/esm2022/login/pages/update-email/index.mjs +2 -0
- package/esm2022/login/pages/update-email/keycloakify-angular-login-pages-update-email.mjs +2 -2
- package/esm2022/login/pages/update-email/update-email.component.mjs +4 -4
- package/esm2022/login/pages/webauthn-authenticate/index.mjs +2 -0
- package/esm2022/login/pages/webauthn-authenticate/keycloakify-angular-login-pages-webauthn-authenticate.mjs +2 -2
- package/esm2022/login/pages/webauthn-authenticate/webauthn-authenticate.component.mjs +4 -4
- package/esm2022/login/pages/webauthn-error/index.mjs +2 -0
- package/esm2022/login/pages/webauthn-error/keycloakify-angular-login-pages-webauthn-error.mjs +2 -2
- package/esm2022/login/pages/webauthn-error/webauthn-error.component.mjs +4 -4
- package/esm2022/login/pages/webauthn-register/index.mjs +2 -0
- package/esm2022/login/pages/webauthn-register/keycloakify-angular-login-pages-webauthn-register.mjs +2 -2
- package/esm2022/login/pages/webauthn-register/webauthn-register.component.mjs +4 -4
- package/esm2022/login/providers/keycloakify-angular/index.mjs +2 -0
- package/esm2022/login/providers/keycloakify-angular/keycloakify-angular-login-providers-keycloakify-angular.mjs +2 -2
- package/esm2022/login/services/i18n/i18n.service.mjs +4 -4
- package/esm2022/login/services/i18n/index.mjs +2 -0
- package/esm2022/login/services/i18n/keycloakify-angular-login-services-i18n.mjs +2 -2
- package/esm2022/login/services/login-resource-injector/index.mjs +2 -0
- package/esm2022/login/services/login-resource-injector/keycloakify-angular-login-services-login-resource-injector.mjs +2 -2
- package/esm2022/login/services/login-resource-injector/login-resource-injector.service.mjs +5 -5
- package/esm2022/login/services/user-profile-form/index.mjs +2 -0
- package/esm2022/login/services/user-profile-form/keycloakify-angular-login-services-user-profile-form.mjs +2 -2
- package/esm2022/login/services/user-profile-form/user-profile-form.service.mjs +4 -4
- package/esm2022/login/template/index.mjs +2 -0
- package/esm2022/login/template/keycloakify-angular-login-template.mjs +5 -0
- package/esm2022/login/template/template.component.mjs +123 -0
- package/esm2022/login/tokens/classes/index.mjs +2 -0
- package/esm2022/login/tokens/classes/keycloakify-angular-login-tokens-classes.mjs +2 -2
- package/esm2022/login/tokens/i18n/index.mjs +2 -0
- package/esm2022/login/tokens/i18n/keycloakify-angular-login-tokens-i18n.mjs +2 -2
- package/esm2022/login/tokens/kc-context/index.mjs +2 -0
- package/esm2022/login/tokens/kc-context/keycloakify-angular-login-tokens-kc-context.mjs +2 -2
- package/esm2022/login/tokens/make-user-confirm-password/index.mjs +2 -0
- package/esm2022/login/tokens/make-user-confirm-password/keycloakify-angular-login-tokens-make-user-confirm-password.mjs +2 -2
- package/fesm2022/keycloakify-angular-account-DefaultPage.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-KcContext.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-classes-component-reference.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-account.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-account.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-applications.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-applications.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-log.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-log.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-password.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-sessions.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-sessions.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-totp.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-pages-totp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-services-i18n.mjs +3 -3
- package/fesm2022/keycloakify-angular-account-services-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-template.mjs +90 -0
- package/fesm2022/keycloakify-angular-account-template.mjs.map +1 -0
- package/fesm2022/keycloakify-angular-account-tokens-classes.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-tokens-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-tokens-kc-context.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-models-script.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs +3 -3
- package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib-tokens-use-default-css.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-lib.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-KcContext.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-classes-component-reference.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-field-errors.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-field-errors.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-group-label.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-group-label.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-input-tag.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-input-tag.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-select-tag.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-select-tag.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-code.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-code.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-error.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-error.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-info.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-info.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-password.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-username.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-username.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-login.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-register.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-register.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-terms.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-terms.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-update-email.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-update-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-services-i18n.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-services-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs +4 -4
- package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs +3 -3
- package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-template.mjs +130 -0
- package/fesm2022/keycloakify-angular-login-template.mjs.map +1 -0
- package/fesm2022/keycloakify-angular-login-tokens-classes.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-tokens-i18n.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-tokens-kc-context.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-tokens-make-user-confirm-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login.mjs.map +1 -1
- package/fesm2022/keycloakify-angular.mjs.map +1 -1
- package/index.d.ts +1 -5
- package/lib/directives/attributes/index.d.ts +1 -5
- package/lib/index.d.ts +1 -5
- package/lib/models/script/index.d.ts +1 -5
- package/lib/pipes/input-type/index.d.ts +1 -5
- package/lib/pipes/is-array-with-empty-object/index.d.ts +1 -5
- package/lib/pipes/kc-sanitize/index.d.ts +1 -5
- package/lib/pipes/to-array/index.d.ts +1 -5
- package/lib/pipes/to-number/index.d.ts +1 -5
- package/lib/services/resource-injector/index.d.ts +1 -5
- package/lib/tokens/use-default-css/index.d.ts +1 -5
- package/login/KcContext/index.d.ts +1 -5
- package/login/classes/component-reference/index.d.ts +1 -5
- package/login/components/add-remove-buttons-multi-valued-attribute/index.d.ts +1 -5
- package/login/components/field-errors/index.d.ts +1 -5
- package/login/components/group-label/index.d.ts +1 -5
- package/login/components/input-field-by-type/index.d.ts +1 -5
- package/login/components/input-tag/index.d.ts +1 -5
- package/login/components/input-tag-selects/index.d.ts +1 -5
- package/login/components/logout-other-sessions/index.d.ts +1 -5
- package/login/components/password-wrapper/index.d.ts +1 -5
- package/login/components/select-tag/index.d.ts +1 -5
- package/login/components/textarea-tag/index.d.ts +1 -5
- package/login/components/user-profile-form-fields/index.d.ts +1 -5
- package/login/directives/kc-class/index.d.ts +1 -5
- package/login/i18n/index.d.ts +1 -5
- package/login/index.d.ts +1 -5
- package/login/pages/code/index.d.ts +1 -5
- package/login/pages/delete-account-confirm/index.d.ts +1 -5
- package/login/pages/delete-credential/index.d.ts +1 -5
- package/login/pages/error/index.d.ts +1 -5
- package/login/pages/frontchannel-logout/index.d.ts +1 -5
- package/login/pages/idp-review-user-profile/index.d.ts +1 -5
- package/login/pages/info/index.d.ts +1 -5
- package/login/pages/login/index.d.ts +1 -5
- package/login/pages/login-config-totp/index.d.ts +1 -5
- package/login/pages/login-idp-link-confirm/index.d.ts +1 -5
- package/login/pages/login-idp-link-confirm-override/index.d.ts +1 -5
- package/login/pages/login-idp-link-email/index.d.ts +1 -5
- package/login/pages/login-oauth-grant/index.d.ts +1 -5
- package/login/pages/login-oauth2-device-verify-user-code/index.d.ts +1 -5
- package/login/pages/login-otp/index.d.ts +1 -5
- package/login/pages/login-page-expired/index.d.ts +1 -5
- package/login/pages/login-passkeys-conditional-authenticate/index.d.ts +1 -5
- package/login/pages/login-password/index.d.ts +1 -5
- package/login/pages/login-recovery-authn-code-config/index.d.ts +1 -5
- package/login/pages/login-recovery-authn-code-input/index.d.ts +1 -5
- package/login/pages/login-reset-otp/index.d.ts +1 -5
- package/login/pages/login-reset-password/index.d.ts +1 -5
- package/login/pages/login-update-password/index.d.ts +1 -5
- package/login/pages/login-update-profile/index.d.ts +1 -5
- package/login/pages/login-username/index.d.ts +1 -5
- package/login/pages/login-verify-email/index.d.ts +1 -5
- package/login/pages/login-x509-info/index.d.ts +1 -5
- package/login/pages/logout-confirm/index.d.ts +1 -5
- package/login/pages/register/index.d.ts +1 -5
- package/login/pages/saml-post-form/index.d.ts +1 -5
- package/login/pages/select-authenticator/index.d.ts +1 -5
- package/login/pages/terms/index.d.ts +1 -5
- package/login/pages/update-email/index.d.ts +1 -5
- package/login/pages/webauthn-authenticate/index.d.ts +1 -5
- package/login/pages/webauthn-error/index.d.ts +1 -5
- package/login/pages/webauthn-register/index.d.ts +1 -5
- package/login/providers/keycloakify-angular/index.d.ts +1 -5
- package/login/services/i18n/index.d.ts +1 -5
- package/login/services/login-resource-injector/index.d.ts +1 -5
- package/login/services/user-profile-form/index.d.ts +1 -5
- package/login/{containers/template → template}/template.component.d.ts +2 -10
- package/login/tokens/classes/index.d.ts +1 -5
- package/login/tokens/i18n/index.d.ts +1 -5
- package/login/tokens/kc-context/index.d.ts +1 -5
- package/login/tokens/make-user-confirm-password/index.d.ts +1 -5
- package/package.json +21 -21
- package/src/account/{containers/template → template}/template.component.html +2 -7
- package/src/account/{containers/template → template}/template.component.ts +18 -23
- package/src/bin/add-story.ts +126 -0
- package/src/bin/eject-page.ts +50 -12
- package/src/bin/initialize-account-theme/boilerplate/KcPage.ts +1 -1
- package/src/bin/initialize-account-theme/index.ts +1 -0
- package/src/bin/main.ts +2 -4
- package/src/bin/tools/nodeModulesBinDirPath.ts +38 -0
- package/src/bin/tools/runPrettier.ts +89 -0
- package/src/bin/tools/transformCodebase_async.ts +89 -0
- package/src/bin/update-kc-gen.ts +21 -15
- package/src/login/services/login-resource-injector/login-resource-injector.service.ts +1 -1
- package/src/login/{containers/template → template}/template.component.html +2 -8
- package/src/login/{containers/template → template}/template.component.ts +23 -29
- package/stories/account/pages/account.stories.ts +133 -0
- package/stories/account/pages/applications.stories.ts +196 -0
- package/stories/account/pages/federated-identity.stories.ts +78 -0
- package/stories/account/pages/log.stories.ts +147 -0
- package/stories/account/pages/password.stories.ts +104 -0
- package/stories/account/pages/sessions.stories.ts +143 -0
- package/stories/account/pages/totp.stories.ts +100 -0
- package/stories/login/pages/code.stories.ts +51 -0
- package/stories/login/pages/delete-account-confirm.stories.ts +43 -0
- package/stories/login/pages/delete-credential.stories.ts +56 -0
- package/stories/login/pages/error.stories.ts +56 -0
- package/stories/login/pages/frontchannel-logout.stories.ts +26 -0
- package/stories/login/pages/idp-review-user-profile.stories.ts +60 -0
- package/stories/login/pages/info.stories.ts +94 -0
- package/stories/login/pages/login-config-totp.stories.ts +57 -0
- package/stories/login/pages/login-device-verify-user-code.stories.ts +14 -0
- package/stories/login/pages/login-idp-link-confirm-override.stories.ts +17 -0
- package/stories/login/pages/login-idp-link-confirm.stories.ts +103 -0
- package/stories/login/pages/login-idp-link-email.stories.ts +102 -0
- package/stories/login/pages/login-oauth-grant.stories.ts +68 -0
- package/stories/login/pages/login-oauth2-device-verify-user-code.stories.ts +15 -0
- package/stories/login/pages/login-otp.stories.ts +94 -0
- package/stories/login/pages/login-page-expired.stories.ts +31 -0
- package/stories/login/pages/login-passkeys-conditional-authenticate.stories.ts +16 -0
- package/stories/login/pages/login-password.stories.ts +52 -0
- package/stories/login/pages/login-recovery-authn-code-config.stories.ts +31 -0
- package/stories/login/pages/login-recovery-authn-code-input.stories.ts +16 -0
- package/stories/login/pages/login-reset-otp.stories.ts +71 -0
- package/stories/login/pages/login-reset-password.stories.ts +50 -0
- package/stories/login/pages/login-update-password.stories.ts +46 -0
- package/stories/login/pages/login-update-profile.stories.ts +31 -0
- package/stories/login/pages/login-username.stories.ts +28 -0
- package/stories/login/pages/login-verify-email.stories.ts +98 -0
- package/stories/login/pages/login-x509-info.stories.ts +40 -0
- package/stories/login/pages/login.stories.ts +260 -0
- package/stories/login/pages/logout-confirm.stories.ts +44 -0
- package/stories/login/pages/register.stories.ts +230 -0
- package/stories/login/pages/saml-post-form.stories.ts +17 -0
- package/stories/login/pages/select-authenticator.stories.ts +95 -0
- package/stories/login/pages/terms.stories.ts +79 -0
- package/stories/login/pages/update-email.stories.ts +31 -0
- package/stories/login/pages/webauthn-authenticate.stories.ts +126 -0
- package/stories/login/pages/webauthn-error.stories.ts +62 -0
- package/stories/login/pages/webauthn-register.stories.ts +46 -0
- package/account/DefaultPage/public-api.d.ts +0 -1
- package/account/KcContext/public-api.d.ts +0 -1
- package/account/classes/component-reference/public-api.d.ts +0 -1
- package/account/containers/template/index.d.ts +0 -5
- package/account/directives/kc-class/public-api.d.ts +0 -1
- package/account/i18n/public-api.d.ts +0 -1
- package/account/pages/account/public-api.d.ts +0 -1
- package/account/pages/applications/public-api.d.ts +0 -1
- package/account/pages/federatedIdentity/public-api.d.ts +0 -1
- package/account/pages/log/public-api.d.ts +0 -1
- package/account/pages/password/public-api.d.ts +0 -1
- package/account/pages/sessions/public-api.d.ts +0 -1
- package/account/pages/totp/public-api.d.ts +0 -1
- package/account/providers/keycloakify-angular/public-api.d.ts +0 -1
- package/account/public-api.d.ts +0 -1
- package/account/services/account-resource-injector/public-api.d.ts +0 -1
- package/account/services/i18n/public-api.d.ts +0 -1
- package/account/tokens/classes/public-api.d.ts +0 -1
- package/account/tokens/i18n/public-api.d.ts +0 -1
- package/account/tokens/kc-context/public-api.d.ts +0 -1
- package/esm2022/account/DefaultPage/public-api.mjs +0 -2
- package/esm2022/account/KcContext/public-api.mjs +0 -2
- package/esm2022/account/classes/component-reference/public-api.mjs +0 -2
- package/esm2022/account/containers/template/keycloakify-angular-account-containers-template.mjs +0 -5
- package/esm2022/account/containers/template/public-api.mjs +0 -2
- package/esm2022/account/containers/template/template.component.mjs +0 -97
- package/esm2022/account/directives/kc-class/public-api.mjs +0 -2
- package/esm2022/account/i18n/public-api.mjs +0 -2
- package/esm2022/account/pages/account/public-api.mjs +0 -2
- package/esm2022/account/pages/applications/public-api.mjs +0 -2
- package/esm2022/account/pages/federatedIdentity/public-api.mjs +0 -2
- package/esm2022/account/pages/log/public-api.mjs +0 -2
- package/esm2022/account/pages/password/public-api.mjs +0 -2
- package/esm2022/account/pages/sessions/public-api.mjs +0 -2
- package/esm2022/account/pages/totp/public-api.mjs +0 -2
- package/esm2022/account/providers/keycloakify-angular/public-api.mjs +0 -2
- package/esm2022/account/public-api.mjs +0 -2
- package/esm2022/account/services/account-resource-injector/public-api.mjs +0 -2
- package/esm2022/account/services/i18n/public-api.mjs +0 -2
- package/esm2022/account/tokens/classes/public-api.mjs +0 -2
- package/esm2022/account/tokens/i18n/public-api.mjs +0 -2
- package/esm2022/account/tokens/kc-context/public-api.mjs +0 -2
- package/esm2022/lib/directives/attributes/public-api.mjs +0 -2
- package/esm2022/lib/models/script/public-api.mjs +0 -2
- package/esm2022/lib/pipes/input-type/public-api.mjs +0 -2
- package/esm2022/lib/pipes/is-array-with-empty-object/public-api.mjs +0 -2
- package/esm2022/lib/pipes/kc-sanitize/public-api.mjs +0 -2
- package/esm2022/lib/pipes/to-array/public-api.mjs +0 -2
- package/esm2022/lib/pipes/to-number/public-api.mjs +0 -2
- package/esm2022/lib/public-api.mjs +0 -2
- package/esm2022/lib/services/resource-injector/public-api.mjs +0 -2
- package/esm2022/lib/tokens/use-default-css/public-api.mjs +0 -2
- package/esm2022/login/KcContext/public-api.mjs +0 -2
- package/esm2022/login/classes/component-reference/public-api.mjs +0 -2
- package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/public-api.mjs +0 -2
- package/esm2022/login/components/field-errors/public-api.mjs +0 -2
- package/esm2022/login/components/group-label/public-api.mjs +0 -2
- package/esm2022/login/components/input-field-by-type/public-api.mjs +0 -2
- package/esm2022/login/components/input-tag/public-api.mjs +0 -2
- package/esm2022/login/components/input-tag-selects/public-api.mjs +0 -2
- package/esm2022/login/components/logout-other-sessions/public-api.mjs +0 -2
- package/esm2022/login/components/password-wrapper/public-api.mjs +0 -2
- package/esm2022/login/components/select-tag/public-api.mjs +0 -2
- package/esm2022/login/components/textarea-tag/public-api.mjs +0 -2
- package/esm2022/login/components/user-profile-form-fields/public-api.mjs +0 -2
- package/esm2022/login/containers/template/keycloakify-angular-login-containers-template.mjs +0 -5
- package/esm2022/login/containers/template/public-api.mjs +0 -2
- package/esm2022/login/containers/template/template.component.mjs +0 -138
- package/esm2022/login/directives/kc-class/public-api.mjs +0 -2
- package/esm2022/login/i18n/public-api.mjs +0 -2
- package/esm2022/login/pages/code/public-api.mjs +0 -2
- package/esm2022/login/pages/delete-account-confirm/public-api.mjs +0 -2
- package/esm2022/login/pages/delete-credential/public-api.mjs +0 -2
- package/esm2022/login/pages/error/public-api.mjs +0 -2
- package/esm2022/login/pages/frontchannel-logout/public-api.mjs +0 -2
- package/esm2022/login/pages/idp-review-user-profile/public-api.mjs +0 -2
- package/esm2022/login/pages/info/public-api.mjs +0 -2
- package/esm2022/login/pages/login/public-api.mjs +0 -2
- package/esm2022/login/pages/login-config-totp/public-api.mjs +0 -2
- package/esm2022/login/pages/login-idp-link-confirm/public-api.mjs +0 -2
- package/esm2022/login/pages/login-idp-link-confirm-override/public-api.mjs +0 -2
- package/esm2022/login/pages/login-idp-link-email/public-api.mjs +0 -2
- package/esm2022/login/pages/login-oauth-grant/public-api.mjs +0 -2
- package/esm2022/login/pages/login-oauth2-device-verify-user-code/public-api.mjs +0 -2
- package/esm2022/login/pages/login-otp/public-api.mjs +0 -2
- package/esm2022/login/pages/login-page-expired/public-api.mjs +0 -2
- package/esm2022/login/pages/login-passkeys-conditional-authenticate/public-api.mjs +0 -2
- package/esm2022/login/pages/login-password/public-api.mjs +0 -2
- package/esm2022/login/pages/login-recovery-authn-code-config/public-api.mjs +0 -2
- package/esm2022/login/pages/login-recovery-authn-code-input/public-api.mjs +0 -2
- package/esm2022/login/pages/login-reset-otp/public-api.mjs +0 -2
- package/esm2022/login/pages/login-reset-password/public-api.mjs +0 -2
- package/esm2022/login/pages/login-update-password/public-api.mjs +0 -2
- package/esm2022/login/pages/login-update-profile/public-api.mjs +0 -2
- package/esm2022/login/pages/login-username/public-api.mjs +0 -2
- package/esm2022/login/pages/login-verify-email/public-api.mjs +0 -2
- package/esm2022/login/pages/login-x509-info/public-api.mjs +0 -2
- package/esm2022/login/pages/logout-confirm/public-api.mjs +0 -2
- package/esm2022/login/pages/register/public-api.mjs +0 -2
- package/esm2022/login/pages/saml-post-form/public-api.mjs +0 -2
- package/esm2022/login/pages/select-authenticator/public-api.mjs +0 -2
- package/esm2022/login/pages/terms/public-api.mjs +0 -2
- package/esm2022/login/pages/update-email/public-api.mjs +0 -2
- package/esm2022/login/pages/webauthn-authenticate/public-api.mjs +0 -2
- package/esm2022/login/pages/webauthn-error/public-api.mjs +0 -2
- package/esm2022/login/pages/webauthn-register/public-api.mjs +0 -2
- package/esm2022/login/providers/keycloakify-angular/public-api.mjs +0 -2
- package/esm2022/login/public-api.mjs +0 -2
- package/esm2022/login/services/i18n/public-api.mjs +0 -2
- package/esm2022/login/services/login-resource-injector/public-api.mjs +0 -2
- package/esm2022/login/services/user-profile-form/public-api.mjs +0 -2
- package/esm2022/login/tokens/classes/public-api.mjs +0 -2
- package/esm2022/login/tokens/i18n/public-api.mjs +0 -2
- package/esm2022/login/tokens/kc-context/public-api.mjs +0 -2
- package/esm2022/login/tokens/make-user-confirm-password/public-api.mjs +0 -2
- package/esm2022/public-api.mjs +0 -2
- package/fesm2022/keycloakify-angular-account-containers-template.mjs +0 -104
- package/fesm2022/keycloakify-angular-account-containers-template.mjs.map +0 -1
- package/fesm2022/keycloakify-angular-login-containers-template.mjs +0 -145
- package/fesm2022/keycloakify-angular-login-containers-template.mjs.map +0 -1
- package/lib/directives/attributes/public-api.d.ts +0 -1
- package/lib/models/script/public-api.d.ts +0 -1
- package/lib/pipes/input-type/public-api.d.ts +0 -1
- package/lib/pipes/is-array-with-empty-object/public-api.d.ts +0 -1
- package/lib/pipes/kc-sanitize/public-api.d.ts +0 -1
- package/lib/pipes/to-array/public-api.d.ts +0 -1
- package/lib/pipes/to-number/public-api.d.ts +0 -1
- package/lib/public-api.d.ts +0 -1
- package/lib/services/resource-injector/public-api.d.ts +0 -1
- package/lib/tokens/use-default-css/public-api.d.ts +0 -1
- package/login/KcContext/public-api.d.ts +0 -1
- package/login/classes/component-reference/public-api.d.ts +0 -1
- package/login/components/add-remove-buttons-multi-valued-attribute/public-api.d.ts +0 -1
- package/login/components/field-errors/public-api.d.ts +0 -1
- package/login/components/group-label/public-api.d.ts +0 -1
- package/login/components/input-field-by-type/public-api.d.ts +0 -1
- package/login/components/input-tag/public-api.d.ts +0 -1
- package/login/components/input-tag-selects/public-api.d.ts +0 -1
- package/login/components/logout-other-sessions/public-api.d.ts +0 -1
- package/login/components/password-wrapper/public-api.d.ts +0 -1
- package/login/components/select-tag/public-api.d.ts +0 -1
- package/login/components/textarea-tag/public-api.d.ts +0 -1
- package/login/components/user-profile-form-fields/public-api.d.ts +0 -1
- package/login/containers/template/index.d.ts +0 -5
- package/login/directives/kc-class/public-api.d.ts +0 -1
- package/login/i18n/public-api.d.ts +0 -1
- package/login/pages/code/public-api.d.ts +0 -1
- package/login/pages/delete-account-confirm/public-api.d.ts +0 -1
- package/login/pages/delete-credential/public-api.d.ts +0 -1
- package/login/pages/error/public-api.d.ts +0 -1
- package/login/pages/frontchannel-logout/public-api.d.ts +0 -1
- package/login/pages/idp-review-user-profile/public-api.d.ts +0 -1
- package/login/pages/info/public-api.d.ts +0 -1
- package/login/pages/login/public-api.d.ts +0 -1
- package/login/pages/login-config-totp/public-api.d.ts +0 -1
- package/login/pages/login-idp-link-confirm/public-api.d.ts +0 -1
- package/login/pages/login-idp-link-confirm-override/public-api.d.ts +0 -1
- package/login/pages/login-idp-link-email/public-api.d.ts +0 -1
- package/login/pages/login-oauth-grant/public-api.d.ts +0 -1
- package/login/pages/login-oauth2-device-verify-user-code/public-api.d.ts +0 -1
- package/login/pages/login-otp/public-api.d.ts +0 -1
- package/login/pages/login-page-expired/public-api.d.ts +0 -1
- package/login/pages/login-passkeys-conditional-authenticate/public-api.d.ts +0 -1
- package/login/pages/login-password/public-api.d.ts +0 -1
- package/login/pages/login-recovery-authn-code-config/public-api.d.ts +0 -1
- package/login/pages/login-recovery-authn-code-input/public-api.d.ts +0 -1
- package/login/pages/login-reset-otp/public-api.d.ts +0 -1
- package/login/pages/login-reset-password/public-api.d.ts +0 -1
- package/login/pages/login-update-password/public-api.d.ts +0 -1
- package/login/pages/login-update-profile/public-api.d.ts +0 -1
- package/login/pages/login-username/public-api.d.ts +0 -1
- package/login/pages/login-verify-email/public-api.d.ts +0 -1
- package/login/pages/login-x509-info/public-api.d.ts +0 -1
- package/login/pages/logout-confirm/public-api.d.ts +0 -1
- package/login/pages/register/public-api.d.ts +0 -1
- package/login/pages/saml-post-form/public-api.d.ts +0 -1
- package/login/pages/select-authenticator/public-api.d.ts +0 -1
- package/login/pages/terms/public-api.d.ts +0 -1
- package/login/pages/update-email/public-api.d.ts +0 -1
- package/login/pages/webauthn-authenticate/public-api.d.ts +0 -1
- package/login/pages/webauthn-error/public-api.d.ts +0 -1
- package/login/pages/webauthn-register/public-api.d.ts +0 -1
- package/login/providers/keycloakify-angular/public-api.d.ts +0 -1
- package/login/public-api.d.ts +0 -1
- package/login/services/i18n/public-api.d.ts +0 -1
- package/login/services/login-resource-injector/public-api.d.ts +0 -1
- package/login/services/user-profile-form/public-api.d.ts +0 -1
- package/login/tokens/classes/public-api.d.ts +0 -1
- package/login/tokens/i18n/public-api.d.ts +0 -1
- package/login/tokens/kc-context/public-api.d.ts +0 -1
- package/login/tokens/make-user-confirm-password/public-api.d.ts +0 -1
- package/public-api.d.ts +0 -1
- package/src/bin/tools/runFormat.ts +0 -71
- package/src/stories/login/pages/login/login.stories.ts +0 -146
- /package/{src/login/containers/template/index.ts → account/template/index.d.ts} +0 -0
- /package/{src/account/containers/template/index.ts → login/template/index.d.ts} +0 -0
- /package/{login/containers/template/public-api.d.ts → src/account/template/index.ts} +0 -0
- /package/{account/containers/template/public-api.d.ts → src/login/template/index.ts} +0 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { sep as pathSep } from 'path';
|
|
2
|
+
|
|
3
|
+
let cache: string | undefined = undefined;
|
|
4
|
+
|
|
5
|
+
export function getNodeModulesBinDirPath() {
|
|
6
|
+
if (cache !== undefined) {
|
|
7
|
+
return cache;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
const binPath = process.argv[1];
|
|
11
|
+
|
|
12
|
+
const segments: string[] = ['.bin'];
|
|
13
|
+
|
|
14
|
+
let foundNodeModules = false;
|
|
15
|
+
|
|
16
|
+
for (const segment of binPath.split(pathSep).reverse()) {
|
|
17
|
+
skip_segment: {
|
|
18
|
+
if (foundNodeModules) {
|
|
19
|
+
break skip_segment;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
if (segment === 'node_modules') {
|
|
23
|
+
foundNodeModules = true;
|
|
24
|
+
break skip_segment;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
segments.unshift(segment);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const nodeModulesBinDirPath = segments.join(pathSep);
|
|
34
|
+
|
|
35
|
+
cache = nodeModulesBinDirPath;
|
|
36
|
+
|
|
37
|
+
return nodeModulesBinDirPath;
|
|
38
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { getNodeModulesBinDirPath } from './nodeModulesBinDirPath';
|
|
2
|
+
import { join as pathJoin } from 'path';
|
|
3
|
+
import * as fsPr from 'fs/promises';
|
|
4
|
+
import { id } from 'tsafe/id';
|
|
5
|
+
import { assert } from 'tsafe/assert';
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
|
|
8
|
+
getIsPrettierAvailable.cache = id<boolean | undefined>(undefined);
|
|
9
|
+
|
|
10
|
+
export async function getIsPrettierAvailable(): Promise<boolean> {
|
|
11
|
+
if (getIsPrettierAvailable.cache !== undefined) {
|
|
12
|
+
return getIsPrettierAvailable.cache;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
const nodeModulesBinDirPath = getNodeModulesBinDirPath();
|
|
16
|
+
|
|
17
|
+
const prettierBinPath = pathJoin(nodeModulesBinDirPath, 'prettier');
|
|
18
|
+
|
|
19
|
+
const stats = await fsPr.stat(prettierBinPath).catch(() => undefined);
|
|
20
|
+
|
|
21
|
+
const isPrettierAvailable = stats?.isFile() ?? false;
|
|
22
|
+
|
|
23
|
+
getIsPrettierAvailable.cache = isPrettierAvailable;
|
|
24
|
+
|
|
25
|
+
return isPrettierAvailable;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type PrettierAndConfig = {
|
|
29
|
+
prettier: typeof import('prettier');
|
|
30
|
+
config: import('prettier').Options | null;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
getPrettierAndConfig.cache = id<PrettierAndConfig | undefined>(undefined);
|
|
34
|
+
|
|
35
|
+
export async function getPrettierAndConfig(): Promise<PrettierAndConfig> {
|
|
36
|
+
assert(getIsPrettierAvailable());
|
|
37
|
+
|
|
38
|
+
if (getPrettierAndConfig.cache !== undefined) {
|
|
39
|
+
return getPrettierAndConfig.cache;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const prettier = await import('prettier');
|
|
43
|
+
|
|
44
|
+
const prettierAndConfig: PrettierAndConfig = {
|
|
45
|
+
prettier,
|
|
46
|
+
config: await prettier.resolveConfig(pathJoin(getNodeModulesBinDirPath(), '..'))
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
getPrettierAndConfig.cache = prettierAndConfig;
|
|
50
|
+
|
|
51
|
+
return prettierAndConfig;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export async function runPrettier(params: {
|
|
55
|
+
sourceCode: string;
|
|
56
|
+
filePath: string;
|
|
57
|
+
}): Promise<string> {
|
|
58
|
+
const { sourceCode, filePath } = params;
|
|
59
|
+
|
|
60
|
+
let formattedSourceCode: string;
|
|
61
|
+
|
|
62
|
+
try {
|
|
63
|
+
const { prettier, config } = await getPrettierAndConfig();
|
|
64
|
+
|
|
65
|
+
const { ignored, inferredParser } = await prettier.getFileInfo(filePath, {
|
|
66
|
+
resolveConfig: true
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
if (ignored) {
|
|
70
|
+
return sourceCode;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
formattedSourceCode = await prettier.format(sourceCode, {
|
|
74
|
+
...config,
|
|
75
|
+
filePath,
|
|
76
|
+
parser: inferredParser ?? undefined
|
|
77
|
+
});
|
|
78
|
+
} catch (error) {
|
|
79
|
+
console.log(
|
|
80
|
+
chalk.red(
|
|
81
|
+
`You probably need to upgrade the version of prettier in your project`
|
|
82
|
+
)
|
|
83
|
+
);
|
|
84
|
+
|
|
85
|
+
throw error;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return formattedSourceCode;
|
|
89
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { crawl } from './crawl';
|
|
4
|
+
import { rmSync } from '../tools/fs.rmSync';
|
|
5
|
+
|
|
6
|
+
type TransformSourceCode = (params: {
|
|
7
|
+
sourceCode: Buffer;
|
|
8
|
+
filePath: string;
|
|
9
|
+
fileRelativePath: string;
|
|
10
|
+
}) => Promise<
|
|
11
|
+
| {
|
|
12
|
+
modifiedSourceCode: Buffer;
|
|
13
|
+
newFileName?: string;
|
|
14
|
+
}
|
|
15
|
+
| undefined
|
|
16
|
+
>;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Apply a transformation function to every file of directory
|
|
20
|
+
* If source and destination are the same this function can be used to apply the transformation in place
|
|
21
|
+
* like filtering out some files or modifying them.
|
|
22
|
+
* */
|
|
23
|
+
export async function transformCodebase(params: {
|
|
24
|
+
srcDirPath: string;
|
|
25
|
+
destDirPath: string;
|
|
26
|
+
transformSourceCode?: TransformSourceCode;
|
|
27
|
+
}) {
|
|
28
|
+
const { srcDirPath, transformSourceCode } = params;
|
|
29
|
+
|
|
30
|
+
const isTargetSameAsSource = path.relative(srcDirPath, params.destDirPath) === '';
|
|
31
|
+
|
|
32
|
+
const destDirPath = isTargetSameAsSource
|
|
33
|
+
? path.join(srcDirPath, '..', 'tmp_xOsPdkPsTdzPs34sOkHs')
|
|
34
|
+
: params.destDirPath;
|
|
35
|
+
|
|
36
|
+
fs.mkdirSync(destDirPath, {
|
|
37
|
+
recursive: true
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
for (const fileRelativePath of crawl({
|
|
41
|
+
dirPath: srcDirPath,
|
|
42
|
+
returnedPathsType: 'relative to dirPath'
|
|
43
|
+
})) {
|
|
44
|
+
const filePath = path.join(srcDirPath, fileRelativePath);
|
|
45
|
+
const destFilePath = path.join(destDirPath, fileRelativePath);
|
|
46
|
+
|
|
47
|
+
// NOTE: Optimization, if we don't need to transform the file, just copy
|
|
48
|
+
// it using the lower level implementation.
|
|
49
|
+
if (transformSourceCode === undefined) {
|
|
50
|
+
fs.mkdirSync(path.dirname(destFilePath), {
|
|
51
|
+
recursive: true
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
fs.copyFileSync(filePath, destFilePath);
|
|
55
|
+
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
const transformSourceCodeResult = await transformSourceCode({
|
|
60
|
+
sourceCode: fs.readFileSync(filePath),
|
|
61
|
+
filePath,
|
|
62
|
+
fileRelativePath
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
if (transformSourceCodeResult === undefined) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
fs.mkdirSync(path.dirname(destFilePath), {
|
|
70
|
+
recursive: true
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
const { newFileName, modifiedSourceCode } = transformSourceCodeResult;
|
|
74
|
+
|
|
75
|
+
fs.writeFileSync(
|
|
76
|
+
path.join(
|
|
77
|
+
path.dirname(destFilePath),
|
|
78
|
+
newFileName ?? path.basename(destFilePath)
|
|
79
|
+
),
|
|
80
|
+
modifiedSourceCode
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
if (isTargetSameAsSource) {
|
|
85
|
+
rmSync(srcDirPath, { recursive: true });
|
|
86
|
+
|
|
87
|
+
fs.renameSync(destDirPath, srcDirPath);
|
|
88
|
+
}
|
|
89
|
+
}
|
package/src/bin/update-kc-gen.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { BuildContext } from './core';
|
|
2
2
|
import * as fs from 'fs';
|
|
3
3
|
import { join as pathJoin } from 'path';
|
|
4
|
-
import {
|
|
4
|
+
import { getIsPrettierAvailable, runPrettier } from './tools/runPrettier';
|
|
5
5
|
import * as crypto from 'crypto';
|
|
6
6
|
|
|
7
|
-
export function command(params: { buildContext: BuildContext }) {
|
|
7
|
+
export async function command(params: { buildContext: BuildContext }) {
|
|
8
8
|
const { buildContext } = params;
|
|
9
9
|
|
|
10
10
|
const filePath = pathJoin(buildContext.themeSrcDirPath, 'kc.gen.ts');
|
|
@@ -109,6 +109,7 @@ export function command(params: { buildContext: BuildContext }) {
|
|
|
109
109
|
` });`,
|
|
110
110
|
``,
|
|
111
111
|
` appRef.components.forEach(componentRef => {`,
|
|
112
|
+
` // page must be defined first `,
|
|
112
113
|
` if ("page" in componentRef.instance) {`,
|
|
113
114
|
` componentRef.setInput("page", PageComponent);`,
|
|
114
115
|
` }`,
|
|
@@ -148,18 +149,23 @@ export function command(params: { buildContext: BuildContext }) {
|
|
|
148
149
|
return;
|
|
149
150
|
}
|
|
150
151
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
152
|
+
let sourceCode = [
|
|
153
|
+
`// This file is auto-generated by keycloakify. Do not edit it manually.`,
|
|
154
|
+
`// Hash: ${hash}`,
|
|
155
|
+
``,
|
|
156
|
+
newContent
|
|
157
|
+
].join('\n');
|
|
158
|
+
|
|
159
|
+
run_prettier: {
|
|
160
|
+
if (!(await getIsPrettierAvailable())) {
|
|
161
|
+
break run_prettier;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
sourceCode = await runPrettier({
|
|
165
|
+
filePath,
|
|
166
|
+
sourceCode
|
|
167
|
+
});
|
|
168
|
+
}
|
|
163
169
|
|
|
164
|
-
|
|
170
|
+
fs.writeFileSync(filePath, Buffer.from(sourceCode, 'utf8'));
|
|
165
171
|
}
|
|
@@ -53,7 +53,7 @@ export class LoginResourceInjectorService {
|
|
|
53
53
|
id: `${this.kcContext.url.resourcesPath}/js/menu-button-links.js`,
|
|
54
54
|
src: `${this.kcContext.url.resourcesPath}/js/menu-button-links.js`
|
|
55
55
|
},
|
|
56
|
-
...this.kcContext.scripts.map(script => ({
|
|
56
|
+
...(this.kcContext.scripts ?? []).map(script => ({
|
|
57
57
|
type: 'text/javascript',
|
|
58
58
|
src: script,
|
|
59
59
|
id: script
|
|
@@ -159,14 +159,8 @@
|
|
|
159
159
|
</div>
|
|
160
160
|
}
|
|
161
161
|
<!-- Content -->
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
<kc-dynamic-page-injector
|
|
165
|
-
[page]="pageRef"
|
|
166
|
-
[userProfileFormFields]="userProfileFormFields()"
|
|
167
|
-
(componentCreated)="onComponentCreated($event)"
|
|
168
|
-
/>
|
|
169
|
-
}
|
|
162
|
+
<ng-template #pageRef></ng-template>
|
|
163
|
+
|
|
170
164
|
@if (!!auth && auth?.showTryAnotherWayLink) {
|
|
171
165
|
<form
|
|
172
166
|
id="kc-select-try-another-way-form"
|
|
@@ -5,14 +5,15 @@ import {
|
|
|
5
5
|
Component,
|
|
6
6
|
computed,
|
|
7
7
|
effect,
|
|
8
|
+
EffectRef,
|
|
8
9
|
forwardRef,
|
|
9
10
|
inject,
|
|
10
11
|
input,
|
|
11
|
-
output,
|
|
12
12
|
Renderer2,
|
|
13
13
|
type Signal,
|
|
14
14
|
type TemplateRef,
|
|
15
15
|
type Type,
|
|
16
|
+
viewChild,
|
|
16
17
|
ViewContainerRef
|
|
17
18
|
} from '@angular/core';
|
|
18
19
|
import { Meta, Title } from '@angular/platform-browser';
|
|
@@ -29,38 +30,11 @@ import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
|
|
|
29
30
|
import { type ClassKey, getKcClsx } from 'keycloakify/login/lib/kcClsx';
|
|
30
31
|
import type { Observable } from 'rxjs';
|
|
31
32
|
|
|
32
|
-
@Component({
|
|
33
|
-
selector: 'kc-dynamic-page-injector',
|
|
34
|
-
standalone: true,
|
|
35
|
-
template: ``
|
|
36
|
-
})
|
|
37
|
-
export class DynamicPageInjectorComponent {
|
|
38
|
-
page = input<Type<unknown>>();
|
|
39
|
-
userProfileFormFields = input<Type<unknown>>();
|
|
40
|
-
componentCreated = output<object>();
|
|
41
|
-
#vcr = inject<ViewContainerRef>(ViewContainerRef);
|
|
42
|
-
constructor() {
|
|
43
|
-
effect(
|
|
44
|
-
() => {
|
|
45
|
-
const page = this.page();
|
|
46
|
-
const userProfileFormFields = this.userProfileFormFields();
|
|
47
|
-
if (!page) return;
|
|
48
|
-
const compRef = this.#vcr.createComponent(page);
|
|
49
|
-
if ('userProfileFormFields' in (compRef.instance as object) && userProfileFormFields) {
|
|
50
|
-
compRef.setInput('userProfileFormFields', userProfileFormFields);
|
|
51
|
-
}
|
|
52
|
-
this.componentCreated.emit(compRef.instance as object);
|
|
53
|
-
},
|
|
54
|
-
{ allowSignalWrites: true }
|
|
55
|
-
);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
33
|
@Component({
|
|
60
34
|
selector: 'kc-root',
|
|
61
35
|
templateUrl: 'template.component.html',
|
|
62
36
|
standalone: true,
|
|
63
|
-
imports: [AsyncPipe, KcSanitizePipe, NgTemplateOutlet, KcClassDirective
|
|
37
|
+
imports: [AsyncPipe, KcSanitizePipe, NgTemplateOutlet, KcClassDirective],
|
|
64
38
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
65
39
|
providers: [
|
|
66
40
|
{
|
|
@@ -73,6 +47,7 @@ export class TemplateComponent extends ComponentReference {
|
|
|
73
47
|
i18n = inject<I18n>(LOGIN_I18N);
|
|
74
48
|
renderer = inject(Renderer2);
|
|
75
49
|
#cdr = inject(ChangeDetectorRef);
|
|
50
|
+
#effectRef: EffectRef;
|
|
76
51
|
meta = inject(Meta);
|
|
77
52
|
title = inject(Title);
|
|
78
53
|
kcContext = inject<KcContext>(KC_LOGIN_CONTEXT);
|
|
@@ -89,6 +64,8 @@ export class TemplateComponent extends ComponentReference {
|
|
|
89
64
|
isReadyToRender$: Observable<boolean>;
|
|
90
65
|
|
|
91
66
|
page = input<Type<unknown>>();
|
|
67
|
+
pageRef = viewChild('pageRef', { read: ViewContainerRef });
|
|
68
|
+
|
|
92
69
|
userProfileFormFields = input<Type<unknown>>();
|
|
93
70
|
headerNode: Signal<TemplateRef<HTMLElement>> | undefined;
|
|
94
71
|
infoNode: Signal<TemplateRef<HTMLElement>> | undefined;
|
|
@@ -98,6 +75,22 @@ export class TemplateComponent extends ComponentReference {
|
|
|
98
75
|
super();
|
|
99
76
|
|
|
100
77
|
this.isReadyToRender$ = this.loginResourceInjectorService.injectResource(this.doUseDefaultCss);
|
|
78
|
+
this.#effectRef = effect(
|
|
79
|
+
() => {
|
|
80
|
+
const page = this.page();
|
|
81
|
+
const pageRef = this.pageRef();
|
|
82
|
+
if (!page || !pageRef) return;
|
|
83
|
+
|
|
84
|
+
const userProfileFormFields = this.userProfileFormFields();
|
|
85
|
+
|
|
86
|
+
const compRef = pageRef.createComponent(page);
|
|
87
|
+
if ('userProfileFormFields' in (compRef.instance as object) && userProfileFormFields) {
|
|
88
|
+
compRef.setInput('userProfileFormFields', userProfileFormFields);
|
|
89
|
+
}
|
|
90
|
+
this.onComponentCreated(compRef.instance as object);
|
|
91
|
+
},
|
|
92
|
+
{ manualCleanup: true }
|
|
93
|
+
);
|
|
101
94
|
}
|
|
102
95
|
|
|
103
96
|
private applyKcIndexClasses() {
|
|
@@ -158,5 +151,6 @@ export class TemplateComponent extends ComponentReference {
|
|
|
158
151
|
this.title.setTitle(this.documentTitle ?? this.i18n.msgStr('loginTitle', this.kcContext.realm.displayName));
|
|
159
152
|
this.applyKcIndexClasses();
|
|
160
153
|
this.#cdr.markForCheck();
|
|
154
|
+
this.#effectRef.destroy();
|
|
161
155
|
}
|
|
162
156
|
}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/angular';
|
|
2
|
+
import { decorators, KcPageStory } from '../KcPageStory';
|
|
3
|
+
|
|
4
|
+
const meta: Meta<KcPageStory> = {
|
|
5
|
+
title: 'account/account.ftl',
|
|
6
|
+
component: KcPageStory,
|
|
7
|
+
decorators: decorators,
|
|
8
|
+
globals: {
|
|
9
|
+
pageId: 'account.ftl'
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export default meta;
|
|
14
|
+
|
|
15
|
+
type Story = StoryObj<KcPageStory>;
|
|
16
|
+
|
|
17
|
+
export const Default: Story = {};
|
|
18
|
+
|
|
19
|
+
export const UsernameNotEditable: Story = {
|
|
20
|
+
globals: {
|
|
21
|
+
overrides: {
|
|
22
|
+
account: {
|
|
23
|
+
username: 'john_doe',
|
|
24
|
+
email: 'john.doe@gmail.com',
|
|
25
|
+
firstName: 'John',
|
|
26
|
+
lastName: 'Doe'
|
|
27
|
+
},
|
|
28
|
+
realm: {
|
|
29
|
+
registrationEmailAsUsername: false,
|
|
30
|
+
editUsernameAllowed: false
|
|
31
|
+
},
|
|
32
|
+
referrer: {
|
|
33
|
+
url: '/home'
|
|
34
|
+
},
|
|
35
|
+
url: {
|
|
36
|
+
accountUrl: '/account'
|
|
37
|
+
},
|
|
38
|
+
messagesPerField: {
|
|
39
|
+
printIfExists: () => ''
|
|
40
|
+
},
|
|
41
|
+
stateChecker: 'state-checker'
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
export const WithValidationErrors: Story = {
|
|
47
|
+
globals: {
|
|
48
|
+
overrides: {
|
|
49
|
+
account: {
|
|
50
|
+
username: 'john_doe',
|
|
51
|
+
email: '',
|
|
52
|
+
firstName: '',
|
|
53
|
+
lastName: 'Doe'
|
|
54
|
+
},
|
|
55
|
+
realm: {
|
|
56
|
+
registrationEmailAsUsername: false,
|
|
57
|
+
editUsernameAllowed: true
|
|
58
|
+
},
|
|
59
|
+
referrer: {
|
|
60
|
+
url: '/home'
|
|
61
|
+
},
|
|
62
|
+
url: {
|
|
63
|
+
accountUrl: '/account'
|
|
64
|
+
},
|
|
65
|
+
messagesPerField: {
|
|
66
|
+
printIfExists: (field: string) =>
|
|
67
|
+
field === 'email' || field === 'firstName' ? 'has-error' : ''
|
|
68
|
+
},
|
|
69
|
+
stateChecker: 'state-checker'
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export const EmailAsUsername: Story = {
|
|
75
|
+
globals: {
|
|
76
|
+
overrides: {
|
|
77
|
+
account: {
|
|
78
|
+
email: 'john.doe@gmail.com',
|
|
79
|
+
firstName: 'John',
|
|
80
|
+
lastName: 'Doe'
|
|
81
|
+
},
|
|
82
|
+
realm: {
|
|
83
|
+
registrationEmailAsUsername: true
|
|
84
|
+
},
|
|
85
|
+
referrer: {
|
|
86
|
+
url: '/home'
|
|
87
|
+
},
|
|
88
|
+
url: {
|
|
89
|
+
accountUrl: '/account'
|
|
90
|
+
},
|
|
91
|
+
messagesPerField: {
|
|
92
|
+
printIfExists: () => ''
|
|
93
|
+
},
|
|
94
|
+
stateChecker: 'state-checker'
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export const WithErrorCode: Story = {
|
|
100
|
+
globals: {
|
|
101
|
+
overrides: {
|
|
102
|
+
code: {
|
|
103
|
+
success: false,
|
|
104
|
+
error: 'Failed to generate code'
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
export const WithFrenchLanguage: Story = {
|
|
111
|
+
globals: {
|
|
112
|
+
overrides: {
|
|
113
|
+
locale: {
|
|
114
|
+
currentLanguageTag: 'fr'
|
|
115
|
+
},
|
|
116
|
+
code: {
|
|
117
|
+
success: true,
|
|
118
|
+
code: 'XYZ789'
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
export const WithHtmlErrorMessage: Story = {
|
|
125
|
+
globals: {
|
|
126
|
+
overrides: {
|
|
127
|
+
code: {
|
|
128
|
+
success: false,
|
|
129
|
+
error: "Something went wrong. <a href='https://example.com'>Try again</a>"
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
};
|