@keycloakify/angular 20.1.12 → 21.0.0-rc.2

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 (318) hide show
  1. package/bin/187.index.js +31 -34
  2. package/bin/{247.index.js → 343.index.js} +362 -233
  3. package/bin/476.index.js +28 -48
  4. package/bin/671.index.js +169 -192
  5. package/bin/942.index.js +180 -200
  6. package/bin/index.js +17 -71
  7. package/fesm2022/keycloakify-angular-account-DefaultPage.mjs +16 -7
  8. package/fesm2022/keycloakify-angular-account-DefaultPage.mjs.map +1 -1
  9. package/fesm2022/keycloakify-angular-account-classes-component-reference.mjs +2 -0
  10. package/fesm2022/keycloakify-angular-account-classes-component-reference.mjs.map +1 -1
  11. package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs +4 -3
  12. package/fesm2022/keycloakify-angular-account-directives-kc-class.mjs.map +1 -1
  13. package/fesm2022/keycloakify-angular-account-pages-account.mjs +3 -3
  14. package/fesm2022/keycloakify-angular-account-pages-account.mjs.map +1 -1
  15. package/fesm2022/keycloakify-angular-account-pages-applications.mjs +3 -3
  16. package/fesm2022/keycloakify-angular-account-pages-applications.mjs.map +1 -1
  17. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs +3 -3
  18. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs.map +1 -1
  19. package/fesm2022/keycloakify-angular-account-pages-log.mjs +3 -3
  20. package/fesm2022/keycloakify-angular-account-pages-log.mjs.map +1 -1
  21. package/fesm2022/keycloakify-angular-account-pages-password.mjs +10 -10
  22. package/fesm2022/keycloakify-angular-account-pages-password.mjs.map +1 -1
  23. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs +3 -3
  24. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs.map +1 -1
  25. package/fesm2022/keycloakify-angular-account-pages-totp.mjs +3 -3
  26. package/fesm2022/keycloakify-angular-account-pages-totp.mjs.map +1 -1
  27. package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs.map +1 -1
  28. package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs +4 -3
  29. package/fesm2022/keycloakify-angular-account-services-account-resource-injector.mjs.map +1 -1
  30. package/fesm2022/keycloakify-angular-account-services-i18n.mjs +3 -3
  31. package/fesm2022/keycloakify-angular-account-services-i18n.mjs.map +1 -1
  32. package/fesm2022/keycloakify-angular-account-template.mjs +7 -6
  33. package/fesm2022/keycloakify-angular-account-template.mjs.map +1 -1
  34. package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs +4 -4
  35. package/fesm2022/keycloakify-angular-lib-directives-attributes.mjs.map +1 -1
  36. package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs +3 -3
  37. package/fesm2022/keycloakify-angular-lib-pipes-input-type.mjs.map +1 -1
  38. package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +3 -3
  39. package/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs.map +1 -1
  40. package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs +3 -3
  41. package/fesm2022/keycloakify-angular-lib-pipes-kc-sanitize.mjs.map +1 -1
  42. package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs +3 -3
  43. package/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs.map +1 -1
  44. package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs +3 -3
  45. package/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs.map +1 -1
  46. package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs +4 -3
  47. package/fesm2022/keycloakify-angular-lib-services-resource-injector.mjs.map +1 -1
  48. package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs +8 -8
  49. package/fesm2022/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.mjs.map +1 -1
  50. package/fesm2022/keycloakify-angular-login-components-field-errors.mjs +6 -6
  51. package/fesm2022/keycloakify-angular-login-components-field-errors.mjs.map +1 -1
  52. package/fesm2022/keycloakify-angular-login-components-group-label.mjs +6 -6
  53. package/fesm2022/keycloakify-angular-login-components-group-label.mjs.map +1 -1
  54. package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs +8 -7
  55. package/fesm2022/keycloakify-angular-login-components-input-field-by-type.mjs.map +1 -1
  56. package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs +8 -8
  57. package/fesm2022/keycloakify-angular-login-components-input-tag-selects.mjs.map +1 -1
  58. package/fesm2022/keycloakify-angular-login-components-input-tag.mjs +10 -9
  59. package/fesm2022/keycloakify-angular-login-components-input-tag.mjs.map +1 -1
  60. package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs +3 -3
  61. package/fesm2022/keycloakify-angular-login-components-logout-other-sessions.mjs.map +1 -1
  62. package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs +5 -5
  63. package/fesm2022/keycloakify-angular-login-components-password-wrapper.mjs.map +1 -1
  64. package/fesm2022/keycloakify-angular-login-components-select-tag.mjs +8 -8
  65. package/fesm2022/keycloakify-angular-login-components-select-tag.mjs.map +1 -1
  66. package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs +6 -6
  67. package/fesm2022/keycloakify-angular-login-components-textarea-tag.mjs.map +1 -1
  68. package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs +3 -3
  69. package/fesm2022/keycloakify-angular-login-components-user-profile-form-fields.mjs.map +1 -1
  70. package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs +3 -3
  71. package/fesm2022/keycloakify-angular-login-directives-kc-class.mjs.map +1 -1
  72. package/fesm2022/keycloakify-angular-login-pages-code.mjs +6 -6
  73. package/fesm2022/keycloakify-angular-login-pages-code.mjs.map +1 -1
  74. package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs +6 -6
  75. package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs.map +1 -1
  76. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs +6 -6
  77. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs.map +1 -1
  78. package/fesm2022/keycloakify-angular-login-pages-error.mjs +6 -6
  79. package/fesm2022/keycloakify-angular-login-pages-error.mjs.map +1 -1
  80. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs +7 -7
  81. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs.map +1 -1
  82. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs +8 -8
  83. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs.map +1 -1
  84. package/fesm2022/keycloakify-angular-login-pages-info.mjs +6 -6
  85. package/fesm2022/keycloakify-angular-login-pages-info.mjs.map +1 -1
  86. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs +6 -6
  87. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs.map +1 -1
  88. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +6 -6
  89. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs.map +1 -1
  90. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +6 -6
  91. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs.map +1 -1
  92. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs +6 -6
  93. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs.map +1 -1
  94. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs +6 -6
  95. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs.map +1 -1
  96. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +6 -6
  97. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs.map +1 -1
  98. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs +6 -6
  99. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs.map +1 -1
  100. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs +6 -6
  101. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs.map +1 -1
  102. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +6 -6
  103. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs.map +1 -1
  104. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs +7 -7
  105. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs.map +1 -1
  106. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +7 -7
  107. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs.map +1 -1
  108. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +6 -6
  109. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs.map +1 -1
  110. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs +6 -6
  111. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs.map +1 -1
  112. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs +6 -6
  113. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs.map +1 -1
  114. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs +6 -6
  115. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs.map +1 -1
  116. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs +9 -8
  117. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs.map +1 -1
  118. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs +7 -7
  119. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs.map +1 -1
  120. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs +6 -6
  121. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs.map +1 -1
  122. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs +6 -6
  123. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs.map +1 -1
  124. package/fesm2022/keycloakify-angular-login-pages-login.mjs +10 -11
  125. package/fesm2022/keycloakify-angular-login-pages-login.mjs.map +1 -1
  126. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs +6 -6
  127. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs.map +1 -1
  128. package/fesm2022/keycloakify-angular-login-pages-register.mjs +10 -9
  129. package/fesm2022/keycloakify-angular-login-pages-register.mjs.map +1 -1
  130. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs +7 -7
  131. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs.map +1 -1
  132. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs +6 -6
  133. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs.map +1 -1
  134. package/fesm2022/keycloakify-angular-login-pages-terms.mjs +6 -6
  135. package/fesm2022/keycloakify-angular-login-pages-terms.mjs.map +1 -1
  136. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs +9 -8
  137. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs.map +1 -1
  138. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs +6 -6
  139. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs.map +1 -1
  140. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs +6 -6
  141. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs.map +1 -1
  142. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs +6 -6
  143. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs.map +1 -1
  144. package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs.map +1 -1
  145. package/fesm2022/keycloakify-angular-login-services-i18n.mjs +3 -3
  146. package/fesm2022/keycloakify-angular-login-services-i18n.mjs.map +1 -1
  147. package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs +3 -3
  148. package/fesm2022/keycloakify-angular-login-services-login-resource-injector.mjs.map +1 -1
  149. package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs +3 -3
  150. package/fesm2022/keycloakify-angular-login-services-user-profile-form.mjs.map +1 -1
  151. package/fesm2022/keycloakify-angular-login-template.mjs +11 -10
  152. package/fesm2022/keycloakify-angular-login-template.mjs.map +1 -1
  153. package/fesm2022/keycloakify-angular-login.mjs +1 -1
  154. package/fesm2022/keycloakify-angular-login.mjs.map +1 -1
  155. package/package.json +98 -98
  156. package/src/account/DefaultPage.ts +30 -23
  157. package/src/account/classes/component-reference/component-reference.class.ts +1 -1
  158. package/src/account/directives/kc-class/kc-class.directive.ts +2 -2
  159. package/src/account/services/account-resource-injector/account-resource-injector.service.ts +1 -1
  160. package/src/account/template/template.component.ts +4 -4
  161. package/src/eslint.config.js +2 -2
  162. package/src/lib/pipes/input-type/input-type.pipe.ts +1 -1
  163. package/src/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.ts +1 -1
  164. package/src/lib/pipes/kc-sanitize/kc-sanitize.pipe.ts +6 -6
  165. package/src/lib/pipes/to-array/to-array.pipe.ts +1 -1
  166. package/src/lib/pipes/to-number/to-number.pipe.ts +1 -1
  167. package/src/lib/services/resource-injector/resource-injector.service.ts +2 -2
  168. package/src/login/components/input-field-by-type/input-field-by-type.component.ts +1 -1
  169. package/src/login/components/input-tag/input-tag.component.ts +1 -1
  170. package/src/login/components/input-tag-selects/input-tag-selects.component.ts +1 -1
  171. package/src/login/components/password-wrapper/password-wrapper.component.ts +1 -1
  172. package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.ts +1 -1
  173. package/src/login/defaultPage.ts +19 -19
  174. package/src/login/directives/kc-class/kc-class.directive.ts +1 -1
  175. package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.ts +1 -1
  176. package/src/login/pages/login/login.component.ts +2 -2
  177. package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.ts +1 -1
  178. package/src/login/pages/login-update-profile/login-update-profile.component.ts +2 -2
  179. package/src/login/pages/register/register.component.ts +4 -4
  180. package/src/login/pages/saml-post-form/saml-post-form.component.ts +10 -1
  181. package/src/login/pages/update-email/update-email.component.ts +2 -2
  182. package/src/login/services/user-profile-form/user-profile-form.service.ts +3 -3
  183. package/src/login/template/template.component.ts +2 -2
  184. package/stories/account/pages/account.stories.ts +1 -1
  185. package/stories/account/pages/applications.stories.ts +1 -1
  186. package/stories/account/pages/federated-identity.stories.ts +1 -1
  187. package/stories/account/pages/log.stories.ts +1 -1
  188. package/stories/account/pages/password.stories.ts +1 -1
  189. package/stories/account/pages/sessions.stories.ts +1 -1
  190. package/stories/account/pages/totp.stories.ts +1 -1
  191. package/stories/login/pages/code.stories.ts +1 -1
  192. package/stories/login/pages/delete-account-confirm.stories.ts +1 -1
  193. package/stories/login/pages/delete-credential.stories.ts +1 -1
  194. package/stories/login/pages/error.stories.ts +1 -1
  195. package/stories/login/pages/frontchannel-logout.stories.ts +1 -1
  196. package/stories/login/pages/idp-review-user-profile.stories.ts +1 -1
  197. package/stories/login/pages/info.stories.ts +1 -1
  198. package/stories/login/pages/login-config-totp.stories.ts +1 -1
  199. package/stories/login/pages/login-idp-link-confirm-override.stories.ts +1 -1
  200. package/stories/login/pages/login-idp-link-confirm.stories.ts +1 -1
  201. package/stories/login/pages/login-idp-link-email.stories.ts +1 -1
  202. package/stories/login/pages/login-oauth-grant.stories.ts +1 -1
  203. package/stories/login/pages/login-oauth2-device-verify-user-code.stories.ts +1 -1
  204. package/stories/login/pages/login-otp.stories.ts +1 -1
  205. package/stories/login/pages/login-page-expired.stories.ts +1 -1
  206. package/stories/login/pages/login-passkeys-conditional-authenticate.stories.ts +1 -1
  207. package/stories/login/pages/login-password.stories.ts +1 -1
  208. package/stories/login/pages/login-recovery-authn-code-config.stories.ts +1 -1
  209. package/stories/login/pages/login-recovery-authn-code-input.stories.ts +1 -1
  210. package/stories/login/pages/login-reset-otp.stories.ts +1 -1
  211. package/stories/login/pages/login-reset-password.stories.ts +1 -1
  212. package/stories/login/pages/login-update-password.stories.ts +1 -1
  213. package/stories/login/pages/login-update-profile.stories.ts +1 -1
  214. package/stories/login/pages/login-username.stories.ts +1 -1
  215. package/stories/login/pages/login-verify-email.stories.ts +1 -1
  216. package/stories/login/pages/login-x509-info.stories.ts +1 -1
  217. package/stories/login/pages/login.stories.ts +1 -1
  218. package/stories/login/pages/logout-confirm.stories.ts +1 -1
  219. package/stories/login/pages/register.stories.ts +2 -2
  220. package/stories/login/pages/saml-post-form.stories.ts +1 -1
  221. package/stories/login/pages/select-authenticator.stories.ts +1 -1
  222. package/stories/login/pages/terms.stories.ts +1 -1
  223. package/stories/login/pages/update-email.stories.ts +1 -1
  224. package/stories/login/pages/webauthn-authenticate.stories.ts +1 -1
  225. package/stories/login/pages/webauthn-error.stories.ts +1 -1
  226. package/stories/login/pages/webauthn-register.stories.ts +1 -1
  227. package/{account/DefaultPage/index.d.ts → types/keycloakify-angular-account-DefaultPage.d.ts} +1 -1
  228. /package/{account/KcContext/index.d.ts → types/keycloakify-angular-account-KcContext.d.ts} +0 -0
  229. /package/{account/classes/component-reference/index.d.ts → types/keycloakify-angular-account-classes-component-reference.d.ts} +0 -0
  230. /package/{account/directives/kc-class/index.d.ts → types/keycloakify-angular-account-directives-kc-class.d.ts} +0 -0
  231. /package/{account/i18n/index.d.ts → types/keycloakify-angular-account-i18n.d.ts} +0 -0
  232. /package/{account/pages/account/index.d.ts → types/keycloakify-angular-account-pages-account.d.ts} +0 -0
  233. /package/{account/pages/applications/index.d.ts → types/keycloakify-angular-account-pages-applications.d.ts} +0 -0
  234. /package/{account/pages/federatedIdentity/index.d.ts → types/keycloakify-angular-account-pages-federatedIdentity.d.ts} +0 -0
  235. /package/{account/pages/log/index.d.ts → types/keycloakify-angular-account-pages-log.d.ts} +0 -0
  236. /package/{account/pages/password/index.d.ts → types/keycloakify-angular-account-pages-password.d.ts} +0 -0
  237. /package/{account/pages/sessions/index.d.ts → types/keycloakify-angular-account-pages-sessions.d.ts} +0 -0
  238. /package/{account/pages/totp/index.d.ts → types/keycloakify-angular-account-pages-totp.d.ts} +0 -0
  239. /package/{account/providers/keycloakify-angular/index.d.ts → types/keycloakify-angular-account-providers-keycloakify-angular.d.ts} +0 -0
  240. /package/{account/services/account-resource-injector/index.d.ts → types/keycloakify-angular-account-services-account-resource-injector.d.ts} +0 -0
  241. /package/{account/services/i18n/index.d.ts → types/keycloakify-angular-account-services-i18n.d.ts} +0 -0
  242. /package/{account/template/index.d.ts → types/keycloakify-angular-account-template.d.ts} +0 -0
  243. /package/{account/tokens/classes/index.d.ts → types/keycloakify-angular-account-tokens-classes.d.ts} +0 -0
  244. /package/{account/tokens/i18n/index.d.ts → types/keycloakify-angular-account-tokens-i18n.d.ts} +0 -0
  245. /package/{account/tokens/kc-context/index.d.ts → types/keycloakify-angular-account-tokens-kc-context.d.ts} +0 -0
  246. /package/{account/index.d.ts → types/keycloakify-angular-account.d.ts} +0 -0
  247. /package/{lib/directives/attributes/index.d.ts → types/keycloakify-angular-lib-directives-attributes.d.ts} +0 -0
  248. /package/{lib/models/script/index.d.ts → types/keycloakify-angular-lib-models-script.d.ts} +0 -0
  249. /package/{lib/pipes/input-type/index.d.ts → types/keycloakify-angular-lib-pipes-input-type.d.ts} +0 -0
  250. /package/{lib/pipes/is-array-with-empty-object/index.d.ts → types/keycloakify-angular-lib-pipes-is-array-with-empty-object.d.ts} +0 -0
  251. /package/{lib/pipes/kc-sanitize/index.d.ts → types/keycloakify-angular-lib-pipes-kc-sanitize.d.ts} +0 -0
  252. /package/{lib/pipes/to-array/index.d.ts → types/keycloakify-angular-lib-pipes-to-array.d.ts} +0 -0
  253. /package/{lib/pipes/to-number/index.d.ts → types/keycloakify-angular-lib-pipes-to-number.d.ts} +0 -0
  254. /package/{lib/services/resource-injector/index.d.ts → types/keycloakify-angular-lib-services-resource-injector.d.ts} +0 -0
  255. /package/{lib/tokens/use-default-css/index.d.ts → types/keycloakify-angular-lib-tokens-use-default-css.d.ts} +0 -0
  256. /package/{lib/index.d.ts → types/keycloakify-angular-lib.d.ts} +0 -0
  257. /package/{login/KcContext/index.d.ts → types/keycloakify-angular-login-KcContext.d.ts} +0 -0
  258. /package/{login/classes/component-reference/index.d.ts → types/keycloakify-angular-login-classes-component-reference.d.ts} +0 -0
  259. /package/{login/components/add-remove-buttons-multi-valued-attribute/index.d.ts → types/keycloakify-angular-login-components-add-remove-buttons-multi-valued-attribute.d.ts} +0 -0
  260. /package/{login/components/field-errors/index.d.ts → types/keycloakify-angular-login-components-field-errors.d.ts} +0 -0
  261. /package/{login/components/group-label/index.d.ts → types/keycloakify-angular-login-components-group-label.d.ts} +0 -0
  262. /package/{login/components/input-field-by-type/index.d.ts → types/keycloakify-angular-login-components-input-field-by-type.d.ts} +0 -0
  263. /package/{login/components/input-tag-selects/index.d.ts → types/keycloakify-angular-login-components-input-tag-selects.d.ts} +0 -0
  264. /package/{login/components/input-tag/index.d.ts → types/keycloakify-angular-login-components-input-tag.d.ts} +0 -0
  265. /package/{login/components/logout-other-sessions/index.d.ts → types/keycloakify-angular-login-components-logout-other-sessions.d.ts} +0 -0
  266. /package/{login/components/password-wrapper/index.d.ts → types/keycloakify-angular-login-components-password-wrapper.d.ts} +0 -0
  267. /package/{login/components/select-tag/index.d.ts → types/keycloakify-angular-login-components-select-tag.d.ts} +0 -0
  268. /package/{login/components/textarea-tag/index.d.ts → types/keycloakify-angular-login-components-textarea-tag.d.ts} +0 -0
  269. /package/{login/components/user-profile-form-fields/index.d.ts → types/keycloakify-angular-login-components-user-profile-form-fields.d.ts} +0 -0
  270. /package/{login/directives/kc-class/index.d.ts → types/keycloakify-angular-login-directives-kc-class.d.ts} +0 -0
  271. /package/{login/i18n/index.d.ts → types/keycloakify-angular-login-i18n.d.ts} +0 -0
  272. /package/{login/pages/code/index.d.ts → types/keycloakify-angular-login-pages-code.d.ts} +0 -0
  273. /package/{login/pages/delete-account-confirm/index.d.ts → types/keycloakify-angular-login-pages-delete-account-confirm.d.ts} +0 -0
  274. /package/{login/pages/delete-credential/index.d.ts → types/keycloakify-angular-login-pages-delete-credential.d.ts} +0 -0
  275. /package/{login/pages/error/index.d.ts → types/keycloakify-angular-login-pages-error.d.ts} +0 -0
  276. /package/{login/pages/frontchannel-logout/index.d.ts → types/keycloakify-angular-login-pages-frontchannel-logout.d.ts} +0 -0
  277. /package/{login/pages/idp-review-user-profile/index.d.ts → types/keycloakify-angular-login-pages-idp-review-user-profile.d.ts} +0 -0
  278. /package/{login/pages/info/index.d.ts → types/keycloakify-angular-login-pages-info.d.ts} +0 -0
  279. /package/{login/pages/login-config-totp/index.d.ts → types/keycloakify-angular-login-pages-login-config-totp.d.ts} +0 -0
  280. /package/{login/pages/login-idp-link-confirm-override/index.d.ts → types/keycloakify-angular-login-pages-login-idp-link-confirm-override.d.ts} +0 -0
  281. /package/{login/pages/login-idp-link-confirm/index.d.ts → types/keycloakify-angular-login-pages-login-idp-link-confirm.d.ts} +0 -0
  282. /package/{login/pages/login-idp-link-email/index.d.ts → types/keycloakify-angular-login-pages-login-idp-link-email.d.ts} +0 -0
  283. /package/{login/pages/login-oauth-grant/index.d.ts → types/keycloakify-angular-login-pages-login-oauth-grant.d.ts} +0 -0
  284. /package/{login/pages/login-oauth2-device-verify-user-code/index.d.ts → types/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.d.ts} +0 -0
  285. /package/{login/pages/login-otp/index.d.ts → types/keycloakify-angular-login-pages-login-otp.d.ts} +0 -0
  286. /package/{login/pages/login-page-expired/index.d.ts → types/keycloakify-angular-login-pages-login-page-expired.d.ts} +0 -0
  287. /package/{login/pages/login-passkeys-conditional-authenticate/index.d.ts → types/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.d.ts} +0 -0
  288. /package/{login/pages/login-password/index.d.ts → types/keycloakify-angular-login-pages-login-password.d.ts} +0 -0
  289. /package/{login/pages/login-recovery-authn-code-config/index.d.ts → types/keycloakify-angular-login-pages-login-recovery-authn-code-config.d.ts} +0 -0
  290. /package/{login/pages/login-recovery-authn-code-input/index.d.ts → types/keycloakify-angular-login-pages-login-recovery-authn-code-input.d.ts} +0 -0
  291. /package/{login/pages/login-reset-otp/index.d.ts → types/keycloakify-angular-login-pages-login-reset-otp.d.ts} +0 -0
  292. /package/{login/pages/login-reset-password/index.d.ts → types/keycloakify-angular-login-pages-login-reset-password.d.ts} +0 -0
  293. /package/{login/pages/login-update-password/index.d.ts → types/keycloakify-angular-login-pages-login-update-password.d.ts} +0 -0
  294. /package/{login/pages/login-update-profile/index.d.ts → types/keycloakify-angular-login-pages-login-update-profile.d.ts} +0 -0
  295. /package/{login/pages/login-username/index.d.ts → types/keycloakify-angular-login-pages-login-username.d.ts} +0 -0
  296. /package/{login/pages/login-verify-email/index.d.ts → types/keycloakify-angular-login-pages-login-verify-email.d.ts} +0 -0
  297. /package/{login/pages/login-x509-info/index.d.ts → types/keycloakify-angular-login-pages-login-x509-info.d.ts} +0 -0
  298. /package/{login/pages/login/index.d.ts → types/keycloakify-angular-login-pages-login.d.ts} +0 -0
  299. /package/{login/pages/logout-confirm/index.d.ts → types/keycloakify-angular-login-pages-logout-confirm.d.ts} +0 -0
  300. /package/{login/pages/register/index.d.ts → types/keycloakify-angular-login-pages-register.d.ts} +0 -0
  301. /package/{login/pages/saml-post-form/index.d.ts → types/keycloakify-angular-login-pages-saml-post-form.d.ts} +0 -0
  302. /package/{login/pages/select-authenticator/index.d.ts → types/keycloakify-angular-login-pages-select-authenticator.d.ts} +0 -0
  303. /package/{login/pages/terms/index.d.ts → types/keycloakify-angular-login-pages-terms.d.ts} +0 -0
  304. /package/{login/pages/update-email/index.d.ts → types/keycloakify-angular-login-pages-update-email.d.ts} +0 -0
  305. /package/{login/pages/webauthn-authenticate/index.d.ts → types/keycloakify-angular-login-pages-webauthn-authenticate.d.ts} +0 -0
  306. /package/{login/pages/webauthn-error/index.d.ts → types/keycloakify-angular-login-pages-webauthn-error.d.ts} +0 -0
  307. /package/{login/pages/webauthn-register/index.d.ts → types/keycloakify-angular-login-pages-webauthn-register.d.ts} +0 -0
  308. /package/{login/providers/keycloakify-angular/index.d.ts → types/keycloakify-angular-login-providers-keycloakify-angular.d.ts} +0 -0
  309. /package/{login/services/i18n/index.d.ts → types/keycloakify-angular-login-services-i18n.d.ts} +0 -0
  310. /package/{login/services/login-resource-injector/index.d.ts → types/keycloakify-angular-login-services-login-resource-injector.d.ts} +0 -0
  311. /package/{login/services/user-profile-form/index.d.ts → types/keycloakify-angular-login-services-user-profile-form.d.ts} +0 -0
  312. /package/{login/template/index.d.ts → types/keycloakify-angular-login-template.d.ts} +0 -0
  313. /package/{login/tokens/classes/index.d.ts → types/keycloakify-angular-login-tokens-classes.d.ts} +0 -0
  314. /package/{login/tokens/i18n/index.d.ts → types/keycloakify-angular-login-tokens-i18n.d.ts} +0 -0
  315. /package/{login/tokens/kc-context/index.d.ts → types/keycloakify-angular-login-tokens-kc-context.d.ts} +0 -0
  316. /package/{login/tokens/make-user-confirm-password/index.d.ts → types/keycloakify-angular-login-tokens-make-user-confirm-password.d.ts} +0 -0
  317. /package/{login/index.d.ts → types/keycloakify-angular-login.d.ts} +0 -0
  318. /package/{index.d.ts → types/keycloakify-angular.d.ts} +0 -0
