@keycloakify/angular 0.0.1-rc.2 → 0.0.1-rc.4
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/lib/tokens/use-default-css.token.d.ts +2 -0
- package/lib/tokens/use-default-css.token.js +3 -0
- package/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.d.ts +3 -1
- package/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.js +106 -0
- package/login/components/field-errors/field-errors.component.d.ts +2 -2
- package/login/components/field-errors/field-errors.component.js +33 -0
- package/login/components/group-label/group-label.component.d.ts +3 -1
- package/login/components/group-label/group-label.component.js +43 -0
- package/login/components/input-field-by-type/input-field-by-type.component.js +46 -0
- package/login/components/input-tag/input-tag.component.d.ts +4 -2
- package/login/components/input-tag/input-tag.component.js +90 -0
- package/login/components/input-tag-selects/input-tag-selects.component.d.ts +4 -2
- package/login/components/input-tag-selects/input-tag-selects.component.js +117 -0
- package/login/components/logout-other-sessions/logout-other-sessions.component.d.ts +3 -1
- package/login/components/logout-other-sessions/logout-other-sessions.component.js +32 -0
- package/login/components/password-wrapper/password-wrapper.component.d.ts +3 -1
- package/login/components/password-wrapper/password-wrapper.component.js +46 -0
- package/login/components/select-tag/select-tag.component.d.ts +4 -2
- package/login/components/select-tag/select-tag.component.js +82 -0
- package/login/components/textarea-tag/textarea-tag.component.js +49 -0
- package/login/components/user-profile-form-fields/user-profile-form-fields.component.d.ts +4 -2
- package/login/components/user-profile-form-fields/user-profile-form-fields.component.js +59 -0
- package/login/containers/template.component.js +72 -0
- package/login/pages/code/code.component.d.ts +4 -2
- package/login/pages/code/code.component.js +35 -0
- package/login/pages/delete-account-confirm/delete-account-confirm.component.d.ts +4 -2
- package/login/pages/delete-account-confirm/delete-account-confirm.component.js +35 -0
- package/login/pages/delete-credential/delete-credential.component.d.ts +4 -2
- package/login/pages/delete-credential/delete-credential.component.js +40 -0
- package/login/pages/error/error.component.d.ts +4 -2
- package/login/pages/error/error.component.js +35 -0
- package/login/pages/frontchannel-logout/frontchannel-logout.component.d.ts +4 -2
- package/login/pages/frontchannel-logout/frontchannel-logout.component.js +44 -0
- package/login/pages/idp-review-user-profile/idp-review-user-profile.component.d.ts +4 -2
- package/login/pages/idp-review-user-profile/idp-review-user-profile.component.js +45 -0
- package/login/pages/info/info.component.d.ts +4 -8
- package/login/pages/info/info.component.js +49 -0
- package/login/pages/login/login.component.d.ts +4 -2
- package/login/pages/login/login.component.js +44 -0
- package/login/pages/login-config-totp/login-config-totp.component.d.ts +4 -2
- package/login/pages/login-config-totp/login-config-totp.component.js +42 -0
- package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.d.ts +4 -2
- package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.js +40 -0
- package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.d.ts +4 -2
- package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.js +40 -0
- package/login/pages/login-idp-link-email/login-idp-link-email.component.d.ts +4 -2
- package/login/pages/login-idp-link-email/login-idp-link-email.component.js +40 -0
- package/login/pages/login-oauth-grant/login-oauth-grant.component.d.ts +4 -2
- package/login/pages/login-oauth-grant/login-oauth-grant.component.js +40 -0
- package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.d.ts +4 -2
- package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.js +40 -0
- package/login/pages/login-otp/login-otp.component.d.ts +4 -2
- package/login/pages/login-otp/login-otp.component.js +41 -0
- package/login/pages/login-page-expired/login-page-expired.component.d.ts +4 -2
- package/login/pages/login-page-expired/login-page-expired.component.js +39 -0
- package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.d.ts +5 -5
- package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.js +84 -0
- package/login/pages/login-password/login-password.component.d.ts +4 -2
- package/login/pages/login-password/login-password.component.js +43 -0
- package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.d.ts +4 -2
- package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.js +43 -0
- package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.d.ts +4 -2
- package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.js +41 -0
- package/login/pages/login-reset-otp/login-reset-otp.component.d.ts +4 -2
- package/login/pages/login-reset-otp/login-reset-otp.component.js +40 -0
- package/login/pages/login-reset-password/login-reset-password.component.d.ts +4 -2
- package/login/pages/login-reset-password/login-reset-password.component.js +41 -0
- package/login/pages/login-update-password/login-update-password.component.d.ts +4 -2
- package/login/pages/login-update-password/login-update-password.component.js +43 -0
- package/login/pages/login-update-profile/login-update-profile.component.d.ts +4 -2
- package/login/pages/login-update-profile/login-update-profile.component.js +42 -0
- package/login/pages/login-username/login-username.component.d.ts +4 -2
- package/login/pages/login-username/login-username.component.js +43 -0
- package/login/pages/login-verify-email/login-verify-email.component.d.ts +4 -2
- package/login/pages/login-verify-email/login-verify-email.component.js +40 -0
- package/login/pages/login-x509-info/login-x509-info.component.d.ts +4 -2
- package/login/pages/login-x509-info/login-x509-info.component.js +40 -0
- package/login/pages/logout-confirm/logout-confirm.component.d.ts +4 -2
- package/login/pages/logout-confirm/logout-confirm.component.js +40 -0
- package/login/pages/register/register.component.d.ts +4 -2
- package/login/pages/register/register.component.js +48 -0
- package/login/pages/saml-post-form/saml-post-form.component.d.ts +4 -2
- package/login/pages/saml-post-form/saml-post-form.component.js +52 -0
- package/login/pages/select-authenticator/select-authenticator.component.d.ts +4 -2
- package/login/pages/select-authenticator/select-authenticator.component.js +41 -0
- package/login/pages/terms/terms.component.d.ts +4 -2
- package/login/pages/terms/terms.component.js +40 -0
- package/login/pages/update-email/update-email.component.d.ts +4 -2
- package/login/pages/update-email/update-email.component.js +43 -0
- package/login/pages/webauthn-authenticate/webauthn-authenticate.component.d.ts +5 -5
- package/login/pages/webauthn-authenticate/webauthn-authenticate.component.js +80 -0
- package/login/pages/webauthn-error/webauthn-error.component.d.ts +4 -2
- package/login/pages/webauthn-error/webauthn-error.component.js +49 -0
- package/login/pages/webauthn-register/webauthn-register.component.d.ts +5 -5
- package/login/pages/webauthn-register/webauthn-register.component.js +76 -0
- package/login/pipes/kc-sanitize.pipe.d.ts +3 -4
- package/login/pipes/kc-sanitize.pipe.js +29 -0
- package/login/pipes/{to-array.pipe.mjs → to-array.pipe.js} +1 -2
- package/login/providers/keycloakify-angular.providers.d.ts +16 -0
- package/login/providers/keycloakify-angular.providers.js +53 -0
- package/login/services/i18n.service.d.ts +6 -0
- package/{lib/services/i18n.service.mjs → login/services/i18n.service.js} +1 -1
- package/login/services/login-resource-injector.service.d.ts +1 -1
- package/login/services/login-resource-injector.service.js +68 -0
- package/login/services/user-profile-form.service.js +1019 -0
- package/{lib/providers/keycloakify-angular.providers.d.ts → login/tokens/classes.token.d.ts} +1 -24
- package/login/tokens/classes.token.js +3 -0
- package/login/tokens/i18n.token.d.ts +2 -0
- package/login/tokens/i18n.token.js +3 -0
- package/login/tokens/kc-context.token.d.ts +3 -0
- package/login/tokens/kc-context.token.js +3 -0
- package/login/tokens/make-user-confirm-password.token.d.ts +2 -0
- package/login/tokens/make-user-confirm-password.token.js +3 -0
- package/package.json +89 -108
- package/src/lib/tokens/use-default-css.token.ts +3 -0
- package/src/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.html +19 -19
- package/src/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.ts +7 -15
- package/src/login/components/field-errors/field-errors.component.html +10 -10
- package/src/login/components/field-errors/field-errors.component.ts +6 -11
- package/src/login/components/group-label/group-label.component.html +25 -25
- package/src/login/components/group-label/group-label.component.ts +10 -14
- package/src/login/components/input-field-by-type/input-field-by-type.component.html +57 -57
- package/src/login/components/input-field-by-type/input-field-by-type.component.ts +6 -23
- package/src/login/components/input-tag/input-tag.component.html +41 -45
- package/src/login/components/input-tag/input-tag.component.ts +13 -22
- package/src/login/components/input-tag-selects/input-tag-selects.component.html +22 -22
- package/src/login/components/input-tag-selects/input-tag-selects.component.ts +12 -23
- package/src/login/components/logout-other-sessions/logout-other-sessions.component.html +15 -15
- package/src/login/components/logout-other-sessions/logout-other-sessions.component.ts +8 -5
- package/src/login/components/password-wrapper/password-wrapper.component.html +13 -13
- package/src/login/components/password-wrapper/password-wrapper.component.ts +10 -20
- package/src/login/components/select-tag/select-tag.component.html +26 -26
- package/src/login/components/select-tag/select-tag.component.ts +13 -25
- package/src/login/components/textarea-tag/textarea-tag.component.html +13 -15
- package/src/login/components/textarea-tag/textarea-tag.component.ts +5 -14
- package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.html +71 -71
- package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.ts +15 -34
- package/src/login/containers/template.component.html +183 -183
- package/src/login/containers/template.component.ts +12 -28
- package/src/login/pages/code/code.component.html +21 -21
- package/src/login/pages/code/code.component.ts +11 -11
- package/src/login/pages/delete-account-confirm/delete-account-confirm.component.html +44 -42
- package/src/login/pages/delete-account-confirm/delete-account-confirm.component.ts +12 -13
- package/src/login/pages/delete-credential/delete-credential.component.html +29 -29
- package/src/login/pages/delete-credential/delete-credential.component.ts +12 -19
- package/src/login/pages/error/error.component.html +20 -20
- package/src/login/pages/error/error.component.ts +11 -11
- package/src/login/pages/frontchannel-logout/frontchannel-logout.component.html +31 -31
- package/src/login/pages/frontchannel-logout/frontchannel-logout.component.ts +12 -20
- package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.html +36 -36
- package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.ts +12 -25
- package/src/login/pages/info/info.component.html +45 -45
- package/src/login/pages/info/info.component.ts +13 -30
- package/src/login/pages/login/login.component.html +194 -194
- package/src/login/pages/login/login.component.ts +14 -35
- package/src/login/pages/login-config-totp/login-config-totp.component.html +189 -179
- package/src/login/pages/login-config-totp/login-config-totp.component.ts +13 -32
- package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.html +35 -35
- package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts +12 -19
- package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.html +34 -34
- package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts +12 -21
- package/src/login/pages/login-idp-link-email/login-idp-link-email.component.html +32 -30
- package/src/login/pages/login-idp-link-email/login-idp-link-email.component.ts +12 -19
- package/src/login/pages/login-oauth-grant/login-oauth-grant.component.html +83 -81
- package/src/login/pages/login-oauth-grant/login-oauth-grant.component.ts +12 -20
- package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.html +57 -57
- package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts +12 -21
- package/src/login/pages/login-otp/login-otp.component.html +96 -96
- package/src/login/pages/login-otp/login-otp.component.ts +12 -18
- package/src/login/pages/login-page-expired/login-page-expired.component.html +31 -31
- package/src/login/pages/login-page-expired/login-page-expired.component.ts +12 -19
- package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.html +183 -181
- package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.ts +15 -22
- package/src/login/pages/login-password/login-password.component.html +82 -82
- package/src/login/pages/login-password/login-password.component.ts +12 -25
- package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.html +142 -142
- package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.ts +13 -28
- package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.html +67 -67
- package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.ts +14 -24
- package/src/login/pages/login-reset-otp/login-reset-otp.component.html +61 -59
- package/src/login/pages/login-reset-otp/login-reset-otp.component.ts +13 -19
- package/src/login/pages/login-reset-password/login-reset-password.component.html +84 -84
- package/src/login/pages/login-reset-password/login-reset-password.component.ts +13 -20
- package/src/login/pages/login-update-password/login-update-password.component.html +107 -107
- package/src/login/pages/login-update-password/login-update-password.component.ts +14 -31
- package/src/login/pages/login-update-profile/login-update-profile.component.html +53 -53
- package/src/login/pages/login-update-profile/login-update-profile.component.ts +13 -26
- package/src/login/pages/login-username/login-username.component.html +146 -146
- package/src/login/pages/login-username/login-username.component.ts +13 -30
- package/src/login/pages/login-verify-email/login-verify-email.component.html +22 -22
- package/src/login/pages/login-verify-email/login-verify-email.component.ts +13 -20
- package/src/login/pages/login-x509-info/login-x509-info.component.html +96 -96
- package/src/login/pages/login-x509-info/login-x509-info.component.ts +13 -19
- package/src/login/pages/logout-confirm/logout-confirm.component.html +51 -51
- package/src/login/pages/logout-confirm/logout-confirm.component.ts +13 -19
- package/src/login/pages/register/register.component.html +113 -113
- package/src/login/pages/register/register.component.ts +12 -29
- package/src/login/pages/saml-post-form/saml-post-form.component.html +47 -48
- package/src/login/pages/saml-post-form/saml-post-form.component.ts +12 -20
- package/src/login/pages/select-authenticator/select-authenticator.component.html +43 -44
- package/src/login/pages/select-authenticator/select-authenticator.component.ts +13 -27
- package/src/login/pages/terms/terms.component.html +32 -32
- package/src/login/pages/terms/terms.component.ts +13 -19
- package/src/login/pages/update-email/update-email.component.html +52 -52
- package/src/login/pages/update-email/update-email.component.ts +13 -26
- package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.html +146 -148
- package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.ts +17 -41
- package/src/login/pages/webauthn-error/webauthn-error.component.html +53 -53
- package/src/login/pages/webauthn-error/webauthn-error.component.ts +13 -24
- package/src/login/pages/webauthn-register/webauthn-register.component.html +73 -73
- package/src/login/pages/webauthn-register/webauthn-register.component.ts +18 -32
- package/src/login/pipes/kc-sanitize.pipe.ts +9 -11
- package/src/login/pipes/to-array.pipe.ts +0 -1
- package/src/login/providers/keycloakify-angular.providers.ts +68 -0
- package/src/{lib → login}/services/i18n.service.ts +3 -2
- package/src/login/services/login-resource-injector.service.ts +4 -3
- package/src/login/services/user-profile-form.service.ts +5 -7
- package/src/login/tokens/classes.token.ts +6 -0
- package/src/login/tokens/i18n.token.ts +3 -0
- package/src/login/tokens/kc-context.token.ts +4 -0
- package/src/login/tokens/make-user-confirm-password.token.ts +5 -0
- package/src/tsconfig.json +6 -1
- package/lib/i18n.d.ts +0 -4
- package/lib/i18n.mjs +0 -6
- package/lib/models/index.d.ts +0 -1
- package/lib/models/index.mjs +0 -2
- package/lib/providers/keycloakify-angular.providers.mjs +0 -54
- package/lib/public-api.d.ts +0 -10
- package/lib/public-api.mjs +0 -4
- package/lib/services/i18n.service.d.ts +0 -6
- package/lib/services/index.d.ts +0 -2
- package/lib/services/index.mjs +0 -3
- package/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.mjs +0 -105
- package/login/components/field-errors/field-errors.component.mjs +0 -32
- package/login/components/group-label/group-label.component.mjs +0 -41
- package/login/components/hello-world/hello-world.component.d.ts +0 -5
- package/login/components/hello-world/hello-world.component.mjs +0 -11
- package/login/components/index.d.ts +0 -11
- package/login/components/index.mjs +0 -12
- package/login/components/input-field-by-type/input-field-by-type.component.mjs +0 -52
- package/login/components/input-tag/input-tag.component.mjs +0 -89
- package/login/components/input-tag-selects/input-tag-selects.component.mjs +0 -115
- package/login/components/logout-other-sessions/logout-other-sessions.component.mjs +0 -30
- package/login/components/password-wrapper/password-wrapper.component.mjs +0 -44
- package/login/components/select-tag/select-tag.component.mjs +0 -80
- package/login/components/textarea-tag/textarea-tag.component.mjs +0 -48
- package/login/components/user-profile-form-fields/user-profile-form-fields.component.mjs +0 -62
- package/login/containers/template.component.mjs +0 -71
- package/login/directives/index.d.ts +0 -2
- package/login/directives/index.mjs +0 -3
- package/login/pages/code/code.component.mjs +0 -32
- package/login/pages/delete-account-confirm/delete-account-confirm.component.mjs +0 -32
- package/login/pages/delete-credential/delete-credential.component.mjs +0 -37
- package/login/pages/error/error.component.mjs +0 -32
- package/login/pages/frontchannel-logout/frontchannel-logout.component.mjs +0 -41
- package/login/pages/idp-review-user-profile/idp-review-user-profile.component.mjs +0 -47
- package/login/pages/info/info.component.mjs +0 -58
- package/login/pages/login/login.component.mjs +0 -51
- package/login/pages/login-config-totp/login-config-totp.component.mjs +0 -47
- package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.mjs +0 -37
- package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.mjs +0 -37
- package/login/pages/login-idp-link-email/login-idp-link-email.component.mjs +0 -37
- package/login/pages/login-oauth-grant/login-oauth-grant.component.mjs +0 -38
- package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.mjs +0 -37
- package/login/pages/login-otp/login-otp.component.mjs +0 -38
- package/login/pages/login-page-expired/login-page-expired.component.mjs +0 -36
- package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.mjs +0 -85
- package/login/pages/login-password/login-password.component.mjs +0 -46
- package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.mjs +0 -45
- package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.mjs +0 -38
- package/login/pages/login-reset-otp/login-reset-otp.component.mjs +0 -37
- package/login/pages/login-reset-password/login-reset-password.component.mjs +0 -38
- package/login/pages/login-update-password/login-update-password.component.mjs +0 -47
- package/login/pages/login-update-profile/login-update-profile.component.mjs +0 -44
- package/login/pages/login-username/login-username.component.mjs +0 -49
- package/login/pages/login-verify-email/login-verify-email.component.mjs +0 -37
- package/login/pages/login-x509-info/login-x509-info.component.mjs +0 -37
- package/login/pages/logout-confirm/logout-confirm.component.mjs +0 -37
- package/login/pages/register/register.component.mjs +0 -55
- package/login/pages/saml-post-form/saml-post-form.component.mjs +0 -49
- package/login/pages/select-authenticator/select-authenticator.component.mjs +0 -45
- package/login/pages/terms/terms.component.mjs +0 -37
- package/login/pages/update-email/update-email.component.mjs +0 -46
- package/login/pages/webauthn-authenticate/webauthn-authenticate.component.mjs +0 -87
- package/login/pages/webauthn-error/webauthn-error.component.mjs +0 -51
- package/login/pages/webauthn-register/webauthn-register.component.mjs +0 -81
- package/login/pipes/advanced-msg-str.pipe.d.ts +0 -8
- package/login/pipes/advanced-msg-str.pipe.mjs +0 -19
- package/login/pipes/index.d.ts +0 -6
- package/login/pipes/index.mjs +0 -7
- package/login/pipes/kc-sanitize.pipe.mjs +0 -34
- package/login/pipes/msg-str.pipe.d.ts +0 -9
- package/login/pipes/msg-str.pipe.mjs +0 -19
- package/login/services/index.d.ts +0 -2
- package/login/services/index.mjs +0 -3
- package/login/services/login-resource-injector.service.mjs +0 -68
- package/login/services/user-profile-form.service.mjs +0 -1017
- package/src/lib/i18n.ts +0 -9
- package/src/lib/models/index.ts +0 -1
- package/src/lib/providers/keycloakify-angular.providers.ts +0 -92
- package/src/lib/public-api.ts +0 -12
- package/src/lib/services/index.ts +0 -2
- package/src/login/components/hello-world/hello-world.component.css +0 -0
- package/src/login/components/hello-world/hello-world.component.html +0 -1
- package/src/login/components/hello-world/hello-world.component.ts +0 -10
- package/src/login/components/index.ts +0 -11
- package/src/login/directives/index.ts +0 -2
- package/src/login/pipes/advanced-msg-str.pipe.ts +0 -13
- package/src/login/pipes/index.ts +0 -6
- package/src/login/pipes/msg-str.pipe.ts +0 -14
- package/src/login/services/index.ts +0 -2
- /package/lib/models/{script.model.mjs → script.model.js} +0 -0
- /package/lib/services/{resource-injector.service.mjs → resource-injector.service.js} +0 -0
- /package/login/{DefaultPage.mjs → DefaultPage.js} +0 -0
- /package/login/{KcContext.mjs → KcContext.js} +0 -0
- /package/login/classes/{component-reference.class.mjs → component-reference.class.js} +0 -0
- /package/login/directives/{attributes.directive.mjs → attributes.directive.js} +0 -0
- /package/login/directives/{kc-class.directive.mjs → kc-class.directive.js} +0 -0
- /package/login/{i18n.mjs → i18n.js} +0 -0
- /package/login/pipes/{input-type.pipe.mjs → input-type.pipe.js} +0 -0
- /package/login/pipes/{to-number.pipe.mjs → to-number.pipe.js} +0 -0
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, output } from '@angular/core';
|
|
2
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
3
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
4
|
-
import { ToArrayPipe } from '../../../login/pipes/to-array.pipe';
|
|
5
|
-
import { InputTagSelectsComponent } from '../../../login/components/input-tag-selects/input-tag-selects.component';
|
|
6
|
-
import { InputTagComponent } from '../../../login/components/input-tag/input-tag.component';
|
|
7
|
-
import { PasswordWrapperComponent } from '../../../login/components/password-wrapper/password-wrapper.component';
|
|
8
|
-
import { SelectTagComponent } from '../../../login/components/select-tag/select-tag.component';
|
|
9
|
-
import { TextareaTagComponent } from '../../../login/components/textarea-tag/textarea-tag.component';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
export class InputFieldByTypeComponent extends ComponentReference {
|
|
12
|
-
constructor() {
|
|
13
|
-
super(...arguments);
|
|
14
|
-
this.attribute = input();
|
|
15
|
-
this.valueOrValues = input();
|
|
16
|
-
this.displayableErrors = input();
|
|
17
|
-
this.dispatchFormAction = output();
|
|
18
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
19
|
-
this.classes = inject(CLASSES);
|
|
20
|
-
this.attributePassword = computed(() => {
|
|
21
|
-
const attribute = this.attribute() ?? {};
|
|
22
|
-
return {
|
|
23
|
-
...attribute,
|
|
24
|
-
annotations: { ...(attribute.annotations ?? {}), inputType: 'password' }
|
|
25
|
-
};
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputFieldByTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
29
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: InputFieldByTypeComponent, isStandalone: true, selector: "kc-input-field-by-type", inputs: { attribute: { classPropertyName: "attribute", publicName: "attribute", isSignal: true, isRequired: false, transformFunction: null }, valueOrValues: { classPropertyName: "valueOrValues", publicName: "valueOrValues", isSignal: true, isRequired: false, transformFunction: null }, displayableErrors: { classPropertyName: "displayableErrors", publicName: "displayableErrors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dispatchFormAction: "dispatchFormAction" }, providers: [
|
|
30
|
-
{
|
|
31
|
-
provide: ComponentReference,
|
|
32
|
-
useExisting: forwardRef(() => InputFieldByTypeComponent)
|
|
33
|
-
}
|
|
34
|
-
], usesInheritance: true, ngImport: i0, template: "@let attr = attribute();\n@if (attr) {\n @let type = attr.annotations.inputType;\n @switch (type) {\n @case ('textarea') {\n <kc-textarea-tag\n [attribute]=\"attribute()\"\n [value]=\"$any(valueOrValues())\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-textarea-tag>\n }\n @case (type === 'select' || type === 'multiselect' ? type : '') {\n <kc-select-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-select-tag>\n }\n @case (type === 'select-radiobuttons' || type === 'multiselect-checkboxes' ? type : '') {\n <kc-input-tag-selects\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag-selects>\n }\n @default {\n @let values = valueOrValues();\n <!-- if valueOrValues is string skip -->\n @if (values && (values | toArray: true).length) {\n @for (value of values; track value; let i = $index) {\n <kc-input-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [fieldIndex]=\"i\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n }\n } @else {\n @if (attr.name === 'password' || attr.name === 'password-confirm') {\n <kc-password-wrapper [passwordInputId]=\"attr.name\">\n <kc-input-tag\n [attribute]=\"attributePassword()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n </kc-password-wrapper>\n } @else {\n <kc-input-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n }\n }\n }\n }\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "pipe", type: ToArrayPipe, name: "toArray" }, { kind: "component", type: TextareaTagComponent, selector: "kc-textarea-tag", inputs: ["attribute", "value", "displayableErrors"], outputs: ["dispatchFormAction"] }, { kind: "component", type: SelectTagComponent, selector: "kc-select-tag", inputs: ["attribute", "valueOrValues", "displayableErrors"], outputs: ["dispatchFormAction"] }, { kind: "component", type: InputTagSelectsComponent, selector: "kc-input-tag-selects", inputs: ["attribute", "valueOrValues", "displayableErrors"], outputs: ["dispatchFormAction"] }, { kind: "component", type: InputTagComponent, selector: "kc-input-tag", inputs: ["attribute", "valueOrValues", "fieldIndex", "values", "displayableErrors"], outputs: ["dispatchFormAction"] }, { kind: "component", type: PasswordWrapperComponent, selector: "kc-password-wrapper", inputs: ["passwordInputId"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
35
|
-
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputFieldByTypeComponent, decorators: [{
|
|
37
|
-
type: Component,
|
|
38
|
-
args: [{ standalone: true, imports: [
|
|
39
|
-
ToArrayPipe,
|
|
40
|
-
TextareaTagComponent,
|
|
41
|
-
SelectTagComponent,
|
|
42
|
-
InputTagSelectsComponent,
|
|
43
|
-
InputTagComponent,
|
|
44
|
-
PasswordWrapperComponent
|
|
45
|
-
], selector: 'kc-input-field-by-type', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
46
|
-
{
|
|
47
|
-
provide: ComponentReference,
|
|
48
|
-
useExisting: forwardRef(() => InputFieldByTypeComponent)
|
|
49
|
-
}
|
|
50
|
-
], template: "@let attr = attribute();\n@if (attr) {\n @let type = attr.annotations.inputType;\n @switch (type) {\n @case ('textarea') {\n <kc-textarea-tag\n [attribute]=\"attribute()\"\n [value]=\"$any(valueOrValues())\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-textarea-tag>\n }\n @case (type === 'select' || type === 'multiselect' ? type : '') {\n <kc-select-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-select-tag>\n }\n @case (type === 'select-radiobuttons' || type === 'multiselect-checkboxes' ? type : '') {\n <kc-input-tag-selects\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag-selects>\n }\n @default {\n @let values = valueOrValues();\n <!-- if valueOrValues is string skip -->\n @if (values && (values | toArray: true).length) {\n @for (value of values; track value; let i = $index) {\n <kc-input-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [fieldIndex]=\"i\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n }\n } @else {\n @if (attr.name === 'password' || attr.name === 'password-confirm') {\n <kc-password-wrapper [passwordInputId]=\"attr.name\">\n <kc-input-tag\n [attribute]=\"attributePassword()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n </kc-password-wrapper>\n } @else {\n <kc-input-tag\n [attribute]=\"attribute()\"\n [valueOrValues]=\"valueOrValues()\"\n [displayableErrors]=\"displayableErrors()\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-input-tag>\n }\n }\n }\n }\n}\n", styles: [":host{display:contents}\n"] }]
|
|
51
|
-
}] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmllbGQtYnktdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL2lucHV0LWZpZWxkLWJ5LXR5cGUvaW5wdXQtZmllbGQtYnktdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL2lucHV0LWZpZWxkLWJ5LXR5cGUvaW5wdXQtZmllbGQtYnktdHlwZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDbEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBSzdFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFGQUFxRixDQUFDO0FBQy9ILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1GQUFtRixDQUFDO0FBQzdILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJFQUEyRSxDQUFDOztBQTZCakgsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGtCQUFrQjtJQTNCakU7O1FBNEJJLGNBQVMsR0FBRyxLQUFLLEVBQWEsQ0FBQztRQUMvQixrQkFBYSxHQUFHLEtBQUssRUFBcUIsQ0FBQztRQUMzQyxzQkFBaUIsR0FBRyxLQUFLLEVBQW9CLENBQUM7UUFDOUMsdUJBQWtCLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFDakMsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsT0FBTyxDQUFDLENBQUM7UUFFdEUsc0JBQWlCLEdBQUcsUUFBUSxDQUFZLEdBQUcsRUFBRTtZQUN6QyxNQUFNLFNBQVMsR0FBYyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUssRUFBZ0IsQ0FBQztZQUNuRSxPQUFPO2dCQUNILEdBQUcsU0FBUztnQkFDWixXQUFXLEVBQUUsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFO2FBQzNFLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztLQUNOOzhHQWZZLHlCQUF5QjtrR0FBekIseUJBQXlCLHdqQkFQdkI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO2FBQzNEO1NBQ0osaURDakRMLHEzRUErREEsOEVEN0JRLFdBQVcsZ0RBQ1gsb0JBQW9CLGtKQUNwQixrQkFBa0Isd0pBQ2xCLHdCQUF3QiwrSkFDeEIsaUJBQWlCLCtLQUNqQix3QkFBd0I7OzJGQVluQix5QkFBeUI7a0JBM0JyQyxTQUFTO2lDQUNNLElBQUksV0FRUDt3QkFDTCxXQUFXO3dCQUNYLG9CQUFvQjt3QkFDcEIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsd0JBQXdCO3FCQUMzQixZQUNTLHdCQUF3QixtQkFFakIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwwQkFBMEIsQ0FBQzt5QkFDM0Q7cUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBpbnB1dCxcbiAgICBvdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDTEFTU0VTLCBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBBdHRyaWJ1dGUgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZS5jbGFzcyc7XG5pbXBvcnQgeyBUb0FycmF5UGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3BpcGVzL3RvLWFycmF5LnBpcGUnO1xuaW1wb3J0IHtcbiAgICBGb3JtQWN0aW9uLFxuICAgIEZvcm1GaWVsZEVycm9yXG59IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3NlcnZpY2VzL3VzZXItcHJvZmlsZS1mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5wdXRUYWdTZWxlY3RzQ29tcG9uZW50IH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY29tcG9uZW50cy9pbnB1dC10YWctc2VsZWN0cy9pbnB1dC10YWctc2VsZWN0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRUYWdDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb21wb25lbnRzL2lucHV0LXRhZy9pbnB1dC10YWcuY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NvbXBvbmVudHMvcGFzc3dvcmQtd3JhcHBlci9wYXNzd29yZC13cmFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RUYWdDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb21wb25lbnRzL3NlbGVjdC10YWcvc2VsZWN0LXRhZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dGFyZWFUYWdDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb21wb25lbnRzL3RleHRhcmVhLXRhZy90ZXh0YXJlYS10YWcuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuICAgICAgICBgXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFRvQXJyYXlQaXBlLFxuICAgICAgICBUZXh0YXJlYVRhZ0NvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0VGFnQ29tcG9uZW50LFxuICAgICAgICBJbnB1dFRhZ1NlbGVjdHNDb21wb25lbnQsXG4gICAgICAgIElucHV0VGFnQ29tcG9uZW50LFxuICAgICAgICBQYXNzd29yZFdyYXBwZXJDb21wb25lbnRcbiAgICBdLFxuICAgIHNlbGVjdG9yOiAna2MtaW5wdXQtZmllbGQtYnktdHlwZScsXG4gICAgdGVtcGxhdGVVcmw6ICdpbnB1dC1maWVsZC1ieS10eXBlLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQ29tcG9uZW50UmVmZXJlbmNlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRGaWVsZEJ5VHlwZUNvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRGaWVsZEJ5VHlwZUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAgYXR0cmlidXRlID0gaW5wdXQ8QXR0cmlidXRlPigpO1xuICAgIHZhbHVlT3JWYWx1ZXMgPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oKTtcbiAgICBkaXNwbGF5YWJsZUVycm9ycyA9IGlucHV0PEZvcm1GaWVsZEVycm9yW10+KCk7XG4gICAgZGlzcGF0Y2hGb3JtQWN0aW9uID0gb3V0cHV0PEZvcm1BY3Rpb24+KCk7XG4gICAgb3ZlcnJpZGUgZG9Vc2VEZWZhdWx0Q3NzID0gaW5qZWN0PGJvb2xlYW4+KFVTRV9ERUZBVUxUX0NTUyk7XG4gICAgb3ZlcnJpZGUgY2xhc3NlcyA9IGluamVjdDxQYXJ0aWFsPFJlY29yZDxDbGFzc0tleSwgc3RyaW5nPj4+KENMQVNTRVMpO1xuXG4gICAgYXR0cmlidXRlUGFzc3dvcmQgPSBjb21wdXRlZDxBdHRyaWJ1dGU+KCgpID0+IHtcbiAgICAgICAgY29uc3QgYXR0cmlidXRlOiBBdHRyaWJ1dGUgPSB0aGlzLmF0dHJpYnV0ZSgpID8/ICh7fSBhcyBBdHRyaWJ1dGUpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uYXR0cmlidXRlLFxuICAgICAgICAgICAgYW5ub3RhdGlvbnM6IHsgLi4uKGF0dHJpYnV0ZS5hbm5vdGF0aW9ucyA/PyB7fSksIGlucHV0VHlwZTogJ3Bhc3N3b3JkJyB9XG4gICAgICAgIH07XG4gICAgfSk7XG59XG4iLCJAbGV0IGF0dHIgPSBhdHRyaWJ1dGUoKTtcbkBpZiAoYXR0cikge1xuICBAbGV0IHR5cGUgPSBhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZTtcbiAgQHN3aXRjaCAodHlwZSkge1xuICAgIEBjYXNlICgndGV4dGFyZWEnKSB7XG4gICAgICA8a2MtdGV4dGFyZWEtdGFnXG4gICAgICAgIFthdHRyaWJ1dGVdPVwiYXR0cmlidXRlKClcIlxuICAgICAgICBbdmFsdWVdPVwiJGFueSh2YWx1ZU9yVmFsdWVzKCkpXCJcbiAgICAgICAgW2Rpc3BsYXlhYmxlRXJyb3JzXT1cImRpc3BsYXlhYmxlRXJyb3JzKClcIlxuICAgICAgICAoZGlzcGF0Y2hGb3JtQWN0aW9uKT1cImRpc3BhdGNoRm9ybUFjdGlvbi5lbWl0KCRldmVudClcIlxuICAgICAgPjwva2MtdGV4dGFyZWEtdGFnPlxuICAgIH1cbiAgICBAY2FzZSAodHlwZSA9PT0gJ3NlbGVjdCcgfHwgdHlwZSA9PT0gJ211bHRpc2VsZWN0JyA/IHR5cGUgOiAnJykge1xuICAgICAgPGtjLXNlbGVjdC10YWdcbiAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGUoKVwiXG4gICAgICAgIFt2YWx1ZU9yVmFsdWVzXT1cInZhbHVlT3JWYWx1ZXMoKVwiXG4gICAgICAgIFtkaXNwbGF5YWJsZUVycm9yc109XCJkaXNwbGF5YWJsZUVycm9ycygpXCJcbiAgICAgICAgKGRpc3BhdGNoRm9ybUFjdGlvbik9XCJkaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCgkZXZlbnQpXCJcbiAgICAgID48L2tjLXNlbGVjdC10YWc+XG4gICAgfVxuICAgIEBjYXNlICh0eXBlID09PSAnc2VsZWN0LXJhZGlvYnV0dG9ucycgfHwgdHlwZSA9PT0gJ211bHRpc2VsZWN0LWNoZWNrYm94ZXMnID8gdHlwZSA6ICcnKSB7XG4gICAgICA8a2MtaW5wdXQtdGFnLXNlbGVjdHNcbiAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGUoKVwiXG4gICAgICAgIFt2YWx1ZU9yVmFsdWVzXT1cInZhbHVlT3JWYWx1ZXMoKVwiXG4gICAgICAgIFtkaXNwbGF5YWJsZUVycm9yc109XCJkaXNwbGF5YWJsZUVycm9ycygpXCJcbiAgICAgICAgKGRpc3BhdGNoRm9ybUFjdGlvbik9XCJkaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCgkZXZlbnQpXCJcbiAgICAgID48L2tjLWlucHV0LXRhZy1zZWxlY3RzPlxuICAgIH1cbiAgICBAZGVmYXVsdCB7XG4gICAgICBAbGV0IHZhbHVlcyA9IHZhbHVlT3JWYWx1ZXMoKTtcbiAgICAgIDwhLS0gaWYgdmFsdWVPclZhbHVlcyBpcyBzdHJpbmcgc2tpcCAtLT5cbiAgICAgIEBpZiAodmFsdWVzICYmICh2YWx1ZXMgfCB0b0FycmF5OiB0cnVlKS5sZW5ndGgpIHtcbiAgICAgICAgQGZvciAodmFsdWUgb2YgdmFsdWVzOyB0cmFjayB2YWx1ZTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICA8a2MtaW5wdXQtdGFnXG4gICAgICAgICAgICBbYXR0cmlidXRlXT1cImF0dHJpYnV0ZSgpXCJcbiAgICAgICAgICAgIFt2YWx1ZU9yVmFsdWVzXT1cInZhbHVlT3JWYWx1ZXMoKVwiXG4gICAgICAgICAgICBbZmllbGRJbmRleF09XCJpXCJcbiAgICAgICAgICAgIFtkaXNwbGF5YWJsZUVycm9yc109XCJkaXNwbGF5YWJsZUVycm9ycygpXCJcbiAgICAgICAgICAgIChkaXNwYXRjaEZvcm1BY3Rpb24pPVwiZGlzcGF0Y2hGb3JtQWN0aW9uLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgPjwva2MtaW5wdXQtdGFnPlxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGlmIChhdHRyLm5hbWUgPT09ICdwYXNzd29yZCcgfHwgYXR0ci5uYW1lID09PSAncGFzc3dvcmQtY29uZmlybScpIHtcbiAgICAgICAgICA8a2MtcGFzc3dvcmQtd3JhcHBlciBbcGFzc3dvcmRJbnB1dElkXT1cImF0dHIubmFtZVwiPlxuICAgICAgICAgICAgPGtjLWlucHV0LXRhZ1xuICAgICAgICAgICAgICBbYXR0cmlidXRlXT1cImF0dHJpYnV0ZVBhc3N3b3JkKClcIlxuICAgICAgICAgICAgICBbdmFsdWVPclZhbHVlc109XCJ2YWx1ZU9yVmFsdWVzKClcIlxuICAgICAgICAgICAgICBbZGlzcGxheWFibGVFcnJvcnNdPVwiZGlzcGxheWFibGVFcnJvcnMoKVwiXG4gICAgICAgICAgICAgIChkaXNwYXRjaEZvcm1BY3Rpb24pPVwiZGlzcGF0Y2hGb3JtQWN0aW9uLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9rYy1pbnB1dC10YWc+XG4gICAgICAgICAgPC9rYy1wYXNzd29yZC13cmFwcGVyPlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICA8a2MtaW5wdXQtdGFnXG4gICAgICAgICAgICBbYXR0cmlidXRlXT1cImF0dHJpYnV0ZSgpXCJcbiAgICAgICAgICAgIFt2YWx1ZU9yVmFsdWVzXT1cInZhbHVlT3JWYWx1ZXMoKVwiXG4gICAgICAgICAgICBbZGlzcGxheWFibGVFcnJvcnNdPVwiZGlzcGxheWFibGVFcnJvcnMoKVwiXG4gICAgICAgICAgICAoZGlzcGF0Y2hGb3JtQWN0aW9uKT1cImRpc3BhdGNoRm9ybUFjdGlvbi5lbWl0KCRldmVudClcIlxuICAgICAgICAgID48L2tjLWlucHV0LXRhZz5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, output } from '@angular/core';
|
|
2
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
3
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
4
|
-
import { AttributesDirective } from '../../../login/directives/attributes.directive';
|
|
5
|
-
import { KcClassDirective } from '../../../login/directives/kc-class.directive';
|
|
6
|
-
import { AdvancedMsgStrPipe } from '../../../login/pipes/advanced-msg-str.pipe';
|
|
7
|
-
import { InputTypePipe } from '../../../login/pipes/input-type.pipe';
|
|
8
|
-
import { ToArrayPipe } from '../../../login/pipes/to-array.pipe';
|
|
9
|
-
import { ToNumberPipe } from '../../../login/pipes/to-number.pipe';
|
|
10
|
-
import { AddRemoveButtonsMultiValuedAttributeComponent } from '../../../login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component';
|
|
11
|
-
import { FieldErrorsComponent } from '../../../login/components/field-errors/field-errors.component';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
export class InputTagComponent extends ComponentReference {
|
|
14
|
-
constructor() {
|
|
15
|
-
super(...arguments);
|
|
16
|
-
this.attribute = input();
|
|
17
|
-
this.valueOrValues = input();
|
|
18
|
-
this.fieldIndex = input(undefined);
|
|
19
|
-
this.values = input();
|
|
20
|
-
this.displayableErrors = input();
|
|
21
|
-
this.dispatchFormAction = output();
|
|
22
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
23
|
-
this.classes = inject(CLASSES);
|
|
24
|
-
this.value = computed(() => {
|
|
25
|
-
const valueOrValues = this.valueOrValues();
|
|
26
|
-
const index = this.fieldIndex();
|
|
27
|
-
if (valueOrValues instanceof Array) {
|
|
28
|
-
if (index) {
|
|
29
|
-
return valueOrValues[index] ?? null;
|
|
30
|
-
}
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
return valueOrValues ?? null;
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
onChange(event) {
|
|
37
|
-
const valueOrValues = this.valueOrValues();
|
|
38
|
-
this.dispatchFormAction.emit({
|
|
39
|
-
action: 'update',
|
|
40
|
-
name: this.attribute()?.name ?? '',
|
|
41
|
-
valueOrValues: (() => {
|
|
42
|
-
if (this.fieldIndex !== undefined) {
|
|
43
|
-
if (valueOrValues instanceof Array) {
|
|
44
|
-
return valueOrValues.map((value, i) => {
|
|
45
|
-
if (i === this.fieldIndex()) {
|
|
46
|
-
return event.target?.value;
|
|
47
|
-
}
|
|
48
|
-
return value;
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
return event.target?.value;
|
|
53
|
-
})()
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
onBlur() {
|
|
57
|
-
this.dispatchFormAction.emit({
|
|
58
|
-
action: 'focus lost',
|
|
59
|
-
name: this.attribute()?.name ?? '',
|
|
60
|
-
fieldIndex: this.fieldIndex()
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputTagComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
64
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: InputTagComponent, isStandalone: true, selector: "kc-input-tag", inputs: { attribute: { classPropertyName: "attribute", publicName: "attribute", isSignal: true, isRequired: false, transformFunction: null }, valueOrValues: { classPropertyName: "valueOrValues", publicName: "valueOrValues", isSignal: true, isRequired: false, transformFunction: null }, fieldIndex: { classPropertyName: "fieldIndex", publicName: "fieldIndex", isSignal: true, isRequired: false, transformFunction: null }, values: { classPropertyName: "values", publicName: "values", isSignal: true, isRequired: false, transformFunction: null }, displayableErrors: { classPropertyName: "displayableErrors", publicName: "displayableErrors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dispatchFormAction: "dispatchFormAction" }, providers: [
|
|
65
|
-
{
|
|
66
|
-
provide: ComponentReference,
|
|
67
|
-
useExisting: forwardRef(() => InputTagComponent)
|
|
68
|
-
}
|
|
69
|
-
], usesInheritance: true, ngImport: i0, template: "@let attr = attribute();\n@let index = fieldIndex();\n@if (attr) {\n <input\n [type]=\"attr.annotations.inputType | inputType\"\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [value]=\"value()\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"index && displayableErrors()?.[index] !== undefined\"\n [disabled]=\"attr.readOnly\"\n [autocomplete]=\"attr.autocomplete\"\n [placeholder]=\"attr.annotations.inputTypePlaceholder ?? '' | advancedMsgStr\"\n [attr.pattern]=\"attr.annotations.inputTypePattern\"\n [attr.size]=\"\n !attr.annotations.inputTypeSize\n ? undefined\n : (attr.annotations.inputTypeSize | toNumber) === 0\n ? undefined\n : (attr.annotations.inputTypeSize | toNumber)\n \"\n [attr.maxlength]=\"\n !attr.annotations.inputTypeMaxlength ? undefined : (attr.annotations.inputTypeMaxlength | toNumber)\n \"\n [attr.minlength]=\"\n !attr.annotations.inputTypeMinlength ? undefined : (attr.annotations.inputTypeMinlength | toNumber)\n \"\n [attr.max]=\"attr.annotations.inputTypeMax\"\n [attr.min]=\"attr.annotations.inputTypeMin\"\n [attr.step]=\"attr.annotations.inputTypeStep\"\n [kcAttributes]=\"attr.html5DataAnnotations\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n />\n @if (index !== undefined) {\n @let values = valueOrValues() ?? [] | toArray;\n <kc-field-errors\n [attribute]=\"attr\"\n [displayableErrors]=\"displayableErrors()\"\n [fieldIndex]=\"index\"\n ></kc-field-errors>\n <kc-add-remove-buttons-multi-valued-attribute\n [attribute]=\"attr\"\n [values]=\"values\"\n [fieldIndex]=\"index\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-add-remove-buttons-multi-valued-attribute>\n }\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "pipe", type: InputTypePipe, name: "inputType" }, { kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: ToNumberPipe, name: "toNumber" }, { kind: "directive", type: AttributesDirective, selector: "[kcAttributes]", inputs: ["kcAttributes"] }, { kind: "pipe", type: ToArrayPipe, name: "toArray" }, { kind: "component", type: FieldErrorsComponent, selector: "kc-field-errors", inputs: ["attribute", "displayableErrors", "fieldIndex"] }, { kind: "component", type: AddRemoveButtonsMultiValuedAttributeComponent, selector: "kc-add-remove-buttons-multi-valued-attribute", inputs: ["attribute", "values", "fieldIndex"], outputs: ["dispatchFormAction"] }, { kind: "pipe", type: AdvancedMsgStrPipe, name: "advancedMsgStr" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
70
|
-
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputTagComponent, decorators: [{
|
|
72
|
-
type: Component,
|
|
73
|
-
args: [{ standalone: true, imports: [
|
|
74
|
-
InputTypePipe,
|
|
75
|
-
KcClassDirective,
|
|
76
|
-
ToNumberPipe,
|
|
77
|
-
AttributesDirective,
|
|
78
|
-
ToArrayPipe,
|
|
79
|
-
FieldErrorsComponent,
|
|
80
|
-
AddRemoveButtonsMultiValuedAttributeComponent,
|
|
81
|
-
AdvancedMsgStrPipe
|
|
82
|
-
], selector: 'kc-input-tag', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
83
|
-
{
|
|
84
|
-
provide: ComponentReference,
|
|
85
|
-
useExisting: forwardRef(() => InputTagComponent)
|
|
86
|
-
}
|
|
87
|
-
], template: "@let attr = attribute();\n@let index = fieldIndex();\n@if (attr) {\n <input\n [type]=\"attr.annotations.inputType | inputType\"\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [value]=\"value()\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"index && displayableErrors()?.[index] !== undefined\"\n [disabled]=\"attr.readOnly\"\n [autocomplete]=\"attr.autocomplete\"\n [placeholder]=\"attr.annotations.inputTypePlaceholder ?? '' | advancedMsgStr\"\n [attr.pattern]=\"attr.annotations.inputTypePattern\"\n [attr.size]=\"\n !attr.annotations.inputTypeSize\n ? undefined\n : (attr.annotations.inputTypeSize | toNumber) === 0\n ? undefined\n : (attr.annotations.inputTypeSize | toNumber)\n \"\n [attr.maxlength]=\"\n !attr.annotations.inputTypeMaxlength ? undefined : (attr.annotations.inputTypeMaxlength | toNumber)\n \"\n [attr.minlength]=\"\n !attr.annotations.inputTypeMinlength ? undefined : (attr.annotations.inputTypeMinlength | toNumber)\n \"\n [attr.max]=\"attr.annotations.inputTypeMax\"\n [attr.min]=\"attr.annotations.inputTypeMin\"\n [attr.step]=\"attr.annotations.inputTypeStep\"\n [kcAttributes]=\"attr.html5DataAnnotations\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n />\n @if (index !== undefined) {\n @let values = valueOrValues() ?? [] | toArray;\n <kc-field-errors\n [attribute]=\"attr\"\n [displayableErrors]=\"displayableErrors()\"\n [fieldIndex]=\"index\"\n ></kc-field-errors>\n <kc-add-remove-buttons-multi-valued-attribute\n [attribute]=\"attr\"\n [values]=\"values\"\n [fieldIndex]=\"index\"\n (dispatchFormAction)=\"dispatchFormAction.emit($event)\"\n ></kc-add-remove-buttons-multi-valued-attribute>\n }\n}\n", styles: [":host{display:contents}\n"] }]
|
|
88
|
-
}] });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tleWNsb2FraWZ5LWFuZ3VsYXIvc3JjL2xvZ2luL2NvbXBvbmVudHMvaW5wdXQtdGFnL2lucHV0LXRhZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL2lucHV0LXRhZy9pbnB1dC10YWcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNqRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBSy9FLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLHFJQUFxSSxDQUFDO0FBQ3BNLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJFQUEyRSxDQUFDOztBQStCakgsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGtCQUFrQjtJQTdCekQ7O1FBOEJJLGNBQVMsR0FBRyxLQUFLLEVBQWEsQ0FBQztRQUMvQixrQkFBYSxHQUFHLEtBQUssRUFBcUIsQ0FBQztRQUMzQyxlQUFVLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUNsRCxXQUFNLEdBQUcsS0FBSyxFQUFZLENBQUM7UUFDM0Isc0JBQWlCLEdBQUcsS0FBSyxFQUFvQixDQUFDO1FBQzlDLHVCQUFrQixHQUFHLE1BQU0sRUFBYyxDQUFDO1FBQ2pDLG9CQUFlLEdBQUcsTUFBTSxDQUFVLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELFlBQU8sR0FBRyxNQUFNLENBQW9DLE9BQU8sQ0FBQyxDQUFDO1FBRXRFLFVBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ2xCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMzQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEMsSUFBSSxhQUFhLFlBQVksS0FBSyxFQUFFLENBQUM7Z0JBQ2pDLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1IsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDO2dCQUN4QyxDQUFDO2dCQUNELE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxPQUFPLGFBQWEsSUFBSSxJQUFJLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7S0FnQ047SUE5QkcsUUFBUSxDQUFDLEtBQVk7UUFDakIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRTtZQUNsQyxhQUFhLEVBQUUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUUsQ0FBQztvQkFDaEMsSUFBSSxhQUFhLFlBQVksS0FBSyxFQUFFLENBQUM7d0JBQ2pDLE9BQU8sYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTs0QkFDbEMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7Z0NBQzFCLE9BQVEsS0FBSyxDQUFDLE1BQTJCLEVBQUUsS0FBSyxDQUFDOzRCQUNyRCxDQUFDOzRCQUVELE9BQU8sS0FBSyxDQUFDO3dCQUNqQixDQUFDLENBQUMsQ0FBQztvQkFDUCxDQUFDO2dCQUNMLENBQUM7Z0JBRUQsT0FBUSxLQUFLLENBQUMsTUFBMkIsRUFBRSxLQUFLLENBQUM7WUFDckQsQ0FBQyxDQUFDLEVBQUU7U0FDUCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsTUFBTSxFQUFFLFlBQVk7WUFDcEIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRTtZQUNsQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRTtTQUNoQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQW5EUSxpQkFBaUI7a0dBQWpCLGlCQUFpQixnekJBUGY7WUFDUDtnQkFDSSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2FBQ25EO1NBQ0osaURDckRMLDZ4REFpREEsOEVEYlEsYUFBYSxrREFDYixnQkFBZ0IsMEZBQ2hCLFlBQVksaURBQ1osbUJBQW1CLGdGQUNuQixXQUFXLGdEQUNYLG9CQUFvQixzSEFDcEIsNkNBQTZDLG9LQUM3QyxrQkFBa0I7OzJGQVliLGlCQUFpQjtrQkE3QjdCLFNBQVM7aUNBQ00sSUFBSSxXQVFQO3dCQUNMLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLDZDQUE2Qzt3QkFDN0Msa0JBQWtCO3FCQUNyQixZQUNTLGNBQWMsbUJBRVAsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQzt5QkFDbkQ7cUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBpbnB1dCxcbiAgICBvdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDTEFTU0VTLCBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBBdHRyaWJ1dGUgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZS5jbGFzcyc7XG5pbXBvcnQgeyBBdHRyaWJ1dGVzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9hdHRyaWJ1dGVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBLY0NsYXNzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9rYy1jbGFzcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQWR2YW5jZWRNc2dTdHJQaXBlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vcGlwZXMvYWR2YW5jZWQtbXNnLXN0ci5waXBlJztcbmltcG9ydCB7IElucHV0VHlwZVBpcGUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9waXBlcy9pbnB1dC10eXBlLnBpcGUnO1xuaW1wb3J0IHsgVG9BcnJheVBpcGUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9waXBlcy90by1hcnJheS5waXBlJztcbmltcG9ydCB7IFRvTnVtYmVyUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3BpcGVzL3RvLW51bWJlci5waXBlJztcbmltcG9ydCB7XG4gICAgRm9ybUFjdGlvbixcbiAgICBGb3JtRmllbGRFcnJvclxufSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9zZXJ2aWNlcy91c2VyLXByb2ZpbGUtZm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IEFkZFJlbW92ZUJ1dHRvbnNNdWx0aVZhbHVlZEF0dHJpYnV0ZUNvbXBvbmVudCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NvbXBvbmVudHMvYWRkLXJlbW92ZS1idXR0b25zLW11bHRpLXZhbHVlZC1hdHRyaWJ1dGUvYWRkLXJlbW92ZS1idXR0b25zLW11bHRpLXZhbHVlZC1hdHRyaWJ1dGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkRXJyb3JzQ29tcG9uZW50IH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY29tcG9uZW50cy9maWVsZC1lcnJvcnMvZmllbGQtZXJyb3JzLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgYFxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBJbnB1dFR5cGVQaXBlLFxuICAgICAgICBLY0NsYXNzRGlyZWN0aXZlLFxuICAgICAgICBUb051bWJlclBpcGUsXG4gICAgICAgIEF0dHJpYnV0ZXNEaXJlY3RpdmUsXG4gICAgICAgIFRvQXJyYXlQaXBlLFxuICAgICAgICBGaWVsZEVycm9yc0NvbXBvbmVudCxcbiAgICAgICAgQWRkUmVtb3ZlQnV0dG9uc011bHRpVmFsdWVkQXR0cmlidXRlQ29tcG9uZW50LFxuICAgICAgICBBZHZhbmNlZE1zZ1N0clBpcGVcbiAgICBdLFxuICAgIHNlbGVjdG9yOiAna2MtaW5wdXQtdGFnJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2lucHV0LXRhZy5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0VGFnQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFRhZ0NvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAgYXR0cmlidXRlID0gaW5wdXQ8QXR0cmlidXRlPigpO1xuICAgIHZhbHVlT3JWYWx1ZXMgPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oKTtcbiAgICBmaWVsZEluZGV4ID0gaW5wdXQ8bnVtYmVyIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICAgIHZhbHVlcyA9IGlucHV0PHN0cmluZ1tdPigpO1xuICAgIGRpc3BsYXlhYmxlRXJyb3JzID0gaW5wdXQ8Rm9ybUZpZWxkRXJyb3JbXT4oKTtcbiAgICBkaXNwYXRjaEZvcm1BY3Rpb24gPSBvdXRwdXQ8Rm9ybUFjdGlvbj4oKTtcbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oQ0xBU1NFUyk7XG5cbiAgICB2YWx1ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWVPclZhbHVlcyA9IHRoaXMudmFsdWVPclZhbHVlcygpO1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZmllbGRJbmRleCgpO1xuICAgICAgICBpZiAodmFsdWVPclZhbHVlcyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgICBpZiAoaW5kZXgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWVPclZhbHVlc1tpbmRleF0gPz8gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZU9yVmFsdWVzID8/IG51bGw7XG4gICAgfSk7XG5cbiAgICBvbkNoYW5nZShldmVudDogRXZlbnQpIHtcbiAgICAgICAgY29uc3QgdmFsdWVPclZhbHVlcyA9IHRoaXMudmFsdWVPclZhbHVlcygpO1xuICAgICAgICB0aGlzLmRpc3BhdGNoRm9ybUFjdGlvbi5lbWl0KHtcbiAgICAgICAgICAgIGFjdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLmF0dHJpYnV0ZSgpPy5uYW1lID8/ICcnLFxuICAgICAgICAgICAgdmFsdWVPclZhbHVlczogKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5maWVsZEluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlT3JWYWx1ZXMgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlT3JWYWx1ZXMubWFwKCh2YWx1ZSwgaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpID09PSB0aGlzLmZpZWxkSW5kZXgoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KT8udmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KT8udmFsdWU7XG4gICAgICAgICAgICB9KSgpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQmx1cigpIHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246ICdmb2N1cyBsb3N0JyxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuYXR0cmlidXRlKCk/Lm5hbWUgPz8gJycsXG4gICAgICAgICAgICBmaWVsZEluZGV4OiB0aGlzLmZpZWxkSW5kZXgoKVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCJAbGV0IGF0dHIgPSBhdHRyaWJ1dGUoKTtcbkBsZXQgaW5kZXggPSBmaWVsZEluZGV4KCk7XG5AaWYgKGF0dHIpIHtcbiAgPGlucHV0XG4gICAgW3R5cGVdPVwiYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGUgfCBpbnB1dFR5cGVcIlxuICAgIFtpZF09XCJhdHRyLm5hbWVcIlxuICAgIFtuYW1lXT1cImF0dHIubmFtZVwiXG4gICAgW3ZhbHVlXT1cInZhbHVlKClcIlxuICAgIFtrY0NsYXNzXT1cIidrY0lucHV0Q2xhc3MnXCJcbiAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW5kZXggJiYgZGlzcGxheWFibGVFcnJvcnMoKT8uW2luZGV4XSAhPT0gdW5kZWZpbmVkXCJcbiAgICBbZGlzYWJsZWRdPVwiYXR0ci5yZWFkT25seVwiXG4gICAgW2F1dG9jb21wbGV0ZV09XCJhdHRyLmF1dG9jb21wbGV0ZVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cImF0dHIuYW5ub3RhdGlvbnMuaW5wdXRUeXBlUGxhY2Vob2xkZXIgPz8gJycgfCBhZHZhbmNlZE1zZ1N0clwiXG4gICAgW2F0dHIucGF0dGVybl09XCJhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZVBhdHRlcm5cIlxuICAgIFthdHRyLnNpemVdPVwiXG4gICAgICAhYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVTaXplXG4gICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgIDogKGF0dHIuYW5ub3RhdGlvbnMuaW5wdXRUeXBlU2l6ZSB8IHRvTnVtYmVyKSA9PT0gMFxuICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgOiAoYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVTaXplIHwgdG9OdW1iZXIpXG4gICAgXCJcbiAgICBbYXR0ci5tYXhsZW5ndGhdPVwiXG4gICAgICAhYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVNYXhsZW5ndGggPyB1bmRlZmluZWQgOiAoYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVNYXhsZW5ndGggfCB0b051bWJlcilcbiAgICBcIlxuICAgIFthdHRyLm1pbmxlbmd0aF09XCJcbiAgICAgICFhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZU1pbmxlbmd0aCA/IHVuZGVmaW5lZCA6IChhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZU1pbmxlbmd0aCB8IHRvTnVtYmVyKVxuICAgIFwiXG4gICAgW2F0dHIubWF4XT1cImF0dHIuYW5ub3RhdGlvbnMuaW5wdXRUeXBlTWF4XCJcbiAgICBbYXR0ci5taW5dPVwiYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVNaW5cIlxuICAgIFthdHRyLnN0ZXBdPVwiYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVTdGVwXCJcbiAgICBba2NBdHRyaWJ1dGVzXT1cImF0dHIuaHRtbDVEYXRhQW5ub3RhdGlvbnNcIlxuICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwib25CbHVyKClcIlxuICAvPlxuICBAaWYgKGluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICBAbGV0IHZhbHVlcyA9IHZhbHVlT3JWYWx1ZXMoKSA/PyBbXSB8IHRvQXJyYXk7XG4gICAgPGtjLWZpZWxkLWVycm9yc1xuICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyXCJcbiAgICAgIFtkaXNwbGF5YWJsZUVycm9yc109XCJkaXNwbGF5YWJsZUVycm9ycygpXCJcbiAgICAgIFtmaWVsZEluZGV4XT1cImluZGV4XCJcbiAgICA+PC9rYy1maWVsZC1lcnJvcnM+XG4gICAgPGtjLWFkZC1yZW1vdmUtYnV0dG9ucy1tdWx0aS12YWx1ZWQtYXR0cmlidXRlXG4gICAgICBbYXR0cmlidXRlXT1cImF0dHJcIlxuICAgICAgW3ZhbHVlc109XCJ2YWx1ZXNcIlxuICAgICAgW2ZpZWxkSW5kZXhdPVwiaW5kZXhcIlxuICAgICAgKGRpc3BhdGNoRm9ybUFjdGlvbik9XCJkaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCgkZXZlbnQpXCJcbiAgICA+PC9rYy1hZGQtcmVtb3ZlLWJ1dHRvbnMtbXVsdGktdmFsdWVkLWF0dHJpYnV0ZT5cbiAgfVxufVxuIl19
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, output } from '@angular/core';
|
|
2
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
3
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
4
|
-
import { KcClassDirective } from '../../../login/directives/kc-class.directive';
|
|
5
|
-
import { AdvancedMsgStrPipe } from '../../../login/pipes/advanced-msg-str.pipe';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class InputTagSelectsComponent extends ComponentReference {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.attribute = input();
|
|
11
|
-
this.valueOrValues = input();
|
|
12
|
-
this.dispatchFormAction = output();
|
|
13
|
-
this.displayableErrors = input();
|
|
14
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
15
|
-
this.classes = inject(CLASSES);
|
|
16
|
-
this.context = computed(() => {
|
|
17
|
-
const attribute = this.attribute();
|
|
18
|
-
if (attribute) {
|
|
19
|
-
const { inputType } = attribute.annotations;
|
|
20
|
-
switch (inputType) {
|
|
21
|
-
case 'select-radiobuttons':
|
|
22
|
-
return {
|
|
23
|
-
inputType: 'radio',
|
|
24
|
-
classDiv: 'kcInputClassRadio',
|
|
25
|
-
classInput: 'kcInputClassRadioInput',
|
|
26
|
-
classLabel: 'kcInputClassRadioLabel'
|
|
27
|
-
};
|
|
28
|
-
case 'multiselect-checkboxes':
|
|
29
|
-
return {
|
|
30
|
-
inputType: 'checkbox',
|
|
31
|
-
classDiv: 'kcInputClassCheckbox',
|
|
32
|
-
classInput: 'kcInputClassCheckboxInput',
|
|
33
|
-
classLabel: 'kcInputClassCheckboxLabel'
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return null;
|
|
38
|
-
});
|
|
39
|
-
this.options = computed(() => {
|
|
40
|
-
const attribute = this.attribute();
|
|
41
|
-
if (attribute) {
|
|
42
|
-
return (() => {
|
|
43
|
-
walk: {
|
|
44
|
-
const { inputOptionsFromValidation } = attribute.annotations;
|
|
45
|
-
if (inputOptionsFromValidation === undefined) {
|
|
46
|
-
break walk;
|
|
47
|
-
}
|
|
48
|
-
const validator = attribute.validators[inputOptionsFromValidation];
|
|
49
|
-
if (validator === undefined) {
|
|
50
|
-
break walk;
|
|
51
|
-
}
|
|
52
|
-
if (validator.options === undefined) {
|
|
53
|
-
break walk;
|
|
54
|
-
}
|
|
55
|
-
return validator.options;
|
|
56
|
-
}
|
|
57
|
-
return attribute.validators.options?.options ?? [];
|
|
58
|
-
})();
|
|
59
|
-
}
|
|
60
|
-
return [];
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
checked(option) {
|
|
64
|
-
const valueOrValues = this.valueOrValues();
|
|
65
|
-
if (valueOrValues instanceof Array) {
|
|
66
|
-
return valueOrValues.includes(option);
|
|
67
|
-
}
|
|
68
|
-
return valueOrValues === option;
|
|
69
|
-
}
|
|
70
|
-
onChange(event, option) {
|
|
71
|
-
const valueOrValues = this.valueOrValues();
|
|
72
|
-
const isChecked = event.target.checked;
|
|
73
|
-
this.dispatchFormAction.emit({
|
|
74
|
-
action: 'update',
|
|
75
|
-
name: this.attribute()?.name ?? '',
|
|
76
|
-
valueOrValues: (() => {
|
|
77
|
-
if (valueOrValues instanceof Array) {
|
|
78
|
-
const newValues = [...valueOrValues];
|
|
79
|
-
if (isChecked) {
|
|
80
|
-
newValues.push(option);
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
newValues.splice(newValues.indexOf(option), 1);
|
|
84
|
-
}
|
|
85
|
-
return newValues;
|
|
86
|
-
}
|
|
87
|
-
return event.target?.checked ? option : '';
|
|
88
|
-
})()
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
onBlur() {
|
|
92
|
-
this.dispatchFormAction.emit({
|
|
93
|
-
action: 'focus lost',
|
|
94
|
-
name: this.attribute()?.name ?? '',
|
|
95
|
-
fieldIndex: undefined
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputTagSelectsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: InputTagSelectsComponent, isStandalone: true, selector: "kc-input-tag-selects", inputs: { attribute: { classPropertyName: "attribute", publicName: "attribute", isSignal: true, isRequired: false, transformFunction: null }, valueOrValues: { classPropertyName: "valueOrValues", publicName: "valueOrValues", isSignal: true, isRequired: false, transformFunction: null }, displayableErrors: { classPropertyName: "displayableErrors", publicName: "displayableErrors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dispatchFormAction: "dispatchFormAction" }, providers: [
|
|
100
|
-
{
|
|
101
|
-
provide: ComponentReference,
|
|
102
|
-
useExisting: forwardRef(() => InputTagSelectsComponent)
|
|
103
|
-
}
|
|
104
|
-
], usesInheritance: true, ngImport: i0, template: "@let inputType = context()?.inputType;\n@let classInput = context()?.classInput;\n@let classLabel = context()?.classLabel;\n@let classDiv = context()?.classDiv;\n@let attr = attribute();\n@if (attr) {\n @for (option of options(); track option) {\n <div [kcClass]=\"classDiv\">\n <input\n [type]=\"inputType\"\n [id]=\"attr.name + '-' + option\"\n [name]=\"attr.name\"\n [value]=\"option\"\n [kcClass]=\"classInput\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [checked]=\"checked(option)\"\n (change)=\"onChange($event, option)\"\n (blur)=\"onBlur()\"\n />\n <label\n [for]=\"attr.name + '-' + option\"\n [kcClass]=\"[classLabel!, attr.readOnly ? 'kcInputClassRadioCheckboxLabelDisabled' : $any('')]\"\n >\n {{ option | advancedMsgStr }}\n </label>\n </div>\n }\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: AdvancedMsgStrPipe, name: "advancedMsgStr" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
105
|
-
}
|
|
106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: InputTagSelectsComponent, decorators: [{
|
|
107
|
-
type: Component,
|
|
108
|
-
args: [{ standalone: true, imports: [KcClassDirective, AdvancedMsgStrPipe], selector: 'kc-input-tag-selects', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
109
|
-
{
|
|
110
|
-
provide: ComponentReference,
|
|
111
|
-
useExisting: forwardRef(() => InputTagSelectsComponent)
|
|
112
|
-
}
|
|
113
|
-
], template: "@let inputType = context()?.inputType;\n@let classInput = context()?.classInput;\n@let classLabel = context()?.classLabel;\n@let classDiv = context()?.classDiv;\n@let attr = attribute();\n@if (attr) {\n @for (option of options(); track option) {\n <div [kcClass]=\"classDiv\">\n <input\n [type]=\"inputType\"\n [id]=\"attr.name + '-' + option\"\n [name]=\"attr.name\"\n [value]=\"option\"\n [kcClass]=\"classInput\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [checked]=\"checked(option)\"\n (change)=\"onChange($event, option)\"\n (blur)=\"onBlur()\"\n />\n <label\n [for]=\"attr.name + '-' + option\"\n [kcClass]=\"[classLabel!, attr.readOnly ? 'kcInputClassRadioCheckboxLabelDisabled' : $any('')]\"\n >\n {{ option | advancedMsgStr }}\n </label>\n </div>\n }\n}\n", styles: [":host{display:contents}\n"] }]
|
|
114
|
-
}] });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLXNlbGVjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2V5Y2xvYWtpZnktYW5ndWxhci9zcmMvbG9naW4vY29tcG9uZW50cy9pbnB1dC10YWctc2VsZWN0cy9pbnB1dC10YWctc2VsZWN0cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL2lucHV0LXRhZy1zZWxlY3RzL2lucHV0LXRhZy1zZWxlY3RzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUcvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUM1RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7QUEwQjVGLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxrQkFBa0I7SUFwQmhFOztRQXFCSSxjQUFTLEdBQUcsS0FBSyxFQUFhLENBQUM7UUFDL0Isa0JBQWEsR0FBRyxLQUFLLEVBQXFCLENBQUM7UUFDM0MsdUJBQWtCLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFDMUMsc0JBQWlCLEdBQUcsS0FBSyxFQUFvQixDQUFDO1FBQ3JDLG9CQUFlLEdBQUcsTUFBTSxDQUFVLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELFlBQU8sR0FBRyxNQUFNLENBQW9DLE9BQU8sQ0FBQyxDQUFDO1FBRXRFLFlBQU8sR0FLSyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3RCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQyxJQUFJLFNBQVMsRUFBRSxDQUFDO2dCQUNaLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDO2dCQUM1QyxRQUFRLFNBQVMsRUFBRSxDQUFDO29CQUNoQixLQUFLLHFCQUFxQjt3QkFDdEIsT0FBTzs0QkFDSCxTQUFTLEVBQUUsT0FBTzs0QkFDbEIsUUFBUSxFQUFFLG1CQUFtQjs0QkFDN0IsVUFBVSxFQUFFLHdCQUF3Qjs0QkFDcEMsVUFBVSxFQUFFLHdCQUF3Qjt5QkFDdkMsQ0FBQztvQkFDTixLQUFLLHdCQUF3Qjt3QkFDekIsT0FBTzs0QkFDSCxTQUFTLEVBQUUsVUFBVTs0QkFDckIsUUFBUSxFQUFFLHNCQUFzQjs0QkFDaEMsVUFBVSxFQUFFLDJCQUEyQjs0QkFDdkMsVUFBVSxFQUFFLDJCQUEyQjt5QkFDMUMsQ0FBQztnQkFDVixDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsWUFBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDcEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ1osT0FBTyxDQUFDLEdBQUcsRUFBRTtvQkFDVCxJQUFJLEVBQUUsQ0FBQzt3QkFDSCxNQUFNLEVBQUUsMEJBQTBCLEVBQUUsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDO3dCQUU3RCxJQUFJLDBCQUEwQixLQUFLLFNBQVMsRUFBRSxDQUFDOzRCQUMzQyxNQUFNLElBQUksQ0FBQzt3QkFDZixDQUFDO3dCQUVELE1BQU0sU0FBUyxHQUNYLFNBQVMsQ0FBQyxVQUNiLENBQUMsMEJBQTBCLENBQUMsQ0FBQzt3QkFFOUIsSUFBSSxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7NEJBQzFCLE1BQU0sSUFBSSxDQUFDO3dCQUNmLENBQUM7d0JBRUQsSUFBSSxTQUFTLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDOzRCQUNsQyxNQUFNLElBQUksQ0FBQzt3QkFDZixDQUFDO3dCQUVELE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQztvQkFDN0IsQ0FBQztvQkFFRCxPQUFPLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDVCxDQUFDO1lBQ0QsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztLQXlDTjtJQXZDRyxPQUFPLENBQUMsTUFBYztRQUNsQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0MsSUFBSSxhQUFhLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDakMsT0FBTyxhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxPQUFPLGFBQWEsS0FBSyxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFZLEVBQUUsTUFBYztRQUNqQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUksS0FBSyxDQUFDLE1BQTJCLENBQUMsT0FBTyxDQUFDO1FBQzdELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRTtZQUNsQyxhQUFhLEVBQUUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pCLElBQUksYUFBYSxZQUFZLEtBQUssRUFBRSxDQUFDO29CQUNqQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLENBQUM7b0JBRXJDLElBQUksU0FBUyxFQUFFLENBQUM7d0JBQ1osU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDM0IsQ0FBQzt5QkFBTSxDQUFDO3dCQUNKLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDbkQsQ0FBQztvQkFFRCxPQUFPLFNBQVMsQ0FBQztnQkFDckIsQ0FBQztnQkFFRCxPQUFRLEtBQUssQ0FBQyxNQUEyQixFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDckUsQ0FBQyxDQUFDLEVBQUU7U0FDUCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7WUFDekIsTUFBTSxFQUFFLFlBQVk7WUFDcEIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRTtZQUNsQyxVQUFVLEVBQUUsU0FBUztTQUN4QixDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTNHUSx3QkFBd0I7a0dBQXhCLHdCQUF3QixzakJBUHRCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzthQUMxRDtTQUNKLGlEQ3ZDTCx5NkJBNkJBLG1GRENjLGdCQUFnQiwwRkFBRSxrQkFBa0I7OzJGQVdyQyx3QkFBd0I7a0JBcEJwQyxTQUFTO2lDQUNNLElBQUksV0FRUCxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLFlBQ3JDLHNCQUFzQixtQkFFZix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDO3lCQUMxRDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIG91dHB1dCxcbiAgICBTaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDTEFTU0VTLCBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBBdHRyaWJ1dGUgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZS5jbGFzcyc7XG5pbXBvcnQgeyBLY0NsYXNzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9rYy1jbGFzcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQWR2YW5jZWRNc2dTdHJQaXBlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vcGlwZXMvYWR2YW5jZWQtbXNnLXN0ci5waXBlJztcbmltcG9ydCB7XG4gICAgRm9ybUFjdGlvbixcbiAgICBGb3JtRmllbGRFcnJvclxufSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9zZXJ2aWNlcy91c2VyLXByb2ZpbGUtZm9ybS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuICAgICAgICBgXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbS2NDbGFzc0RpcmVjdGl2ZSwgQWR2YW5jZWRNc2dTdHJQaXBlXSxcbiAgICBzZWxlY3RvcjogJ2tjLWlucHV0LXRhZy1zZWxlY3RzJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2lucHV0LXRhZy1zZWxlY3RzLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQ29tcG9uZW50UmVmZXJlbmNlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRUYWdTZWxlY3RzQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFRhZ1NlbGVjdHNDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRSZWZlcmVuY2Uge1xuICAgIGF0dHJpYnV0ZSA9IGlucHV0PEF0dHJpYnV0ZT4oKTtcbiAgICB2YWx1ZU9yVmFsdWVzID0gaW5wdXQ8c3RyaW5nIHwgc3RyaW5nW10+KCk7XG4gICAgZGlzcGF0Y2hGb3JtQWN0aW9uID0gb3V0cHV0PEZvcm1BY3Rpb24+KCk7XG4gICAgZGlzcGxheWFibGVFcnJvcnMgPSBpbnB1dDxGb3JtRmllbGRFcnJvcltdPigpO1xuICAgIG92ZXJyaWRlIGRvVXNlRGVmYXVsdENzcyA9IGluamVjdDxib29sZWFuPihVU0VfREVGQVVMVF9DU1MpO1xuICAgIG92ZXJyaWRlIGNsYXNzZXMgPSBpbmplY3Q8UGFydGlhbDxSZWNvcmQ8Q2xhc3NLZXksIHN0cmluZz4+PihDTEFTU0VTKTtcblxuICAgIGNvbnRleHQ6IFNpZ25hbDx7XG4gICAgICAgIGlucHV0VHlwZTogJ3JhZGlvJyB8ICdjaGVja2JveCc7XG4gICAgICAgIGNsYXNzRGl2OiBDbGFzc0tleTtcbiAgICAgICAgY2xhc3NJbnB1dDogQ2xhc3NLZXk7XG4gICAgICAgIGNsYXNzTGFiZWw6IENsYXNzS2V5O1xuICAgIH0gfCBudWxsPiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgYXR0cmlidXRlID0gdGhpcy5hdHRyaWJ1dGUoKTtcbiAgICAgICAgaWYgKGF0dHJpYnV0ZSkge1xuICAgICAgICAgICAgY29uc3QgeyBpbnB1dFR5cGUgfSA9IGF0dHJpYnV0ZS5hbm5vdGF0aW9ucztcbiAgICAgICAgICAgIHN3aXRjaCAoaW5wdXRUeXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc2VsZWN0LXJhZGlvYnV0dG9ucyc6XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICdyYWRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc0RpdjogJ2tjSW5wdXRDbGFzc1JhZGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzSW5wdXQ6ICdrY0lucHV0Q2xhc3NSYWRpb0lucHV0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTGFiZWw6ICdrY0lucHV0Q2xhc3NSYWRpb0xhYmVsJ1xuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGNhc2UgJ211bHRpc2VsZWN0LWNoZWNrYm94ZXMnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRUeXBlOiAnY2hlY2tib3gnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NEaXY6ICdrY0lucHV0Q2xhc3NDaGVja2JveCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc0lucHV0OiAna2NJbnB1dENsYXNzQ2hlY2tib3hJbnB1dCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc0xhYmVsOiAna2NJbnB1dENsYXNzQ2hlY2tib3hMYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9KTtcblxuICAgIG9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZSA9IHRoaXMuYXR0cmlidXRlKCk7XG4gICAgICAgIGlmIChhdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHJldHVybiAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHdhbGs6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbiB9ID0gYXR0cmlidXRlLmFubm90YXRpb25zO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhayB3YWxrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdG9yID0gKFxuICAgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlLnZhbGlkYXRvcnMgYXMgUmVjb3JkPHN0cmluZywgeyBvcHRpb25zPzogc3RyaW5nW10gfT5cbiAgICAgICAgICAgICAgICAgICAgKVtpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbl07XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRvciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhayB3YWxrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRvci5vcHRpb25zID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrIHdhbGs7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdG9yLm9wdGlvbnM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZS52YWxpZGF0b3JzLm9wdGlvbnM/Lm9wdGlvbnMgPz8gW107XG4gICAgICAgICAgICB9KSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9KTtcblxuICAgIGNoZWNrZWQob3B0aW9uOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgdmFsdWVPclZhbHVlcyA9IHRoaXMudmFsdWVPclZhbHVlcygpO1xuICAgICAgICBpZiAodmFsdWVPclZhbHVlcyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWVPclZhbHVlcy5pbmNsdWRlcyhvcHRpb24pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZU9yVmFsdWVzID09PSBvcHRpb247XG4gICAgfVxuXG4gICAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50LCBvcHRpb246IHN0cmluZykge1xuICAgICAgICBjb25zdCB2YWx1ZU9yVmFsdWVzID0gdGhpcy52YWx1ZU9yVmFsdWVzKCk7XG4gICAgICAgIGNvbnN0IGlzQ2hlY2tlZCA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZDtcbiAgICAgICAgdGhpcy5kaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246ICd1cGRhdGUnLFxuICAgICAgICAgICAgbmFtZTogdGhpcy5hdHRyaWJ1dGUoKT8ubmFtZSA/PyAnJyxcbiAgICAgICAgICAgIHZhbHVlT3JWYWx1ZXM6ICgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlT3JWYWx1ZXMgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdWYWx1ZXMgPSBbLi4udmFsdWVPclZhbHVlc107XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzQ2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3VmFsdWVzLnB1c2gob3B0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld1ZhbHVlcy5zcGxpY2UobmV3VmFsdWVzLmluZGV4T2Yob3B0aW9uKSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3VmFsdWVzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpPy5jaGVja2VkID8gb3B0aW9uIDogJyc7XG4gICAgICAgICAgICB9KSgpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQmx1cigpIHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246ICdmb2N1cyBsb3N0JyxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuYXR0cmlidXRlKCk/Lm5hbWUgPz8gJycsXG4gICAgICAgICAgICBmaWVsZEluZGV4OiB1bmRlZmluZWRcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiQGxldCBpbnB1dFR5cGUgPSBjb250ZXh0KCk/LmlucHV0VHlwZTtcbkBsZXQgY2xhc3NJbnB1dCA9IGNvbnRleHQoKT8uY2xhc3NJbnB1dDtcbkBsZXQgY2xhc3NMYWJlbCA9IGNvbnRleHQoKT8uY2xhc3NMYWJlbDtcbkBsZXQgY2xhc3NEaXYgPSBjb250ZXh0KCk/LmNsYXNzRGl2O1xuQGxldCBhdHRyID0gYXR0cmlidXRlKCk7XG5AaWYgKGF0dHIpIHtcbiAgQGZvciAob3B0aW9uIG9mIG9wdGlvbnMoKTsgdHJhY2sgb3B0aW9uKSB7XG4gICAgPGRpdiBba2NDbGFzc109XCJjbGFzc0RpdlwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIFt0eXBlXT1cImlucHV0VHlwZVwiXG4gICAgICAgIFtpZF09XCJhdHRyLm5hbWUgKyAnLScgKyBvcHRpb25cIlxuICAgICAgICBbbmFtZV09XCJhdHRyLm5hbWVcIlxuICAgICAgICBbdmFsdWVdPVwib3B0aW9uXCJcbiAgICAgICAgW2tjQ2xhc3NdPVwiY2xhc3NJbnB1dFwiXG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCIhIWRpc3BsYXlhYmxlRXJyb3JzKCk/Lmxlbmd0aFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJhdHRyLnJlYWRPbmx5XCJcbiAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZChvcHRpb24pXCJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQsIG9wdGlvbilcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAvPlxuICAgICAgPGxhYmVsXG4gICAgICAgIFtmb3JdPVwiYXR0ci5uYW1lICsgJy0nICsgb3B0aW9uXCJcbiAgICAgICAgW2tjQ2xhc3NdPVwiW2NsYXNzTGFiZWwhLCBhdHRyLnJlYWRPbmx5ID8gJ2tjSW5wdXRDbGFzc1JhZGlvQ2hlY2tib3hMYWJlbERpc2FibGVkJyA6ICRhbnkoJycpXVwiXG4gICAgICA+XG4gICAgICAgIHt7IG9wdGlvbiB8IGFkdmFuY2VkTXNnU3RyIH19XG4gICAgICA8L2xhYmVsPlxuICAgIDwvZGl2PlxuICB9XG59XG4iXX0=
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject } from '@angular/core';
|
|
2
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
3
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
4
|
-
import { KcClassDirective } from '../../../login/directives/kc-class.directive';
|
|
5
|
-
import { MsgStrPipe } from '../../../login/pipes/msg-str.pipe';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class LogoutOtherSessionsComponent extends ComponentReference {
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
10
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
11
|
-
this.classes = inject(CLASSES);
|
|
12
|
-
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: LogoutOtherSessionsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: LogoutOtherSessionsComponent, isStandalone: true, selector: "kc-logout-other-sessions", providers: [
|
|
15
|
-
{
|
|
16
|
-
provide: ComponentReference,
|
|
17
|
-
useExisting: forwardRef(() => LogoutOtherSessionsComponent)
|
|
18
|
-
}
|
|
19
|
-
], usesInheritance: true, ngImport: i0, template: "<div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n>\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\">\n <div class=\"checkbox\">\n <label for=\"logout-sessions\">\n <input\n type=\"checkbox\"\n id=\"logout-sessions\"\n name=\"logout-sessions\"\n value=\"on\"\n defaultChecked=\"true\"\n />\n {{ 'logoutOtherSessions' | msgStr }}\n </label>\n </div>\n </div>\n</div>\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: MsgStrPipe, name: "msgStr" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: LogoutOtherSessionsComponent, decorators: [{
|
|
22
|
-
type: Component,
|
|
23
|
-
args: [{ selector: 'kc-logout-other-sessions', standalone: true, imports: [KcClassDirective, MsgStrPipe], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
24
|
-
{
|
|
25
|
-
provide: ComponentReference,
|
|
26
|
-
useExisting: forwardRef(() => LogoutOtherSessionsComponent)
|
|
27
|
-
}
|
|
28
|
-
], template: "<div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n>\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\">\n <div class=\"checkbox\">\n <label for=\"logout-sessions\">\n <input\n type=\"checkbox\"\n id=\"logout-sessions\"\n name=\"logout-sessions\"\n value=\"on\"\n defaultChecked=\"true\"\n />\n {{ 'logoutOtherSessions' | msgStr }}\n </label>\n </div>\n </div>\n</div>\n", styles: [":host{display:contents}\n"] }]
|
|
29
|
-
}] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LW90aGVyLXNlc3Npb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tleWNsb2FraWZ5LWFuZ3VsYXIvc3JjL2xvZ2luL2NvbXBvbmVudHMvbG9nb3V0LW90aGVyLXNlc3Npb25zL2xvZ291dC1vdGhlci1zZXNzaW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL2xvZ291dC1vdGhlci1zZXNzaW9ucy9sb2dvdXQtb3RoZXItc2Vzc2lvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDbEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDNUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtDQUErQyxDQUFDOztBQXNCM0UsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGtCQUFrQjtJQXBCcEU7O1FBcUJhLG9CQUFlLEdBQUcsTUFBTSxDQUFVLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELFlBQU8sR0FBRyxNQUFNLENBQW9DLE9BQU8sQ0FBQyxDQUFDO0tBQ3pFOzhHQUhZLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHVFQVAxQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNEJBQTRCLENBQUM7YUFDOUQ7U0FDSixpREN6QkwseWRBbUJBLG1GREZjLGdCQUFnQiwwRkFBRSxVQUFVOzsyRkFVN0IsNEJBQTRCO2tCQXBCeEMsU0FBUzsrQkFDSSwwQkFBMEIsY0FReEIsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLG1CQUN0Qix1QkFBdUIsQ0FBQyxNQUFNLGFBRXBDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDO3lCQUM5RDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ0xBU1NFUywgVVNFX0RFRkFVTFRfQ1NTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZS5jbGFzcyc7XG5pbXBvcnQgeyBLY0NsYXNzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9rYy1jbGFzcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTXNnU3RyUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3BpcGVzL21zZy1zdHIucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna2MtbG9nb3V0LW90aGVyLXNlc3Npb25zJyxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuICAgICAgICBgXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtLY0NsYXNzRGlyZWN0aXZlLCBNc2dTdHJQaXBlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbG9nb3V0LW90aGVyLXNlc3Npb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQ29tcG9uZW50UmVmZXJlbmNlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTG9nb3V0T3RoZXJTZXNzaW9uc0NvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTG9nb3V0T3RoZXJTZXNzaW9uc0NvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAgb3ZlcnJpZGUgZG9Vc2VEZWZhdWx0Q3NzID0gaW5qZWN0PGJvb2xlYW4+KFVTRV9ERUZBVUxUX0NTUyk7XG4gICAgb3ZlcnJpZGUgY2xhc3NlcyA9IGluamVjdDxQYXJ0aWFsPFJlY29yZDxDbGFzc0tleSwgc3RyaW5nPj4+KENMQVNTRVMpO1xufVxuIiwiPGRpdlxuICBpZD1cImtjLWZvcm0tb3B0aW9uc1wiXG4gIFtrY0NsYXNzXT1cIidrY0Zvcm1PcHRpb25zQ2xhc3MnXCJcbj5cbiAgPGRpdiBba2NDbGFzc109XCIna2NGb3JtT3B0aW9uc1dyYXBwZXJDbGFzcydcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3hcIj5cbiAgICAgIDxsYWJlbCBmb3I9XCJsb2dvdXQtc2Vzc2lvbnNcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICBpZD1cImxvZ291dC1zZXNzaW9uc1wiXG4gICAgICAgICAgbmFtZT1cImxvZ291dC1zZXNzaW9uc1wiXG4gICAgICAgICAgdmFsdWU9XCJvblwiXG4gICAgICAgICAgZGVmYXVsdENoZWNrZWQ9XCJ0cnVlXCJcbiAgICAgICAgLz5cbiAgICAgICAge3sgJ2xvZ291dE90aGVyU2Vzc2lvbnMnIHwgbXNnU3RyIH19XG4gICAgICA8L2xhYmVsPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject, input, Renderer2, signal } from '@angular/core';
|
|
3
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
4
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
5
|
-
import { KcClassDirective } from '../../../login/directives/kc-class.directive';
|
|
6
|
-
import { MsgStrPipe } from '../../../login/pipes/msg-str.pipe';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class PasswordWrapperComponent extends ComponentReference {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.renderer = inject(Renderer2);
|
|
12
|
-
this.passwordInputId = input.required();
|
|
13
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
14
|
-
this.classes = inject(CLASSES);
|
|
15
|
-
this.isPasswordRevealed = signal(false);
|
|
16
|
-
}
|
|
17
|
-
togglePasswordVisibility() {
|
|
18
|
-
this.isPasswordRevealed.update(revealed => !revealed);
|
|
19
|
-
this.setPasswordInputType();
|
|
20
|
-
}
|
|
21
|
-
setPasswordInputType() {
|
|
22
|
-
const input = document.getElementById(this.passwordInputId());
|
|
23
|
-
if (input) {
|
|
24
|
-
this.renderer.setProperty(input, 'type', this.isPasswordRevealed() ? 'text' : 'password');
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: PasswordWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.6", type: PasswordWrapperComponent, isStandalone: true, selector: "kc-password-wrapper", inputs: { passwordInputId: { classPropertyName: "passwordInputId", publicName: "passwordInputId", isSignal: true, isRequired: true, transformFunction: null } }, providers: [
|
|
29
|
-
{
|
|
30
|
-
provide: ComponentReference,
|
|
31
|
-
useExisting: forwardRef(() => PasswordWrapperComponent)
|
|
32
|
-
}
|
|
33
|
-
], usesInheritance: true, ngImport: i0, template: "<div [kcClass]=\"'kcInputGroup'\">\n <ng-content></ng-content>\n <button\n type=\"button\"\n [kcClass]=\"'kcFormPasswordVisibilityButtonClass'\"\n [attr.aria-label]=\"(isPasswordRevealed() ? 'hidePassword' : 'showPassword') | msgStr\"\n [attr.aria-controls]=\"passwordInputId()\"\n (click)=\"togglePasswordVisibility()\"\n >\n <i\n [kcClass]=\"isPasswordRevealed() ? 'kcFormPasswordVisibilityIconHide' : 'kcFormPasswordVisibilityIconShow'\"\n aria-hidden=\"true\"\n ></i>\n </button>\n</div>\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: MsgStrPipe, name: "msgStr" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: PasswordWrapperComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: 'kc-password-wrapper', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [KcClassDirective, AsyncPipe, MsgStrPipe], providers: [
|
|
38
|
-
{
|
|
39
|
-
provide: ComponentReference,
|
|
40
|
-
useExisting: forwardRef(() => PasswordWrapperComponent)
|
|
41
|
-
}
|
|
42
|
-
], template: "<div [kcClass]=\"'kcInputGroup'\">\n <ng-content></ng-content>\n <button\n type=\"button\"\n [kcClass]=\"'kcFormPasswordVisibilityButtonClass'\"\n [attr.aria-label]=\"(isPasswordRevealed() ? 'hidePassword' : 'showPassword') | msgStr\"\n [attr.aria-controls]=\"passwordInputId()\"\n (click)=\"togglePasswordVisibility()\"\n >\n <i\n [kcClass]=\"isPasswordRevealed() ? 'kcFormPasswordVisibilityIconHide' : 'kcFormPasswordVisibilityIconShow'\"\n aria-hidden=\"true\"\n ></i>\n </button>\n</div>\n", styles: [":host{display:contents}\n"] }]
|
|
43
|
-
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtd3JhcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL3Bhc3N3b3JkLXdyYXBwZXIvcGFzc3dvcmQtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL3Bhc3N3b3JkLXdyYXBwZXIvcGFzc3dvcmQtd3JhcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7QUFzQjNFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxrQkFBa0I7SUFwQmhFOztRQXFCWSxhQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JDLG9CQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsTUFBTSxDQUFVLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELFlBQU8sR0FBRyxNQUFNLENBQW9DLE9BQU8sQ0FBQyxDQUFDO1FBRXRFLHVCQUFrQixHQUE0QixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7S0FpQi9EO0lBZkcsd0JBQXdCO1FBQ3BCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztRQUM5RCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQ3JCLEtBQUssRUFDTCxNQUFNLEVBQ04sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUNsRCxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7OEdBdEJRLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG1PQVB0QjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7YUFDMUQ7U0FDSixpRENuQ0wsa2hCQWVBLG1GRGFjLGdCQUFnQiwwRkFBYSxVQUFVOzsyRkFTeEMsd0JBQXdCO2tCQXBCcEMsU0FBUzsrQkFDSSxxQkFBcUIsY0FRbkIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxhQUV2Qzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQzt5QkFDMUQ7cUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIHNpZ25hbCxcbiAgICBXcml0YWJsZVNpZ25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENMQVNTRVMsIFVTRV9ERUZBVUxUX0NTUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi9wdWJsaWMtYXBpJztcbmltcG9ydCB7IENsYXNzS2V5IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UuY2xhc3MnO1xuaW1wb3J0IHsgS2NDbGFzc0RpcmVjdGl2ZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2RpcmVjdGl2ZXMva2MtY2xhc3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1zZ1N0clBpcGUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9waXBlcy9tc2ctc3RyLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2tjLXBhc3N3b3JkLXdyYXBwZXInLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaW1wb3J0czogW0tjQ2xhc3NEaXJlY3RpdmUsIEFzeW5jUGlwZSwgTXNnU3RyUGlwZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDb21wb25lbnRSZWZlcmVuY2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQYXNzd29yZFdyYXBwZXJDb21wb25lbnQpXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkV3JhcHBlckNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHBhc3N3b3JkSW5wdXRJZCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oQ0xBU1NFUyk7XG5cbiAgICBpc1Bhc3N3b3JkUmV2ZWFsZWQ6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Bhc3N3b3JkUmV2ZWFsZWQudXBkYXRlKHJldmVhbGVkID0+ICFyZXZlYWxlZCk7XG4gICAgICAgIHRoaXMuc2V0UGFzc3dvcmRJbnB1dFR5cGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFBhc3N3b3JkSW5wdXRUeXBlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMucGFzc3dvcmRJbnB1dElkKCkpO1xuICAgICAgICBpZiAoaW5wdXQpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkoXG4gICAgICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICAgICAgJ3R5cGUnLFxuICAgICAgICAgICAgICAgIHRoaXMuaXNQYXNzd29yZFJldmVhbGVkKCkgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBba2NDbGFzc109XCIna2NJbnB1dEdyb3VwJ1wiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBba2NDbGFzc109XCIna2NGb3JtUGFzc3dvcmRWaXNpYmlsaXR5QnV0dG9uQ2xhc3MnXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIihpc1Bhc3N3b3JkUmV2ZWFsZWQoKSA/ICdoaWRlUGFzc3dvcmQnIDogJ3Nob3dQYXNzd29yZCcpIHwgbXNnU3RyXCJcbiAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cInBhc3N3b3JkSW5wdXRJZCgpXCJcbiAgICAoY2xpY2spPVwidG9nZ2xlUGFzc3dvcmRWaXNpYmlsaXR5KClcIlxuICA+XG4gICAgPGlcbiAgICAgIFtrY0NsYXNzXT1cImlzUGFzc3dvcmRSZXZlYWxlZCgpID8gJ2tjRm9ybVBhc3N3b3JkVmlzaWJpbGl0eUljb25IaWRlJyA6ICdrY0Zvcm1QYXNzd29yZFZpc2liaWxpdHlJY29uU2hvdydcIlxuICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICA+PC9pPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, output } from '@angular/core';
|
|
2
|
-
import { CLASSES, USE_DEFAULT_CSS } from '../../../lib/public-api';
|
|
3
|
-
import { ComponentReference } from '../../../login/classes/component-reference.class';
|
|
4
|
-
import { KcClassDirective } from '../../../login/directives/kc-class.directive';
|
|
5
|
-
import { AdvancedMsgStrPipe } from '../../../login/pipes/advanced-msg-str.pipe';
|
|
6
|
-
import { ToNumberPipe } from '../../../login/pipes/to-number.pipe';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class SelectTagComponent extends ComponentReference {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.attribute = input();
|
|
12
|
-
this.valueOrValues = input();
|
|
13
|
-
this.displayableErrors = input();
|
|
14
|
-
this.dispatchFormAction = output();
|
|
15
|
-
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
16
|
-
this.classes = inject(CLASSES);
|
|
17
|
-
this.isMultiple = computed(() => {
|
|
18
|
-
return this.attribute()?.annotations?.inputType === 'multiselect';
|
|
19
|
-
});
|
|
20
|
-
this.options = computed(() => {
|
|
21
|
-
const attribute = this.attribute();
|
|
22
|
-
if (attribute) {
|
|
23
|
-
return (() => {
|
|
24
|
-
walk: {
|
|
25
|
-
const { inputOptionsFromValidation } = attribute.annotations;
|
|
26
|
-
if (inputOptionsFromValidation === undefined) {
|
|
27
|
-
break walk;
|
|
28
|
-
}
|
|
29
|
-
const validator = attribute.validators[inputOptionsFromValidation];
|
|
30
|
-
if (validator === undefined) {
|
|
31
|
-
break walk;
|
|
32
|
-
}
|
|
33
|
-
if (validator.options === undefined) {
|
|
34
|
-
break walk;
|
|
35
|
-
}
|
|
36
|
-
return validator.options;
|
|
37
|
-
}
|
|
38
|
-
return attribute.validators.options?.options ?? [];
|
|
39
|
-
})();
|
|
40
|
-
}
|
|
41
|
-
return [];
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
onChange(event) {
|
|
45
|
-
this.dispatchFormAction.emit({
|
|
46
|
-
action: 'update',
|
|
47
|
-
name: this.attribute()?.name ?? '',
|
|
48
|
-
valueOrValues: (() => {
|
|
49
|
-
if (this.isMultiple()) {
|
|
50
|
-
return Array.from(event.target.selectedOptions).map(option => option.value);
|
|
51
|
-
}
|
|
52
|
-
return event.target.value;
|
|
53
|
-
})()
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
onBlur() {
|
|
57
|
-
this.dispatchFormAction.emit({
|
|
58
|
-
action: 'focus lost',
|
|
59
|
-
name: this.attribute()?.name ?? '',
|
|
60
|
-
fieldIndex: undefined
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SelectTagComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
64
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: SelectTagComponent, isStandalone: true, selector: "kc-select-tag", inputs: { attribute: { classPropertyName: "attribute", publicName: "attribute", isSignal: true, isRequired: false, transformFunction: null }, valueOrValues: { classPropertyName: "valueOrValues", publicName: "valueOrValues", isSignal: true, isRequired: false, transformFunction: null }, displayableErrors: { classPropertyName: "displayableErrors", publicName: "displayableErrors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dispatchFormAction: "dispatchFormAction" }, providers: [
|
|
65
|
-
{
|
|
66
|
-
provide: ComponentReference,
|
|
67
|
-
useExisting: forwardRef(() => SelectTagComponent)
|
|
68
|
-
}
|
|
69
|
-
], usesInheritance: true, ngImport: i0, template: "@let attr = attribute();\n@let multiple = isMultiple();\n@if (attr) {\n <select\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [value]=\"valueOrValues()\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [multiple]=\"multiple\"\n [size]=\"!attr.annotations.inputTypeSize ? undefined : (attr.annotations.inputTypeSize | toNumber)\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n >\n @if (!multiple) {\n <option value=\"\"></option>\n }\n @for (option of options(); track option) {\n <option [value]=\"option\">\n @if (!!attr.annotations.inputOptionLabels) {\n {{ attr.annotations.inputOptionLabels[option] ?? option | advancedMsgStr }}\n } @else if (!!attr.annotations.inputOptionLabelsI18nPrefix) {\n {{ attr.annotations.inputOptionLabelsI18nPrefix + '.' + option | advancedMsgStr }}\n } @else {\n {{ option }}\n }\n </option>\n }\n </select>\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: ToNumberPipe, name: "toNumber" }, { kind: "pipe", type: AdvancedMsgStrPipe, name: "advancedMsgStr" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
70
|
-
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SelectTagComponent, decorators: [{
|
|
72
|
-
type: Component,
|
|
73
|
-
args: [{ standalone: true, imports: [KcClassDirective, ToNumberPipe, AdvancedMsgStrPipe], selector: 'kc-select-tag', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
74
|
-
{
|
|
75
|
-
provide: ComponentReference,
|
|
76
|
-
useExisting: forwardRef(() => SelectTagComponent)
|
|
77
|
-
}
|
|
78
|
-
], template: "@let attr = attribute();\n@let multiple = isMultiple();\n@if (attr) {\n <select\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [value]=\"valueOrValues()\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [multiple]=\"multiple\"\n [size]=\"!attr.annotations.inputTypeSize ? undefined : (attr.annotations.inputTypeSize | toNumber)\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n >\n @if (!multiple) {\n <option value=\"\"></option>\n }\n @for (option of options(); track option) {\n <option [value]=\"option\">\n @if (!!attr.annotations.inputOptionLabels) {\n {{ attr.annotations.inputOptionLabels[option] ?? option | advancedMsgStr }}\n } @else if (!!attr.annotations.inputOptionLabelsI18nPrefix) {\n {{ attr.annotations.inputOptionLabelsI18nPrefix + '.' + option | advancedMsgStr }}\n } @else {\n {{ option }}\n }\n </option>\n }\n </select>\n}\n", styles: [":host{display:contents}\n"] }]
|
|
79
|
-
}] });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXRhZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL3NlbGVjdC10YWcvc2VsZWN0LXRhZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXljbG9ha2lmeS1hbmd1bGFyL3NyYy9sb2dpbi9jb21wb25lbnRzL3NlbGVjdC10YWcvc2VsZWN0LXRhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDbEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDNUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDNUYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlEQUFpRCxDQUFDOztBQTBCL0UsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQXBCMUQ7O1FBcUJJLGNBQVMsR0FBRyxLQUFLLEVBQWEsQ0FBQztRQUMvQixrQkFBYSxHQUFHLEtBQUssRUFBcUIsQ0FBQztRQUMzQyxzQkFBaUIsR0FBRyxLQUFLLEVBQW9CLENBQUM7UUFDOUMsdUJBQWtCLEdBQUcsTUFBTSxFQUFjLENBQUM7UUFDakMsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsT0FBTyxDQUFDLENB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgb3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ0xBU1NFUywgVVNFX0RFRkFVTFRfQ1NTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQXR0cmlidXRlIH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vS2NDb250ZXh0JztcbmltcG9ydCB7IENsYXNzS2V5IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UuY2xhc3MnO1xuaW1wb3J0IHsgS2NDbGFzc0RpcmVjdGl2ZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2RpcmVjdGl2ZXMva2MtY2xhc3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFkdmFuY2VkTXNnU3RyUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3BpcGVzL2FkdmFuY2VkLW1zZy1zdHIucGlwZSc7XG5pbXBvcnQgeyBUb051bWJlclBpcGUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9waXBlcy90by1udW1iZXIucGlwZSc7XG5pbXBvcnQge1xuICAgIEZvcm1BY3Rpb24sXG4gICAgRm9ybUZpZWxkRXJyb3Jcbn0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vc2VydmljZXMvdXNlci1wcm9maWxlLWZvcm0uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgYFxuICAgIF0sXG4gICAgaW1wb3J0czogW0tjQ2xhc3NEaXJlY3RpdmUsIFRvTnVtYmVyUGlwZSwgQWR2YW5jZWRNc2dTdHJQaXBlXSxcbiAgICBzZWxlY3RvcjogJ2tjLXNlbGVjdC10YWcnLFxuICAgIHRlbXBsYXRlVXJsOiAnc2VsZWN0LXRhZy5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdFRhZ0NvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VGFnQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50UmVmZXJlbmNlIHtcbiAgICBhdHRyaWJ1dGUgPSBpbnB1dDxBdHRyaWJ1dGU+KCk7XG4gICAgdmFsdWVPclZhbHVlcyA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdPigpO1xuICAgIGRpc3BsYXlhYmxlRXJyb3JzID0gaW5wdXQ8Rm9ybUZpZWxkRXJyb3JbXT4oKTtcbiAgICBkaXNwYXRjaEZvcm1BY3Rpb24gPSBvdXRwdXQ8Rm9ybUFjdGlvbj4oKTtcbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oQ0xBU1NFUyk7XG5cbiAgICBpc011bHRpcGxlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hdHRyaWJ1dGUoKT8uYW5ub3RhdGlvbnM/LmlucHV0VHlwZSA9PT0gJ211bHRpc2VsZWN0JztcbiAgICB9KTtcblxuICAgIG9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZSA9IHRoaXMuYXR0cmlidXRlKCk7XG4gICAgICAgIGlmIChhdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHJldHVybiAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHdhbGs6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbiB9ID0gYXR0cmlidXRlLmFubm90YXRpb25zO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhayB3YWxrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdG9yID0gKFxuICAgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlLnZhbGlkYXRvcnMgYXMgUmVjb3JkPHN0cmluZywgeyBvcHRpb25zPzogc3RyaW5nW10gfT5cbiAgICAgICAgICAgICAgICAgICAgKVtpbnB1dE9wdGlvbnNGcm9tVmFsaWRhdGlvbl07XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRvciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhayB3YWxrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRvci5vcHRpb25zID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrIHdhbGs7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdG9yLm9wdGlvbnM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZS52YWxpZGF0b3JzLm9wdGlvbnM/Lm9wdGlvbnMgPz8gW107XG4gICAgICAgICAgICB9KSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9KTtcblxuICAgIG9uQ2hhbmdlKGV2ZW50OiBFdmVudCkge1xuICAgICAgICB0aGlzLmRpc3BhdGNoRm9ybUFjdGlvbi5lbWl0KHtcbiAgICAgICAgICAgIGFjdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLmF0dHJpYnV0ZSgpPy5uYW1lID8/ICcnLFxuICAgICAgICAgICAgdmFsdWVPclZhbHVlczogKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc011bHRpcGxlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxTZWxlY3RFbGVtZW50KS5zZWxlY3RlZE9wdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgKS5tYXAob3B0aW9uID0+IG9wdGlvbi52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIChldmVudC50YXJnZXQgYXMgSFRNTFNlbGVjdEVsZW1lbnQpLnZhbHVlO1xuICAgICAgICAgICAgfSkoKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkJsdXIoKSB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hGb3JtQWN0aW9uLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiAnZm9jdXMgbG9zdCcsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLmF0dHJpYnV0ZSgpPy5uYW1lID8/ICcnLFxuICAgICAgICAgICAgZmllbGRJbmRleDogdW5kZWZpbmVkXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIkBsZXQgYXR0ciA9IGF0dHJpYnV0ZSgpO1xuQGxldCBtdWx0aXBsZSA9IGlzTXVsdGlwbGUoKTtcbkBpZiAoYXR0cikge1xuICA8c2VsZWN0XG4gICAgW2lkXT1cImF0dHIubmFtZVwiXG4gICAgW25hbWVdPVwiYXR0ci5uYW1lXCJcbiAgICBbdmFsdWVdPVwidmFsdWVPclZhbHVlcygpXCJcbiAgICBba2NDbGFzc109XCIna2NJbnB1dENsYXNzJ1wiXG4gICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIiEhZGlzcGxheWFibGVFcnJvcnMoKT8ubGVuZ3RoXCJcbiAgICBbZGlzYWJsZWRdPVwiYXR0ci5yZWFkT25seVwiXG4gICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICBbc2l6ZV09XCIhYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVTaXplID8gdW5kZWZpbmVkIDogKGF0dHIuYW5ub3RhdGlvbnMuaW5wdXRUeXBlU2l6ZSB8IHRvTnVtYmVyKVwiXG4gICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gID5cbiAgICBAaWYgKCFtdWx0aXBsZSkge1xuICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICAgIH1cbiAgICBAZm9yIChvcHRpb24gb2Ygb3B0aW9ucygpOyB0cmFjayBvcHRpb24pIHtcbiAgICAgIDxvcHRpb24gW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAgICBAaWYgKCEhYXR0ci5hbm5vdGF0aW9ucy5pbnB1dE9wdGlvbkxhYmVscykge1xuICAgICAgICAgIHt7IGF0dHIuYW5ub3RhdGlvbnMuaW5wdXRPcHRpb25MYWJlbHNbb3B0aW9uXSA/PyBvcHRpb24gfCBhZHZhbmNlZE1zZ1N0ciB9fVxuICAgICAgICB9IEBlbHNlIGlmICghIWF0dHIuYW5ub3RhdGlvbnMuaW5wdXRPcHRpb25MYWJlbHNJMThuUHJlZml4KSB7XG4gICAgICAgICAge3sgYXR0ci5hbm5vdGF0aW9ucy5pbnB1dE9wdGlvbkxhYmVsc0kxOG5QcmVmaXggKyAnLicgKyBvcHRpb24gfCBhZHZhbmNlZE1zZ1N0ciB9fVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICB7eyBvcHRpb24gfX1cbiAgICAgICAgfVxuICAgICAgPC9vcHRpb24+XG4gICAgfVxuICA8L3NlbGVjdD5cbn1cbiJdfQ==
|