@keycloakify/angular 0.0.1-rc.16 → 0.0.1-rc.18

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.
Files changed (1046) hide show
  1. package/account/DefaultPage/DefaultPage.d.ts +38 -0
  2. package/account/DefaultPage/index.d.ts +5 -0
  3. package/account/KcContext/index.d.ts +5 -0
  4. package/account/classes/component-reference/component-reference.class.d.ts +6 -0
  5. package/account/classes/component-reference/index.d.ts +5 -0
  6. package/account/containers/template/index.d.ts +5 -0
  7. package/account/containers/template/template.component.d.ts +26 -0
  8. package/account/directives/kc-class/index.d.ts +5 -0
  9. package/account/directives/kc-class/kc-class.directive.d.ts +26 -0
  10. package/account/i18n/index.d.ts +5 -0
  11. package/account/pages/account/account.component.d.ts +14 -0
  12. package/account/pages/account/index.d.ts +5 -0
  13. package/account/pages/applications/applications.component.d.ts +13 -0
  14. package/account/pages/applications/index.d.ts +5 -0
  15. package/account/pages/federatedIdentity/federatedIdentity.component.d.ts +13 -0
  16. package/account/pages/federatedIdentity/index.d.ts +5 -0
  17. package/account/pages/log/index.d.ts +5 -0
  18. package/account/pages/log/log.component.d.ts +13 -0
  19. package/account/pages/password/index.d.ts +5 -0
  20. package/account/pages/password/password.component.d.ts +28 -0
  21. package/account/pages/sessions/index.d.ts +5 -0
  22. package/account/pages/sessions/sessions.component.d.ts +13 -0
  23. package/account/pages/totp/index.d.ts +5 -0
  24. package/account/pages/totp/totp.component.d.ts +13 -0
  25. package/account/providers/keycloakify-angular/index.d.ts +5 -0
  26. package/account/providers/keycloakify-angular/keycloakify-angular.providers.d.ts +15 -0
  27. package/account/services/account-resource-injector/account-resource-injector.service.d.ts +10 -0
  28. package/account/services/account-resource-injector/index.d.ts +5 -0
  29. package/account/services/i18n/i18n.service.d.ts +6 -0
  30. package/account/services/i18n/index.d.ts +5 -0
  31. package/account/tokens/classes/classes.token.d.ts +16 -0
  32. package/account/tokens/classes/index.d.ts +5 -0
  33. package/account/tokens/i18n/i18n.token.d.ts +2 -0
  34. package/account/tokens/i18n/index.d.ts +5 -0
  35. package/account/tokens/kc-context/index.d.ts +5 -0
  36. package/account/tokens/kc-context/kc-context.token.d.ts +3 -0
  37. package/esm2022/account/DefaultPage/DefaultPage.mjs +34 -0
  38. package/esm2022/account/DefaultPage/keycloakify-angular-account-DefaultPage.mjs +5 -0
  39. package/esm2022/account/DefaultPage/public-api.mjs +2 -0
  40. package/esm2022/account/KcContext/KcContext.mjs +2 -0
  41. package/esm2022/account/KcContext/keycloakify-angular-account-KcContext.mjs +5 -0
  42. package/esm2022/account/KcContext/public-api.mjs +2 -0
  43. package/esm2022/account/classes/component-reference/component-reference.class.mjs +3 -0
  44. package/esm2022/account/classes/component-reference/keycloakify-angular-account-classes-component-reference.mjs +5 -0
  45. package/esm2022/account/classes/component-reference/public-api.mjs +2 -0
  46. package/esm2022/account/containers/template/keycloakify-angular-account-containers-template.mjs +5 -0
  47. package/esm2022/account/containers/template/public-api.mjs +2 -0
  48. package/esm2022/account/containers/template/template.component.mjs +66 -0
  49. package/esm2022/account/directives/kc-class/kc-class.directive.mjs +141 -0
  50. package/esm2022/account/directives/kc-class/keycloakify-angular-account-directives-kc-class.mjs +5 -0
  51. package/esm2022/account/directives/kc-class/public-api.mjs +2 -0
  52. package/esm2022/account/i18n/i18n.mjs +2 -0
  53. package/esm2022/account/i18n/keycloakify-angular-account-i18n.mjs +5 -0
  54. package/esm2022/account/i18n/public-api.mjs +2 -0
  55. package/esm2022/account/pages/account/account.component.mjs +39 -0
  56. package/esm2022/account/pages/account/keycloakify-angular-account-pages-account.mjs +5 -0
  57. package/esm2022/account/pages/account/public-api.mjs +2 -0
  58. package/esm2022/account/pages/applications/applications.component.mjs +37 -0
  59. package/esm2022/account/pages/applications/keycloakify-angular-account-pages-applications.mjs +5 -0
  60. package/esm2022/account/pages/applications/public-api.mjs +2 -0
  61. package/esm2022/account/pages/federatedIdentity/federatedIdentity.component.mjs +36 -0
  62. package/esm2022/account/pages/federatedIdentity/keycloakify-angular-account-pages-federatedIdentity.mjs +5 -0
  63. package/esm2022/account/pages/federatedIdentity/public-api.mjs +2 -0
  64. package/esm2022/account/pages/log/keycloakify-angular-account-pages-log.mjs +5 -0
  65. package/esm2022/account/pages/log/log.component.mjs +36 -0
  66. package/esm2022/account/pages/log/public-api.mjs +2 -0
  67. package/esm2022/account/pages/password/keycloakify-angular-account-pages-password.mjs +5 -0
  68. package/esm2022/account/pages/password/password.component.mjs +108 -0
  69. package/esm2022/account/pages/password/public-api.mjs +2 -0
  70. package/esm2022/account/pages/sessions/keycloakify-angular-account-pages-sessions.mjs +5 -0
  71. package/esm2022/account/pages/sessions/public-api.mjs +2 -0
  72. package/esm2022/account/pages/sessions/sessions.component.mjs +36 -0
  73. package/esm2022/account/pages/totp/keycloakify-angular-account-pages-totp.mjs +5 -0
  74. package/esm2022/account/pages/totp/public-api.mjs +2 -0
  75. package/esm2022/account/pages/totp/totp.component.mjs +37 -0
  76. package/esm2022/account/providers/keycloakify-angular/keycloakify-angular-account-providers-keycloakify-angular.mjs +5 -0
  77. package/esm2022/account/providers/keycloakify-angular/keycloakify-angular.providers.mjs +49 -0
  78. package/esm2022/account/providers/keycloakify-angular/public-api.mjs +2 -0
  79. package/esm2022/account/services/account-resource-injector/account-resource-injector.service.mjs +37 -0
  80. package/esm2022/account/services/account-resource-injector/keycloakify-angular-account-services-account-resource-injector.mjs +5 -0
  81. package/esm2022/account/services/account-resource-injector/public-api.mjs +2 -0
  82. package/esm2022/account/services/i18n/i18n.service.mjs +12 -0
  83. package/esm2022/account/services/i18n/keycloakify-angular-account-services-i18n.mjs +5 -0
  84. package/esm2022/account/services/i18n/public-api.mjs +2 -0
  85. package/esm2022/account/tokens/classes/classes.token.mjs +3 -0
  86. package/esm2022/account/tokens/classes/keycloakify-angular-account-tokens-classes.mjs +5 -0
  87. package/esm2022/account/tokens/classes/public-api.mjs +2 -0
  88. package/esm2022/account/tokens/i18n/i18n.token.mjs +3 -0
  89. package/esm2022/account/tokens/i18n/keycloakify-angular-account-tokens-i18n.mjs +5 -0
  90. package/esm2022/account/tokens/i18n/public-api.mjs +2 -0
  91. package/esm2022/account/tokens/kc-context/kc-context.token.mjs +3 -0
  92. package/esm2022/account/tokens/kc-context/keycloakify-angular-account-tokens-kc-context.mjs +5 -0
  93. package/esm2022/account/tokens/kc-context/public-api.mjs +2 -0
  94. package/esm2022/keycloakify-angular.mjs +5 -0
  95. package/esm2022/lib/directives/attributes/attributes.directive.mjs +26 -0
  96. package/esm2022/lib/directives/attributes/keycloakify-angular-lib-directives-attributes.mjs +5 -0
  97. package/esm2022/lib/directives/attributes/public-api.mjs +2 -0
  98. package/esm2022/lib/keycloakify-angular-lib.mjs +5 -0
  99. package/esm2022/lib/models/script/keycloakify-angular-lib-models-script.mjs +5 -0
  100. package/esm2022/lib/models/script/public-api.mjs +2 -0
  101. package/esm2022/lib/models/script/script.model.mjs +2 -0
  102. package/esm2022/lib/pipes/input-type/input-type.pipe.mjs +20 -0
  103. package/esm2022/lib/pipes/input-type/keycloakify-angular-lib-pipes-input-type.mjs +5 -0
  104. package/esm2022/lib/pipes/input-type/public-api.mjs +2 -0
  105. package/esm2022/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.mjs +20 -0
  106. package/esm2022/lib/pipes/is-array-with-empty-object/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +5 -0
  107. package/esm2022/lib/pipes/is-array-with-empty-object/public-api.mjs +2 -0
  108. package/esm2022/lib/pipes/kc-sanitize/kc-sanitize.pipe.mjs +29 -0
  109. package/esm2022/lib/pipes/kc-sanitize/keycloakify-angular-lib-pipes-kc-sanitize.mjs +5 -0
  110. package/esm2022/lib/pipes/kc-sanitize/public-api.mjs +2 -0
  111. package/esm2022/lib/pipes/to-array/keycloakify-angular-lib-pipes-to-array.mjs +5 -0
  112. package/esm2022/lib/pipes/to-array/public-api.mjs +2 -0
  113. package/esm2022/lib/pipes/to-array/to-array.pipe.mjs +21 -0
  114. package/esm2022/lib/pipes/to-number/keycloakify-angular-lib-pipes-to-number.mjs +5 -0
  115. package/esm2022/lib/pipes/to-number/public-api.mjs +2 -0
  116. package/esm2022/lib/pipes/to-number/to-number.pipe.mjs +20 -0
  117. package/esm2022/lib/public-api.mjs +2 -0
  118. package/esm2022/lib/services/resource-injector/keycloakify-angular-lib-services-resource-injector.mjs +5 -0
  119. package/esm2022/lib/services/resource-injector/public-api.mjs +2 -0
  120. package/esm2022/lib/services/resource-injector/resource-injector.service.mjs +54 -0
  121. package/esm2022/lib/tokens/use-default-css/keycloakify-angular-lib-tokens-use-default-css.mjs +5 -0
  122. package/esm2022/lib/tokens/use-default-css/public-api.mjs +2 -0
  123. package/esm2022/lib/tokens/use-default-css/use-default-css.token.mjs +3 -0
  124. package/esm2022/login/DefaultPage/DefaultPage.mjs +121 -0
  125. package/esm2022/login/DefaultPage/keycloakify-angular-login-DefaultPage.mjs +5 -0
  126. package/esm2022/login/DefaultPage/public-api.mjs +2 -0
  127. package/esm2022/login/KcContext/KcContext.mjs +2 -0
  128. package/esm2022/login/KcContext/keycloakify-angular-login-KcContext.mjs +5 -0
  129. package/esm2022/login/KcContext/public-api.mjs +2 -0
  130. package/esm2022/login/classes/component-reference/component-reference.class.mjs +3 -0
  131. package/esm2022/login/classes/component-reference/keycloakify-angular-login-classes-component-reference.mjs +5 -0
  132. package/esm2022/login/classes/component-reference/public-api.mjs +2 -0
  133. package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.mjs +106 -0
  134. package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs +5 -0
  135. package/esm2022/login/components/add-remove-buttons-multi-valued-attribute/public-api.mjs +2 -0
  136. package/esm2022/login/components/field-errors/field-errors.component.mjs +33 -0
  137. package/esm2022/login/components/field-errors/keycloakify-angular-login-components-field-errors.mjs +5 -0
  138. package/esm2022/login/components/field-errors/public-api.mjs +2 -0
  139. package/esm2022/login/components/group-label/group-label.component.mjs +43 -0
  140. package/esm2022/login/components/group-label/keycloakify-angular-login-components-group-label.mjs +5 -0
  141. package/esm2022/login/components/group-label/public-api.mjs +2 -0
  142. package/esm2022/login/components/input-field-by-type/input-field-by-type.component.mjs +46 -0
  143. package/esm2022/login/components/input-field-by-type/keycloakify-angular-login-components-input-field-by-type.mjs +5 -0
  144. package/esm2022/login/components/input-field-by-type/public-api.mjs +2 -0
  145. package/esm2022/login/components/input-tag/input-tag.component.mjs +90 -0
  146. package/esm2022/login/components/input-tag/keycloakify-angular-login-components-input-tag.mjs +5 -0
  147. package/esm2022/login/components/input-tag/public-api.mjs +2 -0
  148. package/esm2022/login/components/input-tag-selects/input-tag-selects.component.mjs +117 -0
  149. package/esm2022/login/components/input-tag-selects/keycloakify-angular-login-components-input-tag-selects.mjs +5 -0
  150. package/esm2022/login/components/input-tag-selects/public-api.mjs +2 -0
  151. package/esm2022/login/components/logout-other-sessions/keycloakify-angular-login-components-logout-other-sessions.mjs +5 -0
  152. package/esm2022/login/components/logout-other-sessions/logout-other-sessions.component.mjs +32 -0
  153. package/esm2022/login/components/logout-other-sessions/public-api.mjs +2 -0
  154. package/esm2022/login/components/password-wrapper/keycloakify-angular-login-components-password-wrapper.mjs +5 -0
  155. package/esm2022/login/components/password-wrapper/password-wrapper.component.mjs +46 -0
  156. package/esm2022/login/components/password-wrapper/public-api.mjs +2 -0
  157. package/esm2022/login/components/select-tag/keycloakify-angular-login-components-select-tag.mjs +5 -0
  158. package/esm2022/login/components/select-tag/public-api.mjs +2 -0
  159. package/esm2022/login/components/select-tag/select-tag.component.mjs +82 -0
  160. package/esm2022/login/components/textarea-tag/keycloakify-angular-login-components-textarea-tag.mjs +5 -0
  161. package/esm2022/login/components/textarea-tag/public-api.mjs +2 -0
  162. package/esm2022/login/components/textarea-tag/textarea-tag.component.mjs +49 -0
  163. package/esm2022/login/components/user-profile-form-fields/keycloakify-angular-login-components-user-profile-form-fields.mjs +5 -0
  164. package/esm2022/login/components/user-profile-form-fields/public-api.mjs +2 -0
  165. package/esm2022/login/components/user-profile-form-fields/user-profile-form-fields.component.mjs +62 -0
  166. package/esm2022/login/containers/template/keycloakify-angular-login-containers-template.mjs +5 -0
  167. package/esm2022/login/containers/template/public-api.mjs +2 -0
  168. package/esm2022/login/containers/template/template.component.mjs +72 -0
  169. package/esm2022/login/directives/kc-class/kc-class.directive.mjs +138 -0
  170. package/esm2022/login/directives/kc-class/keycloakify-angular-login-directives-kc-class.mjs +5 -0
  171. package/esm2022/login/directives/kc-class/public-api.mjs +2 -0
  172. package/esm2022/login/i18n/i18n.mjs +2 -0
  173. package/esm2022/login/i18n/keycloakify-angular-login-i18n.mjs +5 -0
  174. package/esm2022/login/i18n/public-api.mjs +2 -0
  175. package/esm2022/login/pages/code/code.component.mjs +35 -0
  176. package/esm2022/login/pages/code/keycloakify-angular-login-pages-code.mjs +5 -0
  177. package/esm2022/login/pages/code/public-api.mjs +2 -0
  178. package/esm2022/login/pages/delete-account-confirm/delete-account-confirm.component.mjs +35 -0
  179. package/esm2022/login/pages/delete-account-confirm/keycloakify-angular-login-pages-delete-account-confirm.mjs +5 -0
  180. package/esm2022/login/pages/delete-account-confirm/public-api.mjs +2 -0
  181. package/esm2022/login/pages/delete-credential/delete-credential.component.mjs +40 -0
  182. package/esm2022/login/pages/delete-credential/keycloakify-angular-login-pages-delete-credential.mjs +5 -0
  183. package/esm2022/login/pages/delete-credential/public-api.mjs +2 -0
  184. package/esm2022/login/pages/error/error.component.mjs +35 -0
  185. package/esm2022/login/pages/error/keycloakify-angular-login-pages-error.mjs +5 -0
  186. package/esm2022/login/pages/error/public-api.mjs +2 -0
  187. package/esm2022/login/pages/frontchannel-logout/frontchannel-logout.component.mjs +44 -0
  188. package/esm2022/login/pages/frontchannel-logout/keycloakify-angular-login-pages-frontchannel-logout.mjs +5 -0
  189. package/esm2022/login/pages/frontchannel-logout/public-api.mjs +2 -0
  190. package/esm2022/login/pages/idp-review-user-profile/idp-review-user-profile.component.mjs +53 -0
  191. package/esm2022/login/pages/idp-review-user-profile/keycloakify-angular-login-pages-idp-review-user-profile.mjs +5 -0
  192. package/esm2022/login/pages/idp-review-user-profile/public-api.mjs +2 -0
  193. package/esm2022/login/pages/info/info.component.mjs +49 -0
  194. package/esm2022/login/pages/info/keycloakify-angular-login-pages-info.mjs +5 -0
  195. package/esm2022/login/pages/info/public-api.mjs +2 -0
  196. package/esm2022/login/pages/login/keycloakify-angular-login-pages-login.mjs +5 -0
  197. package/esm2022/login/pages/login/login.component.mjs +44 -0
  198. package/esm2022/login/pages/login/public-api.mjs +2 -0
  199. package/esm2022/login/pages/login-config-totp/keycloakify-angular-login-pages-login-config-totp.mjs +5 -0
  200. package/esm2022/login/pages/login-config-totp/login-config-totp.component.mjs +42 -0
  201. package/esm2022/login/pages/login-config-totp/public-api.mjs +2 -0
  202. package/esm2022/login/pages/login-idp-link-confirm/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +5 -0
  203. package/esm2022/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.mjs +40 -0
  204. package/esm2022/login/pages/login-idp-link-confirm/public-api.mjs +2 -0
  205. package/esm2022/login/pages/login-idp-link-confirm-override/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +5 -0
  206. package/esm2022/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.mjs +40 -0
  207. package/esm2022/login/pages/login-idp-link-confirm-override/public-api.mjs +2 -0
  208. package/esm2022/login/pages/login-idp-link-email/keycloakify-angular-login-pages-login-idp-link-email.mjs +5 -0
  209. package/esm2022/login/pages/login-idp-link-email/login-idp-link-email.component.mjs +40 -0
  210. package/esm2022/login/pages/login-idp-link-email/public-api.mjs +2 -0
  211. package/esm2022/login/pages/login-oauth-grant/keycloakify-angular-login-pages-login-oauth-grant.mjs +5 -0
  212. package/esm2022/login/pages/login-oauth-grant/login-oauth-grant.component.mjs +40 -0
  213. package/esm2022/login/pages/login-oauth-grant/public-api.mjs +2 -0
  214. package/esm2022/login/pages/login-oauth2-device-verify-user-code/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +5 -0
  215. package/esm2022/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.mjs +40 -0
  216. package/esm2022/login/pages/login-oauth2-device-verify-user-code/public-api.mjs +2 -0
  217. package/esm2022/login/pages/login-otp/keycloakify-angular-login-pages-login-otp.mjs +5 -0
  218. package/esm2022/login/pages/login-otp/login-otp.component.mjs +41 -0
  219. package/esm2022/login/pages/login-otp/public-api.mjs +2 -0
  220. package/esm2022/login/pages/login-page-expired/keycloakify-angular-login-pages-login-page-expired.mjs +5 -0
  221. package/esm2022/login/pages/login-page-expired/login-page-expired.component.mjs +39 -0
  222. package/esm2022/login/pages/login-page-expired/public-api.mjs +2 -0
  223. package/esm2022/login/pages/login-passkeys-conditional-authenticate/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +5 -0
  224. package/esm2022/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.mjs +84 -0
  225. package/esm2022/login/pages/login-passkeys-conditional-authenticate/public-api.mjs +2 -0
  226. package/esm2022/login/pages/login-password/keycloakify-angular-login-pages-login-password.mjs +5 -0
  227. package/esm2022/login/pages/login-password/login-password.component.mjs +43 -0
  228. package/esm2022/login/pages/login-password/public-api.mjs +2 -0
  229. package/esm2022/login/pages/login-recovery-authn-code-config/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +5 -0
  230. package/esm2022/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.mjs +43 -0
  231. package/esm2022/login/pages/login-recovery-authn-code-config/public-api.mjs +2 -0
  232. package/esm2022/login/pages/login-recovery-authn-code-input/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +5 -0
  233. package/esm2022/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.mjs +41 -0
  234. package/esm2022/login/pages/login-recovery-authn-code-input/public-api.mjs +2 -0
  235. package/esm2022/login/pages/login-reset-otp/keycloakify-angular-login-pages-login-reset-otp.mjs +5 -0
  236. package/esm2022/login/pages/login-reset-otp/login-reset-otp.component.mjs +40 -0
  237. package/esm2022/login/pages/login-reset-otp/public-api.mjs +2 -0
  238. package/esm2022/login/pages/login-reset-password/keycloakify-angular-login-pages-login-reset-password.mjs +5 -0
  239. package/esm2022/login/pages/login-reset-password/login-reset-password.component.mjs +41 -0
  240. package/esm2022/login/pages/login-reset-password/public-api.mjs +2 -0
  241. package/esm2022/login/pages/login-update-password/keycloakify-angular-login-pages-login-update-password.mjs +5 -0
  242. package/esm2022/login/pages/login-update-password/login-update-password.component.mjs +43 -0
  243. package/esm2022/login/pages/login-update-password/public-api.mjs +2 -0
  244. package/esm2022/login/pages/login-update-profile/keycloakify-angular-login-pages-login-update-profile.mjs +5 -0
  245. package/esm2022/login/pages/login-update-profile/login-update-profile.component.mjs +50 -0
  246. package/esm2022/login/pages/login-update-profile/public-api.mjs +2 -0
  247. package/esm2022/login/pages/login-username/keycloakify-angular-login-pages-login-username.mjs +5 -0
  248. package/esm2022/login/pages/login-username/login-username.component.mjs +43 -0
  249. package/esm2022/login/pages/login-username/public-api.mjs +2 -0
  250. package/esm2022/login/pages/login-verify-email/keycloakify-angular-login-pages-login-verify-email.mjs +5 -0
  251. package/esm2022/login/pages/login-verify-email/login-verify-email.component.mjs +40 -0
  252. package/esm2022/login/pages/login-verify-email/public-api.mjs +2 -0
  253. package/esm2022/login/pages/login-x509-info/keycloakify-angular-login-pages-login-x509-info.mjs +5 -0
  254. package/esm2022/login/pages/login-x509-info/login-x509-info.component.mjs +40 -0
  255. package/esm2022/login/pages/login-x509-info/public-api.mjs +2 -0
  256. package/esm2022/login/pages/logout-confirm/keycloakify-angular-login-pages-logout-confirm.mjs +5 -0
  257. package/esm2022/login/pages/logout-confirm/logout-confirm.component.mjs +40 -0
  258. package/esm2022/login/pages/logout-confirm/public-api.mjs +2 -0
  259. package/esm2022/login/pages/register/keycloakify-angular-login-pages-register.mjs +5 -0
  260. package/esm2022/login/pages/register/public-api.mjs +2 -0
  261. package/esm2022/login/pages/register/register.component.mjs +55 -0
  262. package/esm2022/login/pages/saml-post-form/keycloakify-angular-login-pages-saml-post-form.mjs +5 -0
  263. package/esm2022/login/pages/saml-post-form/public-api.mjs +2 -0
  264. package/esm2022/login/pages/saml-post-form/saml-post-form.component.mjs +52 -0
  265. package/esm2022/login/pages/select-authenticator/keycloakify-angular-login-pages-select-authenticator.mjs +5 -0
  266. package/esm2022/login/pages/select-authenticator/public-api.mjs +2 -0
  267. package/esm2022/login/pages/select-authenticator/select-authenticator.component.mjs +41 -0
  268. package/esm2022/login/pages/terms/keycloakify-angular-login-pages-terms.mjs +5 -0
  269. package/esm2022/login/pages/terms/public-api.mjs +2 -0
  270. package/esm2022/login/pages/terms/terms.component.mjs +40 -0
  271. package/esm2022/login/pages/update-email/keycloakify-angular-login-pages-update-email.mjs +5 -0
  272. package/esm2022/login/pages/update-email/public-api.mjs +2 -0
  273. package/esm2022/login/pages/update-email/update-email.component.mjs +51 -0
  274. package/esm2022/login/pages/webauthn-authenticate/keycloakify-angular-login-pages-webauthn-authenticate.mjs +5 -0
  275. package/esm2022/login/pages/webauthn-authenticate/public-api.mjs +2 -0
  276. package/esm2022/login/pages/webauthn-authenticate/webauthn-authenticate.component.mjs +80 -0
  277. package/esm2022/login/pages/webauthn-error/keycloakify-angular-login-pages-webauthn-error.mjs +5 -0
  278. package/esm2022/login/pages/webauthn-error/public-api.mjs +2 -0
  279. package/esm2022/login/pages/webauthn-error/webauthn-error.component.mjs +49 -0
  280. package/esm2022/login/pages/webauthn-register/keycloakify-angular-login-pages-webauthn-register.mjs +5 -0
  281. package/esm2022/login/pages/webauthn-register/public-api.mjs +2 -0
  282. package/esm2022/login/pages/webauthn-register/webauthn-register.component.mjs +76 -0
  283. package/esm2022/login/providers/keycloakify-angular/keycloakify-angular-login-providers-keycloakify-angular.mjs +5 -0
  284. package/esm2022/login/providers/keycloakify-angular/keycloakify-angular.providers.mjs +54 -0
  285. package/esm2022/login/providers/keycloakify-angular/public-api.mjs +2 -0
  286. package/esm2022/login/services/i18n/i18n.service.mjs +12 -0
  287. package/esm2022/login/services/i18n/keycloakify-angular-login-services-i18n.mjs +5 -0
  288. package/esm2022/login/services/i18n/public-api.mjs +2 -0
  289. package/esm2022/login/services/login-resource-injector/keycloakify-angular-login-services-login-resource-injector.mjs +5 -0
  290. package/esm2022/login/services/login-resource-injector/login-resource-injector.service.mjs +68 -0
  291. package/esm2022/login/services/login-resource-injector/public-api.mjs +2 -0
  292. package/esm2022/login/services/submit/keycloakify-angular-login-services-submit.mjs +5 -0
  293. package/esm2022/login/services/submit/public-api.mjs +2 -0
  294. package/esm2022/login/services/submit/submit.service.mjs +20 -0
  295. package/esm2022/login/services/user-profile-form/keycloakify-angular-login-services-user-profile-form.mjs +5 -0
  296. package/esm2022/login/services/user-profile-form/public-api.mjs +2 -0
  297. package/esm2022/login/services/user-profile-form/user-profile-form.service.mjs +1019 -0
  298. package/esm2022/login/tokens/classes/classes.token.mjs +3 -0
  299. package/esm2022/login/tokens/classes/keycloakify-angular-login-tokens-classes.mjs +5 -0
  300. package/esm2022/login/tokens/classes/public-api.mjs +2 -0
  301. package/esm2022/login/tokens/i18n/i18n.token.mjs +3 -0
  302. package/esm2022/login/tokens/i18n/keycloakify-angular-login-tokens-i18n.mjs +5 -0
  303. package/esm2022/login/tokens/i18n/public-api.mjs +2 -0
  304. package/esm2022/login/tokens/kc-context/kc-context.token.mjs +3 -0
  305. package/esm2022/login/tokens/kc-context/keycloakify-angular-login-tokens-kc-context.mjs +5 -0
  306. package/esm2022/login/tokens/kc-context/public-api.mjs +2 -0
  307. package/esm2022/login/tokens/make-user-confirm-password/keycloakify-angular-login-tokens-make-user-confirm-password.mjs +5 -0
  308. package/esm2022/login/tokens/make-user-confirm-password/make-user-confirm-password.token.mjs +3 -0
  309. package/esm2022/login/tokens/make-user-confirm-password/public-api.mjs +2 -0
  310. package/esm2022/public-api.mjs +2 -0
  311. package/fesm2022/keycloakify-angular-account-DefaultPage.mjs +39 -0
  312. package/fesm2022/keycloakify-angular-account-DefaultPage.mjs.map +1 -0
  313. package/fesm2022/keycloakify-angular-account-KcContext.mjs +4 -0
  314. package/fesm2022/keycloakify-angular-account-KcContext.mjs.map +1 -0
  315. package/fesm2022/keycloakify-angular-account-classes-component-reference.mjs +9 -0
  316. package/fesm2022/keycloakify-angular-account-classes-component-reference.mjs.map +1 -0
  317. package/fesm2022/keycloakify-angular-account-containers-template.mjs +73 -0
  318. package/fesm2022/keycloakify-angular-account-containers-template.mjs.map +1 -0
  319. package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs +148 -0
  320. package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs.map +1 -0
  321. package/fesm2022/keycloakify-angular-account-i18n.mjs +4 -0
  322. package/fesm2022/keycloakify-angular-account-i18n.mjs.map +1 -0
  323. package/fesm2022/keycloakify-angular-account-pages-account.mjs +46 -0
  324. package/fesm2022/keycloakify-angular-account-pages-account.mjs.map +1 -0
  325. package/fesm2022/keycloakify-angular-account-pages-applications.mjs +44 -0
  326. package/fesm2022/keycloakify-angular-account-pages-applications.mjs.map +1 -0
  327. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs +43 -0
  328. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs.map +1 -0
  329. package/fesm2022/keycloakify-angular-account-pages-log.mjs +43 -0
  330. package/fesm2022/keycloakify-angular-account-pages-log.mjs.map +1 -0
  331. package/fesm2022/keycloakify-angular-account-pages-password.mjs +115 -0
  332. package/fesm2022/keycloakify-angular-account-pages-password.mjs.map +1 -0
  333. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs +43 -0
  334. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs.map +1 -0
  335. package/fesm2022/keycloakify-angular-account-pages-totp.mjs +44 -0
  336. package/fesm2022/keycloakify-angular-account-pages-totp.mjs.map +1 -0
  337. package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs +56 -0
  338. package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs.map +1 -0
  339. package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs +44 -0
  340. package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs.map +1 -0
  341. package/fesm2022/keycloakify-angular-account-services-i18n.mjs +19 -0
  342. package/fesm2022/keycloakify-angular-account-services-i18n.mjs.map +1 -0
  343. package/fesm2022/keycloakify-angular-account-tokens-classes.mjs +10 -0
  344. package/fesm2022/keycloakify-angular-account-tokens-classes.mjs.map +1 -0
  345. package/fesm2022/keycloakify-angular-account-tokens-i18n.mjs +10 -0
  346. package/fesm2022/keycloakify-angular-account-tokens-i18n.mjs.map +1 -0
  347. package/fesm2022/keycloakify-angular-account-tokens-kc-context.mjs +10 -0
  348. package/fesm2022/keycloakify-angular-account-tokens-kc-context.mjs.map +1 -0
  349. package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs +33 -0
  350. package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs.map +1 -0
  351. package/fesm2022/keycloakify-angular-lib-models-script.mjs +4 -0
  352. package/fesm2022/keycloakify-angular-lib-models-script.mjs.map +1 -0
  353. package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs +27 -0
  354. package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs.map +1 -0
  355. package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +27 -0
  356. package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs.map +1 -0
  357. package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs +36 -0
  358. package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs.map +1 -0
  359. package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs +28 -0
  360. package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs.map +1 -0
  361. package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs +27 -0
  362. package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs.map +1 -0
  363. package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs +61 -0
  364. package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs.map +1 -0
  365. package/fesm2022/keycloakify-angular-lib-tokens-use-default-css.mjs +10 -0
  366. package/fesm2022/keycloakify-angular-lib-tokens-use-default-css.mjs.map +1 -0
  367. package/fesm2022/keycloakify-angular-lib.mjs +8 -0
  368. package/fesm2022/keycloakify-angular-lib.mjs.map +1 -0
  369. package/fesm2022/keycloakify-angular-login-DefaultPage.mjs +126 -0
  370. package/fesm2022/keycloakify-angular-login-DefaultPage.mjs.map +1 -0
  371. package/fesm2022/keycloakify-angular-login-KcContext.mjs +4 -0
  372. package/fesm2022/keycloakify-angular-login-KcContext.mjs.map +1 -0
  373. package/fesm2022/keycloakify-angular-login-classes-component-reference.mjs +9 -0
  374. package/fesm2022/keycloakify-angular-login-classes-component-reference.mjs.map +1 -0
  375. package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs +113 -0
  376. package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs.map +1 -0
  377. package/fesm2022/keycloakify-angular-login-components-field-errors.mjs +40 -0
  378. package/fesm2022/keycloakify-angular-login-components-field-errors.mjs.map +1 -0
  379. package/fesm2022/keycloakify-angular-login-components-group-label.mjs +50 -0
  380. package/fesm2022/keycloakify-angular-login-components-group-label.mjs.map +1 -0
  381. package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs +53 -0
  382. package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs.map +1 -0
  383. package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs +124 -0
  384. package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs.map +1 -0
  385. package/fesm2022/keycloakify-angular-login-components-input-tag.mjs +97 -0
  386. package/fesm2022/keycloakify-angular-login-components-input-tag.mjs.map +1 -0
  387. package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs +39 -0
  388. package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs.map +1 -0
  389. package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs +53 -0
  390. package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs.map +1 -0
  391. package/fesm2022/keycloakify-angular-login-components-select-tag.mjs +89 -0
  392. package/fesm2022/keycloakify-angular-login-components-select-tag.mjs.map +1 -0
  393. package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs +56 -0
  394. package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs.map +1 -0
  395. package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs +69 -0
  396. package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs.map +1 -0
  397. package/fesm2022/keycloakify-angular-login-containers-template.mjs +79 -0
  398. package/fesm2022/keycloakify-angular-login-containers-template.mjs.map +1 -0
  399. package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs +145 -0
  400. package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs.map +1 -0
  401. package/fesm2022/keycloakify-angular-login-i18n.mjs +4 -0
  402. package/fesm2022/keycloakify-angular-login-i18n.mjs.map +1 -0
  403. package/fesm2022/keycloakify-angular-login-pages-code.mjs +42 -0
  404. package/fesm2022/keycloakify-angular-login-pages-code.mjs.map +1 -0
  405. package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs +42 -0
  406. package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs.map +1 -0
  407. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs +47 -0
  408. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs.map +1 -0
  409. package/fesm2022/keycloakify-angular-login-pages-error.mjs +42 -0
  410. package/fesm2022/keycloakify-angular-login-pages-error.mjs.map +1 -0
  411. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs +51 -0
  412. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs.map +1 -0
  413. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs +60 -0
  414. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs.map +1 -0
  415. package/fesm2022/keycloakify-angular-login-pages-info.mjs +56 -0
  416. package/fesm2022/keycloakify-angular-login-pages-info.mjs.map +1 -0
  417. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs +49 -0
  418. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs.map +1 -0
  419. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +47 -0
  420. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs.map +1 -0
  421. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +47 -0
  422. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs.map +1 -0
  423. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs +47 -0
  424. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs.map +1 -0
  425. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs +47 -0
  426. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs.map +1 -0
  427. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +47 -0
  428. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs.map +1 -0
  429. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs +48 -0
  430. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs.map +1 -0
  431. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs +46 -0
  432. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs.map +1 -0
  433. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +91 -0
  434. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs.map +1 -0
  435. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs +50 -0
  436. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs.map +1 -0
  437. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +50 -0
  438. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs.map +1 -0
  439. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +48 -0
  440. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs.map +1 -0
  441. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs +47 -0
  442. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs.map +1 -0
  443. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs +48 -0
  444. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs.map +1 -0
  445. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs +50 -0
  446. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs.map +1 -0
  447. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs +57 -0
  448. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs.map +1 -0
  449. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs +50 -0
  450. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs.map +1 -0
  451. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs +47 -0
  452. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs.map +1 -0
  453. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs +47 -0
  454. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs.map +1 -0
  455. package/fesm2022/keycloakify-angular-login-pages-login.mjs +51 -0
  456. package/fesm2022/keycloakify-angular-login-pages-login.mjs.map +1 -0
  457. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs +47 -0
  458. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs.map +1 -0
  459. package/fesm2022/keycloakify-angular-login-pages-register.mjs +62 -0
  460. package/fesm2022/keycloakify-angular-login-pages-register.mjs.map +1 -0
  461. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs +59 -0
  462. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs.map +1 -0
  463. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs +48 -0
  464. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs.map +1 -0
  465. package/fesm2022/keycloakify-angular-login-pages-terms.mjs +47 -0
  466. package/fesm2022/keycloakify-angular-login-pages-terms.mjs.map +1 -0
  467. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs +58 -0
  468. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs.map +1 -0
  469. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs +87 -0
  470. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs.map +1 -0
  471. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs +56 -0
  472. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs.map +1 -0
  473. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs +83 -0
  474. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs.map +1 -0
  475. package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs +61 -0
  476. package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs.map +1 -0
  477. package/fesm2022/keycloakify-angular-login-services-i18n.mjs +19 -0
  478. package/fesm2022/keycloakify-angular-login-services-i18n.mjs.map +1 -0
  479. package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs +75 -0
  480. package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs.map +1 -0
  481. package/fesm2022/keycloakify-angular-login-services-submit.mjs +27 -0
  482. package/fesm2022/keycloakify-angular-login-services-submit.mjs.map +1 -0
  483. package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs +1026 -0
  484. package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs.map +1 -0
  485. package/fesm2022/keycloakify-angular-login-tokens-classes.mjs +10 -0
  486. package/fesm2022/keycloakify-angular-login-tokens-classes.mjs.map +1 -0
  487. package/fesm2022/keycloakify-angular-login-tokens-i18n.mjs +10 -0
  488. package/fesm2022/keycloakify-angular-login-tokens-i18n.mjs.map +1 -0
  489. package/fesm2022/keycloakify-angular-login-tokens-kc-context.mjs +10 -0
  490. package/fesm2022/keycloakify-angular-login-tokens-kc-context.mjs.map +1 -0
  491. package/fesm2022/keycloakify-angular-login-tokens-make-user-confirm-password.mjs +10 -0
  492. package/fesm2022/keycloakify-angular-login-tokens-make-user-confirm-password.mjs.map +1 -0
  493. package/fesm2022/keycloakify-angular.mjs +8 -0
  494. package/fesm2022/keycloakify-angular.mjs.map +1 -0
  495. package/index.d.ts +5 -0
  496. package/lib/directives/attributes/attributes.directive.d.ts +8 -0
  497. package/lib/directives/attributes/index.d.ts +5 -0
  498. package/lib/index.d.ts +5 -0
  499. package/lib/models/script/index.d.ts +5 -0
  500. package/lib/models/script/script.model.d.ts +6 -0
  501. package/lib/pipes/input-type/index.d.ts +5 -0
  502. package/lib/pipes/input-type/input-type.pipe.d.ts +7 -0
  503. package/lib/pipes/is-array-with-empty-object/index.d.ts +5 -0
  504. package/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.d.ts +7 -0
  505. package/lib/pipes/kc-sanitize/index.d.ts +5 -0
  506. package/lib/pipes/kc-sanitize/kc-sanitize.pipe.d.ts +9 -0
  507. package/lib/pipes/to-array/index.d.ts +5 -0
  508. package/lib/pipes/to-array/to-array.pipe.d.ts +7 -0
  509. package/lib/pipes/to-number/index.d.ts +5 -0
  510. package/lib/pipes/to-number/to-number.pipe.d.ts +7 -0
  511. package/lib/public-api.d.ts +1 -0
  512. package/lib/services/resource-injector/index.d.ts +5 -0
  513. package/lib/services/resource-injector/resource-injector.service.d.ts +10 -0
  514. package/lib/tokens/use-default-css/index.d.ts +5 -0
  515. package/lib/tokens/use-default-css/use-default-css.token.d.ts +2 -0
  516. package/login/DefaultPage/DefaultPage.d.ts +260 -0
  517. package/login/DefaultPage/index.d.ts +5 -0
  518. package/login/KcContext/index.d.ts +5 -0
  519. package/login/classes/component-reference/component-reference.class.d.ts +5 -0
  520. package/login/classes/component-reference/index.d.ts +5 -0
  521. package/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.d.ts +18 -0
  522. package/login/components/add-remove-buttons-multi-valued-attribute/index.d.ts +5 -0
  523. package/login/components/field-errors/field-errors.component.d.ts +14 -0
  524. package/login/components/field-errors/index.d.ts +5 -0
  525. package/login/components/group-label/group-label.component.d.ts +15 -0
  526. package/login/components/group-label/index.d.ts +5 -0
  527. package/login/components/input-field-by-type/index.d.ts +5 -0
  528. package/login/components/input-field-by-type/input-field-by-type.component.d.ts +16 -0
  529. package/login/components/input-tag/index.d.ts +5 -0
  530. package/login/components/input-tag/input-tag.component.d.ts +22 -0
  531. package/login/components/input-tag-selects/index.d.ts +5 -0
  532. package/login/components/input-tag-selects/input-tag-selects.component.d.ts +28 -0
  533. package/login/components/logout-other-sessions/index.d.ts +5 -0
  534. package/login/components/logout-other-sessions/logout-other-sessions.component.d.ts +11 -0
  535. package/login/components/password-wrapper/index.d.ts +5 -0
  536. package/login/components/password-wrapper/password-wrapper.component.d.ts +17 -0
  537. package/login/components/select-tag/index.d.ts +5 -0
  538. package/login/components/select-tag/select-tag.component.d.ts +21 -0
  539. package/login/components/textarea-tag/index.d.ts +5 -0
  540. package/login/components/textarea-tag/textarea-tag.component.d.ts +17 -0
  541. package/login/components/user-profile-form-fields/index.d.ts +5 -0
  542. package/login/components/user-profile-form-fields/user-profile-form-fields.component.d.ts +31 -0
  543. package/login/containers/template/index.d.ts +5 -0
  544. package/login/containers/template/template.component.d.ts +31 -0
  545. package/login/directives/kc-class/index.d.ts +5 -0
  546. package/login/directives/kc-class/kc-class.directive.d.ts +26 -0
  547. package/login/i18n/index.d.ts +5 -0
  548. package/login/pages/code/code.component.d.ts +13 -0
  549. package/login/pages/code/index.d.ts +5 -0
  550. package/login/pages/delete-account-confirm/delete-account-confirm.component.d.ts +13 -0
  551. package/login/pages/delete-account-confirm/index.d.ts +5 -0
  552. package/login/pages/delete-credential/delete-credential.component.d.ts +18 -0
  553. package/login/pages/delete-credential/index.d.ts +5 -0
  554. package/login/pages/error/error.component.d.ts +13 -0
  555. package/login/pages/error/index.d.ts +5 -0
  556. package/login/pages/frontchannel-logout/frontchannel-logout.component.d.ts +19 -0
  557. package/login/pages/frontchannel-logout/index.d.ts +5 -0
  558. package/login/pages/idp-review-user-profile/idp-review-user-profile.component.d.ts +25 -0
  559. package/login/pages/idp-review-user-profile/index.d.ts +5 -0
  560. package/login/pages/info/index.d.ts +5 -0
  561. package/login/pages/info/info.component.d.ts +19 -0
  562. package/login/pages/login/index.d.ts +5 -0
  563. package/login/pages/login/login.component.d.ts +19 -0
  564. package/login/pages/login-config-totp/index.d.ts +5 -0
  565. package/login/pages/login-config-totp/login-config-totp.component.d.ts +18 -0
  566. package/login/pages/login-idp-link-confirm/index.d.ts +5 -0
  567. package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.d.ts +18 -0
  568. package/login/pages/login-idp-link-confirm-override/index.d.ts +5 -0
  569. package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.d.ts +18 -0
  570. package/login/pages/login-idp-link-email/index.d.ts +5 -0
  571. package/login/pages/login-idp-link-email/login-idp-link-email.component.d.ts +18 -0
  572. package/login/pages/login-oauth-grant/index.d.ts +5 -0
  573. package/login/pages/login-oauth-grant/login-oauth-grant.component.d.ts +18 -0
  574. package/login/pages/login-oauth2-device-verify-user-code/index.d.ts +5 -0
  575. package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.d.ts +18 -0
  576. package/login/pages/login-otp/index.d.ts +5 -0
  577. package/login/pages/login-otp/login-otp.component.d.ts +18 -0
  578. package/login/pages/login-page-expired/index.d.ts +5 -0
  579. package/login/pages/login-page-expired/login-page-expired.component.d.ts +18 -0
  580. package/login/pages/login-passkeys-conditional-authenticate/index.d.ts +5 -0
  581. package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.d.ts +19 -0
  582. package/login/pages/login-password/index.d.ts +5 -0
  583. package/login/pages/login-password/login-password.component.d.ts +19 -0
  584. package/login/pages/login-recovery-authn-code-config/index.d.ts +5 -0
  585. package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.d.ts +20 -0
  586. package/login/pages/login-recovery-authn-code-input/index.d.ts +5 -0
  587. package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.d.ts +18 -0
  588. package/login/pages/login-reset-otp/index.d.ts +5 -0
  589. package/login/pages/login-reset-otp/login-reset-otp.component.d.ts +18 -0
  590. package/login/pages/login-reset-password/index.d.ts +5 -0
  591. package/login/pages/login-reset-password/login-reset-password.component.d.ts +18 -0
  592. package/login/pages/login-update-password/index.d.ts +5 -0
  593. package/login/pages/login-update-password/login-update-password.component.d.ts +18 -0
  594. package/login/pages/login-update-profile/index.d.ts +5 -0
  595. package/login/pages/login-update-profile/login-update-profile.component.d.ts +24 -0
  596. package/login/pages/login-username/index.d.ts +5 -0
  597. package/login/pages/login-username/login-username.component.d.ts +19 -0
  598. package/login/pages/login-verify-email/index.d.ts +5 -0
  599. package/login/pages/login-verify-email/login-verify-email.component.d.ts +18 -0
  600. package/login/pages/login-x509-info/index.d.ts +5 -0
  601. package/login/pages/login-x509-info/login-x509-info.component.d.ts +18 -0
  602. package/login/pages/logout-confirm/index.d.ts +5 -0
  603. package/login/pages/logout-confirm/logout-confirm.component.d.ts +18 -0
  604. package/login/pages/register/index.d.ts +5 -0
  605. package/login/pages/register/register.component.d.ts +26 -0
  606. package/login/pages/saml-post-form/index.d.ts +5 -0
  607. package/login/pages/saml-post-form/saml-post-form.component.d.ts +21 -0
  608. package/login/pages/select-authenticator/index.d.ts +5 -0
  609. package/login/pages/select-authenticator/select-authenticator.component.d.ts +18 -0
  610. package/login/pages/terms/index.d.ts +5 -0
  611. package/login/pages/terms/terms.component.d.ts +18 -0
  612. package/login/pages/update-email/index.d.ts +5 -0
  613. package/login/pages/update-email/update-email.component.d.ts +24 -0
  614. package/login/pages/webauthn-authenticate/index.d.ts +5 -0
  615. package/login/pages/webauthn-authenticate/webauthn-authenticate.component.d.ts +23 -0
  616. package/login/pages/webauthn-error/index.d.ts +5 -0
  617. package/login/pages/webauthn-error/webauthn-error.component.d.ts +19 -0
  618. package/login/pages/webauthn-register/index.d.ts +5 -0
  619. package/login/pages/webauthn-register/webauthn-register.component.d.ts +22 -0
  620. package/login/providers/keycloakify-angular/index.d.ts +5 -0
  621. package/login/providers/keycloakify-angular/keycloakify-angular.providers.d.ts +16 -0
  622. package/login/services/i18n/i18n.service.d.ts +6 -0
  623. package/login/services/i18n/index.d.ts +5 -0
  624. package/login/services/login-resource-injector/index.d.ts +5 -0
  625. package/login/services/login-resource-injector/login-resource-injector.service.d.ts +11 -0
  626. package/login/services/submit/index.d.ts +5 -0
  627. package/login/services/submit/submit.service.d.ts +9 -0
  628. package/login/services/user-profile-form/index.d.ts +5 -0
  629. package/login/services/user-profile-form/user-profile-form.service.d.ts +86 -0
  630. package/login/tokens/classes/classes.token.d.ts +127 -0
  631. package/login/tokens/classes/index.d.ts +5 -0
  632. package/login/tokens/i18n/i18n.token.d.ts +2 -0
  633. package/login/tokens/i18n/index.d.ts +5 -0
  634. package/login/tokens/kc-context/index.d.ts +5 -0
  635. package/login/tokens/kc-context/kc-context.token.d.ts +3 -0
  636. package/login/tokens/make-user-confirm-password/index.d.ts +5 -0
  637. package/login/tokens/make-user-confirm-password/make-user-confirm-password.token.d.ts +2 -0
  638. package/package.json +588 -51
  639. package/public-api.d.ts +1 -0
  640. package/src/account/DefaultPage.ts +61 -0
  641. package/src/account/KcContext.ts +1 -0
  642. package/src/account/containers/template/template.component.html +2 -2
  643. package/src/account/containers/template/template.component.ts +2 -2
  644. package/src/account/i18n.ts +4 -0
  645. package/src/account/pages/account/account.component.html +3 -3
  646. package/src/account/pages/account/account.component.ts +2 -2
  647. package/src/account/pages/applications/applications.component.html +2 -2
  648. package/src/account/pages/applications/applications.component.ts +2 -2
  649. package/src/account/pages/federatedIdentity/federatedIdentity.component.html +5 -5
  650. package/src/account/pages/federatedIdentity/federatedIdentity.component.ts +2 -2
  651. package/src/account/pages/log/log.component.ts +2 -2
  652. package/src/account/pages/password/password.component.html +4 -4
  653. package/src/account/pages/password/password.component.ts +3 -2
  654. package/src/account/pages/sessions/sessions.component.html +1 -1
  655. package/src/account/pages/sessions/sessions.component.ts +2 -2
  656. package/src/account/pages/totp/totp.component.html +11 -11
  657. package/src/account/pages/totp/totp.component.ts +2 -2
  658. package/src/account/providers/keycloakify-angular/keycloakify-angular.providers.ts +2 -1
  659. package/src/account/services/account-resource-injector/account-resource-injector.service.ts +1 -1
  660. package/src/account/tokens/kc-context/kc-context.token.ts +1 -1
  661. package/src/login/DefaultPage.ts +208 -0
  662. package/src/login/KcContext.ts +1 -0
  663. package/src/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.html +2 -2
  664. package/src/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.ts +1 -1
  665. package/src/login/components/field-errors/field-errors.component.html +1 -1
  666. package/src/login/components/group-label/group-label.component.ts +1 -1
  667. package/src/login/components/input-field-by-type/input-field-by-type.component.html +6 -6
  668. package/src/login/components/input-tag/input-tag.component.html +2 -2
  669. package/src/login/components/input-tag/input-tag.component.ts +1 -1
  670. package/src/login/components/input-tag-selects/input-tag-selects.component.ts +1 -1
  671. package/src/login/components/logout-other-sessions/logout-other-sessions.component.ts +1 -1
  672. package/src/login/components/password-wrapper/password-wrapper.component.html +2 -2
  673. package/src/login/components/password-wrapper/password-wrapper.component.ts +1 -1
  674. package/src/login/components/select-tag/select-tag.component.ts +1 -1
  675. package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.html +7 -11
  676. package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.ts +2 -2
  677. package/src/login/containers/template/template.component.html +11 -11
  678. package/src/login/containers/template/template.component.ts +2 -2
  679. package/src/login/directives/kc-class/kc-class.directive.ts +1 -2
  680. package/src/login/i18n.ts +4 -0
  681. package/src/login/pages/code/code.component.ts +2 -2
  682. package/src/login/pages/delete-account-confirm/delete-account-confirm.component.html +3 -3
  683. package/src/login/pages/delete-account-confirm/delete-account-confirm.component.ts +2 -2
  684. package/src/login/pages/delete-credential/delete-credential.component.html +4 -4
  685. package/src/login/pages/delete-credential/delete-credential.component.ts +2 -2
  686. package/src/login/pages/error/error.component.ts +2 -2
  687. package/src/login/pages/frontchannel-logout/frontchannel-logout.component.html +1 -1
  688. package/src/login/pages/frontchannel-logout/frontchannel-logout.component.ts +2 -2
  689. package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.html +3 -3
  690. package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.ts +2 -2
  691. package/src/login/pages/info/info.component.ts +2 -2
  692. package/src/login/pages/login/login.component.html +9 -9
  693. package/src/login/pages/login/login.component.ts +2 -2
  694. package/src/login/pages/login-config-totp/login-config-totp.component.html +10 -10
  695. package/src/login/pages/login-config-totp/login-config-totp.component.ts +2 -2
  696. package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.html +3 -3
  697. package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts +2 -2
  698. package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.html +2 -2
  699. package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts +2 -2
  700. package/src/login/pages/login-idp-link-email/login-idp-link-email.component.ts +2 -2
  701. package/src/login/pages/login-oauth-grant/login-oauth-grant.component.html +5 -5
  702. package/src/login/pages/login-oauth-grant/login-oauth-grant.component.ts +2 -2
  703. package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.html +3 -3
  704. package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts +2 -2
  705. package/src/login/pages/login-otp/login-otp.component.html +7 -7
  706. package/src/login/pages/login-otp/login-otp.component.ts +2 -2
  707. package/src/login/pages/login-page-expired/login-page-expired.component.ts +2 -2
  708. package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.html +9 -9
  709. package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.ts +2 -2
  710. package/src/login/pages/login-password/login-password.component.html +5 -5
  711. package/src/login/pages/login-password/login-password.component.ts +2 -2
  712. package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.html +9 -9
  713. package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.ts +2 -2
  714. package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.html +5 -5
  715. package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.ts +2 -2
  716. package/src/login/pages/login-reset-otp/login-reset-otp.component.html +5 -5
  717. package/src/login/pages/login-reset-otp/login-reset-otp.component.ts +2 -2
  718. package/src/login/pages/login-reset-password/login-reset-password.component.html +4 -4
  719. package/src/login/pages/login-reset-password/login-reset-password.component.ts +2 -2
  720. package/src/login/pages/login-update-password/login-update-password.component.html +8 -8
  721. package/src/login/pages/login-update-password/login-update-password.component.ts +2 -2
  722. package/src/login/pages/login-update-profile/login-update-profile.component.html +4 -4
  723. package/src/login/pages/login-update-profile/login-update-profile.component.ts +2 -2
  724. package/src/login/pages/login-username/login-username.component.html +7 -7
  725. package/src/login/pages/login-username/login-username.component.ts +2 -2
  726. package/src/login/pages/login-verify-email/login-verify-email.component.ts +2 -2
  727. package/src/login/pages/login-x509-info/login-x509-info.component.html +3 -3
  728. package/src/login/pages/login-x509-info/login-x509-info.component.ts +2 -2
  729. package/src/login/pages/logout-confirm/logout-confirm.component.html +2 -2
  730. package/src/login/pages/logout-confirm/logout-confirm.component.ts +2 -2
  731. package/src/login/pages/register/register.component.html +7 -7
  732. package/src/login/pages/register/register.component.ts +2 -2
  733. package/src/login/pages/saml-post-form/saml-post-form.component.html +1 -1
  734. package/src/login/pages/saml-post-form/saml-post-form.component.ts +2 -2
  735. package/src/login/pages/select-authenticator/select-authenticator.component.html +2 -2
  736. package/src/login/pages/select-authenticator/select-authenticator.component.ts +2 -2
  737. package/src/login/pages/terms/terms.component.html +3 -3
  738. package/src/login/pages/terms/terms.component.ts +2 -2
  739. package/src/login/pages/update-email/update-email.component.html +5 -5
  740. package/src/login/pages/update-email/update-email.component.ts +2 -2
  741. package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.html +4 -5
  742. package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.ts +2 -2
  743. package/src/login/pages/webauthn-error/webauthn-error.component.html +6 -6
  744. package/src/login/pages/webauthn-error/webauthn-error.component.ts +2 -2
  745. package/src/login/pages/webauthn-register/webauthn-register.component.html +4 -4
  746. package/src/login/pages/webauthn-register/webauthn-register.component.ts +2 -2
  747. package/src/login/providers/keycloakify-angular/keycloakify-angular.providers.ts +2 -1
  748. package/src/login/services/login-resource-injector/login-resource-injector.service.ts +1 -1
  749. package/src/login/services/submit/submit.service.ts +1 -1
  750. package/src/login/services/user-profile-form/user-profile-form.service.ts +2 -2
  751. package/src/login/tokens/kc-context/kc-context.token.ts +1 -1
  752. package/.github/workflows/ci.yaml +0 -111
  753. package/.prettierignore +0 -15
  754. package/.prettierrc.json +0 -26
  755. package/angular.json +0 -33
  756. package/scripts/build.ts +0 -183
  757. package/scripts/tools/SemVer.ts +0 -114
  758. package/scripts/tools/crawl.ts +0 -35
  759. package/scripts/tools/fs.rmSync.ts +0 -34
  760. package/scripts/tools/getThisCodebaseRootDirPath.ts +0 -19
  761. package/scripts/tools/transformCodebase.ts +0 -88
  762. package/src/account/DefaultPage/DefaultPage.ts +0 -61
  763. package/src/account/DefaultPage/index.ts +0 -1
  764. package/src/account/DefaultPage/ng-package.json +0 -6
  765. package/src/account/KcContext/index.ts +0 -1
  766. package/src/account/KcContext/ng-package.json +0 -6
  767. package/src/account/classes/component-reference/index.ts +0 -1
  768. package/src/account/classes/component-reference/ng-package.json +0 -6
  769. package/src/account/containers/template/index.ts +0 -1
  770. package/src/account/containers/template/ng-package.json +0 -6
  771. package/src/account/directives/kc-class/index.ts +0 -1
  772. package/src/account/directives/kc-class/ng-package.json +0 -6
  773. package/src/account/i18n/index.ts +0 -1
  774. package/src/account/i18n/ng-package.json +0 -6
  775. package/src/account/pages/account/index.ts +0 -1
  776. package/src/account/pages/account/ng-package.json +0 -6
  777. package/src/account/pages/applications/index.ts +0 -1
  778. package/src/account/pages/applications/ng-package.json +0 -6
  779. package/src/account/pages/federatedIdentity/index.ts +0 -1
  780. package/src/account/pages/federatedIdentity/ng-package.json +0 -6
  781. package/src/account/pages/log/index.ts +0 -1
  782. package/src/account/pages/log/ng-package.json +0 -6
  783. package/src/account/pages/password/index.ts +0 -1
  784. package/src/account/pages/password/ng-package.json +0 -6
  785. package/src/account/pages/sessions/index.ts +0 -1
  786. package/src/account/pages/sessions/ng-package.json +0 -6
  787. package/src/account/pages/totp/index.ts +0 -1
  788. package/src/account/pages/totp/ng-package.json +0 -6
  789. package/src/account/providers/keycloakify-angular/index.ts +0 -1
  790. package/src/account/providers/keycloakify-angular/ng-package.json +0 -6
  791. package/src/account/services/account-resource-injector/index.ts +0 -1
  792. package/src/account/services/account-resource-injector/ng-package.json +0 -6
  793. package/src/account/services/i18n/index.ts +0 -1
  794. package/src/account/services/i18n/ng-package.json +0 -6
  795. package/src/account/tokens/classes/index.ts +0 -1
  796. package/src/account/tokens/classes/ng-package.json +0 -6
  797. package/src/account/tokens/i18n/index.ts +0 -1
  798. package/src/account/tokens/i18n/ng-package.json +0 -6
  799. package/src/account/tokens/kc-context/index.ts +0 -1
  800. package/src/account/tokens/kc-context/ng-package.json +0 -6
  801. package/src/lib/directives/attributes/index.ts +0 -1
  802. package/src/lib/directives/attributes/ng-package.json +0 -6
  803. package/src/lib/models/script/index.ts +0 -1
  804. package/src/lib/models/script/ng-package.json +0 -6
  805. package/src/lib/ng-package.json +0 -6
  806. package/src/lib/pipes/input-type/index.ts +0 -1
  807. package/src/lib/pipes/input-type/ng-package.json +0 -6
  808. package/src/lib/pipes/is-array-with-empty-object/index.ts +0 -1
  809. package/src/lib/pipes/is-array-with-empty-object/ng-package.json +0 -6
  810. package/src/lib/pipes/kc-sanitize/index.ts +0 -1
  811. package/src/lib/pipes/kc-sanitize/ng-package.json +0 -6
  812. package/src/lib/pipes/to-array/index.ts +0 -1
  813. package/src/lib/pipes/to-array/ng-package.json +0 -6
  814. package/src/lib/pipes/to-number/index.ts +0 -1
  815. package/src/lib/pipes/to-number/ng-package.json +0 -6
  816. package/src/lib/public-api.ts +0 -1
  817. package/src/lib/services/resource-injector/index.ts +0 -1
  818. package/src/lib/services/resource-injector/ng-package.json +0 -6
  819. package/src/lib/tokens/use-default-css/index.ts +0 -1
  820. package/src/lib/tokens/use-default-css/ng-package.json +0 -6
  821. package/src/login/DefaultPage/DefaultPage.ts +0 -208
  822. package/src/login/DefaultPage/index.ts +0 -1
  823. package/src/login/DefaultPage/ng-package.json +0 -6
  824. package/src/login/KcContext/index.ts +0 -1
  825. package/src/login/KcContext/ng-package.json +0 -6
  826. package/src/login/classes/component-reference/index.ts +0 -1
  827. package/src/login/classes/component-reference/ng-package.json +0 -6
  828. package/src/login/components/add-remove-buttons-multi-valued-attribute/index.ts +0 -1
  829. package/src/login/components/add-remove-buttons-multi-valued-attribute/ng-package.json +0 -6
  830. package/src/login/components/field-errors/index.ts +0 -1
  831. package/src/login/components/field-errors/ng-package.json +0 -6
  832. package/src/login/components/group-label/index.ts +0 -1
  833. package/src/login/components/group-label/ng-package.json +0 -6
  834. package/src/login/components/input-field-by-type/index.ts +0 -1
  835. package/src/login/components/input-field-by-type/ng-package.json +0 -6
  836. package/src/login/components/input-tag/index.ts +0 -1
  837. package/src/login/components/input-tag/ng-package.json +0 -6
  838. package/src/login/components/input-tag-selects/index.ts +0 -1
  839. package/src/login/components/input-tag-selects/ng-package.json +0 -6
  840. package/src/login/components/logout-other-sessions/index.ts +0 -1
  841. package/src/login/components/logout-other-sessions/ng-package.json +0 -6
  842. package/src/login/components/password-wrapper/index.ts +0 -1
  843. package/src/login/components/password-wrapper/ng-package.json +0 -6
  844. package/src/login/components/select-tag/index.ts +0 -1
  845. package/src/login/components/select-tag/ng-package.json +0 -6
  846. package/src/login/components/textarea-tag/index.ts +0 -1
  847. package/src/login/components/textarea-tag/ng-package.json +0 -6
  848. package/src/login/components/user-profile-form-fields/index.ts +0 -1
  849. package/src/login/components/user-profile-form-fields/ng-package.json +0 -6
  850. package/src/login/containers/template/index.ts +0 -1
  851. package/src/login/containers/template/ng-package.json +0 -6
  852. package/src/login/directives/kc-class/index.ts +0 -1
  853. package/src/login/directives/kc-class/ng-package.json +0 -6
  854. package/src/login/i18n/index.ts +0 -1
  855. package/src/login/i18n/ng-package.json +0 -6
  856. package/src/login/pages/code/index.ts +0 -1
  857. package/src/login/pages/code/ng-package.json +0 -6
  858. package/src/login/pages/delete-account-confirm/index.ts +0 -1
  859. package/src/login/pages/delete-account-confirm/ng-package.json +0 -6
  860. package/src/login/pages/delete-credential/index.ts +0 -1
  861. package/src/login/pages/delete-credential/ng-package.json +0 -6
  862. package/src/login/pages/error/index.ts +0 -1
  863. package/src/login/pages/error/ng-package.json +0 -6
  864. package/src/login/pages/frontchannel-logout/index.ts +0 -1
  865. package/src/login/pages/frontchannel-logout/ng-package.json +0 -6
  866. package/src/login/pages/idp-review-user-profile/index.ts +0 -1
  867. package/src/login/pages/idp-review-user-profile/ng-package.json +0 -6
  868. package/src/login/pages/info/index.ts +0 -1
  869. package/src/login/pages/info/ng-package.json +0 -6
  870. package/src/login/pages/login/index.ts +0 -1
  871. package/src/login/pages/login/ng-package.json +0 -6
  872. package/src/login/pages/login-config-totp/index.ts +0 -1
  873. package/src/login/pages/login-config-totp/ng-package.json +0 -6
  874. package/src/login/pages/login-idp-link-confirm/index.ts +0 -1
  875. package/src/login/pages/login-idp-link-confirm/ng-package.json +0 -6
  876. package/src/login/pages/login-idp-link-confirm-override/index.ts +0 -1
  877. package/src/login/pages/login-idp-link-confirm-override/ng-package.json +0 -6
  878. package/src/login/pages/login-idp-link-email/index.ts +0 -1
  879. package/src/login/pages/login-idp-link-email/ng-package.json +0 -6
  880. package/src/login/pages/login-oauth-grant/index.ts +0 -1
  881. package/src/login/pages/login-oauth-grant/ng-package.json +0 -6
  882. package/src/login/pages/login-oauth2-device-verify-user-code/index.ts +0 -1
  883. package/src/login/pages/login-oauth2-device-verify-user-code/ng-package.json +0 -6
  884. package/src/login/pages/login-otp/index.ts +0 -1
  885. package/src/login/pages/login-otp/ng-package.json +0 -6
  886. package/src/login/pages/login-page-expired/index.ts +0 -1
  887. package/src/login/pages/login-page-expired/ng-package.json +0 -6
  888. package/src/login/pages/login-passkeys-conditional-authenticate/index.ts +0 -1
  889. package/src/login/pages/login-passkeys-conditional-authenticate/ng-package.json +0 -6
  890. package/src/login/pages/login-password/index.ts +0 -1
  891. package/src/login/pages/login-password/ng-package.json +0 -6
  892. package/src/login/pages/login-recovery-authn-code-config/index.ts +0 -1
  893. package/src/login/pages/login-recovery-authn-code-config/ng-package.json +0 -6
  894. package/src/login/pages/login-recovery-authn-code-input/index.ts +0 -1
  895. package/src/login/pages/login-recovery-authn-code-input/ng-package.json +0 -6
  896. package/src/login/pages/login-reset-otp/index.ts +0 -1
  897. package/src/login/pages/login-reset-otp/ng-package.json +0 -6
  898. package/src/login/pages/login-reset-password/index.ts +0 -1
  899. package/src/login/pages/login-reset-password/ng-package.json +0 -6
  900. package/src/login/pages/login-update-password/index.ts +0 -1
  901. package/src/login/pages/login-update-password/ng-package.json +0 -6
  902. package/src/login/pages/login-update-profile/index.ts +0 -1
  903. package/src/login/pages/login-update-profile/ng-package.json +0 -6
  904. package/src/login/pages/login-username/index.ts +0 -1
  905. package/src/login/pages/login-username/ng-package.json +0 -6
  906. package/src/login/pages/login-verify-email/index.ts +0 -1
  907. package/src/login/pages/login-verify-email/ng-package.json +0 -6
  908. package/src/login/pages/login-x509-info/index.ts +0 -1
  909. package/src/login/pages/login-x509-info/ng-package.json +0 -6
  910. package/src/login/pages/logout-confirm/index.ts +0 -1
  911. package/src/login/pages/logout-confirm/ng-package.json +0 -6
  912. package/src/login/pages/register/index.ts +0 -1
  913. package/src/login/pages/register/ng-package.json +0 -6
  914. package/src/login/pages/saml-post-form/index.ts +0 -1
  915. package/src/login/pages/saml-post-form/ng-package.json +0 -6
  916. package/src/login/pages/select-authenticator/index.ts +0 -1
  917. package/src/login/pages/select-authenticator/ng-package.json +0 -6
  918. package/src/login/pages/terms/index.ts +0 -1
  919. package/src/login/pages/terms/ng-package.json +0 -6
  920. package/src/login/pages/update-email/index.ts +0 -1
  921. package/src/login/pages/update-email/ng-package.json +0 -6
  922. package/src/login/pages/webauthn-authenticate/index.ts +0 -1
  923. package/src/login/pages/webauthn-authenticate/ng-package.json +0 -6
  924. package/src/login/pages/webauthn-error/index.ts +0 -1
  925. package/src/login/pages/webauthn-error/ng-package.json +0 -6
  926. package/src/login/pages/webauthn-register/index.ts +0 -1
  927. package/src/login/pages/webauthn-register/ng-package.json +0 -6
  928. package/src/login/providers/keycloakify-angular/index.ts +0 -1
  929. package/src/login/providers/keycloakify-angular/ng-package.json +0 -6
  930. package/src/login/services/i18n/index.ts +0 -1
  931. package/src/login/services/i18n/ng-package.json +0 -6
  932. package/src/login/services/login-resource-injector/index.ts +0 -1
  933. package/src/login/services/login-resource-injector/ng-package.json +0 -6
  934. package/src/login/services/submit/index.ts +0 -1
  935. package/src/login/services/submit/ng-package.json +0 -6
  936. package/src/login/services/user-profile-form/index.ts +0 -1
  937. package/src/login/services/user-profile-form/ng-package.json +0 -6
  938. package/src/login/tokens/classes/index.ts +0 -1
  939. package/src/login/tokens/classes/ng-package.json +0 -6
  940. package/src/login/tokens/i18n/index.ts +0 -1
  941. package/src/login/tokens/i18n/ng-package.json +0 -6
  942. package/src/login/tokens/kc-context/index.ts +0 -1
  943. package/src/login/tokens/kc-context/ng-package.json +0 -6
  944. package/src/login/tokens/make-user-confirm-password/index.ts +0 -1
  945. package/src/login/tokens/make-user-confirm-password/ng-package.json +0 -6
  946. package/src/ng-package.json +0 -8
  947. package/src/package.json +0 -17
  948. package/src/public-api.ts +0 -1
  949. package/src/tsconfig.lib.json +0 -12
  950. package/src/tsconfig.lib.prod.json +0 -10
  951. package/tsconfig.json +0 -33
  952. package/tsproject.json +0 -15
  953. /package/{src/account/DefaultPage/public-api.ts → account/DefaultPage/public-api.d.ts} +0 -0
  954. /package/{src/account/KcContext/KcContext.ts → account/KcContext/KcContext.d.ts} +0 -0
  955. /package/{src/account/KcContext/public-api.ts → account/KcContext/public-api.d.ts} +0 -0
  956. /package/{src/account/classes/component-reference/public-api.ts → account/classes/component-reference/public-api.d.ts} +0 -0
  957. /package/{src/account/containers/template/public-api.ts → account/containers/template/public-api.d.ts} +0 -0
  958. /package/{src/account/directives/kc-class/public-api.ts → account/directives/kc-class/public-api.d.ts} +0 -0
  959. /package/{src/account/i18n/i18n.ts → account/i18n/i18n.d.ts} +0 -0
  960. /package/{src/account/i18n/public-api.ts → account/i18n/public-api.d.ts} +0 -0
  961. /package/{src/account/pages/account/public-api.ts → account/pages/account/public-api.d.ts} +0 -0
  962. /package/{src/account/pages/applications/public-api.ts → account/pages/applications/public-api.d.ts} +0 -0
  963. /package/{src/account/pages/federatedIdentity/public-api.ts → account/pages/federatedIdentity/public-api.d.ts} +0 -0
  964. /package/{src/account/pages/log/public-api.ts → account/pages/log/public-api.d.ts} +0 -0
  965. /package/{src/account/pages/password/public-api.ts → account/pages/password/public-api.d.ts} +0 -0
  966. /package/{src/account/pages/sessions/public-api.ts → account/pages/sessions/public-api.d.ts} +0 -0
  967. /package/{src/account/pages/totp/public-api.ts → account/pages/totp/public-api.d.ts} +0 -0
  968. /package/{src/account/providers/keycloakify-angular/public-api.ts → account/providers/keycloakify-angular/public-api.d.ts} +0 -0
  969. /package/{src/account/services/account-resource-injector/public-api.ts → account/services/account-resource-injector/public-api.d.ts} +0 -0
  970. /package/{src/account/services/i18n/public-api.ts → account/services/i18n/public-api.d.ts} +0 -0
  971. /package/{src/account/tokens/classes/public-api.ts → account/tokens/classes/public-api.d.ts} +0 -0
  972. /package/{src/account/tokens/i18n/public-api.ts → account/tokens/i18n/public-api.d.ts} +0 -0
  973. /package/{src/account/tokens/kc-context/public-api.ts → account/tokens/kc-context/public-api.d.ts} +0 -0
  974. /package/{src/lib/directives/attributes/public-api.ts → lib/directives/attributes/public-api.d.ts} +0 -0
  975. /package/{src/lib/models/script/public-api.ts → lib/models/script/public-api.d.ts} +0 -0
  976. /package/{src/lib/pipes/input-type/public-api.ts → lib/pipes/input-type/public-api.d.ts} +0 -0
  977. /package/{src/lib/pipes/is-array-with-empty-object/public-api.ts → lib/pipes/is-array-with-empty-object/public-api.d.ts} +0 -0
  978. /package/{src/lib/pipes/kc-sanitize/public-api.ts → lib/pipes/kc-sanitize/public-api.d.ts} +0 -0
  979. /package/{src/lib/pipes/to-array/public-api.ts → lib/pipes/to-array/public-api.d.ts} +0 -0
  980. /package/{src/lib/pipes/to-number/public-api.ts → lib/pipes/to-number/public-api.d.ts} +0 -0
  981. /package/{src/lib/services/resource-injector/public-api.ts → lib/services/resource-injector/public-api.d.ts} +0 -0
  982. /package/{src/lib/tokens/use-default-css/public-api.ts → lib/tokens/use-default-css/public-api.d.ts} +0 -0
  983. /package/{src/login/DefaultPage/public-api.ts → login/DefaultPage/public-api.d.ts} +0 -0
  984. /package/{src/login/KcContext/KcContext.ts → login/KcContext/KcContext.d.ts} +0 -0
  985. /package/{src/login/KcContext/public-api.ts → login/KcContext/public-api.d.ts} +0 -0
  986. /package/{src/login/classes/component-reference/public-api.ts → login/classes/component-reference/public-api.d.ts} +0 -0
  987. /package/{src/login/components/add-remove-buttons-multi-valued-attribute/public-api.ts → login/components/add-remove-buttons-multi-valued-attribute/public-api.d.ts} +0 -0
  988. /package/{src/login/components/field-errors/public-api.ts → login/components/field-errors/public-api.d.ts} +0 -0
  989. /package/{src/login/components/group-label/public-api.ts → login/components/group-label/public-api.d.ts} +0 -0
  990. /package/{src/login/components/input-field-by-type/public-api.ts → login/components/input-field-by-type/public-api.d.ts} +0 -0
  991. /package/{src/login/components/input-tag/public-api.ts → login/components/input-tag/public-api.d.ts} +0 -0
  992. /package/{src/login/components/input-tag-selects/public-api.ts → login/components/input-tag-selects/public-api.d.ts} +0 -0
  993. /package/{src/login/components/logout-other-sessions/public-api.ts → login/components/logout-other-sessions/public-api.d.ts} +0 -0
  994. /package/{src/login/components/password-wrapper/public-api.ts → login/components/password-wrapper/public-api.d.ts} +0 -0
  995. /package/{src/login/components/select-tag/public-api.ts → login/components/select-tag/public-api.d.ts} +0 -0
  996. /package/{src/login/components/textarea-tag/public-api.ts → login/components/textarea-tag/public-api.d.ts} +0 -0
  997. /package/{src/login/components/user-profile-form-fields/public-api.ts → login/components/user-profile-form-fields/public-api.d.ts} +0 -0
  998. /package/{src/login/containers/template/public-api.ts → login/containers/template/public-api.d.ts} +0 -0
  999. /package/{src/login/directives/kc-class/public-api.ts → login/directives/kc-class/public-api.d.ts} +0 -0
  1000. /package/{src/login/i18n/i18n.ts → login/i18n/i18n.d.ts} +0 -0
  1001. /package/{src/login/i18n/public-api.ts → login/i18n/public-api.d.ts} +0 -0
  1002. /package/{src/login/pages/code/public-api.ts → login/pages/code/public-api.d.ts} +0 -0
  1003. /package/{src/login/pages/delete-account-confirm/public-api.ts → login/pages/delete-account-confirm/public-api.d.ts} +0 -0
  1004. /package/{src/login/pages/delete-credential/public-api.ts → login/pages/delete-credential/public-api.d.ts} +0 -0
  1005. /package/{src/login/pages/error/public-api.ts → login/pages/error/public-api.d.ts} +0 -0
  1006. /package/{src/login/pages/frontchannel-logout/public-api.ts → login/pages/frontchannel-logout/public-api.d.ts} +0 -0
  1007. /package/{src/login/pages/idp-review-user-profile/public-api.ts → login/pages/idp-review-user-profile/public-api.d.ts} +0 -0
  1008. /package/{src/login/pages/info/public-api.ts → login/pages/info/public-api.d.ts} +0 -0
  1009. /package/{src/login/pages/login/public-api.ts → login/pages/login/public-api.d.ts} +0 -0
  1010. /package/{src/login/pages/login-config-totp/public-api.ts → login/pages/login-config-totp/public-api.d.ts} +0 -0
  1011. /package/{src/login/pages/login-idp-link-confirm/public-api.ts → login/pages/login-idp-link-confirm/public-api.d.ts} +0 -0
  1012. /package/{src/login/pages/login-idp-link-confirm-override/public-api.ts → login/pages/login-idp-link-confirm-override/public-api.d.ts} +0 -0
  1013. /package/{src/login/pages/login-idp-link-email/public-api.ts → login/pages/login-idp-link-email/public-api.d.ts} +0 -0
  1014. /package/{src/login/pages/login-oauth-grant/public-api.ts → login/pages/login-oauth-grant/public-api.d.ts} +0 -0
  1015. /package/{src/login/pages/login-oauth2-device-verify-user-code/public-api.ts → login/pages/login-oauth2-device-verify-user-code/public-api.d.ts} +0 -0
  1016. /package/{src/login/pages/login-otp/public-api.ts → login/pages/login-otp/public-api.d.ts} +0 -0
  1017. /package/{src/login/pages/login-page-expired/public-api.ts → login/pages/login-page-expired/public-api.d.ts} +0 -0
  1018. /package/{src/login/pages/login-passkeys-conditional-authenticate/public-api.ts → login/pages/login-passkeys-conditional-authenticate/public-api.d.ts} +0 -0
  1019. /package/{src/login/pages/login-password/public-api.ts → login/pages/login-password/public-api.d.ts} +0 -0
  1020. /package/{src/login/pages/login-recovery-authn-code-config/public-api.ts → login/pages/login-recovery-authn-code-config/public-api.d.ts} +0 -0
  1021. /package/{src/login/pages/login-recovery-authn-code-input/public-api.ts → login/pages/login-recovery-authn-code-input/public-api.d.ts} +0 -0
  1022. /package/{src/login/pages/login-reset-otp/public-api.ts → login/pages/login-reset-otp/public-api.d.ts} +0 -0
  1023. /package/{src/login/pages/login-reset-password/public-api.ts → login/pages/login-reset-password/public-api.d.ts} +0 -0
  1024. /package/{src/login/pages/login-update-password/public-api.ts → login/pages/login-update-password/public-api.d.ts} +0 -0
  1025. /package/{src/login/pages/login-update-profile/public-api.ts → login/pages/login-update-profile/public-api.d.ts} +0 -0
  1026. /package/{src/login/pages/login-username/public-api.ts → login/pages/login-username/public-api.d.ts} +0 -0
  1027. /package/{src/login/pages/login-verify-email/public-api.ts → login/pages/login-verify-email/public-api.d.ts} +0 -0
  1028. /package/{src/login/pages/login-x509-info/public-api.ts → login/pages/login-x509-info/public-api.d.ts} +0 -0
  1029. /package/{src/login/pages/logout-confirm/public-api.ts → login/pages/logout-confirm/public-api.d.ts} +0 -0
  1030. /package/{src/login/pages/register/public-api.ts → login/pages/register/public-api.d.ts} +0 -0
  1031. /package/{src/login/pages/saml-post-form/public-api.ts → login/pages/saml-post-form/public-api.d.ts} +0 -0
  1032. /package/{src/login/pages/select-authenticator/public-api.ts → login/pages/select-authenticator/public-api.d.ts} +0 -0
  1033. /package/{src/login/pages/terms/public-api.ts → login/pages/terms/public-api.d.ts} +0 -0
  1034. /package/{src/login/pages/update-email/public-api.ts → login/pages/update-email/public-api.d.ts} +0 -0
  1035. /package/{src/login/pages/webauthn-authenticate/public-api.ts → login/pages/webauthn-authenticate/public-api.d.ts} +0 -0
  1036. /package/{src/login/pages/webauthn-error/public-api.ts → login/pages/webauthn-error/public-api.d.ts} +0 -0
  1037. /package/{src/login/pages/webauthn-register/public-api.ts → login/pages/webauthn-register/public-api.d.ts} +0 -0
  1038. /package/{src/login/providers/keycloakify-angular/public-api.ts → login/providers/keycloakify-angular/public-api.d.ts} +0 -0
  1039. /package/{src/login/services/i18n/public-api.ts → login/services/i18n/public-api.d.ts} +0 -0
  1040. /package/{src/login/services/login-resource-injector/public-api.ts → login/services/login-resource-injector/public-api.d.ts} +0 -0
  1041. /package/{src/login/services/submit/public-api.ts → login/services/submit/public-api.d.ts} +0 -0
  1042. /package/{src/login/services/user-profile-form/public-api.ts → login/services/user-profile-form/public-api.d.ts} +0 -0
  1043. /package/{src/login/tokens/classes/public-api.ts → login/tokens/classes/public-api.d.ts} +0 -0
  1044. /package/{src/login/tokens/i18n/public-api.ts → login/tokens/i18n/public-api.d.ts} +0 -0
  1045. /package/{src/login/tokens/kc-context/public-api.ts → login/tokens/kc-context/public-api.d.ts} +0 -0
  1046. /package/{src/login/tokens/make-user-confirm-password/public-api.ts → login/tokens/make-user-confirm-password/public-api.d.ts} +0 -0