@@ -17,9 +17,9 @@ class InfoComponent extends ComponentReference {
17
17
  this.displayRequiredFields = false;
18
18
  this.displayInfo = false;
19
19
  this.displayMessage = false;
20
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
21
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
22
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
20
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
21
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
22
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
23
23
  }
24
24
  get infoMessage() {
25
25
  let html = this.kcContext.message.summary;
@@ -30,15 +30,15 @@ class InfoComponent extends ComponentReference {
30
30
  }
31
31
  return html;
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: InfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: InfoComponent, isStandalone: true, selector: "kc-info", providers: [
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: InfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: InfoComponent, isStandalone: true, selector: "kc-info", providers: [
35
35
  {
36
36
  provide: ComponentReference,
37
37
  useExisting: forwardRef(() => InfoComponent)
38
38
  }
39
39
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n\n<ng-template #headerNode>\n @let messageHeader = kcContext.messageHeader;\n @let message = kcContext.message;\n <span [innerHTML]=\"messageHeader ?? i18n.advancedMsgStr(message.summary) | kcSanitize: 'html'\"> </span>\n</ng-template>\n<div id=\"kc-info-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"infoMessage | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink) {\n @if (pageRedirectUri) {\n <p>\n <a\n [href]=\"pageRedirectUri\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (actionUri) {\n <p>\n <a\n [href]=\"actionUri\"\n [innerHTML]=\"i18n.msgStr('proceedWithAction') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (client.baseUrl) {\n <p>\n <a\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n }\n</div>\n", dependencies: [{ kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: InfoComponent, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: InfoComponent, decorators: [{
42
42
  type: Component,
43
43
  args: [{ imports: [KcSanitizePipe], selector: 'kc-info', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
44
44
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-info.mjs","sources":["../../src/login/pages/info/info.component.ts","../../src/login/pages/info/info.component.html","../../src/login/pages/info/keycloakify-angular-login-pages-info.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcSanitizePipe],\n selector: 'kc-info',\n templateUrl: 'info.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => InfoComponent)\n }\n ]\n})\nexport class InfoComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'info.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n\n get infoMessage() {\n let html = this.kcContext.message.summary;\n if (this.kcContext.requiredActions) {\n html += '<b>';\n\n html += this.kcContext.requiredActions.map(requiredAction => this.i18n.advancedMsgStr(`requiredAction.${requiredAction}`)).join(', ');\n\n html += '</b>';\n }\n return html;\n }\n}\n","@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n\n<ng-template #headerNode>\n @let messageHeader = kcContext.messageHeader;\n @let message = kcContext.message;\n <span [innerHTML]=\"messageHeader ?? i18n.advancedMsgStr(message.summary) | kcSanitize: 'html'\"> </span>\n</ng-template>\n<div id=\"kc-info-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"infoMessage | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink) {\n @if (pageRedirectUri) {\n <p>\n <a\n [href]=\"pageRedirectUri\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (actionUri) {\n <p>\n <a\n [href]=\"actionUri\"\n [innerHTML]=\"i18n.msgStr('proceedWithAction') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (client.baseUrl) {\n <p>\n <a\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-info.mjs","sources":["../../src/login/pages/info/info.component.ts","../../src/login/pages/info/info.component.html","../../src/login/pages/info/keycloakify-angular-login-pages-info.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcSanitizePipe],\n selector: 'kc-info',\n templateUrl: 'info.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => InfoComponent)\n }\n ]\n})\nexport class InfoComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'info.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n\n get infoMessage() {\n let html = this.kcContext.message.summary;\n if (this.kcContext.requiredActions) {\n html += '<b>';\n\n html += this.kcContext.requiredActions.map(requiredAction => this.i18n.advancedMsgStr(`requiredAction.${requiredAction}`)).join(', ');\n\n html += '</b>';\n }\n return html;\n }\n}\n","@let skipLink = kcContext.skipLink;\n@let actionUri = kcContext.actionUri;\n@let pageRedirectUri = kcContext.pageRedirectUri;\n@let client = kcContext.client;\n\n<ng-template #headerNode>\n @let messageHeader = kcContext.messageHeader;\n @let message = kcContext.message;\n <span [innerHTML]=\"messageHeader ?? i18n.advancedMsgStr(message.summary) | kcSanitize: 'html'\"> </span>\n</ng-template>\n<div id=\"kc-info-message\">\n <p\n class=\"instruction\"\n [innerHTML]=\"infoMessage | kcSanitize: 'html'\"\n ></p>\n @if (!skipLink) {\n @if (pageRedirectUri) {\n <p>\n <a\n [href]=\"pageRedirectUri\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (actionUri) {\n <p>\n <a\n [href]=\"actionUri\"\n [innerHTML]=\"i18n.msgStr('proceedWithAction') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n } @else if (client.baseUrl) {\n <p>\n <a\n [href]=\"client.baseUrl\"\n [innerHTML]=\"i18n.msgStr('backToApplication') | kcSanitize: 'html'\"\n >\n </a>\n </p>\n }\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -19,19 +19,19 @@ class LoginConfigTotpComponent extends ComponentReference {
19
19
  this.displayRequiredFields = false;
20
20
  this.displayInfo = false;
21
21
  this.displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');
22
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
23
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
24
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
22
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
23
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
24
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
25
25
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginConfigTotpComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: LoginConfigTotpComponent, isStandalone: true, selector: "kc-login-config-totp", providers: [
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginConfigTotpComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: LoginConfigTotpComponent, isStandalone: true, selector: "kc-login-config-totp", providers: [
28
28
  {
29
29
  provide: ComponentReference,
30
30
  useExisting: forwardRef(() => LoginConfigTotpComponent)
31
31
  }
32
32
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let totp = kcContext.totp;\n@let url = kcContext.url;\n@let messagesPerField = kcContext.messagesPerField;\n@let mode = kcContext.mode;\n@let isAppInitiatedAction = kcContext.isAppInitiatedAction;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('loginTotpStep1') }}\n</ng-template>\n<ol id=\"kc-totp-settings\">\n <li>\n <p>{{ i18n.msgStr('loginTotpStep1') }}</p>\n <ul id=\"kc-totp-supported-apps\">\n @for (app of totp.supportedApplications; track app) {\n <li>{{ i18n.advancedMsgStr(app) }}</li>\n }\n </ul>\n </li>\n @if (kcContext.mode === 'manual') {\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep2') }}</p>\n <p>\n <span id=\"kc-totp-secret-key\">{{ totp.totpSecretEncoded }}</span>\n </p>\n <p>\n <a\n id=\"mode-barcode\"\n [href]=\"totp.qrUrl\"\n >\n {{ i18n.msgStr('loginTotpScanBarcode') }}\n </a>\n </p>\n </li>\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep3') }}</p>\n <p></p>\n <ul>\n <li id=\"kc-totp-type\">\n {{ i18n.msgStr('loginTotpType') }}:\n {{ i18n.advancedMsgStr('loginTotp.' + totp.policy.type) }}\n </li>\n <li id=\"kc-totp-algorithm\">\n {{ i18n.msgStr('loginTotpAlgorithm') }}:\n {{ totp.policy.getAlgorithmKey() }}\n </li>\n <li id=\"kc-totp-digits\">{{ i18n.msgStr('loginTotpDigits') }}: {{ totp.policy.digits }}</li>\n @if (totp.policy.type === 'totp') {\n <li id=\"kc-totp-period\">\n {{ i18n.msgStr('loginTotpInterval') }}:\n {{ totp.policy.period }}\n </li>\n } @else {\n <li id=\"kc-totp-counter\">\n {{ i18n.msgStr('loginTotpCounter') }}:\n {{ totp.policy.initialCounter }}\n </li>\n }\n </ul>\n </li>\n } @else {\n <li>\n <p>{{ i18n.msgStr('loginTotpStep2') }}</p>\n <img\n id=\"kc-totp-secret-qr-code\"\n alt=\"Figure: Barcode\"\n [src]=\"'data:image/png;base64, ' + totp.totpSecretQrCode\"\n />\n <br />\n <p>\n <a\n id=\"mode-manual\"\n [href]=\"totp.manualUrl\"\n >\n {{ i18n.msgStr('loginTotpUnableToScan') }}\n </a>\n </p>\n </li>\n }\n <li>\n <p>{{ i18n.msgStr('loginTotpStep3') }}</p>\n <p>{{ i18n.msgStr('loginTotpStep3DeviceName') }}</p>\n </li>\n</ol>\n<form\n id=\"kc-totp-settings-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n [kcClass]=\"'kcFormClass'\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"totp\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('authenticatorCode') }}\n </label>\n <span class=\"required\">*</span>\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"totp\"\n name=\"totp\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('totp')\"\n />\n @if (messagesPerField.existsError('totp')) {\n <span\n id=\"input-error-otp-code\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('totp') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n <input\n type=\"hidden\"\n id=\"totpSecret\"\n name=\"totpSecret\"\n [value]=\"totp.totpSecret\"\n />\n @if (mode) {\n <input\n type=\"hidden\"\n id=\"mode\"\n [value]=\"mode\"\n />\n }\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"userLabel\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('loginTotpDeviceName') }}\n </label>\n @if (totp.otpCredentials.length >= 1) {\n <span class=\"required\">*</span>\n }\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"userLabel\"\n name=\"userLabel\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('userLabel')\"\n />\n @if (messagesPerField.existsError('userLabel')) {\n <span\n id=\"input-error-otp-label\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('userLabel') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <kc-logout-other-sessions />\n </div>\n\n @if (isAppInitiatedAction) {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n <button\n type=\"submit\"\n id=\"cancelTOTPBtn\"\n name=\"cancel-aia\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass', 'kcButtonLargeClass']\"\n [value]=\"true\"\n >\n {{ i18n.msgStr('doCancel') }}\n </button>\n } @else {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n }\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "component", type: LogoutOtherSessionsComponent, selector: "kc-logout-other-sessions" }, { kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
33
  }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginConfigTotpComponent, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginConfigTotpComponent, decorators: [{
35
35
  type: Component,
36
36
  args: [{ imports: [KcClassDirective, KcSanitizePipe, LogoutOtherSessionsComponent], selector: 'kc-login-config-totp', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
37
37
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-config-totp.mjs","sources":["../../src/login/pages/login-config-totp/login-config-totp.component.ts","../../src/login/pages/login-config-totp/login-config-totp.component.html","../../src/login/pages/login-config-totp/keycloakify-angular-login-pages-login-config-totp.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { LogoutOtherSessionsComponent } from '@keycloakify/angular/login/components/logout-other-sessions';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcClassDirective, KcSanitizePipe, LogoutOtherSessionsComponent],\n selector: 'kc-login-config-totp',\n templateUrl: 'login-config-totp.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginConfigTotpComponent)\n }\n ]\n})\nexport class LoginConfigTotpComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-config-totp.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let totp = kcContext.totp;\n@let url = kcContext.url;\n@let messagesPerField = kcContext.messagesPerField;\n@let mode = kcContext.mode;\n@let isAppInitiatedAction = kcContext.isAppInitiatedAction;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('loginTotpStep1') }}\n</ng-template>\n<ol id=\"kc-totp-settings\">\n <li>\n <p>{{ i18n.msgStr('loginTotpStep1') }}</p>\n <ul id=\"kc-totp-supported-apps\">\n @for (app of totp.supportedApplications; track app) {\n <li>{{ i18n.advancedMsgStr(app) }}</li>\n }\n </ul>\n </li>\n @if (kcContext.mode === 'manual') {\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep2') }}</p>\n <p>\n <span id=\"kc-totp-secret-key\">{{ totp.totpSecretEncoded }}</span>\n </p>\n <p>\n <a\n id=\"mode-barcode\"\n [href]=\"totp.qrUrl\"\n >\n {{ i18n.msgStr('loginTotpScanBarcode') }}\n </a>\n </p>\n </li>\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep3') }}</p>\n <p></p>\n <ul>\n <li id=\"kc-totp-type\">\n {{ i18n.msgStr('loginTotpType') }}:\n {{ i18n.advancedMsgStr('loginTotp.' + totp.policy.type) }}\n </li>\n <li id=\"kc-totp-algorithm\">\n {{ i18n.msgStr('loginTotpAlgorithm') }}:\n {{ totp.policy.getAlgorithmKey() }}\n </li>\n <li id=\"kc-totp-digits\">{{ i18n.msgStr('loginTotpDigits') }}: {{ totp.policy.digits }}</li>\n @if (totp.policy.type === 'totp') {\n <li id=\"kc-totp-period\">\n {{ i18n.msgStr('loginTotpInterval') }}:\n {{ totp.policy.period }}\n </li>\n } @else {\n <li id=\"kc-totp-counter\">\n {{ i18n.msgStr('loginTotpCounter') }}:\n {{ totp.policy.initialCounter }}\n </li>\n }\n </ul>\n </li>\n } @else {\n <li>\n <p>{{ i18n.msgStr('loginTotpStep2') }}</p>\n <img\n id=\"kc-totp-secret-qr-code\"\n alt=\"Figure: Barcode\"\n [src]=\"'data:image/png;base64, ' + totp.totpSecretQrCode\"\n />\n <br />\n <p>\n <a\n id=\"mode-manual\"\n [href]=\"totp.manualUrl\"\n >\n {{ i18n.msgStr('loginTotpUnableToScan') }}\n </a>\n </p>\n </li>\n }\n <li>\n <p>{{ i18n.msgStr('loginTotpStep3') }}</p>\n <p>{{ i18n.msgStr('loginTotpStep3DeviceName') }}</p>\n </li>\n</ol>\n<form\n id=\"kc-totp-settings-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n [kcClass]=\"'kcFormClass'\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"totp\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('authenticatorCode') }}\n </label>\n <span class=\"required\">*</span>\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"totp\"\n name=\"totp\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('totp')\"\n />\n @if (messagesPerField.existsError('totp')) {\n <span\n id=\"input-error-otp-code\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('totp') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n <input\n type=\"hidden\"\n id=\"totpSecret\"\n name=\"totpSecret\"\n [value]=\"totp.totpSecret\"\n />\n @if (mode) {\n <input\n type=\"hidden\"\n id=\"mode\"\n [value]=\"mode\"\n />\n }\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"userLabel\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('loginTotpDeviceName') }}\n </label>\n @if (totp.otpCredentials.length >= 1) {\n <span class=\"required\">*</span>\n }\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"userLabel\"\n name=\"userLabel\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('userLabel')\"\n />\n @if (messagesPerField.existsError('userLabel')) {\n <span\n id=\"input-error-otp-label\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('userLabel') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <kc-logout-other-sessions />\n </div>\n\n @if (isAppInitiatedAction) {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n <button\n type=\"submit\"\n id=\"cancelTOTPBtn\"\n name=\"cancel-aia\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass', 'kcButtonLargeClass']\"\n [value]=\"true\"\n >\n {{ i18n.msgStr('doCancel') }}\n </button>\n } @else {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n }\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-config-totp.mjs","sources":["../../src/login/pages/login-config-totp/login-config-totp.component.ts","../../src/login/pages/login-config-totp/login-config-totp.component.html","../../src/login/pages/login-config-totp/keycloakify-angular-login-pages-login-config-totp.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { KcSanitizePipe } from '@keycloakify/angular/lib/pipes/kc-sanitize';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { LogoutOtherSessionsComponent } from '@keycloakify/angular/login/components/logout-other-sessions';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcClassDirective, KcSanitizePipe, LogoutOtherSessionsComponent],\n selector: 'kc-login-config-totp',\n templateUrl: 'login-config-totp.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginConfigTotpComponent)\n }\n ]\n})\nexport class LoginConfigTotpComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-config-totp.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let totp = kcContext.totp;\n@let url = kcContext.url;\n@let messagesPerField = kcContext.messagesPerField;\n@let mode = kcContext.mode;\n@let isAppInitiatedAction = kcContext.isAppInitiatedAction;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('loginTotpStep1') }}\n</ng-template>\n<ol id=\"kc-totp-settings\">\n <li>\n <p>{{ i18n.msgStr('loginTotpStep1') }}</p>\n <ul id=\"kc-totp-supported-apps\">\n @for (app of totp.supportedApplications; track app) {\n <li>{{ i18n.advancedMsgStr(app) }}</li>\n }\n </ul>\n </li>\n @if (kcContext.mode === 'manual') {\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep2') }}</p>\n <p>\n <span id=\"kc-totp-secret-key\">{{ totp.totpSecretEncoded }}</span>\n </p>\n <p>\n <a\n id=\"mode-barcode\"\n [href]=\"totp.qrUrl\"\n >\n {{ i18n.msgStr('loginTotpScanBarcode') }}\n </a>\n </p>\n </li>\n <li>\n <p>{{ i18n.msgStr('loginTotpManualStep3') }}</p>\n <p></p>\n <ul>\n <li id=\"kc-totp-type\">\n {{ i18n.msgStr('loginTotpType') }}:\n {{ i18n.advancedMsgStr('loginTotp.' + totp.policy.type) }}\n </li>\n <li id=\"kc-totp-algorithm\">\n {{ i18n.msgStr('loginTotpAlgorithm') }}:\n {{ totp.policy.getAlgorithmKey() }}\n </li>\n <li id=\"kc-totp-digits\">{{ i18n.msgStr('loginTotpDigits') }}: {{ totp.policy.digits }}</li>\n @if (totp.policy.type === 'totp') {\n <li id=\"kc-totp-period\">\n {{ i18n.msgStr('loginTotpInterval') }}:\n {{ totp.policy.period }}\n </li>\n } @else {\n <li id=\"kc-totp-counter\">\n {{ i18n.msgStr('loginTotpCounter') }}:\n {{ totp.policy.initialCounter }}\n </li>\n }\n </ul>\n </li>\n } @else {\n <li>\n <p>{{ i18n.msgStr('loginTotpStep2') }}</p>\n <img\n id=\"kc-totp-secret-qr-code\"\n alt=\"Figure: Barcode\"\n [src]=\"'data:image/png;base64, ' + totp.totpSecretQrCode\"\n />\n <br />\n <p>\n <a\n id=\"mode-manual\"\n [href]=\"totp.manualUrl\"\n >\n {{ i18n.msgStr('loginTotpUnableToScan') }}\n </a>\n </p>\n </li>\n }\n <li>\n <p>{{ i18n.msgStr('loginTotpStep3') }}</p>\n <p>{{ i18n.msgStr('loginTotpStep3DeviceName') }}</p>\n </li>\n</ol>\n<form\n id=\"kc-totp-settings-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n [kcClass]=\"'kcFormClass'\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"totp\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('authenticatorCode') }}\n </label>\n <span class=\"required\">*</span>\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"totp\"\n name=\"totp\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('totp')\"\n />\n @if (messagesPerField.existsError('totp')) {\n <span\n id=\"input-error-otp-code\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('totp') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n <input\n type=\"hidden\"\n id=\"totpSecret\"\n name=\"totpSecret\"\n [value]=\"totp.totpSecret\"\n />\n @if (mode) {\n <input\n type=\"hidden\"\n id=\"mode\"\n [value]=\"mode\"\n />\n }\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <label\n for=\"userLabel\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('loginTotpDeviceName') }}\n </label>\n @if (totp.otpCredentials.length >= 1) {\n <span class=\"required\">*</span>\n }\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n type=\"text\"\n id=\"userLabel\"\n name=\"userLabel\"\n autocomplete=\"off\"\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('userLabel')\"\n />\n @if (messagesPerField.existsError('userLabel')) {\n <span\n id=\"input-error-otp-label\"\n aria-live=\"polite\"\n [kcClass]=\"'kcInputErrorMessageClass'\"\n [innerHTML]=\"messagesPerField.get('userLabel') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <kc-logout-other-sessions />\n </div>\n\n @if (isAppInitiatedAction) {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n <button\n type=\"submit\"\n id=\"cancelTOTPBtn\"\n name=\"cancel-aia\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass', 'kcButtonLargeClass']\"\n [value]=\"true\"\n >\n {{ i18n.msgStr('doCancel') }}\n </button>\n } @else {\n <input\n type=\"submit\"\n id=\"saveTOTPBtn\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n }\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -13,19 +13,19 @@ class LoginIdpLinkConfirmOverrideComponent extends ComponentReference {
13
13
  this.displayRequiredFields = false;
