@keycloakify/angular 0.0.1-rc.18 → 0.0.1-rc.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/account/containers/template/template.component.d.ts +18 -5
- package/account/pages/account/account.component.d.ts +3 -2
- package/account/pages/applications/applications.component.d.ts +3 -2
- package/account/pages/federatedIdentity/federatedIdentity.component.d.ts +3 -2
- package/account/pages/log/log.component.d.ts +3 -2
- package/account/pages/password/password.component.d.ts +3 -2
- package/account/pages/sessions/sessions.component.d.ts +3 -2
- package/account/pages/totp/totp.component.d.ts +3 -2
- package/esm2022/account/containers/template/template.component.mjs +40 -7
- package/esm2022/account/pages/account/account.component.mjs +6 -5
- package/esm2022/account/pages/applications/applications.component.mjs +6 -5
- package/esm2022/account/pages/federatedIdentity/federatedIdentity.component.mjs +6 -5
- package/esm2022/account/pages/log/log.component.mjs +6 -5
- package/esm2022/account/pages/password/password.component.mjs +6 -5
- package/esm2022/account/pages/sessions/sessions.component.mjs +6 -5
- package/esm2022/account/pages/totp/totp.component.mjs +6 -5
- package/esm2022/login/containers/template/template.component.mjs +81 -13
- package/esm2022/login/pages/code/code.component.mjs +14 -8
- package/esm2022/login/pages/delete-account-confirm/delete-account-confirm.component.mjs +12 -6
- package/esm2022/login/pages/delete-credential/delete-credential.component.mjs +10 -9
- package/esm2022/login/pages/error/error.component.mjs +14 -8
- package/esm2022/login/pages/frontchannel-logout/frontchannel-logout.component.mjs +12 -10
- package/esm2022/login/pages/idp-review-user-profile/idp-review-user-profile.component.mjs +12 -11
- package/esm2022/login/pages/info/info.component.mjs +11 -10
- package/esm2022/login/pages/login/login.component.mjs +13 -12
- package/esm2022/login/pages/login-config-totp/login-config-totp.component.mjs +12 -11
- package/esm2022/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.mjs +11 -14
- package/esm2022/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.mjs +11 -14
- package/esm2022/login/pages/login-idp-link-email/login-idp-link-email.component.mjs +10 -13
- package/esm2022/login/pages/login-oauth-grant/login-oauth-grant.component.mjs +11 -13
- package/esm2022/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.mjs +10 -9
- package/esm2022/login/pages/login-otp/login-otp.component.mjs +11 -10
- package/esm2022/login/pages/login-page-expired/login-page-expired.component.mjs +10 -9
- package/esm2022/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.mjs +11 -6
- package/esm2022/login/pages/login-password/login-password.component.mjs +13 -11
- package/esm2022/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.mjs +12 -11
- package/esm2022/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.mjs +12 -11
- package/esm2022/login/pages/login-reset-otp/login-reset-otp.component.mjs +11 -10
- package/esm2022/login/pages/login-reset-password/login-reset-password.component.mjs +11 -10
- package/esm2022/login/pages/login-update-password/login-update-password.component.mjs +11 -10
- package/esm2022/login/pages/login-update-profile/login-update-profile.component.mjs +11 -10
- package/esm2022/login/pages/login-username/login-username.component.mjs +12 -11
- package/esm2022/login/pages/login-verify-email/login-verify-email.component.mjs +10 -9
- package/esm2022/login/pages/login-x509-info/login-x509-info.component.mjs +10 -9
- package/esm2022/login/pages/logout-confirm/logout-confirm.component.mjs +10 -13
- package/esm2022/login/pages/register/register.component.mjs +14 -13
- package/esm2022/login/pages/saml-post-form/saml-post-form.component.mjs +14 -15
- package/esm2022/login/pages/select-authenticator/select-authenticator.component.mjs +11 -10
- package/esm2022/login/pages/terms/terms.component.mjs +10 -9
- package/esm2022/login/pages/update-email/update-email.component.mjs +12 -15
- package/esm2022/login/pages/webauthn-authenticate/webauthn-authenticate.component.mjs +10 -9
- package/esm2022/login/pages/webauthn-error/webauthn-error.component.mjs +11 -10
- package/esm2022/login/pages/webauthn-register/webauthn-register.component.mjs +10 -9
- package/fesm2022/keycloakify-angular-account-containers-template.mjs +40 -7
- package/fesm2022/keycloakify-angular-account-containers-template.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-account.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-account.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-applications.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-applications.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-log.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-log.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-password.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-sessions.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-sessions.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-account-pages-totp.mjs +5 -4
- package/fesm2022/keycloakify-angular-account-pages-totp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-containers-template.mjs +81 -13
- package/fesm2022/keycloakify-angular-login-containers-template.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-code.mjs +13 -7
- package/fesm2022/keycloakify-angular-login-pages-code.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs +11 -5
- package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-error.mjs +13 -7
- package/fesm2022/keycloakify-angular-login-pages-error.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs +11 -9
- package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs +11 -10
- package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-info.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-info.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs +11 -10
- package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +10 -13
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +10 -13
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs +9 -12
- package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs +10 -12
- package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +10 -5
- package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-password.mjs +12 -10
- package/fesm2022/keycloakify-angular-login-pages-login-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +11 -10
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +11 -10
- package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-username.mjs +11 -10
- package/fesm2022/keycloakify-angular-login-pages-login-username.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-login.mjs +12 -11
- package/fesm2022/keycloakify-angular-login-pages-login.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs +9 -12
- package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-register.mjs +13 -12
- package/fesm2022/keycloakify-angular-login-pages-register.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs +13 -14
- package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-terms.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-terms.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-update-email.mjs +11 -14
- package/fesm2022/keycloakify-angular-login-pages-update-email.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs +10 -9
- package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs.map +1 -1
- package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs +9 -8
- package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs.map +1 -1
- package/login/containers/template/template.component.d.ts +25 -9
- package/login/pages/code/code.component.d.ts +12 -3
- package/login/pages/delete-account-confirm/delete-account-confirm.component.d.ts +11 -2
- package/login/pages/delete-credential/delete-credential.component.d.ts +9 -5
- package/login/pages/error/error.component.d.ts +11 -2
- package/login/pages/frontchannel-logout/frontchannel-logout.component.d.ts +9 -5
- package/login/pages/idp-review-user-profile/idp-review-user-profile.component.d.ts +10 -7
- package/login/pages/info/info.component.d.ts +9 -5
- package/login/pages/login/login.component.d.ts +10 -6
- package/login/pages/login-config-totp/login-config-totp.component.d.ts +9 -5
- package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.d.ts +8 -7
- package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.d.ts +8 -7
- package/login/pages/login-idp-link-email/login-idp-link-email.component.d.ts +8 -7
- package/login/pages/login-oauth-grant/login-oauth-grant.component.d.ts +8 -7
- package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.d.ts +9 -5
- package/login/pages/login-otp/login-otp.component.d.ts +9 -5
- package/login/pages/login-page-expired/login-page-expired.component.d.ts +9 -5
- package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.d.ts +11 -3
- package/login/pages/login-password/login-password.component.d.ts +10 -5
- package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.d.ts +9 -5
- package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.d.ts +9 -5
- package/login/pages/login-reset-otp/login-reset-otp.component.d.ts +9 -5
- package/login/pages/login-reset-password/login-reset-password.component.d.ts +9 -5
- package/login/pages/login-update-password/login-update-password.component.d.ts +9 -5
- package/login/pages/login-update-profile/login-update-profile.component.d.ts +9 -6
- package/login/pages/login-username/login-username.component.d.ts +10 -6
- package/login/pages/login-verify-email/login-verify-email.component.d.ts +9 -5
- package/login/pages/login-x509-info/login-x509-info.component.d.ts +9 -5
- package/login/pages/logout-confirm/logout-confirm.component.d.ts +8 -7
- package/login/pages/register/register.component.d.ts +11 -8
- package/login/pages/saml-post-form/saml-post-form.component.d.ts +10 -7
- package/login/pages/select-authenticator/select-authenticator.component.d.ts +9 -5
- package/login/pages/terms/terms.component.d.ts +9 -5
- package/login/pages/update-email/update-email.component.d.ts +9 -9
- package/login/pages/webauthn-authenticate/webauthn-authenticate.component.d.ts +10 -6
- package/login/pages/webauthn-error/webauthn-error.component.d.ts +9 -5
- package/login/pages/webauthn-register/webauthn-register.component.d.ts +10 -6
- package/package.json +8 -8
- package/src/account/containers/template/template.component.html +15 -10
- package/src/account/containers/template/template.component.ts +54 -7
- package/src/account/pages/account/account.component.html +139 -143
- package/src/account/pages/account/account.component.ts +4 -3
- package/src/account/pages/applications/applications.component.html +128 -136
- package/src/account/pages/applications/applications.component.ts +4 -3
- package/src/account/pages/federatedIdentity/federatedIdentity.component.html +84 -88
- package/src/account/pages/federatedIdentity/federatedIdentity.component.ts +4 -3
- package/src/account/pages/log/log.component.html +35 -39
- package/src/account/pages/log/log.component.ts +4 -3
- package/src/account/pages/password/password.component.html +109 -113
- package/src/account/pages/password/password.component.ts +5 -3
- package/src/account/pages/sessions/sessions.component.html +52 -56
- package/src/account/pages/sessions/sessions.component.ts +4 -3
- package/src/account/pages/totp/totp.component.html +234 -238
- package/src/account/pages/totp/totp.component.ts +4 -3
- package/src/login/containers/template/template.component.html +22 -8
- package/src/login/containers/template/template.component.ts +100 -12
- package/src/login/pages/code/code.component.html +19 -23
- package/src/login/pages/code/code.component.ts +18 -6
- package/src/login/pages/delete-account-confirm/delete-account-confirm.component.html +41 -45
- package/src/login/pages/delete-account-confirm/delete-account-confirm.component.ts +16 -4
- package/src/login/pages/delete-credential/delete-credential.component.html +29 -31
- package/src/login/pages/delete-credential/delete-credential.component.ts +16 -9
- package/src/login/pages/error/error.component.html +20 -22
- package/src/login/pages/error/error.component.ts +17 -5
- package/src/login/pages/frontchannel-logout/frontchannel-logout.component.html +25 -34
- package/src/login/pages/frontchannel-logout/frontchannel-logout.component.ts +17 -9
- package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.html +29 -38
- package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.ts +18 -12
- package/src/login/pages/info/info.component.html +39 -48
- package/src/login/pages/info/info.component.ts +17 -10
- package/src/login/pages/login/login.component.html +184 -194
- package/src/login/pages/login/login.component.ts +20 -12
- package/src/login/pages/login-config-totp/login-config-totp.component.html +181 -190
- package/src/login/pages/login-config-totp/login-config-totp.component.ts +16 -10
- package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.html +27 -37
- package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts +15 -14
- package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.html +26 -36
- package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts +15 -14
- package/src/login/pages/login-idp-link-email/login-idp-link-email.component.html +24 -34
- package/src/login/pages/login-idp-link-email/login-idp-link-email.component.ts +15 -14
- package/src/login/pages/login-oauth-grant/login-oauth-grant.component.html +75 -84
- package/src/login/pages/login-oauth-grant/login-oauth-grant.component.ts +15 -14
- package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.html +49 -58
- package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts +15 -9
- package/src/login/pages/login-otp/login-otp.component.html +89 -98
- package/src/login/pages/login-otp/login-otp.component.ts +16 -9
- package/src/login/pages/login-page-expired/login-page-expired.component.html +26 -33
- package/src/login/pages/login-page-expired/login-page-expired.component.ts +15 -9
- package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.html +181 -188
- package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.ts +15 -5
- package/src/login/pages/login-password/login-password.component.html +73 -80
- package/src/login/pages/login-password/login-password.component.ts +17 -9
- package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.html +136 -145
- package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.ts +17 -9
- package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.html +60 -68
- package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.ts +16 -9
- package/src/login/pages/login-reset-otp/login-reset-otp.component.html +53 -60
- package/src/login/pages/login-reset-otp/login-reset-otp.component.ts +15 -8
- package/src/login/pages/login-reset-password/login-reset-password.component.html +77 -86
- package/src/login/pages/login-reset-password/login-reset-password.component.ts +16 -9
- package/src/login/pages/login-update-password/login-update-password.component.html +98 -108
- package/src/login/pages/login-update-password/login-update-password.component.ts +15 -8
- package/src/login/pages/login-update-profile/login-update-profile.component.html +44 -53
- package/src/login/pages/login-update-profile/login-update-profile.component.ts +17 -10
- package/src/login/pages/login-username/login-username.component.html +138 -148
- package/src/login/pages/login-username/login-username.component.ts +16 -9
- package/src/login/pages/login-verify-email/login-verify-email.component.html +17 -25
- package/src/login/pages/login-verify-email/login-verify-email.component.ts +15 -9
- package/src/login/pages/login-x509-info/login-x509-info.component.html +85 -94
- package/src/login/pages/login-x509-info/login-x509-info.component.ts +15 -9
- package/src/login/pages/logout-confirm/logout-confirm.component.html +39 -49
- package/src/login/pages/logout-confirm/logout-confirm.component.ts +15 -14
- package/src/login/pages/register/register.component.html +100 -110
- package/src/login/pages/register/register.component.ts +19 -12
- package/src/login/pages/saml-post-form/saml-post-form.component.html +39 -48
- package/src/login/pages/saml-post-form/saml-post-form.component.ts +19 -13
- package/src/login/pages/select-authenticator/select-authenticator.component.html +36 -44
- package/src/login/pages/select-authenticator/select-authenticator.component.ts +16 -9
- package/src/login/pages/terms/terms.component.html +25 -34
- package/src/login/pages/terms/terms.component.ts +16 -9
- package/src/login/pages/update-email/update-email.component.html +44 -53
- package/src/login/pages/update-email/update-email.component.ts +16 -15
- package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.html +134 -144
- package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.ts +16 -9
- package/src/login/pages/webauthn-error/webauthn-error.component.html +45 -55
- package/src/login/pages/webauthn-error/webauthn-error.component.ts +16 -9
- package/src/login/pages/webauthn-register/webauthn-register.component.html +65 -75
- package/src/login/pages/webauthn-register/webauthn-register.component.ts +16 -9
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, inject, viewChild } from '@angular/core';
|
|
2
2
|
import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
|
|
3
3
|
import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
|
|
4
4
|
import { TemplateComponent } from '@keycloakify/angular/login/containers/template';
|
|
@@ -14,27 +14,28 @@ export class DeleteCredentialComponent extends ComponentReference {
|
|
|
14
14
|
this.i18n = inject(LOGIN_I18N);
|
|
15
15
|
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
16
16
|
this.classes = inject(LOGIN_CLASSES);
|
|
17
|
-
this.displayRequiredFields =
|
|
18
|
-
this.documentTitle = input();
|
|
19
|
-
this.bodyClassName = input();
|
|
17
|
+
this.displayRequiredFields = false;
|
|
20
18
|
this.displayInfo = false;
|
|
21
19
|
this.displayMessage = false;
|
|
20
|
+
this.headerNode = viewChild('headerNode');
|
|
21
|
+
this.infoNode = viewChild('infoNode');
|
|
22
|
+
this.socialProvidersNode = viewChild('socialProvidersNode');
|
|
22
23
|
}
|
|
23
24
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DeleteCredentialComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.7", type: DeleteCredentialComponent, isStandalone: true, selector: "kc-delete-credential", providers: [
|
|
25
26
|
{
|
|
26
27
|
provide: ComponentReference,
|
|
27
28
|
useExisting: forwardRef(() => DeleteCredentialComponent)
|
|
28
29
|
}
|
|
29
|
-
], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n@let credentialLabel = kcContext.credentialLabel;\n<
|
|
30
|
+
], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n@let credentialLabel = kcContext.credentialLabel;\n<ng-template #headerNode>\n {{ i18n.msgStr('deleteCredentialTitle', credentialLabel) }}\n</ng-template>\n<ng-container content>\n <div id=\"kc-delete-text\">\n {{ i18n.msgStr('deleteCredentialMessage', credentialLabel) }}\n </div>\n\n <form\n class=\"form-actions\"\n method=\"post\"\n [action]=\"url.loginAction\"\n >\n <input\n name=\"accept\"\n id=\"kc-accept\"\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doConfirmDelete')\"\n />\n\n <input\n name=\"cancel-aia\"\n id=\"kc-decline\"\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doCancel')\"\n />\n </form>\n <div class=\"clearfix\"></div>\n</ng-container>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
30
31
|
}
|
|
31
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: DeleteCredentialComponent, decorators: [{
|
|
32
33
|
type: Component,
|
|
33
|
-
args: [{ standalone: true, imports: [TemplateComponent, KcClassDirective], selector: 'kc-
|
|
34
|
+
args: [{ standalone: true, imports: [TemplateComponent, KcClassDirective], selector: 'kc-delete-credential', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
34
35
|
{
|
|
35
36
|
provide: ComponentReference,
|
|
36
37
|
useExisting: forwardRef(() => DeleteCredentialComponent)
|
|
37
38
|
}
|
|
38
|
-
], template: "@let url = kcContext.url;\n@let credentialLabel = kcContext.credentialLabel;\n<
|
|
39
|
+
], template: "@let url = kcContext.url;\n@let credentialLabel = kcContext.credentialLabel;\n<ng-template #headerNode>\n {{ i18n.msgStr('deleteCredentialTitle', credentialLabel) }}\n</ng-template>\n<ng-container content>\n <div id=\"kc-delete-text\">\n {{ i18n.msgStr('deleteCredentialMessage', credentialLabel) }}\n </div>\n\n <form\n class=\"form-actions\"\n method=\"post\"\n [action]=\"url.loginAction\"\n >\n <input\n name=\"accept\"\n id=\"kc-accept\"\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doConfirmDelete')\"\n />\n\n <input\n name=\"cancel-aia\"\n id=\"kc-decline\"\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doCancel')\"\n />\n </form>\n <div class=\"clearfix\"></div>\n</ng-container>\n" }]
|
|
39
40
|
}] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLWNyZWRlbnRpYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL3BhZ2VzL2RlbGV0ZS1jcmVkZW50aWFsL2RlbGV0ZS1jcmVkZW50aWFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9wYWdlcy9kZWxldGUtY3JlZGVudGlhbC9kZWxldGUtY3JlZGVudGlhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUdsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOztBQWdCaEYsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGtCQUFrQjtJQWJqRTs7UUFjSSxjQUFTLEdBQUcsTUFBTSxDQUEwRCxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlGLFNBQUksR0FBRyxNQUFNLENBQU8sVUFBVSxDQUFDLENBQUM7UUFFdkIsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsYUFBYSxDQUFDLENBQUM7UUFLNUUsMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBRXZCLGVBQVUsR0FBSSxTQUFTLENBQTJCLFlBQVksQ0FBQyxDQUFDO1FBQ2hFLGFBQVEsR0FBSSxTQUFTLENBQTJCLFVBQVUsQ0FBQyxDQUFDO1FBQzVELHdCQUFtQixHQUFJLFNBQVMsQ0FBMkIscUJBQXFCLENBQUMsQ0FBQztLQUNyRjs4R0FqQlkseUJBQXlCO2tHQUF6Qix5QkFBeUIsbUVBUHZCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQzthQUMzRDtTQUNKLCtZQ3ZCTCwyZ0NBaUNBLDRDRG5CaUMsZ0JBQWdCOzsyRkFXcEMseUJBQXlCO2tCQWJyQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLFlBQ3BDLHNCQUFzQixtQkFFZix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDO3lCQUMzRDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIGluamVjdCwgVGVtcGxhdGVSZWYsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVVNFX0RFRkFVTFRfQ1NTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3Rva2Vucy91c2UtZGVmYXVsdC1jc3MnO1xuaW1wb3J0IHsgQ29tcG9uZW50UmVmZXJlbmNlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY2xhc3Nlcy9jb21wb25lbnQtcmVmZXJlbmNlJztcbmltcG9ydCB7IFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY29udGFpbmVycy90ZW1wbGF0ZSc7XG5pbXBvcnQgeyBLY0NsYXNzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9rYy1jbGFzcyc7XG5pbXBvcnQgdHlwZSB7IEkxOG4gfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9pMThuJztcbmltcG9ydCB0eXBlIHsgS2NDb250ZXh0IH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vS2NDb250ZXh0JztcbmltcG9ydCB7IExPR0lOX0NMQVNTRVMgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMvY2xhc3Nlcyc7XG5pbXBvcnQgeyBMT0dJTl9JMThOIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2kxOG4nO1xuaW1wb3J0IHsgS0NfTE9HSU5fQ09OVEVYVCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9rYy1jb250ZXh0JztcbmltcG9ydCB0eXBlIHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGVtcGxhdGVDb21wb25lbnQsIEtjQ2xhc3NEaXJlY3RpdmVdLFxuICAgIHNlbGVjdG9yOiAna2MtZGVsZXRlLWNyZWRlbnRpYWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnZGVsZXRlLWNyZWRlbnRpYWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDb21wb25lbnRSZWZlcmVuY2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEZWxldGVDcmVkZW50aWFsQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBEZWxldGVDcmVkZW50aWFsQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50UmVmZXJlbmNlIHtcbiAgICBrY0NvbnRleHQgPSBpbmplY3Q8RXh0cmFjdDxLY0NvbnRleHQsIHsgcGFnZUlkOiAnZGVsZXRlLWNyZWRlbnRpYWwuZnRsJyB9Pj4oS0NfTE9HSU5fQ09OVEVYVCk7XG4gICAgaTE4biA9IGluamVjdDxJMThuPihMT0dJTl9JMThOKTtcblxuICAgIG92ZXJyaWRlIGRvVXNlRGVmYXVsdENzcyA9IGluamVjdDxib29sZWFuPihVU0VfREVGQVVMVF9DU1MpO1xuICAgIG92ZXJyaWRlIGNsYXNzZXMgPSBpbmplY3Q8UGFydGlhbDxSZWNvcmQ8Q2xhc3NLZXksIHN0cmluZz4+PihMT0dJTl9DTEFTU0VTKTtcblxuICAgIGRvY3VtZW50VGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBib2R5Q2xhc3NOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgICBkaXNwbGF5UmVxdWlyZWRGaWVsZHMgPSBmYWxzZTtcbiAgICBkaXNwbGF5SW5mbyA9IGZhbHNlO1xuICAgIGRpc3BsYXlNZXNzYWdlID0gZmFsc2U7XG5cbiAgICBoZWFkZXJOb2RlPyA9IHZpZXdDaGlsZDxUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4+KCdoZWFkZXJOb2RlJyk7XG4gICAgaW5mb05vZGU/ID0gdmlld0NoaWxkPFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50Pj4oJ2luZm9Ob2RlJyk7XG4gICAgc29jaWFsUHJvdmlkZXJzTm9kZT8gPSB2aWV3Q2hpbGQ8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+Pignc29jaWFsUHJvdmlkZXJzTm9kZScpO1xufVxuIiwiQGxldCB1cmwgPSBrY0NvbnRleHQudXJsO1xuQGxldCBjcmVkZW50aWFsTGFiZWwgPSBrY0NvbnRleHQuY3JlZGVudGlhbExhYmVsO1xuPG5nLXRlbXBsYXRlICNoZWFkZXJOb2RlPlxuICAgIHt7IGkxOG4ubXNnU3RyKCdkZWxldGVDcmVkZW50aWFsVGl0bGUnLCBjcmVkZW50aWFsTGFiZWwpIH19XG48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRhaW5lciBjb250ZW50PlxuICAgIDxkaXYgaWQ9XCJrYy1kZWxldGUtdGV4dFwiPlxuICAgICAgICB7eyBpMThuLm1zZ1N0cignZGVsZXRlQ3JlZGVudGlhbE1lc3NhZ2UnLCBjcmVkZW50aWFsTGFiZWwpIH19XG4gICAgPC9kaXY+XG5cbiAgICA8Zm9ybVxuICAgICAgICBjbGFzcz1cImZvcm0tYWN0aW9uc1wiXG4gICAgICAgIG1ldGhvZD1cInBvc3RcIlxuICAgICAgICBbYWN0aW9uXT1cInVybC5sb2dpbkFjdGlvblwiXG4gICAgPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG5hbWU9XCJhY2NlcHRcIlxuICAgICAgICAgICAgaWQ9XCJrYy1hY2NlcHRcIlxuICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICBba2NDbGFzc109XCJbJ2tjQnV0dG9uQ2xhc3MnLCAna2NCdXR0b25QcmltYXJ5Q2xhc3MnLCAna2NCdXR0b25MYXJnZUNsYXNzJ11cIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImkxOG4ubXNnU3RyKCdkb0NvbmZpcm1EZWxldGUnKVwiXG4gICAgICAgIC8+XG5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBuYW1lPVwiY2FuY2VsLWFpYVwiXG4gICAgICAgICAgICBpZD1cImtjLWRlY2xpbmVcIlxuICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICBba2NDbGFzc109XCJbJ2tjQnV0dG9uQ2xhc3MnLCAna2NCdXR0b25EZWZhdWx0Q2xhc3MnLCAna2NCdXR0b25MYXJnZUNsYXNzJ11cIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImkxOG4ubXNnU3RyKCdkb0NhbmNlbCcpXCJcbiAgICAgICAgLz5cbiAgICA8L2Zvcm0+XG4gICAgPGRpdiBjbGFzcz1cImNsZWFyZml4XCI+PC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, inject, viewChild } from '@angular/core';
|
|
2
|
+
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
2
3
|
import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
|
|
3
4
|
import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
|
|
4
5
|
import { TemplateComponent } from '@keycloakify/angular/login/containers/template';
|
|
5
|
-
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
6
|
-
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
7
6
|
import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
|
|
7
|
+
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
8
8
|
import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export class ErrorComponent extends ComponentReference {
|
|
@@ -14,22 +14,28 @@ export class ErrorComponent extends ComponentReference {
|
|
|
14
14
|
this.i18n = inject(LOGIN_I18N);
|
|
15
15
|
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
16
16
|
this.classes = inject(LOGIN_CLASSES);
|
|
17
|
+
this.displayRequiredFields = false;
|
|
18
|
+
this.displayInfo = false;
|
|
19
|
+
this.displayMessage = false;
|
|
20
|
+
this.headerNode = viewChild('headerNode');
|
|
21
|
+
this.infoNode = viewChild('infoNode');
|
|
22
|
+
this.socialProvidersNode = viewChild('socialProvidersNode');
|
|
17
23
|
}
|
|
18
24
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: ErrorComponent, isStandalone: true, selector: "kc-
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: ErrorComponent, isStandalone: true, selector: "kc-error", providers: [
|
|
20
26
|
{
|
|
21
27
|
provide: ComponentReference,
|
|
22
28
|
useExisting: forwardRef(() => ErrorComponent)
|
|
23
29
|
}
|
|
24
|
-
], usesInheritance: true, ngImport: i0, template: "@let message = kcContext.message;\n@let skipLink = kcContext.skipLink;\n@let client = kcContext.client;\n<
|
|
30
|
+
], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let message = kcContext.message;\n@let skipLink = kcContext.skipLink;\n@let client = kcContext.client;\n<ng-template #headerNode>\n {{ i18n.msgStr('errorTitle') }}\n</ng-template>\n<ng-container content>\n <div id=\"kc-error-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"message.summary | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink && !!client?.baseUrl) {\n <p>\n <a\n id=\"backToApplication\"\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n ></a>\n </p>\n }\n </div>\n</ng-container>\n", dependencies: [{ kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25
31
|
}
|
|
26
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ErrorComponent, decorators: [{
|
|
27
33
|
type: Component,
|
|
28
|
-
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc-
|
|
34
|
+
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc-error', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
29
35
|
{
|
|
30
36
|
provide: ComponentReference,
|
|
31
37
|
useExisting: forwardRef(() => ErrorComponent)
|
|
32
38
|
}
|
|
33
|
-
], template: "@let message = kcContext.message;\n@let skipLink = kcContext.skipLink;\n@let client = kcContext.client;\n<
|
|
39
|
+
], template: "@let message = kcContext.message;\n@let skipLink = kcContext.skipLink;\n@let client = kcContext.client;\n<ng-template #headerNode>\n {{ i18n.msgStr('errorTitle') }}\n</ng-template>\n<ng-container content>\n <div id=\"kc-error-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"message.summary | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink && !!client?.baseUrl) {\n <p>\n <a\n id=\"backToApplication\"\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n ></a>\n </p>\n }\n </div>\n</ng-container>\n" }]
|
|
34
40
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL3BhZ2VzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9wYWdlcy9lcnJvci9lcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFHbkYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFnQmhGLE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQWtCO0lBYnREOztRQWNJLGNBQVMsR0FBRyxNQUFNLENBQThDLGdCQUFnQixDQUFDLENBQUM7UUFDbEYsU0FBSSxHQUFHLE1BQU0sQ0FBTyxVQUFVLENBQUMsQ0FBQztRQUV2QixvQkFBZSxHQUFHLE1BQU0sQ0FBVSxlQUFlLENBQUMsQ0FBQztRQUNuRCxZQUFPLEdBQUcsTUFBTSxDQUFvQyxhQUFhLENBQUMsQ0FBQztRQUs1RSwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsZUFBVSxHQUFJLFNBQVMsQ0FBMkIsWUFBWSxDQUFDLENBQUM7UUFDaEUsYUFBUSxHQUFJLFNBQVMsQ0FBMkIsVUFBVSxDQUFDLENBQUM7UUFDNUQsd0JBQW1CLEdBQUksU0FBUyxDQUEyQixxQkFBcUIsQ0FBQyxDQUFDO0tBQ3JGOzhHQWpCWSxjQUFjO2tHQUFkLGNBQWMsdURBUFo7WUFDUDtnQkFDSSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQzthQUNoRDtTQUNKLCtZQ3ZCTCxvdEJBdUJBLHVDRFRpQyxjQUFjOzsyRkFXbEMsY0FBYztrQkFiMUIsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLENBQUMsWUFDbEMsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQzt5QkFDaEQ7cUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBpbmplY3QsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEtjU2FuaXRpemVQaXBlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3BpcGVzL2tjLXNhbml0aXplJztcbmltcG9ydCB7IFVTRV9ERUZBVUxUX0NTUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi90b2tlbnMvdXNlLWRlZmF1bHQtY3NzJztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZSc7XG5pbXBvcnQgeyBUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NvbnRhaW5lcnMvdGVtcGxhdGUnO1xuaW1wb3J0IHR5cGUgeyBJMThuIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vaTE4bic7XG5pbXBvcnQgdHlwZSB7IEtjQ29udGV4dCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL0tjQ29udGV4dCc7XG5pbXBvcnQgeyBMT0dJTl9DTEFTU0VTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2NsYXNzZXMnO1xuaW1wb3J0IHsgTE9HSU5fSTE4TiB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9pMThuJztcbmltcG9ydCB7IEtDX0xPR0lOX0NPTlRFWFQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMva2MtY29udGV4dCc7XG5pbXBvcnQgdHlwZSB7IENsYXNzS2V5IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1RlbXBsYXRlQ29tcG9uZW50LCBLY1Nhbml0aXplUGlwZV0sXG4gICAgc2VsZWN0b3I6ICdrYy1lcnJvcicsXG4gICAgdGVtcGxhdGVVcmw6ICdlcnJvci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVycm9yQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBFcnJvckNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAga2NDb250ZXh0ID0gaW5qZWN0PEV4dHJhY3Q8S2NDb250ZXh0LCB7IHBhZ2VJZDogJ2Vycm9yLmZ0bCcgfT4+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIGkxOG4gPSBpbmplY3Q8STE4bj4oTE9HSU5fSTE4Tik7XG5cbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oTE9HSU5fQ0xBU1NFUyk7XG5cbiAgICBkb2N1bWVudFRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgYm9keUNsYXNzTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgZGlzcGxheVJlcXVpcmVkRmllbGRzID0gZmFsc2U7XG4gICAgZGlzcGxheUluZm8gPSBmYWxzZTtcbiAgICBkaXNwbGF5TWVzc2FnZSA9IGZhbHNlO1xuXG4gICAgaGVhZGVyTm9kZT8gPSB2aWV3Q2hpbGQ8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+PignaGVhZGVyTm9kZScpO1xuICAgIGluZm9Ob2RlPyA9IHZpZXdDaGlsZDxUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4+KCdpbmZvTm9kZScpO1xuICAgIHNvY2lhbFByb3ZpZGVyc05vZGU/ID0gdmlld0NoaWxkPFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50Pj4oJ3NvY2lhbFByb3ZpZGVyc05vZGUnKTtcbn1cbiIsIkBsZXQgbWVzc2FnZSA9IGtjQ29udGV4dC5tZXNzYWdlO1xuQGxldCBza2lwTGluayA9IGtjQ29udGV4dC5za2lwTGluaztcbkBsZXQgY2xpZW50ID0ga2NDb250ZXh0LmNsaWVudDtcbjxuZy10ZW1wbGF0ZSAjaGVhZGVyTm9kZT5cbiAgICB7eyBpMThuLm1zZ1N0cignZXJyb3JUaXRsZScpIH19XG48L25nLXRlbXBsYXRlPlxuPG5nLWNvbnRhaW5lciBjb250ZW50PlxuICAgIDxkaXYgaWQ9XCJrYy1lcnJvci1tZXNzYWdlXCI+XG4gICAgICAgIDxwXG4gICAgICAgICAgICBjbGFzcz1cImluc3RydWN0aW9uXCJcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibWVzc2FnZS5zdW1tYXJ5IHwga2NTYW5pdGl6ZTogJ2h0bWwnXCJcbiAgICAgICAgPjwvcD5cbiAgICAgICAgQGlmICghc2tpcExpbmsgJiYgISFjbGllbnQ/LmJhc2VVcmwpIHtcbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiYmFja1RvQXBwbGljYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJjbGllbnQuYmFzZVVybFwiXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiaTE4bi5tc2dTdHIoJ2JhY2tUb0FwcGxpY2F0aW9uJykgfCBrY1Nhbml0aXplOiAnaHRtbCdcIlxuICAgICAgICAgICAgICAgID48L2E+XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, inject, viewChild } from '@angular/core';
|
|
2
|
+
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
2
3
|
import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
|
|
3
4
|
import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
|
|
4
5
|
import { TemplateComponent } from '@keycloakify/angular/login/containers/template';
|
|
5
|
-
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
6
|
-
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
7
6
|
import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
|
|
7
|
+
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
8
8
|
import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export class FrontchannelLogoutComponent extends ComponentReference {
|
|
@@ -14,10 +14,12 @@ export class FrontchannelLogoutComponent extends ComponentReference {
|
|
|
14
14
|
this.i18n = inject(LOGIN_I18N);
|
|
15
15
|
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
16
16
|
this.classes = inject(LOGIN_CLASSES);
|
|
17
|
-
this.displayRequiredFields =
|
|
18
|
-
this.bodyClassName = input();
|
|
17
|
+
this.displayRequiredFields = this.i18n.msgStr('frontchannel-logout.title');
|
|
19
18
|
this.displayInfo = false;
|
|
20
19
|
this.displayMessage = false;
|
|
20
|
+
this.headerNode = viewChild('headerNode');
|
|
21
|
+
this.infoNode = viewChild('infoNode');
|
|
22
|
+
this.socialProvidersNode = viewChild('socialProvidersNode');
|
|
21
23
|
}
|
|
22
24
|
ngOnInit() {
|
|
23
25
|
if (this.kcContext.logout.logoutRedirectUri) {
|
|
@@ -25,20 +27,20 @@ export class FrontchannelLogoutComponent extends ComponentReference {
|
|
|
25
27
|
}
|
|
26
28
|
}
|
|
27
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FrontchannelLogoutComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FrontchannelLogoutComponent, isStandalone: true, selector: "kc-
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FrontchannelLogoutComponent, isStandalone: true, selector: "kc-frontchannel-logout", providers: [
|
|
29
31
|
{
|
|
30
32
|
provide: ComponentReference,
|
|
31
33
|
useExisting: forwardRef(() => FrontchannelLogoutComponent)
|
|
32
34
|
}
|
|
33
|
-
],
|
|
35
|
+
], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let logout = kcContext.logout;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('frontchannel-logout.title') }}\n</ng-template>\n<p>{{ i18n.msgStr('frontchannel-logout.message') }}</p>\n<ul>\n @for (client of logout.clients; track client.name; let idx = $index) {\n <li>\n {{ client.name }}\n <iframe\n style=\"display: none\"\n [src]=\"'client.frontChannelLogoutUrl' | kcSanitize: 'resourceUrl'\"\n ></iframe>\n </li>\n }\n</ul>\n@if (logout.logoutRedirectUri) {\n <a\n id=\"continue\"\n class=\"btn btn-primary\"\n [href]=\"logout.logoutRedirectUri\"\n >\n {{ i18n.msgStr('doContinue') }}\n </a>\n}\n", dependencies: [{ kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
36
|
}
|
|
35
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FrontchannelLogoutComponent, decorators: [{
|
|
36
38
|
type: Component,
|
|
37
|
-
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc-
|
|
39
|
+
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc-frontchannel-logout', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
38
40
|
{
|
|
39
41
|
provide: ComponentReference,
|
|
40
42
|
useExisting: forwardRef(() => FrontchannelLogoutComponent)
|
|
41
43
|
}
|
|
42
|
-
], template: "@let logout = kcContext.logout;\n
|
|
44
|
+
], template: "@let logout = kcContext.logout;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('frontchannel-logout.title') }}\n</ng-template>\n<p>{{ i18n.msgStr('frontchannel-logout.message') }}</p>\n<ul>\n @for (client of logout.clients; track client.name; let idx = $index) {\n <li>\n {{ client.name }}\n <iframe\n style=\"display: none\"\n [src]=\"'client.frontChannelLogoutUrl' | kcSanitize: 'resourceUrl'\"\n ></iframe>\n </li>\n }\n</ul>\n@if (logout.logoutRedirectUri) {\n <a\n id=\"continue\"\n class=\"btn btn-primary\"\n [href]=\"logout.logoutRedirectUri\"\n >\n {{ i18n.msgStr('doContinue') }}\n </a>\n}\n" }]
|
|
43
45
|
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnRjaGFubmVsLWxvZ291dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbG9naW4vcGFnZXMvZnJvbnRjaGFubmVsLWxvZ291dC9mcm9udGNoYW5uZWwtbG9nb3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9wYWdlcy9mcm9udGNoYW5uZWwtbG9nb3V0L2Zyb250Y2hhbm5lbC1sb2dvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUF1QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUduRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOztBQWdCaEYsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGtCQUFrQjtJQWJuRTs7UUFjSSxjQUFTLEdBQUcsTUFBTSxDQUE0RCxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2hHLFNBQUksR0FBRyxNQUFNLENBQU8sVUFBVSxDQUFDLENBQUM7UUFFdkIsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsYUFBYSxDQUFDLENBQUM7UUFLNUUsMEJBQXFCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUN0RSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUV2QixlQUFVLEdBQUksU0FBUyxDQUEyQixZQUFZLENBQUMsQ0FBQztRQUNoRSxhQUFRLEdBQUksU0FBUyxDQUEyQixVQUFVLENBQUMsQ0FBQztRQUM1RCx3QkFBbUIsR0FBSSxTQUFTLENBQTJCLHFCQUFxQixDQUFDLENBQUM7S0FPckY7SUFMRyxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDckUsQ0FBQztJQUNMLENBQUM7OEdBdEJRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHFFQVB6QjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMkJBQTJCLENBQUM7YUFDN0Q7U0FDSiwrWUN2QkwscXRCQTBCQSx1Q0RaaUMsY0FBYzs7MkZBV2xDLDJCQUEyQjtrQkFidkMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLENBQUMsWUFDbEMsd0JBQXdCLG1CQUVqQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDRCQUE0QixDQUFDO3lCQUM3RDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIGluamVjdCwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLY1Nhbml0aXplUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi9waXBlcy9rYy1zYW5pdGl6ZSc7XG5pbXBvcnQgeyBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvdG9rZW5zL3VzZS1kZWZhdWx0LWNzcyc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb250YWluZXJzL3RlbXBsYXRlJztcbmltcG9ydCB0eXBlIHsgSTE4biB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2kxOG4nO1xuaW1wb3J0IHR5cGUgeyBLY0NvbnRleHQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgTE9HSU5fQ0xBU1NFUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9jbGFzc2VzJztcbmltcG9ydCB7IExPR0lOX0kxOE4gfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMvaTE4bic7XG5pbXBvcnQgeyBLQ19MT0dJTl9DT05URVhUIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2tjLWNvbnRleHQnO1xuaW1wb3J0IHR5cGUgeyBDbGFzc0tleSB9IGZyb20gJ2tleWNsb2FraWZ5L2xvZ2luL2xpYi9rY0Nsc3gnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUZW1wbGF0ZUNvbXBvbmVudCwgS2NTYW5pdGl6ZVBpcGVdLFxuICAgIHNlbGVjdG9yOiAna2MtZnJvbnRjaGFubmVsLWxvZ291dCcsXG4gICAgdGVtcGxhdGVVcmw6ICdmcm9udGNoYW5uZWwtbG9nb3V0LmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQ29tcG9uZW50UmVmZXJlbmNlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRnJvbnRjaGFubmVsTG9nb3V0Q29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBGcm9udGNoYW5uZWxMb2dvdXRDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRSZWZlcmVuY2UgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGtjQ29udGV4dCA9IGluamVjdDxFeHRyYWN0PEtjQ29udGV4dCwgeyBwYWdlSWQ6ICdmcm9udGNoYW5uZWwtbG9nb3V0LmZ0bCcgfT4+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIGkxOG4gPSBpbmplY3Q8STE4bj4oTE9HSU5fSTE4Tik7XG5cbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oTE9HSU5fQ0xBU1NFUyk7XG5cbiAgICBkb2N1bWVudFRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgYm9keUNsYXNzTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgZGlzcGxheVJlcXVpcmVkRmllbGRzID0gdGhpcy5pMThuLm1zZ1N0cignZnJvbnRjaGFubmVsLWxvZ291dC50aXRsZScpO1xuICAgIGRpc3BsYXlJbmZvID0gZmFsc2U7XG4gICAgZGlzcGxheU1lc3NhZ2UgPSBmYWxzZTtcblxuICAgIGhlYWRlck5vZGU/ID0gdmlld0NoaWxkPFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50Pj4oJ2hlYWRlck5vZGUnKTtcbiAgICBpbmZvTm9kZT8gPSB2aWV3Q2hpbGQ8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+PignaW5mb05vZGUnKTtcbiAgICBzb2NpYWxQcm92aWRlcnNOb2RlPyA9IHZpZXdDaGlsZDxUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4+KCdzb2NpYWxQcm92aWRlcnNOb2RlJyk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMua2NDb250ZXh0LmxvZ291dC5sb2dvdXRSZWRpcmVjdFVyaSkge1xuICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UodGhpcy5rY0NvbnRleHQubG9nb3V0LmxvZ291dFJlZGlyZWN0VXJpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBsZXQgbG9nb3V0ID0ga2NDb250ZXh0LmxvZ291dDtcblxuPG5nLXRlbXBsYXRlICNoZWFkZXJOb2RlPlxuICAgIHt7IGkxOG4ubXNnU3RyKCdmcm9udGNoYW5uZWwtbG9nb3V0LnRpdGxlJykgfX1cbjwvbmctdGVtcGxhdGU+XG48cD57eyBpMThuLm1zZ1N0cignZnJvbnRjaGFubmVsLWxvZ291dC5tZXNzYWdlJykgfX08L3A+XG48dWw+XG4gICAgQGZvciAoY2xpZW50IG9mIGxvZ291dC5jbGllbnRzOyB0cmFjayBjbGllbnQubmFtZTsgbGV0IGlkeCA9ICRpbmRleCkge1xuICAgICAgICA8bGk+XG4gICAgICAgICAgICB7eyBjbGllbnQubmFtZSB9fVxuICAgICAgICAgICAgPGlmcmFtZVxuICAgICAgICAgICAgICAgIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiXG4gICAgICAgICAgICAgICAgW3NyY109XCInY2xpZW50LmZyb250Q2hhbm5lbExvZ291dFVybCcgfCBrY1Nhbml0aXplOiAncmVzb3VyY2VVcmwnXCJcbiAgICAgICAgICAgID48L2lmcmFtZT5cbiAgICAgICAgPC9saT5cbiAgICB9XG48L3VsPlxuQGlmIChsb2dvdXQubG9nb3V0UmVkaXJlY3RVcmkpIHtcbiAgICA8YVxuICAgICAgICBpZD1cImNvbnRpbnVlXCJcbiAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgICAgICBbaHJlZl09XCJsb2dvdXQubG9nb3V0UmVkaXJlY3RVcmlcIlxuICAgID5cbiAgICAgICAge3sgaTE4bi5tc2dTdHIoJ2RvQ29udGludWUnKSB9fVxuICAgIDwvYT5cbn1cbiJdfQ==
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { NgComponentOutlet } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject, input, signal } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, forwardRef, inject, input, signal, viewChild } from '@angular/core';
|
|
3
3
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
|
|
5
5
|
import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
|
|
6
6
|
import { TemplateComponent } from '@keycloakify/angular/login/containers/template';
|
|
7
7
|
import { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';
|
|
8
|
+
import { SubmitService } from '@keycloakify/angular/login/services/submit';
|
|
8
9
|
import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
|
|
9
10
|
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
10
11
|
import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
|
|
11
|
-
import { SubmitService } from '@keycloakify/angular/login/services/submit';
|
|
12
12
|
import * as i0 from "@angular/core";
|
|
13
13
|
export class IdpReviewUserProfileComponent extends ComponentReference {
|
|
14
14
|
#submitService;
|
|
@@ -16,16 +16,17 @@ export class IdpReviewUserProfileComponent extends ComponentReference {
|
|
|
16
16
|
super();
|
|
17
17
|
this.#submitService = inject(SubmitService);
|
|
18
18
|
this.kcContext = inject(KC_LOGIN_CONTEXT);
|
|
19
|
-
this.displayRequiredFields = input(true);
|
|
20
|
-
this.documentTitle = input();
|
|
21
|
-
this.bodyClassName = input();
|
|
22
19
|
this.i18n = inject(LOGIN_I18N);
|
|
23
20
|
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
24
21
|
this.classes = inject(LOGIN_CLASSES);
|
|
25
|
-
this.
|
|
22
|
+
this.displayRequiredFields = true;
|
|
26
23
|
this.displayInfo = false;
|
|
27
24
|
this.displayMessage = !this.kcContext?.messagesPerField?.existsError('global');
|
|
25
|
+
this.headerNode = viewChild('headerNode');
|
|
26
|
+
this.infoNode = viewChild('infoNode');
|
|
27
|
+
this.socialProvidersNode = viewChild('socialProvidersNode');
|
|
28
28
|
this.userProfileFormFields = input();
|
|
29
|
+
this.isFormSubmittable = signal(false);
|
|
29
30
|
this.#submitService.isSubmittable.pipe(takeUntilDestroyed()).subscribe(submittable => {
|
|
30
31
|
this.isFormSubmittable.set(submittable);
|
|
31
32
|
});
|
|
@@ -34,20 +35,20 @@ export class IdpReviewUserProfileComponent extends ComponentReference {
|
|
|
34
35
|
document.getElementById('kc-register-form').submit();
|
|
35
36
|
}
|
|
36
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: IdpReviewUserProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.7", type: IdpReviewUserProfileComponent, isStandalone: true, selector: "kc-idp-review-user-profile", inputs: { userProfileFormFields: { classPropertyName: "userProfileFormFields", publicName: "userProfileFormFields", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
38
39
|
{
|
|
39
40
|
provide: ComponentReference,
|
|
40
41
|
useExisting: forwardRef(() => IdpReviewUserProfileComponent)
|
|
41
42
|
}
|
|
42
|
-
], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n
|
|
43
|
+
], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('loginIdpReviewProfileTitle') }}\n</ng-template>\n<form\n id=\"kc-idp-review-profile-form\"\n method=\"post\"\n [kcClass]=\"'kcFormClass'\"\n [action]=\"url.loginAction\"\n>\n <ng-container [ngComponentOutlet]=\"userProfileFormFields() ?? null\" />\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n >\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n [disabled]=\"!isFormSubmittable()\"\n />\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
43
44
|
}
|
|
44
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: IdpReviewUserProfileComponent, decorators: [{
|
|
45
46
|
type: Component,
|
|
46
|
-
args: [{ standalone: true, imports: [TemplateComponent, KcClassDirective, NgComponentOutlet], selector: 'kc-
|
|
47
|
+
args: [{ standalone: true, imports: [TemplateComponent, KcClassDirective, NgComponentOutlet], selector: 'kc-idp-review-user-profile', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
47
48
|
{
|
|
48
49
|
provide: ComponentReference,
|
|
49
50
|
useExisting: forwardRef(() => IdpReviewUserProfileComponent)
|
|
50
51
|
}
|
|
51
|
-
], template: "@let url = kcContext.url;\n
|
|
52
|
+
], template: "@let url = kcContext.url;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('loginIdpReviewProfileTitle') }}\n</ng-template>\n<form\n id=\"kc-idp-review-profile-form\"\n method=\"post\"\n [kcClass]=\"'kcFormClass'\"\n [action]=\"url.loginAction\"\n>\n <ng-container [ngComponentOutlet]=\"userProfileFormFields() ?? null\" />\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n >\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n [disabled]=\"!isFormSubmittable()\"\n />\n </div>\n </div>\n</form>\n" }]
|
|
52
53
|
}], ctorParameters: () => [] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRwLXJldmlldy11c2VyLXByb2ZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL3BhZ2VzL2lkcC1yZXZpZXctdXNlci1wcm9maWxlL2lkcC1yZXZpZXctdXNlci1wcm9maWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9wYWdlcy9pZHAtcmV2aWV3LXVzZXItcHJvZmlsZS9pZHAtcmV2aWV3LXVzZXItcHJvZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BJLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUU1RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUdsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFnQmhGLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxrQkFBa0I7SUFDakUsY0FBYyxDQUF5QjtJQXFCdkM7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQXRCWixtQkFBYyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2QyxjQUFTLEdBQUcsTUFBTSxDQUFnRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BHLFNBQUksR0FBRyxNQUFNLENBQU8sVUFBVSxDQUFDLENBQUM7UUFFdkIsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsYUFBYSxDQUFDLENBQUM7UUFLNUUsMEJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUxRSxlQUFVLEdBQUksU0FBUyxDQUEyQixZQUFZLENBQUMsQ0FBQztRQUNoRSxhQUFRLEdBQUksU0FBUyxDQUEyQixVQUFVLENBQUMsQ0FBQztRQUM1RCx3QkFBbUIsR0FBSSxTQUFTLENBQTJCLHFCQUFxQixDQUFDLENBQUM7UUFFbEYsMEJBQXFCLEdBQUcsS0FBSyxFQUF3QyxDQUFDO1FBQ3RFLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUk5QixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNqRixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFVBQVU7UUFDTCxRQUFRLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzlFLENBQUM7OEdBL0JRLDZCQUE2QjtrR0FBN0IsNkJBQTZCLDZQQVAzQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNkJBQTZCLENBQUM7YUFDL0Q7U0FDSiwrWUMzQkwsdy9CQWdDQSw0Q0RkaUMsZ0JBQWdCLCtGQUFFLGlCQUFpQjs7MkZBV3ZELDZCQUE2QjtrQkFiekMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQyxZQUN2RCw0QkFBNEIsbUJBRXJCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsOEJBQThCLENBQUM7eUJBQy9EO3FCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsLCBUZW1wbGF0ZVJlZiwgVHlwZSwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvdG9rZW5zL3VzZS1kZWZhdWx0LWNzcyc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgVXNlclByb2ZpbGVGb3JtRmllbGRzQ29tcG9uZW50IH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY29tcG9uZW50cy91c2VyLXByb2ZpbGUtZm9ybS1maWVsZHMnO1xuaW1wb3J0IHsgVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb250YWluZXJzL3RlbXBsYXRlJztcbmltcG9ydCB7IEtjQ2xhc3NEaXJlY3RpdmUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9kaXJlY3RpdmVzL2tjLWNsYXNzJztcbmltcG9ydCB0eXBlIHsgSTE4biB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2kxOG4nO1xuaW1wb3J0IHR5cGUgeyBLY0NvbnRleHQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgU3VibWl0U2VydmljZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3NlcnZpY2VzL3N1Ym1pdCc7XG5pbXBvcnQgeyBMT0dJTl9DTEFTU0VTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2NsYXNzZXMnO1xuaW1wb3J0IHsgTE9HSU5fSTE4TiB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9pMThuJztcbmltcG9ydCB7IEtDX0xPR0lOX0NPTlRFWFQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMva2MtY29udGV4dCc7XG5pbXBvcnQgdHlwZSB7IENsYXNzS2V5IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1RlbXBsYXRlQ29tcG9uZW50LCBLY0NsYXNzRGlyZWN0aXZlLCBOZ0NvbXBvbmVudE91dGxldF0sXG4gICAgc2VsZWN0b3I6ICdrYy1pZHAtcmV2aWV3LXVzZXItcHJvZmlsZScsXG4gICAgdGVtcGxhdGVVcmw6ICdpZHAtcmV2aWV3LXVzZXItcHJvZmlsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElkcFJldmlld1VzZXJQcm9maWxlQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBJZHBSZXZpZXdVc2VyUHJvZmlsZUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSB7XG4gICAgI3N1Ym1pdFNlcnZpY2UgPSBpbmplY3QoU3VibWl0U2VydmljZSk7XG4gICAga2NDb250ZXh0ID0gaW5qZWN0PEV4dHJhY3Q8S2NDb250ZXh0LCB7IHBhZ2VJZDogJ2lkcC1yZXZpZXctdXNlci1wcm9maWxlLmZ0bCcgfT4+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIGkxOG4gPSBpbmplY3Q8STE4bj4oTE9HSU5fSTE4Tik7XG5cbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oTE9HSU5fQ0xBU1NFUyk7XG5cbiAgICBkb2N1bWVudFRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgYm9keUNsYXNzTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgZGlzcGxheVJlcXVpcmVkRmllbGRzID0gdHJ1ZTtcbiAgICBkaXNwbGF5SW5mbyA9IGZhbHNlO1xuICAgIGRpc3BsYXlNZXNzYWdlID0gIXRoaXMua2NDb250ZXh0Py5tZXNzYWdlc1BlckZpZWxkPy5leGlzdHNFcnJvcignZ2xvYmFsJyk7XG5cbiAgICBoZWFkZXJOb2RlPyA9IHZpZXdDaGlsZDxUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4+KCdoZWFkZXJOb2RlJyk7XG4gICAgaW5mb05vZGU/ID0gdmlld0NoaWxkPFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50Pj4oJ2luZm9Ob2RlJyk7XG4gICAgc29jaWFsUHJvdmlkZXJzTm9kZT8gPSB2aWV3Q2hpbGQ8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+Pignc29jaWFsUHJvdmlkZXJzTm9kZScpO1xuXG4gICAgdXNlclByb2ZpbGVGb3JtRmllbGRzID0gaW5wdXQ8VHlwZTxVc2VyUHJvZmlsZUZvcm1GaWVsZHNDb21wb25lbnQ+PigpO1xuICAgIGlzRm9ybVN1Ym1pdHRhYmxlID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLiNzdWJtaXRTZXJ2aWNlLmlzU3VibWl0dGFibGUucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSkuc3Vic2NyaWJlKHN1Ym1pdHRhYmxlID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNGb3JtU3VibWl0dGFibGUuc2V0KHN1Ym1pdHRhYmxlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25DYWxsYmFjaygpIHtcbiAgICAgICAgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdrYy1yZWdpc3Rlci1mb3JtJykgYXMgSFRNTEZvcm1FbGVtZW50KS5zdWJtaXQoKTtcbiAgICB9XG59XG4iLCJAbGV0IHVybCA9IGtjQ29udGV4dC51cmw7XG5cbjxuZy10ZW1wbGF0ZSAjaGVhZGVyTm9kZT5cbiAgICB7eyBpMThuLm1zZ1N0cignbG9naW5JZHBSZXZpZXdQcm9maWxlVGl0bGUnKSB9fVxuPC9uZy10ZW1wbGF0ZT5cbjxmb3JtXG4gICAgaWQ9XCJrYy1pZHAtcmV2aWV3LXByb2ZpbGUtZm9ybVwiXG4gICAgbWV0aG9kPVwicG9zdFwiXG4gICAgW2tjQ2xhc3NdPVwiJ2tjRm9ybUNsYXNzJ1wiXG4gICAgW2FjdGlvbl09XCJ1cmwubG9naW5BY3Rpb25cIlxuPlxuICAgIDxuZy1jb250YWluZXIgW25nQ29tcG9uZW50T3V0bGV0XT1cInVzZXJQcm9maWxlRm9ybUZpZWxkcygpID8/IG51bGxcIiAvPlxuICAgIDxkaXYgW2tjQ2xhc3NdPVwiJ2tjRm9ybUdyb3VwQ2xhc3MnXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGlkPVwia2MtZm9ybS1vcHRpb25zXCJcbiAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0Zvcm1PcHRpb25zQ2xhc3MnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBba2NDbGFzc109XCIna2NGb3JtT3B0aW9uc1dyYXBwZXJDbGFzcydcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGlkPVwia2MtZm9ybS1idXR0b25zXCJcbiAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0Zvcm1CdXR0b25zQ2xhc3MnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiWydrY0J1dHRvbkNsYXNzJywgJ2tjQnV0dG9uUHJpbWFyeUNsYXNzJywgJ2tjQnV0dG9uQmxvY2tDbGFzcycsICdrY0J1dHRvbkxhcmdlQ2xhc3MnXVwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cImkxOG4ubXNnU3RyKCdkb1N1Ym1pdCcpXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzRm9ybVN1Ym1pdHRhYmxlKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, inject,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, inject, viewChild } from '@angular/core';
|
|
2
|
+
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
2
3
|
import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
|
|
3
4
|
import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
|
|
4
5
|
import { TemplateComponent } from '@keycloakify/angular/login/containers/template';
|
|
5
|
-
import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
|
|
6
6
|
import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
|
|
7
7
|
import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
|
|
8
8
|
import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
|
|
@@ -14,11 +14,12 @@ export class InfoComponent extends ComponentReference {
|
|
|
14
14
|
this.i18n = inject(LOGIN_I18N);
|
|
15
15
|
this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
|
|
16
16
|
this.classes = inject(LOGIN_CLASSES);
|
|
17
|
-
this.displayRequiredFields =
|
|
18
|
-
this.documentTitle = input();
|
|
19
|
-
this.bodyClassName = input();
|
|
17
|
+
this.displayRequiredFields = false;
|
|
20
18
|
this.displayInfo = false;
|
|
21
19
|
this.displayMessage = false;
|
|
20
|
+
this.headerNode = viewChild('headerNode');
|
|
21
|
+
this.infoNode = viewChild('infoNode');
|
|
22
|
+
this.socialProvidersNode = viewChild('socialProvidersNode');
|
|
22
23
|
}
|
|
23
24
|
get infoMessage() {
|
|
24
25
|
let html = this.kcContext.message.summary;
|
|
@@ -30,20 +31,20 @@ export class InfoComponent extends ComponentReference {
|
|
|
30
31
|
return html;
|
|
31
32
|
}
|
|
32
33
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: InfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: InfoComponent, isStandalone: true, selector: "kc
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: InfoComponent, isStandalone: true, selector: "kc-\u00EDnfo", providers: [
|
|
34
35
|
{
|
|
35
36
|
provide: ComponentReference,
|
|
36
37
|
useExisting: forwardRef(() => InfoComponent)
|
|
37
38
|
}
|
|
38
|
-
], usesInheritance: true, ngImport: i0, template: "@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n@let messageHeader = kcContext.messageHeader;\n@let message = kcContext.message;\n
|
|
39
|
+
], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n@let messageHeader = kcContext.messageHeader;\n@let message = kcContext.message;\n\n<ng-template #headerNode>\n <span [innerHTML]=\"messageHeader ?? i18n.advancedMsgStr(message.summary) | kcSanitize: 'html'\"> </span>\n</ng-template>\n<div id=\"kc-info-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"infoMessage | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink) {\n @if (pageRedirectUri) {\n <p>\n <a\n [href]=\"pageRedirectUri\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n @if (actionUri) {\n <p>\n <a\n [href]=\"actionUri\"\n [innerHTML]=\"i18n.msgStr('proceedWithAction') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n @if (client.baseUrl) {\n <p>\n <a\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n }\n</div>\n", dependencies: [{ kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
39
40
|
}
|
|
40
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: InfoComponent, decorators: [{
|
|
41
42
|
type: Component,
|
|
42
|
-
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc
|
|
43
|
+
args: [{ standalone: true, imports: [TemplateComponent, KcSanitizePipe], selector: 'kc-ínfo', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
43
44
|
{
|
|
44
45
|
provide: ComponentReference,
|
|
45
46
|
useExisting: forwardRef(() => InfoComponent)
|
|
46
47
|
}
|
|
47
|
-
], template: "@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n@let messageHeader = kcContext.messageHeader;\n@let message = kcContext.message;\n
|
|
48
|
+
], template: "@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n@let messageHeader = kcContext.messageHeader;\n@let message = kcContext.message;\n\n<ng-template #headerNode>\n <span [innerHTML]=\"messageHeader ?? i18n.advancedMsgStr(message.summary) | kcSanitize: 'html'\"> </span>\n</ng-template>\n<div id=\"kc-info-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"infoMessage | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink) {\n @if (pageRedirectUri) {\n <p>\n <a\n [href]=\"pageRedirectUri\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n @if (actionUri) {\n <p>\n <a\n [href]=\"actionUri\"\n [innerHTML]=\"i18n.msgStr('proceedWithAction') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n @if (client.baseUrl) {\n <p>\n <a\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n }\n</div>\n" }]
|
|
48
49
|
}] });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbG9naW4vcGFnZXMvaW5mby9pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9wYWdlcy9pbmZvL2luZm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBR25GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBZ0JoRixNQUFNLE9BQU8sYUFBYyxTQUFRLGtCQUFrQjtJQWJyRDs7UUFjSSxjQUFTLEdBQUcsTUFBTSxDQUE2QyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pGLFNBQUksR0FBRyxNQUFNLENBQU8sVUFBVSxDQUFDLENBQUM7UUFFdkIsb0JBQWUsR0FBRyxNQUFNLENBQVUsZUFBZSxDQUFDLENBQUM7UUFDbkQsWUFBTyxHQUFHLE1BQU0sQ0FBb0MsYUFBYSxDQUFDLENBQUM7UUFLNUUsMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBRXZCLGVBQVUsR0FBSSxTQUFTLENBQTJCLFlBQVksQ0FBQyxDQUFDO1FBQ2hFLGFBQVEsR0FBSSxTQUFTLENBQTJCLFVBQVUsQ0FBQyxDQUFDO1FBQzVELHdCQUFtQixHQUFJLFNBQVMsQ0FBMkIscUJBQXFCLENBQUMsQ0FBQztLQWFyRjtJQVhHLElBQUksV0FBVztRQUNYLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUMxQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDakMsSUFBSSxJQUFJLEtBQUssQ0FBQztZQUVkLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV0SSxJQUFJLElBQUksTUFBTSxDQUFDO1FBQ25CLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzhHQTVCUSxhQUFhO2tHQUFiLGFBQWEsMkRBUFg7WUFDUDtnQkFDSSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQzthQUMvQztTQUNKLCtZQ3ZCTCx1M0NBNkNBLHVDRC9CaUMsY0FBYzs7MkZBV2xDLGFBQWE7a0JBYnpCLFNBQVM7aUNBQ00sSUFBSSxXQUNQLENBQUMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDLFlBQ2xDLFNBQVMsbUJBRUYsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUM7eUJBQy9DO3FCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgaW5qZWN0LCBUZW1wbGF0ZVJlZiwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLY1Nhbml0aXplUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi9waXBlcy9rYy1zYW5pdGl6ZSc7XG5pbXBvcnQgeyBVU0VfREVGQVVMVF9DU1MgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWIvdG9rZW5zL3VzZS1kZWZhdWx0LWNzcyc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb250YWluZXJzL3RlbXBsYXRlJztcbmltcG9ydCB0eXBlIHsgSTE4biB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2kxOG4nO1xuaW1wb3J0IHR5cGUgeyBLY0NvbnRleHQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9LY0NvbnRleHQnO1xuaW1wb3J0IHsgTE9HSU5fQ0xBU1NFUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9jbGFzc2VzJztcbmltcG9ydCB7IExPR0lOX0kxOE4gfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMvaTE4bic7XG5pbXBvcnQgeyBLQ19MT0dJTl9DT05URVhUIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2tjLWNvbnRleHQnO1xuaW1wb3J0IHR5cGUgeyBDbGFzc0tleSB9IGZyb20gJ2tleWNsb2FraWZ5L2xvZ2luL2xpYi9rY0Nsc3gnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUZW1wbGF0ZUNvbXBvbmVudCwgS2NTYW5pdGl6ZVBpcGVdLFxuICAgIHNlbGVjdG9yOiAna2Mtw61uZm8nLFxuICAgIHRlbXBsYXRlVXJsOiAnaW5mby5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEluZm9Db21wb25lbnQpXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEluZm9Db21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRSZWZlcmVuY2Uge1xuICAgIGtjQ29udGV4dCA9IGluamVjdDxFeHRyYWN0PEtjQ29udGV4dCwgeyBwYWdlSWQ6ICdpbmZvLmZ0bCcgfT4+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIGkxOG4gPSBpbmplY3Q8STE4bj4oTE9HSU5fSTE4Tik7XG5cbiAgICBvdmVycmlkZSBkb1VzZURlZmF1bHRDc3MgPSBpbmplY3Q8Ym9vbGVhbj4oVVNFX0RFRkFVTFRfQ1NTKTtcbiAgICBvdmVycmlkZSBjbGFzc2VzID0gaW5qZWN0PFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pj4oTE9HSU5fQ0xBU1NFUyk7XG5cbiAgICBkb2N1bWVudFRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgYm9keUNsYXNzTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgZGlzcGxheVJlcXVpcmVkRmllbGRzID0gZmFsc2U7XG4gICAgZGlzcGxheUluZm8gPSBmYWxzZTtcbiAgICBkaXNwbGF5TWVzc2FnZSA9IGZhbHNlO1xuXG4gICAgaGVhZGVyTm9kZT8gPSB2aWV3Q2hpbGQ8VGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+PignaGVhZGVyTm9kZScpO1xuICAgIGluZm9Ob2RlPyA9IHZpZXdDaGlsZDxUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4+KCdpbmZvTm9kZScpO1xuICAgIHNvY2lhbFByb3ZpZGVyc05vZGU/ID0gdmlld0NoaWxkPFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50Pj4oJ3NvY2lhbFByb3ZpZGVyc05vZGUnKTtcblxuICAgIGdldCBpbmZvTWVzc2FnZSgpIHtcbiAgICAgICAgbGV0IGh0bWwgPSB0aGlzLmtjQ29udGV4dC5tZXNzYWdlLnN1bW1hcnk7XG4gICAgICAgIGlmICh0aGlzLmtjQ29udGV4dC5yZXF1aXJlZEFjdGlvbnMpIHtcbiAgICAgICAgICAgIGh0bWwgKz0gJzxiPic7XG5cbiAgICAgICAgICAgIGh0bWwgKz0gdGhpcy5rY0NvbnRleHQucmVxdWlyZWRBY3Rpb25zLm1hcChyZXF1aXJlZEFjdGlvbiA9PiB0aGlzLmkxOG4uYWR2YW5jZWRNc2dTdHIoYHJlcXVpcmVkQWN0aW9uLiR7cmVxdWlyZWRBY3Rpb259YCkpLmpvaW4oJywgJyk7XG5cbiAgICAgICAgICAgIGh0bWwgKz0gJzwvYj4nO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBodG1sO1xuICAgIH1cbn1cbiIsIkBsZXQgc2tpcExpbmsgPSBrY0NvbnRleHQuc2tpcExpbms7XG5AbGV0IGFjdGlvblVyaSA9IGtjQ29udGV4dC5hY3Rpb25Vcmk7XG5AbGV0IHBhZ2VSZWRpcmVjdFVyaSA9IGtjQ29udGV4dC5wYWdlUmVkaXJlY3RVcmk7XG5AbGV0IGNsaWVudCA9IGtjQ29udGV4dC5jbGllbnQ7XG5AbGV0IG1lc3NhZ2VIZWFkZXIgPSBrY0NvbnRleHQubWVzc2FnZUhlYWRlcjtcbkBsZXQgbWVzc2FnZSA9IGtjQ29udGV4dC5tZXNzYWdlO1xuXG48bmctdGVtcGxhdGUgI2hlYWRlck5vZGU+XG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJtZXNzYWdlSGVhZGVyID8/IGkxOG4uYWR2YW5jZWRNc2dTdHIobWVzc2FnZS5zdW1tYXJ5KSB8IGtjU2FuaXRpemU6ICdodG1sJ1wiPiA8L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuPGRpdiBpZD1cImtjLWluZm8tbWVzc2FnZVwiPlxuICAgIDxwXG4gICAgICAgIGNsYXNzPVwiaW5zdHJ1Y3Rpb25cIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImluZm9NZXNzYWdlIHwga2NTYW5pdGl6ZTogJ2h0bWwnXCJcbiAgICA+PC9wPlxuICAgIEBpZiAoIXNraXBMaW5rKSB7XG4gICAgICAgIEBpZiAocGFnZVJlZGlyZWN0VXJpKSB7XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJwYWdlUmVkaXJlY3RVcmlcIlxuICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImkxOG4ubXNnU3RyKCdiYWNrVG9BcHBsaWNhdGlvbicpIHwga2NTYW5pdGl6ZTogJ2h0bWwnXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoYWN0aW9uVXJpKSB7XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJhY3Rpb25VcmlcIlxuICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImkxOG4ubXNnU3RyKCdwcm9jZWVkV2l0aEFjdGlvbicpIHwga2NTYW5pdGl6ZTogJ2h0bWwnXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoY2xpZW50LmJhc2VVcmwpIHtcbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImNsaWVudC5iYXNlVXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpMThuLm1zZ1N0cignYmFja1RvQXBwbGljYXRpb24nKSB8IGtjU2FuaXRpemU6ICdodG1sJ1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgfVxuICAgIH1cbjwvZGl2PlxuIl19
|