@@ -0,0 +1,49 @@
1
+ import { ChangeDetectionStrategy, Component, forwardRef, inject, input, output } from '@angular/core';
2
+ import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
3
+ import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
4
+ import { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';
5
+ import { ToNumberPipe } from '@keycloakify/angular/lib/pipes/to-number';
6
+ import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
7
+ import * as i0 from "@angular/core";
8
+ export class TextareaTagComponent extends ComponentReference {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.attribute = input();
12
+ this.value = input();
13
+ this.displayableErrors = input();
14
+ this.dispatchFormAction = output();
15
+ this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
16
+ this.classes = inject(LOGIN_CLASSES);
17
+ }
18
+ onChange(event) {
19
+ this.dispatchFormAction.emit({
20
+ action: 'update',
21
+ name: this.attribute()?.name ?? '',
22
+ valueOrValues: event.target.value
23
+ });
24
+ }
25
+ onBlur() {
26
+ this.dispatchFormAction.emit({
27
+ action: 'focus lost',
28
+ name: this.attribute()?.name ?? '',
29
+ fieldIndex: undefined
30
+ });
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TextareaTagComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: TextareaTagComponent, isStandalone: true, selector: "kc-textarea-tag", inputs: { attribute: { classPropertyName: "attribute", publicName: "attribute", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, displayableErrors: { classPropertyName: "displayableErrors", publicName: "displayableErrors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dispatchFormAction: "dispatchFormAction" }, providers: [
34
+ {
35
+ provide: ComponentReference,
36
+ useExisting: forwardRef(() => TextareaTagComponent)
37
+ }
38
+ ], usesInheritance: true, ngImport: i0, template: "@let attr = attribute();\n@if (attr) {\n <textarea\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [cols]=\"attr.annotations.inputTypeCols === undefined ? undefined : (attr.annotations.inputTypeCols | toNumber)\"\n [rows]=\"attr.annotations.inputTypeRows === undefined ? undefined : (attr.annotations.inputTypeRows | toNumber)\"\n [maxLength]=\"attr.annotations.inputTypeMaxlength === undefined ? undefined : (attr.annotations.inputTypeMaxlength | toNumber)\"\n [value]=\"value()\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n ></textarea>\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: ToNumberPipe, name: "toNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TextareaTagComponent, decorators: [{
41
+ type: Component,
42
+ args: [{ standalone: true, imports: [KcClassDirective, ToNumberPipe], selector: 'kc-textarea-tag', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
43
+ {
44
+ provide: ComponentReference,
45
+ useExisting: forwardRef(() => TextareaTagComponent)
46
+ }
47
+ ], template: "@let attr = attribute();\n@if (attr) {\n <textarea\n [id]=\"attr.name\"\n [name]=\"attr.name\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"!!displayableErrors()?.length\"\n [disabled]=\"attr.readOnly\"\n [cols]=\"attr.annotations.inputTypeCols === undefined ? undefined : (attr.annotations.inputTypeCols | toNumber)\"\n [rows]=\"attr.annotations.inputTypeRows === undefined ? undefined : (attr.annotations.inputTypeRows | toNumber)\"\n [maxLength]=\"attr.annotations.inputTypeMaxlength === undefined ? undefined : (attr.annotations.inputTypeMaxlength | toNumber)\"\n [value]=\"value()\"\n (change)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n ></textarea>\n}\n", styles: [":host{display:contents}\n"] }]
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9jb21wb25lbnRzL3RleHRhcmVhLXRhZy90ZXh0YXJlYS10YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2NvbXBvbmVudHMvdGV4dGFyZWEtdGFnL3RleHRhcmVhLXRhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUF3QjFFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxrQkFBa0I7SUFwQjVEOztRQXFCSSxjQUFTLEdBQUcsS0FBSyxFQUFhLENBQUM7UUFDL0IsVUFBSyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQ3hCLHNCQUFpQixHQUFHLEtBQUssRUFBb0IsQ0FBQztRQUM5Qyx1QkFBa0IsR0FBRyxNQUFNLEVBQWMsQ0FBQztRQUNqQyxvQkFBZSxHQUFHLE1BQU0sQ0FBVSxlQUFlLENBQUMsQ0FBQztRQUNuRCxZQUFPLEdBQUcsTUFBTSxDQUFvQyxhQUFhLENBQUMsQ0FBQztLQWlCL0U7SUFmRyxRQUFRLENBQUMsS0FBWTtRQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1lBQ3pCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUU7WUFDbEMsYUFBYSxFQUFHLEtBQUssQ0FBQyxNQUE4QixDQUFDLEtBQUs7U0FDN0QsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1lBQ3pCLE1BQU0sRUFBRSxZQUFZO1lBQ3BCLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUU7WUFDbEMsVUFBVSxFQUFFLFNBQVM7U0FDeEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0F0QlEsb0JBQW9CO2tHQUFwQixvQkFBb0IseWhCQVBsQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDdEQ7U0FDSixpREM1Qkwsb3ZCQWdCQSxtRkRHYyxnQkFBZ0IsMEZBQUUsWUFBWTs7MkZBVy9CLG9CQUFvQjtrQkFwQmhDLFNBQVM7aUNBQ00sSUFBSSxXQVFQLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLFlBQy9CLGlCQUFpQixtQkFFVix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDO3lCQUN0RDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVVNFX0RFRkFVTFRfQ1NTIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3Rva2Vucy91c2UtZGVmYXVsdC1jc3MnO1xuaW1wb3J0IHsgQ29tcG9uZW50UmVmZXJlbmNlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vY2xhc3Nlcy9jb21wb25lbnQtcmVmZXJlbmNlJztcbmltcG9ydCB7IEtjQ2xhc3NEaXJlY3RpdmUgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9kaXJlY3RpdmVzL2tjLWNsYXNzJztcbmltcG9ydCB7IFRvTnVtYmVyUGlwZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi9waXBlcy90by1udW1iZXInO1xuaW1wb3J0IHsgdHlwZSBGb3JtQWN0aW9uLCB0eXBlIEZvcm1GaWVsZEVycm9yIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vc2VydmljZXMvdXNlci1wcm9maWxlLWZvcm0nO1xuaW1wb3J0IHsgTE9HSU5fQ0xBU1NFUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9jbGFzc2VzJztcbmltcG9ydCB7IHR5cGUgQXR0cmlidXRlIH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vS2NDb250ZXh0JztcbmltcG9ydCB0eXBlIHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuICAgICAgICBgXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbS2NDbGFzc0RpcmVjdGl2ZSwgVG9OdW1iZXJQaXBlXSxcbiAgICBzZWxlY3RvcjogJ2tjLXRleHRhcmVhLXRhZycsXG4gICAgdGVtcGxhdGVVcmw6ICd0ZXh0YXJlYS10YWcuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDb21wb25lbnRSZWZlcmVuY2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZXh0YXJlYVRhZ0NvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGV4dGFyZWFUYWdDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnRSZWZlcmVuY2Uge1xuICAgIGF0dHJpYnV0ZSA9IGlucHV0PEF0dHJpYnV0ZT4oKTtcbiAgICB2YWx1ZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgICBkaXNwbGF5YWJsZUVycm9ycyA9IGlucHV0PEZvcm1GaWVsZEVycm9yW10+KCk7XG4gICAgZGlzcGF0Y2hGb3JtQWN0aW9uID0gb3V0cHV0PEZvcm1BY3Rpb24+KCk7XG4gICAgb3ZlcnJpZGUgZG9Vc2VEZWZhdWx0Q3NzID0gaW5qZWN0PGJvb2xlYW4+KFVTRV9ERUZBVUxUX0NTUyk7XG4gICAgb3ZlcnJpZGUgY2xhc3NlcyA9IGluamVjdDxQYXJ0aWFsPFJlY29yZDxDbGFzc0tleSwgc3RyaW5nPj4+KExPR0lOX0NMQVNTRVMpO1xuXG4gICAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hGb3JtQWN0aW9uLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuYXR0cmlidXRlKCk/Lm5hbWUgPz8gJycsXG4gICAgICAgICAgICB2YWx1ZU9yVmFsdWVzOiAoZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQpLnZhbHVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQmx1cigpIHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaEZvcm1BY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246ICdmb2N1cyBsb3N0JyxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuYXR0cmlidXRlKCk/Lm5hbWUgPz8gJycsXG4gICAgICAgICAgICBmaWVsZEluZGV4OiB1bmRlZmluZWRcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiQGxldCBhdHRyID0gYXR0cmlidXRlKCk7XG5AaWYgKGF0dHIpIHtcbiAgICA8dGV4dGFyZWFcbiAgICAgICAgW2lkXT1cImF0dHIubmFtZVwiXG4gICAgICAgIFtuYW1lXT1cImF0dHIubmFtZVwiXG4gICAgICAgIFtrY0NsYXNzXT1cIidrY0lucHV0Q2xhc3MnXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIiEhZGlzcGxheWFibGVFcnJvcnMoKT8ubGVuZ3RoXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImF0dHIucmVhZE9ubHlcIlxuICAgICAgICBbY29sc109XCJhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZUNvbHMgPT09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IChhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZUNvbHMgfCB0b051bWJlcilcIlxuICAgICAgICBbcm93c109XCJhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZVJvd3MgPT09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IChhdHRyLmFubm90YXRpb25zLmlucHV0VHlwZVJvd3MgfCB0b051bWJlcilcIlxuICAgICAgICBbbWF4TGVuZ3RoXT1cImF0dHIuYW5ub3RhdGlvbnMuaW5wdXRUeXBlTWF4bGVuZ3RoID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiAoYXR0ci5hbm5vdGF0aW9ucy5pbnB1dFR5cGVNYXhsZW5ndGggfCB0b051bWJlcilcIlxuICAgICAgICBbdmFsdWVdPVwidmFsdWUoKVwiXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICA+PC90ZXh0YXJlYT5cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1jb21wb25lbnRzLXVzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9jb21wb25lbnRzL3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy9rZXljbG9ha2lmeS1hbmd1bGFyLWxvZ2luLWNvbXBvbmVudHMtdXNlci1wcm9maWxlLWZvcm0tZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './user-profile-form-fields.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9jb21wb25lbnRzL3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy5jb21wb25lbnQnO1xuIl19
@@ -0,0 +1,62 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, ContentChild, effect, forwardRef, inject, output } from '@angular/core';
3
+ import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
4
+ import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
5
+ import { FieldErrorsComponent } from '@keycloakify/angular/login/components/field-errors';
6
+ import { GroupLabelComponent } from '@keycloakify/angular/login/components/group-label';
7
+ import { InputFieldByTypeComponent } from '@keycloakify/angular/login/components/input-field-by-type';
8
+ import { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';
9
+ import { SubmitService } from '@keycloakify/angular/login/services/submit';
10
+ import { UserProfileFormService } from '@keycloakify/angular/login/services/user-profile-form';
11
+ import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
12
+ import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
13
+ import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
14
+ import { DO_MAKE_USER_CONFIRM_PASSWORD } from '@keycloakify/angular/login/tokens/make-user-confirm-password';
15
+ import * as i0 from "@angular/core";
16
+ export class UserProfileFormFieldsComponent extends ComponentReference {
17
+ #submitService;
18
+ constructor() {
19
+ super();
20
+ this.i18n = inject(LOGIN_I18N);
21
+ this.kcContext = inject(KC_LOGIN_CONTEXT);
22
+ this.userProfileFormService = inject(UserProfileFormService);
23
+ this.#submitService = inject(SubmitService);
24
+ this.doMakeUserConfirmPassword = inject(DO_MAKE_USER_CONFIRM_PASSWORD);
25
+ this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
26
+ this.classes = inject(LOGIN_CLASSES);
27
+ this.onIsFormSubmittable = output();
28
+ this.formState = this.userProfileFormService.formState;
29
+ effect(() => {
30
+ const isFormSubmittable = this.formState().isFormSubmittable;
31
+ this.#submitService.setIsSubmittable(isFormSubmittable);
32
+ }, { allowSignalWrites: true });
33
+ }
34
+ onDispatch(formAction) {
35
+ this.userProfileFormService.dispatchFormAction(formAction);
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: UserProfileFormFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: UserProfileFormFieldsComponent, isStandalone: true, selector: "kc-user-profile-form-fields", outputs: { onIsFormSubmittable: "onIsFormSubmittable" }, providers: [
39
+ UserProfileFormService,
40
+ {
41
+ provide: ComponentReference,
42
+ useExisting: forwardRef(() => UserProfileFormFieldsComponent)
43
+ }
44
+ ], queries: [{ propertyName: "beforeField", first: true, predicate: ["beforField"], descendants: true }, { propertyName: "afterField", first: true, predicate: ["afterField"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@let formFieldStates = formState().formFieldStates;\n\n@for (fieldState of formFieldStates; track fieldState.attribute) {\n <kc-group-label [attribute]=\"fieldState.attribute\" />\n\n @if (beforeField) {\n <ng-container\n [ngTemplateOutlet]=\"beforeField\"\n [ngTemplateOutletContext]=\"{\n attribute: fieldState.attribute,\n valueOrValues: fieldState.valueOrValues,\n displayableErrors: fieldState.displayableErrors\n }\"\n />\n }\n\n <div\n [kcClass]=\"'kcFormGroupClass'\"\n [style.display]=\"fieldState.attribute.name === 'password-confirm' && !doMakeUserConfirmPassword ? 'none' : 'block'\"\n >\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n [for]=\"fieldState.attribute.name\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.displayName ?? '') }}\n @if (fieldState.attribute.required) {\n *\n }\n </label>\n </div>\n\n <div [kcClass]=\"'kcInputWrapperClass'\">\n @if (fieldState.attribute.annotations.inputHelperTextBefore) {\n <div\n aria-live=\"polite\"\n [kcClass]=\"'kcInputHelperTextBeforeClass'\"\n [id]=\"'form-help-text-before-' + fieldState.attribute.name\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.annotations.inputHelperTextBefore) }}\n </div>\n }\n\n <kc-input-field-by-type\n [attribute]=\"fieldState.attribute\"\n [valueOrValues]=\"fieldState.valueOrValues\"\n [displayableErrors]=\"fieldState.displayableErrors\"\n (dispatchFormAction)=\"onDispatch($event)\"\n />\n\n <kc-field-errors\n [attribute]=\"fieldState.attribute\"\n [displayableErrors]=\"fieldState.displayableErrors\"\n />\n @if (fieldState.attribute.annotations.inputHelperTextAfter) {\n <div\n aria-live=\"polite\"\n [kcClass]=\"'kcInputHelperTextAfterClass'\"\n [id]=\"'form-help-text-after-' + fieldState.attribute.name\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.annotations.inputHelperTextAfter) }}\n </div>\n }\n\n @if (afterField) {\n <ng-container\n [ngTemplateOutlet]=\"afterField\"\n [ngTemplateOutletContext]=\"{\n attribute: fieldState.attribute,\n valueOrValues: fieldState.valueOrValues,\n displayableErrors: fieldState.displayableErrors\n }\"\n />\n }\n <!-- NOTE: Downloading of html5DataAnnotations scripts is done in the useUserProfileForm hook -->\n </div>\n </div>\n}\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "component", type: FieldErrorsComponent, selector: "kc-field-errors", inputs: ["attribute", "displayableErrors", "fieldIndex"] }, { kind: "component", type: InputFieldByTypeComponent, selector: "kc-input-field-by-type", inputs: ["attribute", "valueOrValues", "displayableErrors"], outputs: ["dispatchFormAction"] }, { kind: "component", type: GroupLabelComponent, selector: "kc-group-label", inputs: ["attribute", "groupName"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
45
+ }
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: UserProfileFormFieldsComponent, decorators: [{
47
+ type: Component,
48
+ args: [{ standalone: true, imports: [KcClassDirective, FieldErrorsComponent, InputFieldByTypeComponent, GroupLabelComponent, NgTemplateOutlet], selector: 'kc-user-profile-form-fields', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
49
+ UserProfileFormService,
50
+ {
51
+ provide: ComponentReference,
52
+ useExisting: forwardRef(() => UserProfileFormFieldsComponent)
53
+ }
54
+ ], template: "@let formFieldStates = formState().formFieldStates;\n\n@for (fieldState of formFieldStates; track fieldState.attribute) {\n <kc-group-label [attribute]=\"fieldState.attribute\" />\n\n @if (beforeField) {\n <ng-container\n [ngTemplateOutlet]=\"beforeField\"\n [ngTemplateOutletContext]=\"{\n attribute: fieldState.attribute,\n valueOrValues: fieldState.valueOrValues,\n displayableErrors: fieldState.displayableErrors\n }\"\n />\n }\n\n <div\n [kcClass]=\"'kcFormGroupClass'\"\n [style.display]=\"fieldState.attribute.name === 'password-confirm' && !doMakeUserConfirmPassword ? 'none' : 'block'\"\n >\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n [for]=\"fieldState.attribute.name\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.displayName ?? '') }}\n @if (fieldState.attribute.required) {\n *\n }\n </label>\n </div>\n\n <div [kcClass]=\"'kcInputWrapperClass'\">\n @if (fieldState.attribute.annotations.inputHelperTextBefore) {\n <div\n aria-live=\"polite\"\n [kcClass]=\"'kcInputHelperTextBeforeClass'\"\n [id]=\"'form-help-text-before-' + fieldState.attribute.name\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.annotations.inputHelperTextBefore) }}\n </div>\n }\n\n <kc-input-field-by-type\n [attribute]=\"fieldState.attribute\"\n [valueOrValues]=\"fieldState.valueOrValues\"\n [displayableErrors]=\"fieldState.displayableErrors\"\n (dispatchFormAction)=\"onDispatch($event)\"\n />\n\n <kc-field-errors\n [attribute]=\"fieldState.attribute\"\n [displayableErrors]=\"fieldState.displayableErrors\"\n />\n @if (fieldState.attribute.annotations.inputHelperTextAfter) {\n <div\n aria-live=\"polite\"\n [kcClass]=\"'kcInputHelperTextAfterClass'\"\n [id]=\"'form-help-text-after-' + fieldState.attribute.name\"\n >\n {{ i18n.advancedMsgStr(fieldState.attribute.annotations.inputHelperTextAfter) }}\n </div>\n }\n\n @if (afterField) {\n <ng-container\n [ngTemplateOutlet]=\"afterField\"\n [ngTemplateOutletContext]=\"{\n attribute: fieldState.attribute,\n valueOrValues: fieldState.valueOrValues,\n displayableErrors: fieldState.displayableErrors\n }\"\n />\n }\n <!-- NOTE: Downloading of html5DataAnnotations scripts is done in the useUserProfileForm hook -->\n </div>\n </div>\n}\n", styles: [":host{display:contents}\n"] }]
55
+ }], ctorParameters: () => [], propDecorators: { beforeField: [{
56
+ type: ContentChild,
57
+ args: ['beforField']
58
+ }], afterField: [{
59
+ type: ContentChild,
60
+ args: ['afterField']
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLWZvcm0tZmllbGRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9jb21wb25lbnRzL3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy91c2VyLXByb2ZpbGUtZm9ybS1maWVsZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2NvbXBvbmVudHMvdXNlci1wcm9maWxlLWZvcm0tZmllbGRzL3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDbEksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBR2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMzRSxPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDaEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7QUF3QjdHLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxrQkFBa0I7SUFJbEUsY0FBYyxDQUF5QjtJQVl2QztRQUNJLEtBQUssRUFBRSxDQUFDO1FBaEJaLFNBQUksR0FBRyxNQUFNLENBQU8sVUFBVSxDQUFDLENBQUM7UUFDaEMsY0FBUyxHQUFHLE1BQU0sQ0FBWSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2hELDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3hELG1CQUFjLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZDLDhCQUF5QixHQUFHLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBQ3pELG9CQUFlLEdBQUcsTUFBTSxDQUFVLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELFlBQU8sR0FBRyxNQUFNLENBQW9DLGFBQWEsQ0FBQyxDQUFDO1FBRTVFLHdCQUFtQixHQUFHLE1BQU0sRUFBVyxDQUFDO1FBRXhDLGNBQVMsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDO1FBTzlDLE1BQU0sQ0FDRixHQUFHLEVBQUU7WUFDRCxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDNUQsQ0FBQyxFQUNELEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQzlCLENBQUM7SUFDTixDQUFDO0lBRUQsVUFBVSxDQUFDLFVBQXNCO1FBQzdCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvRCxDQUFDOzhHQTdCUSw4QkFBOEI7a0dBQTlCLDhCQUE4QixtSUFSNUI7WUFDUCxzQkFBc0I7WUFDdEI7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQzthQUNoRTtTQUNKLG1QQ3JDTCxnakdBOEVBLG1GRG5EYyxnQkFBZ0IsK0ZBQUUsb0JBQW9CLHNIQUFFLHlCQUF5QixpS0FBRSxtQkFBbUIsK0ZBQUUsZ0JBQWdCOzsyRkFZekcsOEJBQThCO2tCQXJCMUMsU0FBUztpQ0FDTSxJQUFJLFdBUVAsQ0FBQyxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsQ0FBQyxZQUN6Ryw2QkFBNkIsbUJBRXRCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Asc0JBQXNCO3dCQUN0Qjs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzt5QkFDaEU7cUJBQ0o7d0RBZTJCLFdBQVc7c0JBQXRDLFlBQVk7dUJBQUMsWUFBWTtnQkFDRSxVQUFVO3NCQUFyQyxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgZWZmZWN0LCBmb3J3YXJkUmVmLCBpbmplY3QsIG91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVTRV9ERUZBVUxUX0NTUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi90b2tlbnMvdXNlLWRlZmF1bHQtY3NzJztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZSc7XG5pbXBvcnQgeyBGaWVsZEVycm9yc0NvbXBvbmVudCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NvbXBvbmVudHMvZmllbGQtZXJyb3JzJztcbmltcG9ydCB7IEdyb3VwTGFiZWxDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb21wb25lbnRzL2dyb3VwLWxhYmVsJztcbmltcG9ydCB7IElucHV0RmllbGRCeVR5cGVDb21wb25lbnQgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jb21wb25lbnRzL2lucHV0LWZpZWxkLWJ5LXR5cGUnO1xuaW1wb3J0IHsgS2NDbGFzc0RpcmVjdGl2ZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2RpcmVjdGl2ZXMva2MtY2xhc3MnO1xuaW1wb3J0IHR5cGUgeyBJMThuIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vaTE4bic7XG5pbXBvcnQgdHlwZSB7IEtjQ29udGV4dCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL0tjQ29udGV4dCc7XG5pbXBvcnQgeyBTdWJtaXRTZXJ2aWNlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vc2VydmljZXMvc3VibWl0JztcbmltcG9ydCB7IHR5cGUgRm9ybUFjdGlvbiwgVXNlclByb2ZpbGVGb3JtU2VydmljZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3NlcnZpY2VzL3VzZXItcHJvZmlsZS1mb3JtJztcbmltcG9ydCB7IExPR0lOX0NMQVNTRVMgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMvY2xhc3Nlcyc7XG5pbXBvcnQgeyBMT0dJTl9JMThOIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2kxOG4nO1xuaW1wb3J0IHsgS0NfTE9HSU5fQ09OVEVYVCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9rYy1jb250ZXh0JztcbmltcG9ydCB7IERPX01BS0VfVVNFUl9DT05GSVJNX1BBU1NXT1JEIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL21ha2UtdXNlci1jb25maXJtLXBhc3N3b3JkJztcbmltcG9ydCB0eXBlIHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9saWIva2NDbHN4JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuICAgICAgICBgXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbS2NDbGFzc0RpcmVjdGl2ZSwgRmllbGRFcnJvcnNDb21wb25lbnQsIElucHV0RmllbGRCeVR5cGVDb21wb25lbnQsIEdyb3VwTGFiZWxDb21wb25lbnQsIE5nVGVtcGxhdGVPdXRsZXRdLFxuICAgIHNlbGVjdG9yOiAna2MtdXNlci1wcm9maWxlLWZvcm0tZmllbGRzJyxcbiAgICB0ZW1wbGF0ZVVybDogJ3VzZXItcHJvZmlsZS1mb3JtLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFVzZXJQcm9maWxlRm9ybVNlcnZpY2UsXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVzZXJQcm9maWxlRm9ybUZpZWxkc0NvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVXNlclByb2ZpbGVGb3JtRmllbGRzQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50UmVmZXJlbmNlIHtcbiAgICBpMThuID0gaW5qZWN0PEkxOG4+KExPR0lOX0kxOE4pO1xuICAgIGtjQ29udGV4dCA9IGluamVjdDxLY0NvbnRleHQ+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIHVzZXJQcm9maWxlRm9ybVNlcnZpY2UgPSBpbmplY3QoVXNlclByb2ZpbGVGb3JtU2VydmljZSk7XG4gICAgI3N1Ym1pdFNlcnZpY2UgPSBpbmplY3QoU3VibWl0U2VydmljZSk7XG4gICAgZG9NYWtlVXNlckNvbmZpcm1QYXNzd29yZCA9IGluamVjdChET19NQUtFX1VTRVJfQ09ORklSTV9QQVNTV09SRCk7XG4gICAgb3ZlcnJpZGUgZG9Vc2VEZWZhdWx0Q3NzID0gaW5qZWN0PGJvb2xlYW4+KFVTRV9ERUZBVUxUX0NTUyk7XG4gICAgb3ZlcnJpZGUgY2xhc3NlcyA9IGluamVjdDxQYXJ0aWFsPFJlY29yZDxDbGFzc0tleSwgc3RyaW5nPj4+KExPR0lOX0NMQVNTRVMpO1xuXG4gICAgb25Jc0Zvcm1TdWJtaXR0YWJsZSA9IG91dHB1dDxib29sZWFuPigpO1xuXG4gICAgZm9ybVN0YXRlID0gdGhpcy51c2VyUHJvZmlsZUZvcm1TZXJ2aWNlLmZvcm1TdGF0ZTtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2JlZm9yRmllbGQnKSBiZWZvcmVGaWVsZDogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQ7XG4gICAgQENvbnRlbnRDaGlsZCgnYWZ0ZXJGaWVsZCcpIGFmdGVyRmllbGQ6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgdW5kZWZpbmVkO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpc0Zvcm1TdWJtaXR0YWJsZSA9IHRoaXMuZm9ybVN0YXRlKCkuaXNGb3JtU3VibWl0dGFibGU7XG4gICAgICAgICAgICAgICAgdGhpcy4jc3VibWl0U2VydmljZS5zZXRJc1N1Ym1pdHRhYmxlKGlzRm9ybVN1Ym1pdHRhYmxlKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvbkRpc3BhdGNoKGZvcm1BY3Rpb246IEZvcm1BY3Rpb24pIHtcbiAgICAgICAgdGhpcy51c2VyUHJvZmlsZUZvcm1TZXJ2aWNlLmRpc3BhdGNoRm9ybUFjdGlvbihmb3JtQWN0aW9uKTtcbiAgICB9XG59XG4iLCJAbGV0IGZvcm1GaWVsZFN0YXRlcyA9IGZvcm1TdGF0ZSgpLmZvcm1GaWVsZFN0YXRlcztcblxuQGZvciAoZmllbGRTdGF0ZSBvZiBmb3JtRmllbGRTdGF0ZXM7IHRyYWNrIGZpZWxkU3RhdGUuYXR0cmlidXRlKSB7XG4gICAgPGtjLWdyb3VwLWxhYmVsIFthdHRyaWJ1dGVdPVwiZmllbGRTdGF0ZS5hdHRyaWJ1dGVcIiAvPlxuXG4gICAgQGlmIChiZWZvcmVGaWVsZCkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJiZWZvcmVGaWVsZFwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZTogZmllbGRTdGF0ZS5hdHRyaWJ1dGUsXG4gICAgICAgICAgICAgICAgdmFsdWVPclZhbHVlczogZmllbGRTdGF0ZS52YWx1ZU9yVmFsdWVzLFxuICAgICAgICAgICAgICAgIGRpc3BsYXlhYmxlRXJyb3JzOiBmaWVsZFN0YXRlLmRpc3BsYXlhYmxlRXJyb3JzXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgLz5cbiAgICB9XG5cbiAgICA8ZGl2XG4gICAgICAgIFtrY0NsYXNzXT1cIidrY0Zvcm1Hcm91cENsYXNzJ1wiXG4gICAgICAgIFtzdHlsZS5kaXNwbGF5XT1cImZpZWxkU3RhdGUuYXR0cmlidXRlLm5hbWUgPT09ICdwYXNzd29yZC1jb25maXJtJyAmJiAhZG9NYWtlVXNlckNvbmZpcm1QYXNzd29yZCA/ICdub25lJyA6ICdibG9jaydcIlxuICAgID5cbiAgICAgICAgPGRpdiBba2NDbGFzc109XCIna2NMYWJlbFdyYXBwZXJDbGFzcydcIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIFtmb3JdPVwiZmllbGRTdGF0ZS5hdHRyaWJ1dGUubmFtZVwiXG4gICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjTGFiZWxDbGFzcydcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGkxOG4uYWR2YW5jZWRNc2dTdHIoZmllbGRTdGF0ZS5hdHRyaWJ1dGUuZGlzcGxheU5hbWUgPz8gJycpIH19XG4gICAgICAgICAgICAgICAgQGlmIChmaWVsZFN0YXRlLmF0dHJpYnV0ZS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBba2NDbGFzc109XCIna2NJbnB1dFdyYXBwZXJDbGFzcydcIj5cbiAgICAgICAgICAgIEBpZiAoZmllbGRTdGF0ZS5hdHRyaWJ1dGUuYW5ub3RhdGlvbnMuaW5wdXRIZWxwZXJUZXh0QmVmb3JlKSB7XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJwb2xpdGVcIlxuICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NJbnB1dEhlbHBlclRleHRCZWZvcmVDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2Zvcm0taGVscC10ZXh0LWJlZm9yZS0nICsgZmllbGRTdGF0ZS5hdHRyaWJ1dGUubmFtZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBpMThuLmFkdmFuY2VkTXNnU3RyKGZpZWxkU3RhdGUuYXR0cmlidXRlLmFubm90YXRpb25zLmlucHV0SGVscGVyVGV4dEJlZm9yZSkgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPGtjLWlucHV0LWZpZWxkLWJ5LXR5cGVcbiAgICAgICAgICAgICAgICBbYXR0cmlidXRlXT1cImZpZWxkU3RhdGUuYXR0cmlidXRlXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVPclZhbHVlc109XCJmaWVsZFN0YXRlLnZhbHVlT3JWYWx1ZXNcIlxuICAgICAgICAgICAgICAgIFtkaXNwbGF5YWJsZUVycm9yc109XCJmaWVsZFN0YXRlLmRpc3BsYXlhYmxlRXJyb3JzXCJcbiAgICAgICAgICAgICAgICAoZGlzcGF0Y2hGb3JtQWN0aW9uKT1cIm9uRGlzcGF0Y2goJGV2ZW50KVwiXG4gICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICA8a2MtZmllbGQtZXJyb3JzXG4gICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJmaWVsZFN0YXRlLmF0dHJpYnV0ZVwiXG4gICAgICAgICAgICAgICAgW2Rpc3BsYXlhYmxlRXJyb3JzXT1cImZpZWxkU3RhdGUuZGlzcGxheWFibGVFcnJvcnNcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIEBpZiAoZmllbGRTdGF0ZS5hdHRyaWJ1dGUuYW5ub3RhdGlvbnMuaW5wdXRIZWxwZXJUZXh0QWZ0ZXIpIHtcbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGFyaWEtbGl2ZT1cInBvbGl0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0lucHV0SGVscGVyVGV4dEFmdGVyQ2xhc3MnXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cIidmb3JtLWhlbHAtdGV4dC1hZnRlci0nICsgZmllbGRTdGF0ZS5hdHRyaWJ1dGUubmFtZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBpMThuLmFkdmFuY2VkTXNnU3RyKGZpZWxkU3RhdGUuYXR0cmlidXRlLmFubm90YXRpb25zLmlucHV0SGVscGVyVGV4dEFmdGVyKSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgKGFmdGVyRmllbGQpIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFmdGVyRmllbGRcIlxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlOiBmaWVsZFN0YXRlLmF0dHJpYnV0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlT3JWYWx1ZXM6IGZpZWxkU3RhdGUudmFsdWVPclZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXlhYmxlRXJyb3JzOiBmaWVsZFN0YXRlLmRpc3BsYXlhYmxlRXJyb3JzXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8IS0tIE5PVEU6IERvd25sb2FkaW5nIG9mIGh0bWw1RGF0YUFubm90YXRpb25zIHNjcmlwdHMgaXMgZG9uZSBpbiB0aGUgdXNlVXNlclByb2ZpbGVGb3JtIGhvb2sgLS0+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1jb250YWluZXJzLXRlbXBsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2NvbnRhaW5lcnMvdGVtcGxhdGUva2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1jb250YWluZXJzLXRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './template.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9jb250YWluZXJzL3RlbXBsYXRlL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGUuY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,72 @@
1
+ import { AsyncPipe, NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, forwardRef, inject, input, Renderer2 } from '@angular/core';
3
+ import { Meta, Title } from '@angular/platform-browser';
4
+ import { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';
5
+ import { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';
6
+ import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
7
+ import { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';
8
+ import { LoginResourceInjectorService } from '@keycloakify/angular/login/services/login-resource-injector';
9
+ import { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';
10
+ import { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';
11
+ import { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';
12
+ import { getKcClsx } from 'keycloakify/login/lib/kcClsx';
13
+ import * as i0 from "@angular/core";
14
+ export class TemplateComponent extends ComponentReference {
15
+ constructor() {
16
+ super();
17
+ this.i18n = inject(LOGIN_I18N);
18
+ this.renderer = inject(Renderer2);
19
+ this.meta = inject(Meta);
20
+ this.title = inject(Title);
21
+ this.kcContext = inject(KC_LOGIN_CONTEXT);
22
+ this.doUseDefaultCss = inject(USE_DEFAULT_CSS);
23
+ this.classes = inject(LOGIN_CLASSES);
24
+ this.loginResourceInjectorService = inject(LoginResourceInjectorService);
25
+ this.displayInfo = input(false);
26
+ this.displayMessage = input(true);
27
+ this.displayRequiredFields = input(false);
28
+ this.documentTitle = input();
29
+ this.bodyClassName = input();
30
+ this.title.setTitle(this.documentTitle() ?? this.i18n.msgStr('loginTitle', this.kcContext.realm.displayName));
31
+ this.isReadyToRender$ = this.loginResourceInjectorService.injectResource(this.doUseDefaultCss);
32
+ }
33
+ ngOnInit() {
34
+ this.applyKcIndexClasses();
35
+ }
36
+ applyKcIndexClasses() {
37
+ const kcClsx = getKcClsx({
38
+ doUseDefaultCss: this.doUseDefaultCss,
39
+ classes: this.classes
40
+ }).kcClsx;
41
+ const kcBodyClass = this.bodyClassName() ?? kcClsx('kcBodyClass');
42
+ const kcHtmlClass = kcClsx('kcHtmlClass');
43
+ const kcBodyClasses = kcBodyClass.split(/\s+/);
44
+ const kcHtmlClasses = kcHtmlClass.split(/\s+/);
45
+ kcBodyClasses.forEach(klass => {
46
+ this.renderer.addClass(document.body, klass);
47
+ });
48
+ kcHtmlClasses.forEach(klass => {
49
+ this.renderer.addClass(document.documentElement, klass);
50
+ });
51
+ }
52
+ tryAnotherWay() {
53
+ document.forms['kc-select-try-another-way-form'].submit();
54
+ }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: TemplateComponent, isStandalone: true, selector: "kc-login-template", inputs: { displayInfo: { classPropertyName: "displayInfo", publicName: "displayInfo", isSignal: true, isRequired: false, transformFunction: null }, displayMessage: { classPropertyName: "displayMessage", publicName: "displayMessage", isSignal: true, isRequired: false, transformFunction: null }, displayRequiredFields: { classPropertyName: "displayRequiredFields", publicName: "displayRequiredFields", isSignal: true, isRequired: false, transformFunction: null }, documentTitle: { classPropertyName: "documentTitle", publicName: "documentTitle", isSignal: true, isRequired: false, transformFunction: null }, bodyClassName: { classPropertyName: "bodyClassName", publicName: "bodyClassName", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
57
+ {
58
+ provide: ComponentReference,
59
+ useExisting: forwardRef(() => TemplateComponent)
60
+ }
61
+ ], usesInheritance: true, ngImport: i0, template: "@let realm = kcContext.realm;\n@let message = kcContext.message;\n@let auth = kcContext.auth;\n@let isAppInitiatedAction = kcContext.isAppInitiatedAction;\n@let url = kcContext.url;\n@let isReadyToRender = isReadyToRender$ | async;\n\n@if (isReadyToRender) {\n <div [kcClass]=\"'kcLoginClass'\">\n <div\n id=\"kc-header\"\n [kcClass]=\"'kcHeaderClass'\"\n >\n <div\n id=\"kc-header-wrapper\"\n [kcClass]=\"'kcHeaderWrapperClass'\"\n >\n <div [innerHTML]=\"realm?.displayNameHtml ?? '' | kcSanitize: 'html'\"></div>\n </div>\n </div>\n\n <div [kcClass]=\"'kcFormCardClass'\">\n <header [kcClass]=\"'kcFormHeaderClass'\">\n <!-- Locale switcher -->\n @if (i18n.enabledLanguages.length > 1) {\n <div\n id=\"kc-locale\"\n [kcClass]=\"'kcLocaleMainClass'\"\n >\n <div\n id=\"kc-locale-wrapper\"\n [kcClass]=\"'kcLocaleWrapperClass'\"\n >\n <div\n id=\"kc-locale-dropdown\"\n class=\"menu-button-links\"\n [kcClass]=\"'kcLocaleDropDownClass'\"\n >\n <button\n tabindex=\"1\"\n id=\"kc-current-locale-link\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n aria-controls=\"language-switch1\"\n [attr.aria-label]=\"i18n.msgStr('languages')\"\n >\n {{ i18n.currentLanguage.label }}\n </button>\n <ul\n role=\"menu\"\n tabindex=\"-1\"\n aria-labelledby=\"kc-current-locale-link\"\n aria-activedescendant=\"\"\n id=\"language-switch1\"\n [kcClass]=\"'kcLocaleListClass'\"\n >\n @for (entry of i18n.enabledLanguages; track entry; let idx = $index) {\n <li\n role=\"none\"\n [kcClass]=\"'kcLocaleListItemClass'\"\n >\n <a\n role=\"menuitem\"\n tabindex=\"-1\"\n [href]=\"entry.href\"\n [kcClass]=\"'kcLocaleItemClass'\"\n [id]=\"'language-' + idx\"\n >\n {{ entry.label }}\n </a>\n </li>\n }\n </ul>\n </div>\n </div>\n </div>\n }\n\n <!-- Header content -->\n <ng-template #node>\n @if (auth && !auth.showUsername && !auth.showResetCredentials) {\n <h1 id=\"kc-page-title\">\n <ng-content select=\"[headerNode]\" />\n </h1>\n } @else {\n <div\n id=\"kc-username\"\n [kcClass]=\"'kcFormGroupClass'\"\n >\n <label id=\"kc-attempted-username\">{{ auth?.attemptedUsername }}</label>\n <a\n id=\"reset-login\"\n [href]=\"url?.loginRestartFlowUrl\"\n [attr.aria-label]=\"i18n.msgStr('restartLoginTooltip')\"\n >\n <div class=\"kc-login-tooltip\">\n <i [kcClass]=\"'kcResetFlowIcon'\"></i>\n <span class=\"kc-tooltip-text\">\n {{ i18n.msgStr('restartLoginTooltip') }}\n </span>\n </div>\n </a>\n </div>\n }\n </ng-template>\n\n @if (displayRequiredFields()) {\n <div [kcClass]=\"'kcContentWrapperClass'\">\n <div\n class=\"subtitle\"\n [kcClass]=\"'kcLabelWrapperClass'\"\n >\n <span class=\"subtitle\">\n <span class=\"required\">*</span>\n {{ i18n.msgStr('requiredFields') }}\n </span>\n </div>\n <div class=\"col-md-10\">\n <ng-container [ngTemplateOutlet]=\"node\" />\n </div>\n </div>\n } @else {\n <ng-container [ngTemplateOutlet]=\"node\" />\n }\n </header>\n\n <div id=\"kc-content\">\n <div id=\"kc-content-wrapper\">\n <!-- Message display -->\n @if (displayMessage() && message && (message.type !== 'warning' || !isAppInitiatedAction)) {\n <div\n [kcClass]=\"'kcAlertClass'\"\n [ngClass]=\"message.type === 'error' ? 'pf-m-danger' : 'pf-m-' + message.type\"\n [class]=\"'alert-' + message.type\"\n >\n <div class=\"pf-c-alert__icon\">\n @switch (message.type) {\n @case ('success') {\n <span [kcClass]=\"'kcFeedbackSuccessIcon'\"></span>\n }\n @case ('warning') {\n <span [kcClass]=\"'kcFeedbackWarningIcon'\"></span>\n }\n @case ('info') {\n <span [kcClass]=\"'kcFeedbackInfoIcon'\"></span>\n }\n @case ('error') {\n <span [kcClass]=\"'kcFeedbackErrorIcon'\"></span>\n }\n }\n </div>\n <span\n [kcClass]=\"'kcAlertTitleClass'\"\n [innerHTML]=\"message.summary | kcSanitize: 'html'\"\n ></span>\n </div>\n }\n <!-- Content -->\n <ng-content select=\"[content]\" />\n @if (!!auth && auth?.showTryAnotherWayLink) {\n <form\n id=\"kc-select-try-another-way-form\"\n method=\"post\"\n [action]=\"url?.loginAction\"\n >\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcFormGroupClass'\">\n <input\n type=\"hidden\"\n name=\"tryAnotherWay\"\n value=\"on\"\n />\n <a\n id=\"try-another-way\"\n (click)=\"tryAnotherWay()\"\n >\n {{ i18n.msgStr('doTryAnotherWay') }}\n </a>\n </div>\n </div>\n </form>\n }\n\n <ng-content select=\"[socialProvidersNode]\" />\n <!-- Info display -->\n @if (displayInfo()) {\n <div\n id=\"kc-info\"\n [kcClass]=\"'kcSignUpClass'\"\n >\n <div\n id=\"kc-info-wrapper\"\n [kcClass]=\"'kcInfoAreaWrapperClass'\"\n >\n <ng-content select=\"[infoNode]\" />\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n </div>\n}\n", dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TemplateComponent, decorators: [{
64
+ type: Component,
65
+ args: [{ selector: 'kc-login-template', standalone: true, imports: [AsyncPipe, KcSanitizePipe, NgTemplateOutlet, KcClassDirective], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
66
+ {
67
+ provide: ComponentReference,
68
+ useExisting: forwardRef(() => TemplateComponent)
69
+ }
70
+ ], template: "@let realm = kcContext.realm;\n@let message = kcContext.message;\n@let auth = kcContext.auth;\n@let isAppInitiatedAction = kcContext.isAppInitiatedAction;\n@let url = kcContext.url;\n@let isReadyToRender = isReadyToRender$ | async;\n\n@if (isReadyToRender) {\n <div [kcClass]=\"'kcLoginClass'\">\n <div\n id=\"kc-header\"\n [kcClass]=\"'kcHeaderClass'\"\n >\n <div\n id=\"kc-header-wrapper\"\n [kcClass]=\"'kcHeaderWrapperClass'\"\n >\n <div [innerHTML]=\"realm?.displayNameHtml ?? '' | kcSanitize: 'html'\"></div>\n </div>\n </div>\n\n <div [kcClass]=\"'kcFormCardClass'\">\n <header [kcClass]=\"'kcFormHeaderClass'\">\n <!-- Locale switcher -->\n @if (i18n.enabledLanguages.length > 1) {\n <div\n id=\"kc-locale\"\n [kcClass]=\"'kcLocaleMainClass'\"\n >\n <div\n id=\"kc-locale-wrapper\"\n [kcClass]=\"'kcLocaleWrapperClass'\"\n >\n <div\n id=\"kc-locale-dropdown\"\n class=\"menu-button-links\"\n [kcClass]=\"'kcLocaleDropDownClass'\"\n >\n <button\n tabindex=\"1\"\n id=\"kc-current-locale-link\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n aria-controls=\"language-switch1\"\n [attr.aria-label]=\"i18n.msgStr('languages')\"\n >\n {{ i18n.currentLanguage.label }}\n </button>\n <ul\n role=\"menu\"\n tabindex=\"-1\"\n aria-labelledby=\"kc-current-locale-link\"\n aria-activedescendant=\"\"\n id=\"language-switch1\"\n [kcClass]=\"'kcLocaleListClass'\"\n >\n @for (entry of i18n.enabledLanguages; track entry; let idx = $index) {\n <li\n role=\"none\"\n [kcClass]=\"'kcLocaleListItemClass'\"\n >\n <a\n role=\"menuitem\"\n tabindex=\"-1\"\n [href]=\"entry.href\"\n [kcClass]=\"'kcLocaleItemClass'\"\n [id]=\"'language-' + idx\"\n >\n {{ entry.label }}\n </a>\n </li>\n }\n </ul>\n </div>\n </div>\n </div>\n }\n\n <!-- Header content -->\n <ng-template #node>\n @if (auth && !auth.showUsername && !auth.showResetCredentials) {\n <h1 id=\"kc-page-title\">\n <ng-content select=\"[headerNode]\" />\n </h1>\n } @else {\n <div\n id=\"kc-username\"\n [kcClass]=\"'kcFormGroupClass'\"\n >\n <label id=\"kc-attempted-username\">{{ auth?.attemptedUsername }}</label>\n <a\n id=\"reset-login\"\n [href]=\"url?.loginRestartFlowUrl\"\n [attr.aria-label]=\"i18n.msgStr('restartLoginTooltip')\"\n >\n <div class=\"kc-login-tooltip\">\n <i [kcClass]=\"'kcResetFlowIcon'\"></i>\n <span class=\"kc-tooltip-text\">\n {{ i18n.msgStr('restartLoginTooltip') }}\n </span>\n </div>\n </a>\n </div>\n }\n </ng-template>\n\n @if (displayRequiredFields()) {\n <div [kcClass]=\"'kcContentWrapperClass'\">\n <div\n class=\"subtitle\"\n [kcClass]=\"'kcLabelWrapperClass'\"\n >\n <span class=\"subtitle\">\n <span class=\"required\">*</span>\n {{ i18n.msgStr('requiredFields') }}\n </span>\n </div>\n <div class=\"col-md-10\">\n <ng-container [ngTemplateOutlet]=\"node\" />\n </div>\n </div>\n } @else {\n <ng-container [ngTemplateOutlet]=\"node\" />\n }\n </header>\n\n <div id=\"kc-content\">\n <div id=\"kc-content-wrapper\">\n <!-- Message display -->\n @if (displayMessage() && message && (message.type !== 'warning' || !isAppInitiatedAction)) {\n <div\n [kcClass]=\"'kcAlertClass'\"\n [ngClass]=\"message.type === 'error' ? 'pf-m-danger' : 'pf-m-' + message.type\"\n [class]=\"'alert-' + message.type\"\n >\n <div class=\"pf-c-alert__icon\">\n @switch (message.type) {\n @case ('success') {\n <span [kcClass]=\"'kcFeedbackSuccessIcon'\"></span>\n }\n @case ('warning') {\n <span [kcClass]=\"'kcFeedbackWarningIcon'\"></span>\n }\n @case ('info') {\n <span [kcClass]=\"'kcFeedbackInfoIcon'\"></span>\n }\n @case ('error') {\n <span [kcClass]=\"'kcFeedbackErrorIcon'\"></span>\n }\n }\n </div>\n <span\n [kcClass]=\"'kcAlertTitleClass'\"\n [innerHTML]=\"message.summary | kcSanitize: 'html'\"\n ></span>\n </div>\n }\n <!-- Content -->\n <ng-content select=\"[content]\" />\n @if (!!auth && auth?.showTryAnotherWayLink) {\n <form\n id=\"kc-select-try-another-way-form\"\n method=\"post\"\n [action]=\"url?.loginAction\"\n >\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcFormGroupClass'\">\n <input\n type=\"hidden\"\n name=\"tryAnotherWay\"\n value=\"on\"\n />\n <a\n id=\"try-another-way\"\n (click)=\"tryAnotherWay()\"\n >\n {{ i18n.msgStr('doTryAnotherWay') }}\n </a>\n </div>\n </div>\n </form>\n }\n\n <ng-content select=\"[socialProvidersNode]\" />\n <!-- Info display -->\n @if (displayInfo()) {\n <div\n id=\"kc-info\"\n [kcClass]=\"'kcSignUpClass'\"\n >\n <div\n id=\"kc-info-wrapper\"\n [kcClass]=\"'kcInfoAreaWrapperClass'\"\n >\n <ng-content select=\"[infoNode]\" />\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n </div>\n}\n" }]
71
+ }], ctorParameters: () => [] });
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2NvbnRhaW5lcnMvdGVtcGxhdGUvdGVtcGxhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2NvbnRhaW5lcnMvdGVtcGxhdGUvdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNsRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUMzRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBaUIsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBa0J4RSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsa0JBQWtCO0lBa0JyRDtRQUNJLEtBQUssRUFBRSxDQUFDO1FBbEJa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YyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLG1CQUN2RCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtCQUFrQixDQUFDO3lCQUNuRDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWV0YSwgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEtjU2FuaXRpemVQaXBlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbGliL3BpcGVzL2tjLXNhbml0aXplJztcbmltcG9ydCB7IFVTRV9ERUZBVUxUX0NTUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xpYi90b2tlbnMvdXNlLWRlZmF1bHQtY3NzJztcbmltcG9ydCB7IENvbXBvbmVudFJlZmVyZW5jZSB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZSc7XG5pbXBvcnQgeyBLY0NsYXNzRGlyZWN0aXZlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vZGlyZWN0aXZlcy9rYy1jbGFzcyc7XG5pbXBvcnQgeyBMb2dpblJlc291cmNlSW5qZWN0b3JTZXJ2aWNlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vc2VydmljZXMvbG9naW4tcmVzb3VyY2UtaW5qZWN0b3InO1xuaW1wb3J0IHsgTE9HSU5fQ0xBU1NFUyB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL3Rva2Vucy9jbGFzc2VzJztcbmltcG9ydCB7IExPR0lOX0kxOE4gfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi90b2tlbnMvaTE4bic7XG5pbXBvcnQgeyBLQ19MT0dJTl9DT05URVhUIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvbG9naW4vdG9rZW5zL2tjLWNvbnRleHQnO1xuaW1wb3J0IHsgdHlwZSBDbGFzc0tleSwgZ2V0S2NDbHN4IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgdHlwZSB7IEkxOG4gfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9pMThuJztcbmltcG9ydCB7IEtjQ29udGV4dCB9IGZyb20gJ0BrZXljbG9ha2lmeS9hbmd1bGFyL2xvZ2luL0tjQ29udGV4dCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna2MtbG9naW4tdGVtcGxhdGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBLY1Nhbml0aXplUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgS2NDbGFzc0RpcmVjdGl2ZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENvbXBvbmVudFJlZmVyZW5jZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRlbXBsYXRlQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudFJlZmVyZW5jZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgaTE4biA9IGluamVjdDxJMThuPihMT0dJTl9JMThOKTtcbiAgICByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIG1ldGEgPSBpbmplY3QoTWV0YSk7XG4gICAgdGl0bGUgPSBpbmplY3QoVGl0bGUpO1xuICAgIGtjQ29udGV4dCA9IGluamVjdDxLY0NvbnRleHQ+KEtDX0xPR0lOX0NPTlRFWFQpO1xuICAgIG92ZXJyaWRlIGRvVXNlRGVmYXVsdENzcyA9IGluamVjdDxib29sZWFuPihVU0VfREVGQVVMVF9DU1MpO1xuICAgIG92ZXJyaWRlIGNsYXNzZXMgPSBpbmplY3Q8UGFydGlhbDxSZWNvcmQ8Q2xhc3NLZXksIHN0cmluZz4+PihMT0dJTl9DTEFTU0VTKTtcbiAgICBsb2dpblJlc291cmNlSW5qZWN0b3JTZXJ2aWNlID0gaW5qZWN0KExvZ2luUmVzb3VyY2VJbmplY3RvclNlcnZpY2UpO1xuXG4gICAgZGlzcGxheUluZm8gPSBpbnB1dChmYWxzZSk7XG4gICAgZGlzcGxheU1lc3NhZ2UgPSBpbnB1dCh0cnVlKTtcbiAgICBkaXNwbGF5UmVxdWlyZWRGaWVsZHMgPSBpbnB1dChmYWxzZSk7XG4gICAgZG9jdW1lbnRUaXRsZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgICBib2R5Q2xhc3NOYW1lID0gaW5wdXQ8c3RyaW5nPigpO1xuXG4gICAgaXNSZWFkeVRvUmVuZGVyJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnRpdGxlLnNldFRpdGxlKHRoaXMuZG9jdW1lbnRUaXRsZSgpID8/IHRoaXMuaTE4bi5tc2dTdHIoJ2xvZ2luVGl0bGUnLCB0aGlzLmtjQ29udGV4dC5yZWFsbS5kaXNwbGF5TmFtZSkpO1xuICAgICAgICB0aGlzLmlzUmVhZHlUb1JlbmRlciQgPSB0aGlzLmxvZ2luUmVzb3VyY2VJbmplY3RvclNlcnZpY2UuaW5qZWN0UmVzb3VyY2UodGhpcy5kb1VzZURlZmF1bHRDc3MpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmFwcGx5S2NJbmRleENsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwcGx5S2NJbmRleENsYXNzZXMoKSB7XG4gICAgICAgIGNvbnN0IGtjQ2xzeCA9IGdldEtjQ2xzeCh7XG4gICAgICAgICAgICBkb1VzZURlZmF1bHRDc3M6IHRoaXMuZG9Vc2VEZWZhdWx0Q3NzLFxuICAgICAgICAgICAgY2xhc3NlczogdGhpcy5jbGFzc2VzXG4gICAgICAgIH0pLmtjQ2xzeDtcbiAgICAgICAgY29uc3Qga2NCb2R5Q2xhc3MgPSB0aGlzLmJvZHlDbGFzc05hbWUoKSA/PyBrY0Nsc3goJ2tjQm9keUNsYXNzJyk7XG4gICAgICAgIGNvbnN0IGtjSHRtbENsYXNzID0ga2NDbHN4KCdrY0h0bWxDbGFzcycpO1xuICAgICAgICBjb25zdCBrY0JvZHlDbGFzc2VzID0ga2NCb2R5Q2xhc3Muc3BsaXQoL1xccysvKTtcbiAgICAgICAgY29uc3Qga2NIdG1sQ2xhc3NlcyA9IGtjSHRtbENsYXNzLnNwbGl0KC9cXHMrLyk7XG4gICAgICAgIGtjQm9keUNsYXNzZXMuZm9yRWFjaChrbGFzcyA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGRvY3VtZW50LmJvZHksIGtsYXNzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGtjSHRtbENsYXNzZXMuZm9yRWFjaChrbGFzcyA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwga2xhc3MpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0cnlBbm90aGVyV2F5KCkge1xuICAgICAgICBkb2N1bWVudC5mb3Jtc1sna2Mtc2VsZWN0LXRyeS1hbm90aGVyLXdheS1mb3JtJyBhcyBuZXZlcl0uc3VibWl0KCk7XG4gICAgfVxufVxuIiwiQGxldCByZWFsbSA9IGtjQ29udGV4dC5yZWFsbTtcbkBsZXQgbWVzc2FnZSA9IGtjQ29udGV4dC5tZXNzYWdlO1xuQGxldCBhdXRoID0ga2NDb250ZXh0LmF1dGg7XG5AbGV0IGlzQXBwSW5pdGlhdGVkQWN0aW9uID0ga2NDb250ZXh0LmlzQXBwSW5pdGlhdGVkQWN0aW9uO1xuQGxldCB1cmwgPSBrY0NvbnRleHQudXJsO1xuQGxldCBpc1JlYWR5VG9SZW5kZXIgPSBpc1JlYWR5VG9SZW5kZXIkIHwgYXN5bmM7XG5cbkBpZiAoaXNSZWFkeVRvUmVuZGVyKSB7XG4gICAgPGRpdiBba2NDbGFzc109XCIna2NMb2dpbkNsYXNzJ1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBpZD1cImtjLWhlYWRlclwiXG4gICAgICAgICAgICBba2NDbGFzc109XCIna2NIZWFkZXJDbGFzcydcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgaWQ9XCJrYy1oZWFkZXItd3JhcHBlclwiXG4gICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjSGVhZGVyV3JhcHBlckNsYXNzJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInJlYWxtPy5kaXNwbGF5TmFtZUh0bWwgPz8gJycgfCBrY1Nhbml0aXplOiAnaHRtbCdcIj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IFtrY0NsYXNzXT1cIidrY0Zvcm1DYXJkQ2xhc3MnXCI+XG4gICAgICAgICAgICA8aGVhZGVyIFtrY0NsYXNzXT1cIidrY0Zvcm1IZWFkZXJDbGFzcydcIj5cbiAgICAgICAgICAgICAgICA8IS0tIExvY2FsZSBzd2l0Y2hlciAtLT5cbiAgICAgICAgICAgICAgICBAaWYgKGkxOG4uZW5hYmxlZExhbmd1YWdlcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwia2MtbG9jYWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0xvY2FsZU1haW5DbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJrYy1sb2NhbGUtd3JhcHBlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjTG9jYWxlV3JhcHBlckNsYXNzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImtjLWxvY2FsZS1kcm9wZG93blwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWVudS1idXR0b24tbGlua3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NMb2NhbGVEcm9wRG93bkNsYXNzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJrYy1jdXJyZW50LWxvY2FsZS1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPVwibGFuZ3VhZ2Utc3dpdGNoMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImkxOG4ubXNnU3RyKCdsYW5ndWFnZXMnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGkxOG4uY3VycmVudExhbmd1YWdlLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJtZW51XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwia2MtY3VycmVudC1sb2NhbGUtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWFjdGl2ZWRlc2NlbmRhbnQ9XCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJsYW5ndWFnZS1zd2l0Y2gxXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0xvY2FsZUxpc3RDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChlbnRyeSBvZiBpMThuLmVuYWJsZWRMYW5ndWFnZXM7IHRyYWNrIGVudHJ5OyBsZXQgaWR4ID0gJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjTG9jYWxlTGlzdEl0ZW1DbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJtZW51aXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImVudHJ5LmhyZWZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjTG9jYWxlSXRlbUNsYXNzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2xhbmd1YWdlLScgKyBpZHhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBlbnRyeS5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA8IS0tIEhlYWRlciBjb250ZW50IC0tPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9kZT5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhdXRoICYmICFhdXRoLnNob3dVc2VybmFtZSAmJiAhYXV0aC5zaG93UmVzZXRDcmVkZW50aWFscykge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGgxIGlkPVwia2MtcGFnZS10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltoZWFkZXJOb2RlXVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImtjLXVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NGb3JtR3JvdXBDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBpZD1cImtjLWF0dGVtcHRlZC11c2VybmFtZVwiPnt7IGF1dGg/LmF0dGVtcHRlZFVzZXJuYW1lIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInJlc2V0LWxvZ2luXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwidXJsPy5sb2dpblJlc3RhcnRGbG93VXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpMThuLm1zZ1N0cigncmVzdGFydExvZ2luVG9vbHRpcCcpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYy1sb2dpbi10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBba2NDbGFzc109XCIna2NSZXNldEZsb3dJY29uJ1wiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwia2MtdG9vbHRpcC10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaTE4bi5tc2dTdHIoJ3Jlc3RhcnRMb2dpblRvb2x0aXAnKSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgICAgICAgICBAaWYgKGRpc3BsYXlSZXF1aXJlZEZpZWxkcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW2tjQ2xhc3NdPVwiJ2tjQ29udGVudFdyYXBwZXJDbGFzcydcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1YnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NMYWJlbFdyYXBwZXJDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGkxOG4ubXNnU3RyKCdyZXF1aXJlZEZpZWxkcycpIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2hlYWRlcj5cblxuICAgICAgICAgICAgPGRpdiBpZD1cImtjLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwia2MtY29udGVudC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gTWVzc2FnZSBkaXNwbGF5IC0tPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKGRpc3BsYXlNZXNzYWdlKCkgJiYgbWVzc2FnZSAmJiAobWVzc2FnZS50eXBlICE9PSAnd2FybmluZycgfHwgIWlzQXBwSW5pdGlhdGVkQWN0aW9uKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtrY0NsYXNzXT1cIidrY0FsZXJ0Q2xhc3MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJtZXNzYWdlLnR5cGUgPT09ICdlcnJvcicgPyAncGYtbS1kYW5nZXInIDogJ3BmLW0tJyArIG1lc3NhZ2UudHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidhbGVydC0nICsgbWVzc2FnZS50eXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGYtYy1hbGVydF9faWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgnc3VjY2VzcycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBba2NDbGFzc109XCIna2NGZWVkYmFja1N1Y2Nlc3NJY29uJ1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgnd2FybmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBba2NDbGFzc109XCIna2NGZWVkYmFja1dhcm5pbmdJY29uJ1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgnaW5mbycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBba2NDbGFzc109XCIna2NGZWVkYmFja0luZm9JY29uJ1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgnZXJyb3InKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2tjQ2xhc3NdPVwiJ2tjRmVlZGJhY2tFcnJvckljb24nXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2tjQ2xhc3NdPVwiJ2tjQWxlcnRUaXRsZUNsYXNzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibWVzc2FnZS5zdW1tYXJ5IHwga2NTYW5pdGl6ZTogJ2h0bWwnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBDb250ZW50IC0tPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbY29udGVudF1cIiAvPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKCEhYXV0aCAmJiBhdXRoPy5zaG93VHJ5QW5vdGhlcldheUxpbmspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJrYy1zZWxlY3QtdHJ5LWFub3RoZXItd2F5LWZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZD1cInBvc3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3Rpb25dPVwidXJsPy5sb2dpbkFjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBba2NDbGFzc109XCIna2NGb3JtR3JvdXBDbGFzcydcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBba2NDbGFzc109XCIna2NGb3JtR3JvdXBDbGFzcydcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJoaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJ0cnlBbm90aGVyV2F5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cIm9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwidHJ5LWFub3RoZXItd2F5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidHJ5QW5vdGhlcldheSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpMThuLm1zZ1N0cignZG9UcnlBbm90aGVyV2F5JykgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc29jaWFsUHJvdmlkZXJzTm9kZV1cIiAvPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIEluZm8gZGlzcGxheSAtLT5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChkaXNwbGF5SW5mbygpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJrYy1pbmZvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NTaWduVXBDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJrYy1pbmZvLXdyYXBwZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBba2NDbGFzc109XCIna2NJbmZvQXJlYVdyYXBwZXJDbGFzcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2luZm9Ob2RlXVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxufVxuIl19
@@ -0,0 +1,138 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* eslint-disable @typescript-eslint/consistent-indexed-object-style */
3
+ import { Directive, ElementRef, inject, Input, isDevMode, Renderer2, ɵstringify as stringify } from '@angular/core';
4
+ import { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';
5
+ import { getKcClsx } from 'keycloakify/login/lib/kcClsx';
6
+ import * as i0 from "@angular/core";
7
+ export class KcClassDirective {
8
+ constructor() {
9
+ this.initialClasses = [];
10
+ this.stateMap = new Map();
11
+ this.#renderer = inject(Renderer2);
12
+ this.#el = inject(ElementRef);
13
+ this.#host = inject(ComponentReference);
14
+ }
15
+ #renderer;
16
+ #el;
17
+ #host;
18
+ // eslint-disable-next-line @angular-eslint/no-input-rename
19
+ set klass(value) {
20
+ this.initialClasses = value != null ? value.trim().split(/\s+/) : [];
21
+ }
22
+ // eslint-disable-next-line @angular-eslint/no-input-rename
23
+ set ngClass(value) {
24
+ this.rawClass = typeof value === 'string' ? value.trim().split(/\s+/) : value;
25
+ }
26
+ // eslint-disable-next-line @angular-eslint/no-input-rename
27
+ set kcClass(value) {
28
+ this.rawKcClass =
29
+ typeof value === 'string' ? value.trim().split(/\s+/) : value;
30
+ }
31
+ ngDoCheck() {
32
+ for (const klass of this.initialClasses) {
33
+ this._updateState(klass, true);
34
+ }
35
+ // classes from the [ngClass] binding
36
+ const rawClass = this.rawClass;
37
+ if (Array.isArray(rawClass) || rawClass instanceof Set) {
38
+ for (const klass of rawClass) {
39
+ this._updateState(klass, true);
40
+ }
41
+ }
42
+ else if (rawClass != null) {
43
+ for (const klass of Object.keys(rawClass)) {
44
+ this._updateState(klass, Boolean(rawClass[klass]));
45
+ }
46
+ }
47
+ // classes from the [kcClass] binding
48
+ const rawKcClass = this.rawKcClass;
49
+ if (Array.isArray(rawKcClass) || rawKcClass instanceof Set) {
50
+ for (const klass of rawKcClass) {
51
+ this._updateState(klass, true, true);
52
+ }
53
+ }
54
+ else if (rawKcClass != null) {
55
+ for (const klass of Object.keys(rawKcClass)) {
56
+ this._updateState(klass, Boolean(rawKcClass[klass]), true);
57
+ }
58
+ }
59
+ this._applyStateDiff();
60
+ }
61
+ _updateState(klass, nextEnabled, kcClsxCheck = false) {
62
+ const state = this.stateMap.get(klass);
63
+ if (state !== undefined) {
64
+ if (state.enabled !== nextEnabled) {
65
+ state.changed = true;
66
+ state.enabled = nextEnabled;
67
+ }
68
+ state.touched = true;
69
+ }
70
+ else {
71
+ let klassChecked = klass;
72
+ if (kcClsxCheck) {
73
+ const doUseDefaultCss = this.#host.doUseDefaultCss ?? true;
74
+ const classes = this.#host.classes;
75
+ const kcClsx = getKcClsx({ doUseDefaultCss, classes }).kcClsx;
76
+ klassChecked = kcClsx(klass);
77
+ }
78
+ this.stateMap.set(klassChecked, {
79
+ enabled: nextEnabled,
80
+ changed: true,
81
+ touched: true
82
+ });
83
+ }
84
+ }
85
+ _applyStateDiff() {
86
+ for (const stateEntry of this.stateMap) {
87
+ const klass = stateEntry[0];
88
+ const state = stateEntry[1];
89
+ if (state.changed) {
90
+ this._toggleClass(klass, state.enabled);
91
+ state.changed = false;
92
+ }
93
+ else if (!state.touched) {
94
+ // A class that was previously active got removed from the new collection of classes -
95
+ // remove from the DOM as well.
96
+ if (state.enabled) {
97
+ this._toggleClass(klass, false);
98
+ }
99
+ this.stateMap.delete(klass);
100
+ }
101
+ state.touched = false;
102
+ }
103
+ }
104
+ _toggleClass(klass, enabled) {
105
+ if (isDevMode()) {
106
+ if (typeof klass !== 'string') {
107
+ throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${stringify(klass)}`);
108
+ }
109
+ }
110
+ klass = klass.trim();
111
+ if (klass.length > 0) {
112
+ klass.split(/\s+/).forEach(klass => {
113
+ if (enabled) {
114
+ this.#renderer.addClass(this.#el.nativeElement, klass);
115
+ }
116
+ else {
117
+ this.#renderer.removeClass(this.#el.nativeElement, klass);
118
+ }
119
+ });
120
+ }
121
+ }
122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: KcClassDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
123
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: KcClassDirective, isStandalone: true, selector: "[kcClass]", inputs: { klass: ["class", "klass"], ngClass: "ngClass", kcClass: "kcClass" }, ngImport: i0 }); }
124
+ }
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: KcClassDirective, decorators: [{
126
+ type: Directive,
127
+ args: [{ selector: '[kcClass]', standalone: true }]
128
+ }], propDecorators: { klass: [{
129
+ type: Input,
130
+ args: ['class']
131
+ }], ngClass: [{
132
+ type: Input,
133
+ args: ['ngClass']
134
+ }], kcClass: [{
135
+ type: Input,
136
+ args: ['kcClass']
137
+ }] } });
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2MtY2xhc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2RpcmVjdGl2ZXMva2MtY2xhc3Mva2MtY2xhc3MuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCx1RUFBdUU7QUFDdkUsT0FBTyxFQUNILFNBQVMsRUFFVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsSUFBSSxTQUFTLEVBQzFCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzVGLE9BQU8sRUFBaUIsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBd0J4RSxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRVksbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFJOUIsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFvQyxDQUFDO1FBQ3RELGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6QixVQUFLLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0F3SC9DO0lBMUhZLFNBQVMsQ0FBcUI7SUFDOUIsR0FBRyxDQUFzQjtJQUN6QixLQUFLLENBQThCO0lBQzVDLDJEQUEyRDtJQUMzRCxJQUNJLEtBQUssQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsSUFDSSxPQUFPLENBQUMsS0FBcUM7UUFDN0MsSUFBSSxDQUFDLFFB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bGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtaW5kZXhlZC1vYmplY3Qtc3R5bGUgKi9cbmltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgaXNEZXZNb2RlLFxuICAgIFJlbmRlcmVyMixcbiAgICDJtXN0cmluZ2lmeSBhcyBzdHJpbmdpZnlcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9sb2dpbi9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgdHlwZSBDbGFzc0tleSwgZ2V0S2NDbHN4IH0gZnJvbSAna2V5Y2xvYWtpZnkvbG9naW4vbGliL2tjQ2xzeCc7XG5cbmludGVyZmFjZSBDc3NDbGFzc1N0YXRlIHtcbiAgICAvLyBQRVJGOiBjb3VsZCB1c2UgYSBiaXQgbWFzayB0byByZXByZXNlbnQgc3RhdGUgYXMgYWxsIGZpZWxkcyBhcmUgYm9vbGVhbiBmbGFnc1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgY2hhbmdlZDogYm9vbGVhbjtcbiAgICB0b3VjaGVkOiBib29sZWFuO1xufVxuXG50eXBlIEtjQ2xhc3NTdXBwb3J0ZWRUeXBlcyA9XG4gICAgfCBDbGFzc0tleVtdXG4gICAgfCBTZXQ8Q2xhc3NLZXk+XG4gICAgfCBQYXJ0aWFsPHsgW2tleSBpbiBDbGFzc0tleV06IGFueSB9PlxuICAgIHwgbnVsbFxuICAgIHwgdW5kZWZpbmVkO1xuXG50eXBlIE5nQ2xhc3NTdXBwb3J0ZWRUeXBlcyA9XG4gICAgfCBzdHJpbmdbXVxuICAgIHwgU2V0PHN0cmluZz5cbiAgICB8IHsgW2tleTogc3RyaW5nXTogYW55IH1cbiAgICB8IG51bGxcbiAgICB8IHVuZGVmaW5lZDtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2tjQ2xhc3NdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIEtjQ2xhc3NEaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgICBwcml2YXRlIGluaXRpYWxDbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHByaXZhdGUgcmF3Q2xhc3M6IE5nQ2xhc3NTdXBwb3J0ZWRUeXBlcztcbiAgICBwcml2YXRlIHJhd0tjQ2xhc3M6IEtjQ2xhc3NTdXBwb3J0ZWRUeXBlcztcblxuICAgIHByaXZhdGUgc3RhdGVNYXAgPSBuZXcgTWFwPHN0cmluZyB8IENsYXNzS2V5LCBDc3NDbGFzc1N0YXRlPigpO1xuICAgIHJlYWRvbmx5ICNyZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHJlYWRvbmx5ICNlbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICByZWFkb25seSAjaG9zdCA9IGluamVjdChDb21wb25lbnRSZWZlcmVuY2UpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjbGFzcycpXG4gICAgc2V0IGtsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5pbml0aWFsQ2xhc3NlcyA9IHZhbHVlICE9IG51bGwgPyB2YWx1ZS50cmltKCkuc3BsaXQoL1xccysvKSA6IFtdO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCduZ0NsYXNzJylcbiAgICBzZXQgbmdDbGFzcyh2YWx1ZTogc3RyaW5nIHwgTmdDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgICAgIHRoaXMucmF3Q2xhc3MgPSB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUudHJpbSgpLnNwbGl0KC9cXHMrLykgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgna2NDbGFzcycpXG4gICAgc2V0IGtjQ2xhc3ModmFsdWU6IENsYXNzS2V5IHwgS2NDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgICAgIHRoaXMucmF3S2NDbGFzcyA9XG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gKHZhbHVlLnRyaW0oKS5zcGxpdCgvXFxzKy8pIGFzIENsYXNzS2V5W10pIDogdmFsdWU7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIHRoaXMuaW5pdGlhbENsYXNzZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKGtsYXNzLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtuZ0NsYXNzXSBiaW5kaW5nXG4gICAgICAgIGNvbnN0IHJhd0NsYXNzID0gdGhpcy5yYXdDbGFzcztcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmF3Q2xhc3MpIHx8IHJhd0NsYXNzIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIHJhd0NsYXNzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKHJhd0NsYXNzICE9IG51bGwpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgT2JqZWN0LmtleXMocmF3Q2xhc3MpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIEJvb2xlYW4ocmF3Q2xhc3Nba2xhc3NdKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtrY0NsYXNzXSBiaW5kaW5nXG4gICAgICAgIGNvbnN0IHJhd0tjQ2xhc3MgPSB0aGlzLnJhd0tjQ2xhc3M7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJhd0tjQ2xhc3MpIHx8IHJhd0tjQ2xhc3MgaW5zdGFuY2VvZiBTZXQpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgcmF3S2NDbGFzcykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKGtsYXNzLCB0cnVlLCB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChyYXdLY0NsYXNzICE9IG51bGwpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgT2JqZWN0LmtleXMocmF3S2NDbGFzcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVTdGF0ZShrbGFzcywgQm9vbGVhbihyYXdLY0NsYXNzW2tsYXNzIGFzIENsYXNzS2V5XSksIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYXBwbHlTdGF0ZURpZmYoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91cGRhdGVTdGF0ZShcbiAgICAgICAga2xhc3M6IHN0cmluZyB8IENsYXNzS2V5LFxuICAgICAgICBuZXh0RW5hYmxlZDogYm9vbGVhbixcbiAgICAgICAga2NDbHN4Q2hlY2sgPSBmYWxzZVxuICAgICkge1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc3RhdGVNYXAuZ2V0KGtsYXNzKTtcbiAgICAgICAgaWYgKHN0YXRlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmIChzdGF0ZS5lbmFibGVkICE9PSBuZXh0RW5hYmxlZCkge1xuICAgICAgICAgICAgICAgIHN0YXRlLmNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHN0YXRlLmVuYWJsZWQgPSBuZXh0RW5hYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0YXRlLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGtsYXNzQ2hlY2tlZCA9IGtsYXNzO1xuICAgICAgICAgICAgaWYgKGtjQ2xzeENoZWNrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZG9Vc2VEZWZhdWx0Q3NzID0gdGhpcy4jaG9zdC5kb1VzZURlZmF1bHRDc3MgPz8gdHJ1ZTtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy4jaG9zdC5jbGFzc2VzO1xuICAgICAgICAgICAgICAgIGNvbnN0IGtjQ2xzeCA9IGdldEtjQ2xzeCh7IGRvVXNlRGVmYXVsdENzcywgY2xhc3NlcyB9KS5rY0Nsc3g7XG4gICAgICAgICAgICAgICAga2xhc3NDaGVja2VkID0ga2NDbHN4KGtsYXNzIGFzIENsYXNzS2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc3RhdGVNYXAuc2V0KGtsYXNzQ2hlY2tlZCwge1xuICAgICAgICAgICAgICAgIGVuYWJsZWQ6IG5leHRFbmFibGVkLFxuICAgICAgICAgICAgICAgIGNoYW5nZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgdG91Y2hlZDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9hcHBseVN0YXRlRGlmZigpIHtcbiAgICAgICAgZm9yIChjb25zdCBzdGF0ZUVudHJ5IG9mIHRoaXMuc3RhdGVNYXApIHtcbiAgICAgICAgICAgIGNvbnN0IGtsYXNzID0gc3RhdGVFbnRyeVswXTtcbiAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gc3RhdGVFbnRyeVsxXTtcblxuICAgICAgICAgICAgaWYgKHN0YXRlLmNoYW5nZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl90b2dnbGVDbGFzcyhrbGFzcywgc3RhdGUuZW5hYmxlZCk7XG4gICAgICAgICAgICAgICAgc3RhdGUuY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICAgICAgfSBlbHNlIGlmICghc3RhdGUudG91Y2hlZCkge1xuICAgICAgICAgICAgICAgIC8vIEEgY2xhc3MgdGhhdCB3YXMgcHJldmlvdXNseSBhY3RpdmUgZ290IHJlbW92ZWQgZnJvbSB0aGUgbmV3IGNvbGxlY3Rpb24gb2YgY2xhc3NlcyAtXG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGZyb20gdGhlIERPTSBhcyB3ZWxsLlxuICAgICAgICAgICAgICAgIGlmIChzdGF0ZS5lbmFibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3RvZ2dsZUNsYXNzKGtsYXNzLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGVNYXAuZGVsZXRlKGtsYXNzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3RhdGUudG91Y2hlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdG9nZ2xlQ2xhc3Moa2xhc3M6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Yga2xhc3MgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBgTmdDbGFzcyBjYW4gb25seSB0b2dnbGUgQ1NTIGNsYXNzZXMgZXhwcmVzc2VkIGFzIHN0cmluZ3MsIGdvdCAke3N0cmluZ2lmeShrbGFzcyl9YFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBrbGFzcyA9IGtsYXNzLnRyaW0oKTtcbiAgICAgICAgaWYgKGtsYXNzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGtsYXNzLnNwbGl0KC9cXHMrLykuZm9yRWFjaChrbGFzcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGVuYWJsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4jcmVuZGVyZXIuYWRkQ2xhc3ModGhpcy4jZWwubmF0aXZlRWxlbWVudCwga2xhc3MpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuI2VsLm5hdGl2ZUVsZW1lbnQsIGtsYXNzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1kaXJlY3RpdmVzLWtjLWNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2RpcmVjdGl2ZXMva2MtY2xhc3Mva2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1kaXJlY3RpdmVzLWtjLWNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './kc-class.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dpbi9kaXJlY3RpdmVzL2tjLWNsYXNzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4va2MtY2xhc3MuZGlyZWN0aXZlJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9sb2dpbi9pMThuL2kxOG4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJpY0kxOG5fbm9Kc3ggfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9pMThuL25vSnN4L0dlbmVyaWNJMThuX25vSnN4JztcbmltcG9ydCB7IHR5cGUgTWVzc2FnZUtleSBhcyBNZXNzYWdlS2V5X2RlZmF1bHRTZXQgfSBmcm9tICdrZXljbG9ha2lmeS9sb2dpbi9pMThuL21lc3NhZ2VzX2RlZmF1bHRTZXQvdHlwZXMnO1xuLyoqIElOVEVSTkFMOiBETyBOT1QgSU1QT1JUIFRISVMgKi9cbmV4cG9ydCB0eXBlIEkxOG4gPSBHZW5lcmljSTE4bl9ub0pzeDxNZXNzYWdlS2V5X2RlZmF1bHRTZXQsIHN0cmluZz47XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1pMThuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xvZ2luL2kxOG4va2V5Y2xvYWtpZnktYW5ndWxhci1sb2dpbi1pMThuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './i18n';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9sb2dpbi9pMThuL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2kxOG4nO1xuIl19