14
14
  this.displayInfo = false;
15
15
  this.displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');
16
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
17
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
18
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
16
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
17
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
18
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkConfirmOverrideComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.12", type: LoginIdpLinkConfirmOverrideComponent, isStandalone: true, selector: "kc-login-idp-link-confirm-override", providers: [
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkConfirmOverrideComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.1", type: LoginIdpLinkConfirmOverrideComponent, isStandalone: true, selector: "kc-login-idp-link-confirm-override", providers: [
22
22
  {
23
23
  provide: ComponentReference,
24
24
  useExisting: forwardRef(() => LoginIdpLinkConfirmOverrideComponent)
25
25
  }
26
26
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n@let idpDisplayName = kcContext.idpDisplayName;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmOverrideIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n {{ i18n.msgStr('pageExpiredMsg1') }}\n <a\n id=\"loginRestartLink\"\n [href]=\"url.loginRestartFlowUrl\"\n >\n {{ i18n.msgStr('doClickHere') }}\n </a>\n <br />\n <br />\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"confirmOverride\"\n value=\"confirmOverride\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmOverrideIdpContinue', idpDisplayName) }}\n </button>\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkConfirmOverrideComponent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkConfirmOverrideComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ imports: [KcClassDirective], selector: 'kc-login-idp-link-confirm-override', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
31
31
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs","sources":["../../src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts","../../src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.html","../../src/login/pages/login-idp-link-confirm-override/keycloakify-angular-login-pages-login-idp-link-confirm-override.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-idp-link-confirm-override',\n templateUrl: 'login-idp-link-confirm-override.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkConfirmOverrideComponent)\n }\n ]\n})\nexport class LoginIdpLinkConfirmOverrideComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-confirm-override.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n@let idpDisplayName = kcContext.idpDisplayName;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmOverrideIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n {{ i18n.msgStr('pageExpiredMsg1') }}\n <a\n id=\"loginRestartLink\"\n [href]=\"url.loginRestartFlowUrl\"\n >\n {{ i18n.msgStr('doClickHere') }}\n </a>\n <br />\n <br />\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"confirmOverride\"\n value=\"confirmOverride\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmOverrideIdpContinue', idpDisplayName) }}\n </button>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs","sources":["../../src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts","../../src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.html","../../src/login/pages/login-idp-link-confirm-override/keycloakify-angular-login-pages-login-idp-link-confirm-override.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-idp-link-confirm-override',\n templateUrl: 'login-idp-link-confirm-override.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkConfirmOverrideComponent)\n }\n ]\n})\nexport class LoginIdpLinkConfirmOverrideComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-confirm-override.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n@let idpDisplayName = kcContext.idpDisplayName;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmOverrideIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n {{ i18n.msgStr('pageExpiredMsg1') }}\n <a\n id=\"loginRestartLink\"\n [href]=\"url.loginRestartFlowUrl\"\n >\n {{ i18n.msgStr('doClickHere') }}\n </a>\n <br />\n <br />\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"confirmOverride\"\n value=\"confirmOverride\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmOverrideIdpContinue', idpDisplayName) }}\n </button>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAoBM,MAAO,oCAAqC,SAAQ,kBAAkB,CAAA;AAZ5E,IAAA,WAAA,GAAA;;AAaI,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAwE,gBAAgB,CAAC;AAC3G,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAO,UAAU,CAAC;QAK/B,IAAA,CAAA,qBAAqB,GAAG,KAAK;QAC7B,IAAA,CAAA,WAAW,GAAG,KAAK;AACnB,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC;AAElF,QAAA,IAAA,CAAA,UAAU,GAAG,SAAS,CAA2B,YAAY,wDAAC;AAC9D,QAAA,IAAA,CAAA,QAAQ,GAAG,SAAS,CAA2B,UAAU,sDAAC;AAC1D,QAAA,IAAA,CAAA,mBAAmB,GAAG,SAAS,CAA2B,qBAAqB,iEAAC;AACnF,IAAA;8GAdY,oCAAoC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,SAAA,EAPlC;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,kBAAkB;AAC3B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oCAAoC;AACrE;SACJ,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClBL,0zBA8BA,4CDrBc,gBAAgB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAWjB,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAZhD,SAAS;8BACG,CAAC,gBAAgB,CAAC,EAAA,QAAA,EACjB,oCAAoC,mBAE7B,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,WAAW,EAAE,UAAU,CAAC,0CAA0C;AACrE;AACJ,qBAAA,EAAA,QAAA,EAAA,0zBAAA,EAAA;wEAagD,YAAY,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACd,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACC,qBAAqB,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEjCnF;;AAEG;;;;"}
@@ -13,19 +13,19 @@ class LoginIdpLinkConfirmComponent extends ComponentReference {
13
13
  this.displayRequiredFields = false;
14
14
  this.displayInfo = false;
15
15
  this.displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');
16
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
17
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
18
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
16
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
17
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
18
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.12", type: LoginIdpLinkConfirmComponent, isStandalone: true, selector: "kc-login-idp-link-confirm", providers: [
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.1", type: LoginIdpLinkConfirmComponent, isStandalone: true, selector: "kc-login-idp-link-confirm", providers: [
22
22
  {
23
23
  provide: ComponentReference,
24
24
  useExisting: forwardRef(() => LoginIdpLinkConfirmComponent)
25
25
  }
26
26
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n@let idpAlias = kcContext.idpAlias;\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmLinkIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"updateProfile\"\n value=\"updateProfile\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpReviewProfile') }}\n </button>\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"linkAccount\"\n value=\"linkAccount\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpContinue', idpAlias) }}\n </button>\n </div>\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkConfirmComponent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkConfirmComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ imports: [KcClassDirective], selector: 'kc-login-idp-link-confirm', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
31
31
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-confirm.mjs","sources":["../../src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts","../../src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.html","../../src/login/pages/login-idp-link-confirm/keycloakify-angular-login-pages-login-idp-link-confirm.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-idp-link-confirm',\n templateUrl: 'login-idp-link-confirm.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkConfirmComponent)\n }\n ]\n})\nexport class LoginIdpLinkConfirmComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-confirm.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n@let idpAlias = kcContext.idpAlias;\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmLinkIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"updateProfile\"\n value=\"updateProfile\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpReviewProfile') }}\n </button>\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"linkAccount\"\n value=\"linkAccount\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpContinue', idpAlias) }}\n </button>\n </div>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-confirm.mjs","sources":["../../src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts","../../src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.html","../../src/login/pages/login-idp-link-confirm/keycloakify-angular-login-pages-login-idp-link-confirm.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-idp-link-confirm',\n templateUrl: 'login-idp-link-confirm.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkConfirmComponent)\n }\n ]\n})\nexport class LoginIdpLinkConfirmComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-confirm.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = !this.kcContext.messagesPerField.existsError('totp', 'userLabel');\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n@let idpAlias = kcContext.idpAlias;\n<ng-template #headerNode>\n {{ i18n.msgStr('confirmLinkIdpTitle') }}\n</ng-template>\n<form\n id=\"kc-register-form\"\n method=\"post\"\n [action]=\"url.loginAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"updateProfile\"\n value=\"updateProfile\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpReviewProfile') }}\n </button>\n <button\n type=\"submit\"\n name=\"submitAction\"\n id=\"linkAccount\"\n value=\"linkAccount\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n >\n {{ i18n.msgStr('confirmLinkIdpContinue', idpAlias) }}\n </button>\n </div>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -12,19 +12,19 @@ class LoginIdpLinkEmailComponent extends ComponentReference {
12
12
  this.displayRequiredFields = false;
13
13
  this.displayInfo = false;
14
14
  this.displayMessage = false;
15
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
16
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
17
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
15
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
16
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
17
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
18
18
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkEmailComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.12", type: LoginIdpLinkEmailComponent, isStandalone: true, selector: "kc-login-idp-link-email", providers: [
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkEmailComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.1", type: LoginIdpLinkEmailComponent, isStandalone: true, selector: "kc-login-idp-link-email", providers: [
21
21
  {
22
22
  provide: ComponentReference,
23
23
  useExisting: forwardRef(() => LoginIdpLinkEmailComponent)
24
24
  }
25
25
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let idpAlias = kcContext.idpAlias;\n@let brokerContext = kcContext.brokerContext;\n@let realm = kcContext.realm;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let idpAlias = kcContext.idpAlias;\n {{ i18n.msgStr('emailLinkIdpTitle', idpAlias) }}\n</ng-template>\n<p\n id=\"instruction1\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp1', idpAlias, brokerContext.username, realm.displayName) }}\n</p>\n<p\n id=\"instruction2\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp2') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp3') }}\n</p>\n<p\n id=\"instruction3\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp4') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp5') }}\n</p>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginIdpLinkEmailComponent, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginIdpLinkEmailComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'kc-login-idp-link-email', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
30
30
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-email.mjs","sources":["../../src/login/pages/login-idp-link-email/login-idp-link-email.component.ts","../../src/login/pages/login-idp-link-email/login-idp-link-email.component.html","../../src/login/pages/login-idp-link-email/keycloakify-angular-login-pages-login-idp-link-email.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n selector: 'kc-login-idp-link-email',\n templateUrl: 'login-idp-link-email.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkEmailComponent)\n }\n ]\n})\nexport class LoginIdpLinkEmailComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-email.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let idpAlias = kcContext.idpAlias;\n@let brokerContext = kcContext.brokerContext;\n@let realm = kcContext.realm;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let idpAlias = kcContext.idpAlias;\n {{ i18n.msgStr('emailLinkIdpTitle', idpAlias) }}\n</ng-template>\n<p\n id=\"instruction1\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp1', idpAlias, brokerContext.username, realm.displayName) }}\n</p>\n<p\n id=\"instruction2\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp2') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp3') }}\n</p>\n<p\n id=\"instruction3\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp4') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp5') }}\n</p>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAkBM,MAAO,0BAA2B,SAAQ,kBAAkB,CAAA;AAXlE,IAAA,WAAA,GAAA;;AAYI,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAA6D,gBAAgB,CAAC;AAChG,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAO,UAAU,CAAC;QAK/B,IAAqB,CAAA,qBAAA,GAAG,KAAK;QAC7B,IAAW,CAAA,WAAA,GAAG,KAAK;QACnB,IAAc,CAAA,cAAA,GAAG,KAAK;AAEtB,QAAA,IAAA,CAAA,UAAU,GAAG,SAAS,CAA2B,YAAY,sDAAC;AAC9D,QAAA,IAAA,CAAA,QAAQ,GAAG,SAAS,CAA2B,UAAU,oDAAC;AAC1D,QAAA,IAAA,CAAA,mBAAmB,GAAG,SAAS,CAA2B,qBAAqB,+DAAC;AACnF;+GAdY,0BAA0B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,EAPxB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,kBAAkB;AAC3B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B;AAC3D;AACJ,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChBL,42BA+BA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FDba,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAElB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC;AAC3D;AACJ,qBAAA,EAAA,QAAA,EAAA,42BAAA,EAAA;wEAagD,YAAY,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACd,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACC,qBAAqB,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE/BnF;;AAEG;;;;"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-idp-link-email.mjs","sources":["../../src/login/pages/login-idp-link-email/login-idp-link-email.component.ts","../../src/login/pages/login-idp-link-email/login-idp-link-email.component.html","../../src/login/pages/login-idp-link-email/keycloakify-angular-login-pages-login-idp-link-email.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n selector: 'kc-login-idp-link-email',\n templateUrl: 'login-idp-link-email.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginIdpLinkEmailComponent)\n }\n ]\n})\nexport class LoginIdpLinkEmailComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-idp-link-email.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let idpAlias = kcContext.idpAlias;\n@let brokerContext = kcContext.brokerContext;\n@let realm = kcContext.realm;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let idpAlias = kcContext.idpAlias;\n {{ i18n.msgStr('emailLinkIdpTitle', idpAlias) }}\n</ng-template>\n<p\n id=\"instruction1\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp1', idpAlias, brokerContext.username, realm.displayName) }}\n</p>\n<p\n id=\"instruction2\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp2') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp3') }}\n</p>\n<p\n id=\"instruction3\"\n class=\"instruction\"\n>\n {{ i18n.msgStr('emailLinkIdp4') }}\n <a [href]=\"url.loginAction\">{{ i18n.msgStr('doClickHere') }}</a>\n {{ i18n.msgStr('emailLinkIdp5') }}\n</p>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAkBM,MAAO,0BAA2B,SAAQ,kBAAkB,CAAA;AAXlE,IAAA,WAAA,GAAA;;AAYI,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAA6D,gBAAgB,CAAC;AAChG,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAO,UAAU,CAAC;QAK/B,IAAA,CAAA,qBAAqB,GAAG,KAAK;QAC7B,IAAA,CAAA,WAAW,GAAG,KAAK;QACnB,IAAA,CAAA,cAAc,GAAG,KAAK;AAEtB,QAAA,IAAA,CAAA,UAAU,GAAG,SAAS,CAA2B,YAAY,wDAAC;AAC9D,QAAA,IAAA,CAAA,QAAQ,GAAG,SAAS,CAA2B,UAAU,sDAAC;AAC1D,QAAA,IAAA,CAAA,mBAAmB,GAAG,SAAS,CAA2B,qBAAqB,iEAAC;AACnF,IAAA;8GAdY,0BAA0B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,SAAA,EAPxB;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,kBAAkB;AAC3B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B;AAC3D;AACJ,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChBL,42BA+BA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDba,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,eAAA,EAElB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC;AAC3D;AACJ,qBAAA,EAAA,QAAA,EAAA,42BAAA,EAAA;wEAagD,YAAY,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACd,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CACC,qBAAqB,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE/BnF;;AAEG;;;;"}
@@ -14,19 +14,19 @@ class LoginOauthGrantComponent extends ComponentReference {
14
14
  this.displayRequiredFields = false;
15
15
  this.displayInfo = false;
16
16
  this.displayMessage = false;
17
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
18
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
19
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
17
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
18
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
19
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOauthGrantComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: LoginOauthGrantComponent, isStandalone: true, selector: "kc-login-oauth-grant", providers: [
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOauthGrantComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: LoginOauthGrantComponent, isStandalone: true, selector: "kc-login-oauth-grant", providers: [
23
23
  {
24
24
  provide: ComponentReference,
25
25
  useExisting: forwardRef(() => LoginOauthGrantComponent)
26
26
  }
27
27
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let client = kcContext.client;\n@let oauth = kcContext.oauth;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let client = kcContext.client;\n @if (client.attributes['logoUri']) {\n <img\n alt=\"\"\n [src]=\"client.attributes['logoUri']\"\n />\n }\n <p>\n {{ i18n.msgStr('oauthGrantTitle', client.name ? i18n.advancedMsgStr(client.name) : client.clientId) }}\n </p>\n</ng-template>\n\n<div\n id=\"kc-oauth\"\n class=\"content-area\"\n>\n <h3>{{ i18n.msgStr('oauthGrantRequest') }}</h3>\n <ul>\n @for (clientScope of oauth.clientScopesRequested; track clientScope) {\n <li>\n <span>\n {{ i18n.advancedMsgStr(clientScope.consentScreenText) }}\n @if (clientScope.dynamicScopeParameter) {\n : <b>{{ clientScope.dynamicScopeParameter }}</b>\n }\n </span>\n </li>\n }\n </ul>\n\n @if (client.attributes['policyUri'] || client.attributes['tosUri']) {\n <h3>\n @if (client.name) {\n {{ i18n.msgStr('oauthGrantInformation', i18n.advancedMsgStr(client.name)) }}\n } @else {\n {{ i18n.msgStr('oauthGrantInformation', client.clientId) }}\n }\n @if (client.attributes['policyUri']) {\n {{ i18n.msgStr('oauthGrantReview') }}\n <a\n target=\"_blank\"\n [href]=\"client.attributes['policyUri']\"\n >\n {{ i18n.msgStr('oauthGrantPolicy') }}\n </a>\n }\n </h3>\n }\n <form\n class=\"form-actions\"\n method=\"post\"\n [action]=\"url.oauthAction\"\n >\n <input\n type=\"hidden\"\n name=\"code\"\n [value]=\"oauth.code\"\n />\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div id=\"kc-form-options\">\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div id=\"kc-form-buttons\">\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doYes')\"\n />\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doNo')\"\n />\n </div>\n </div>\n </div>\n </form>\n <div class=\"clearfix\"></div>\n</div>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOauthGrantComponent, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOauthGrantComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ imports: [KcClassDirective], selector: 'kc-login-oauth-grant', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
32
32
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-oauth-grant.mjs","sources":["../../src/login/pages/login-oauth-grant/login-oauth-grant.component.ts","../../src/login/pages/login-oauth-grant/login-oauth-grant.component.html","../../src/login/pages/login-oauth-grant/keycloakify-angular-login-pages-login-oauth-grant.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-oauth-grant',\n templateUrl: 'login-oauth-grant.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginOauthGrantComponent)\n }\n ]\n})\nexport class LoginOauthGrantComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-oauth-grant.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName = 'oauth';\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let client = kcContext.client;\n@let oauth = kcContext.oauth;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let client = kcContext.client;\n @if (client.attributes['logoUri']) {\n <img\n alt=\"\"\n [src]=\"client.attributes['logoUri']\"\n />\n }\n <p>\n {{ i18n.msgStr('oauthGrantTitle', client.name ? i18n.advancedMsgStr(client.name) : client.clientId) }}\n </p>\n</ng-template>\n\n<div\n id=\"kc-oauth\"\n class=\"content-area\"\n>\n <h3>{{ i18n.msgStr('oauthGrantRequest') }}</h3>\n <ul>\n @for (clientScope of oauth.clientScopesRequested; track clientScope) {\n <li>\n <span>\n {{ i18n.advancedMsgStr(clientScope.consentScreenText) }}\n @if (clientScope.dynamicScopeParameter) {\n : <b>{{ clientScope.dynamicScopeParameter }}</b>\n }\n </span>\n </li>\n }\n </ul>\n\n @if (client.attributes['policyUri'] || client.attributes['tosUri']) {\n <h3>\n @if (client.name) {\n {{ i18n.msgStr('oauthGrantInformation', i18n.advancedMsgStr(client.name)) }}\n } @else {\n {{ i18n.msgStr('oauthGrantInformation', client.clientId) }}\n }\n @if (client.attributes['policyUri']) {\n {{ i18n.msgStr('oauthGrantReview') }}\n <a\n target=\"_blank\"\n [href]=\"client.attributes['policyUri']\"\n >\n {{ i18n.msgStr('oauthGrantPolicy') }}\n </a>\n }\n </h3>\n }\n <form\n class=\"form-actions\"\n method=\"post\"\n [action]=\"url.oauthAction\"\n >\n <input\n type=\"hidden\"\n name=\"code\"\n [value]=\"oauth.code\"\n />\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div id=\"kc-form-options\">\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div id=\"kc-form-buttons\">\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doYes')\"\n />\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doNo')\"\n />\n </div>\n </div>\n </div>\n </form>\n <div class=\"clearfix\"></div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-oauth-grant.mjs","sources":["../../src/login/pages/login-oauth-grant/login-oauth-grant.component.ts","../../src/login/pages/login-oauth-grant/login-oauth-grant.component.html","../../src/login/pages/login-oauth-grant/keycloakify-angular-login-pages-login-oauth-grant.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-oauth-grant',\n templateUrl: 'login-oauth-grant.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginOauthGrantComponent)\n }\n ]\n})\nexport class LoginOauthGrantComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-oauth-grant.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n\n documentTitle: string | undefined;\n bodyClassName = 'oauth';\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let client = kcContext.client;\n@let oauth = kcContext.oauth;\n@let url = kcContext.url;\n\n<ng-template #headerNode>\n @let client = kcContext.client;\n @if (client.attributes['logoUri']) {\n <img\n alt=\"\"\n [src]=\"client.attributes['logoUri']\"\n />\n }\n <p>\n {{ i18n.msgStr('oauthGrantTitle', client.name ? i18n.advancedMsgStr(client.name) : client.clientId) }}\n </p>\n</ng-template>\n\n<div\n id=\"kc-oauth\"\n class=\"content-area\"\n>\n <h3>{{ i18n.msgStr('oauthGrantRequest') }}</h3>\n <ul>\n @for (clientScope of oauth.clientScopesRequested; track clientScope) {\n <li>\n <span>\n {{ i18n.advancedMsgStr(clientScope.consentScreenText) }}\n @if (clientScope.dynamicScopeParameter) {\n : <b>{{ clientScope.dynamicScopeParameter }}</b>\n }\n </span>\n </li>\n }\n </ul>\n\n @if (client.attributes['policyUri'] || client.attributes['tosUri']) {\n <h3>\n @if (client.name) {\n {{ i18n.msgStr('oauthGrantInformation', i18n.advancedMsgStr(client.name)) }}\n } @else {\n {{ i18n.msgStr('oauthGrantInformation', client.clientId) }}\n }\n @if (client.attributes['policyUri']) {\n {{ i18n.msgStr('oauthGrantReview') }}\n <a\n target=\"_blank\"\n [href]=\"client.attributes['policyUri']\"\n >\n {{ i18n.msgStr('oauthGrantPolicy') }}\n </a>\n }\n </h3>\n }\n <form\n class=\"form-actions\"\n method=\"post\"\n [action]=\"url.oauthAction\"\n >\n <input\n type=\"hidden\"\n name=\"code\"\n [value]=\"oauth.code\"\n />\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div id=\"kc-form-options\">\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div id=\"kc-form-buttons\">\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doYes')\"\n />\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonDefaultClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doNo')\"\n />\n </div>\n </div>\n </div>\n </form>\n <div class=\"clearfix\"></div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -17,19 +17,19 @@ class LoginOauth2DeviceVerifyUserCodeComponent extends ComponentReference {
17
17
  this.displayRequiredFields = false;
18
18
  this.displayInfo = false;
19
19
  this.displayMessage = false;
20
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
21
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
22
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
20
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
21
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
22
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOauth2DeviceVerifyUserCodeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.12", type: LoginOauth2DeviceVerifyUserCodeComponent, isStandalone: true, selector: "kc-login-oauth2-device-verify-user-code", providers: [
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOauth2DeviceVerifyUserCodeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.1", type: LoginOauth2DeviceVerifyUserCodeComponent, isStandalone: true, selector: "kc-login-oauth2-device-verify-user-code", providers: [
26
26
  {
27
27
  provide: ComponentReference,
28
28
  useExisting: forwardRef(() => LoginOauth2DeviceVerifyUserCodeComponent)
29
29
  }
30
30
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('oauth2DeviceVerificationTitle') }}\n</ng-template>\n<form\n id=\"kc-user-verify-device-user-code-form\"\n method=\"post\"\n [kcClass]=\"'kcFormClass'\"\n [action]=\"url.oauth2DeviceVerificationAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n for=\"device-user-code\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('verifyOAuth2DeviceUserCode') }}\n </label>\n </div>\n\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n id=\"device-user-code\"\n name=\"device_user_code\"\n autocomplete=\"off\"\n type=\"text\"\n autofocus\n [kcClass]=\"'kcInputClass'\"\n />\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n >\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n </div>\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOauth2DeviceVerifyUserCodeComponent, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOauth2DeviceVerifyUserCodeComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{ imports: [KcClassDirective], selector: 'kc-login-oauth2-device-verify-user-code', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
35
35
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs","sources":["../../src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts","../../src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.html","../../src/login/pages/login-oauth2-device-verify-user-code/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-oauth2-device-verify-user-code',\n templateUrl: 'login-oauth2-device-verify-user-code.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginOauth2DeviceVerifyUserCodeComponent)\n }\n ]\n})\nexport class LoginOauth2DeviceVerifyUserCodeComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-oauth2-device-verify-user-code.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('oauth2DeviceVerificationTitle') }}\n</ng-template>\n<form\n id=\"kc-user-verify-device-user-code-form\"\n method=\"post\"\n [kcClass]=\"'kcFormClass'\"\n [action]=\"url.oauth2DeviceVerificationAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n for=\"device-user-code\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('verifyOAuth2DeviceUserCode') }}\n </label>\n </div>\n\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n id=\"device-user-code\"\n name=\"device_user_code\"\n autocomplete=\"off\"\n type=\"text\"\n autofocus\n [kcClass]=\"'kcInputClass'\"\n />\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n >\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n </div>\n </div>\n </div>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs","sources":["../../src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts","../../src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.html","../../src/login/pages/login-oauth2-device-verify-user-code/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, inject, type TemplateRef, viewChild } from '@angular/core';\nimport { USE_DEFAULT_CSS } from '@keycloakify/angular/lib/tokens/use-default-css';\nimport { ComponentReference } from '@keycloakify/angular/login/classes/component-reference';\nimport { KcClassDirective } from '@keycloakify/angular/login/directives/kc-class';\nimport type { I18n } from '@keycloakify/angular/login/i18n';\nimport type { KcContext } from '@keycloakify/angular/login/KcContext';\nimport { LOGIN_CLASSES } from '@keycloakify/angular/login/tokens/classes';\nimport { LOGIN_I18N } from '@keycloakify/angular/login/tokens/i18n';\nimport { KC_LOGIN_CONTEXT } from '@keycloakify/angular/login/tokens/kc-context';\nimport type { ClassKey } from 'keycloakify/login/lib/kcClsx';\n\n@Component({\n imports: [KcClassDirective],\n selector: 'kc-login-oauth2-device-verify-user-code',\n templateUrl: 'login-oauth2-device-verify-user-code.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: ComponentReference,\n useExisting: forwardRef(() => LoginOauth2DeviceVerifyUserCodeComponent)\n }\n ]\n})\nexport class LoginOauth2DeviceVerifyUserCodeComponent extends ComponentReference {\n kcContext = inject<Extract<KcContext, { pageId: 'login-oauth2-device-verify-user-code.ftl' }>>(KC_LOGIN_CONTEXT);\n i18n = inject<I18n>(LOGIN_I18N);\n override doUseDefaultCss = inject<boolean>(USE_DEFAULT_CSS);\n override classes = inject<Partial<Record<ClassKey, string>>>(LOGIN_CLASSES);\n\n documentTitle: string | undefined;\n bodyClassName: string | undefined;\n\n displayRequiredFields = false;\n displayInfo = false;\n displayMessage = false;\n\n headerNode = viewChild<TemplateRef<HTMLElement>>('headerNode');\n infoNode = viewChild<TemplateRef<HTMLElement>>('infoNode');\n socialProvidersNode = viewChild<TemplateRef<HTMLElement>>('socialProvidersNode');\n}\n","@let url = kcContext.url;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('oauth2DeviceVerificationTitle') }}\n</ng-template>\n<form\n id=\"kc-user-verify-device-user-code-form\"\n method=\"post\"\n [kcClass]=\"'kcFormClass'\"\n [action]=\"url.oauth2DeviceVerificationAction\"\n>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n for=\"device-user-code\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('verifyOAuth2DeviceUserCode') }}\n </label>\n </div>\n\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n id=\"device-user-code\"\n name=\"device_user_code\"\n autocomplete=\"off\"\n type=\"text\"\n autofocus\n [kcClass]=\"'kcInputClass'\"\n />\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n >\n <div [kcClass]=\"'kcFormOptionsWrapperClass'\"></div>\n </div>\n\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <div [kcClass]=\"'kcFormButtonsWrapperClass'\">\n <input\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doSubmit')\"\n />\n </div>\n </div>\n </div>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,19 +18,19 @@ class LoginOtpComponent extends ComponentReference {
18
18
  this.displayRequiredFields = false;
19
19
  this.displayInfo = false;
20
20
  this.displayMessage = this.kcContext.messagesPerField.existsError('totp');
21
- this.headerNode = viewChild('headerNode', ...(ngDevMode ? [{ debugName: "headerNode" }] : []));
22
- this.infoNode = viewChild('infoNode', ...(ngDevMode ? [{ debugName: "infoNode" }] : []));
23
- this.socialProvidersNode = viewChild('socialProvidersNode', ...(ngDevMode ? [{ debugName: "socialProvidersNode" }] : []));
21
+ this.headerNode = viewChild('headerNode', { ...(ngDevMode ? { debugName: "headerNode" } : {}) });
22
+ this.infoNode = viewChild('infoNode', { ...(ngDevMode ? { debugName: "infoNode" } : {}) });
23
+ this.socialProvidersNode = viewChild('socialProvidersNode', { ...(ngDevMode ? { debugName: "socialProvidersNode" } : {}) });
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOtpComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.12", type: LoginOtpComponent, isStandalone: true, selector: "kc-login-otp", providers: [
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOtpComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: LoginOtpComponent, isStandalone: true, selector: "kc-login-otp", providers: [
27
27
  {
28
28
  provide: ComponentReference,
29
29
  useExisting: forwardRef(() => LoginOtpComponent)
30
30
  }
31
31
  ], viewQueries: [{ propertyName: "headerNode", first: true, predicate: ["headerNode"], descendants: true, isSignal: true }, { propertyName: "infoNode", first: true, predicate: ["infoNode"], descendants: true, isSignal: true }, { propertyName: "socialProvidersNode", first: true, predicate: ["socialProvidersNode"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@let url = kcContext.url;\n@let otpLogin = kcContext.otpLogin;\n@let messagesPerField = kcContext.messagesPerField;\n\n<ng-template #headerNode>\n {{ i18n.msgStr('doLogIn') }}\n</ng-template>\n<form\n id=\"kc-otp-login-form\"\n method=\"post\"\n [kcClass]=\"['kcFormClass']\"\n [action]=\"url.loginAction\"\n>\n @if (otpLogin.userOtpCredentials.length > 1) {\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcInputWrapperClass'\">\n @for (otpCredential of otpLogin.userOtpCredentials; track otpCredential; let i = $index) {\n <ng-container>\n <input\n type=\"radio\"\n name=\"selectedCredentialId\"\n [id]=\"'kc-otp-credential-' + i\"\n [kcClass]=\"'kcLoginOTPListClass'\"\n [value]=\"otpCredential.id\"\n [checked]=\"otpCredential.id === otpLogin.selectedCredentialId\"\n />\n <label\n [for]=\"'kc-otp-credential-' + i\"\n [kcClass]=\"'kcLoginOTPListClass'\"\n [tabIndex]=\"i\"\n >\n <span [kcClass]=\"'kcLoginOTPListItemHeaderClass'\">\n <span [kcClass]=\"'kcLoginOTPListItemIconBodyClass'\">\n <i\n aria-hidden=\"true\"\n [kcClass]=\"'kcLoginOTPListItemIconClass'\"\n ></i>\n </span>\n <span [kcClass]=\"'kcLoginOTPListItemTitleClass'\">{{ otpCredential.userLabel }}</span>\n </span>\n </label>\n </ng-container>\n }\n </div>\n </div>\n }\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div [kcClass]=\"'kcLabelWrapperClass'\">\n <label\n for=\"otp\"\n [kcClass]=\"'kcLabelClass'\"\n >\n {{ i18n.msgStr('loginOtpOneTime') }}\n </label>\n </div>\n <div [kcClass]=\"'kcInputWrapperClass'\">\n <input\n id=\"otp\"\n name=\"otp\"\n autocomplete=\"off\"\n type=\"text\"\n autofocus\n [kcClass]=\"'kcInputClass'\"\n [attr.aria-invalid]=\"messagesPerField.existsError('totp')\"\n />\n @if (messagesPerField.existsError('totp')) {\n <span\n id=\"input-error-otp-code\"\n aria-live=\"polite\"\n [kcClass]=\"['kcInputErrorMessageClass']\"\n [innerHTML]=\"messagesPerField.get('totp') | kcSanitize: 'html'\"\n ></span>\n }\n </div>\n </div>\n <div [kcClass]=\"'kcFormGroupClass'\">\n <div\n id=\"kc-form-options\"\n [kcClass]=\"'kcFormOptionsClass'\"\n ></div>\n <div\n id=\"kc-form-buttons\"\n [kcClass]=\"'kcFormButtonsClass'\"\n >\n <input\n name=\"login\"\n id=\"kc-login\"\n type=\"submit\"\n [kcClass]=\"['kcButtonClass', 'kcButtonPrimaryClass', 'kcButtonBlockClass', 'kcButtonLargeClass']\"\n [value]=\"i18n.msgStr('doLogIn')\"\n />\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "directive", type: KcClassDirective, selector: "[kcClass]", inputs: ["class", "ngClass", "kcClass"] }, { kind: "pipe", type: KcSanitizePipe, name: "kcSanitize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
32
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginOtpComponent, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: LoginOtpComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{ imports: [KcClassDirective, KcSanitizePipe], selector: 'kc-login-otp', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
36
36
  {