@keycloakify/angular 0.0.1-rc.21 → 0.0.1-rc.23

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 (383) hide show
  1. package/account/account.d.ts +12 -0
  2. package/account/defaultPage.d.ts +3 -0
  3. package/{login/getDefaultPageComponent → account}/index.d.ts +1 -1
  4. package/account/providers/keycloakify-angular/keycloakify-angular.providers.d.ts +1 -1
  5. package/account/public-api.d.ts +1 -0
  6. package/bin/338.index.js +298 -0
  7. package/bin/755.index.js +4928 -0
  8. package/bin/758.index.js +130 -0
  9. package/bin/925.index.js +1713 -0
  10. package/bin/main.js +334 -105
  11. package/esm2022/account/account.mjs +3 -0
  12. package/esm2022/account/defaultPage.mjs +26 -0
  13. package/esm2022/account/keycloakify-angular-account.mjs +5 -0
  14. package/esm2022/account/pages/account/account.component.mjs +2 -3
  15. package/esm2022/account/pages/applications/applications.component.mjs +2 -3
  16. package/esm2022/account/pages/federatedIdentity/federatedIdentity.component.mjs +2 -3
  17. package/esm2022/account/pages/log/log.component.mjs +2 -3
  18. package/esm2022/account/pages/password/password.component.mjs +2 -3
  19. package/esm2022/account/pages/sessions/sessions.component.mjs +2 -3
  20. package/esm2022/account/pages/totp/totp.component.mjs +2 -3
  21. package/esm2022/account/providers/keycloakify-angular/keycloakify-angular.providers.mjs +2 -2
  22. package/esm2022/account/public-api.mjs +2 -0
  23. package/esm2022/login/containers/template/template.component.mjs +4 -10
  24. package/esm2022/login/defaultPage.mjs +77 -0
  25. package/esm2022/login/keycloakify-angular-login.mjs +5 -0
  26. package/esm2022/login/login.mjs +3 -0
  27. package/esm2022/login/pages/code/code.component.mjs +2 -3
  28. package/esm2022/login/pages/delete-account-confirm/delete-account-confirm.component.mjs +1 -1
  29. package/esm2022/login/pages/delete-credential/delete-credential.component.mjs +2 -3
  30. package/esm2022/login/pages/error/error.component.mjs +2 -3
  31. package/esm2022/login/pages/frontchannel-logout/frontchannel-logout.component.mjs +2 -3
  32. package/esm2022/login/pages/idp-review-user-profile/idp-review-user-profile.component.mjs +7 -8
  33. package/esm2022/login/pages/info/info.component.mjs +2 -3
  34. package/esm2022/login/pages/login/login.component.mjs +2 -3
  35. package/esm2022/login/pages/login-config-totp/login-config-totp.component.mjs +2 -3
  36. package/esm2022/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.mjs +2 -3
  37. package/esm2022/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.mjs +2 -3
  38. package/esm2022/login/pages/login-idp-link-email/login-idp-link-email.component.mjs +2 -3
  39. package/esm2022/login/pages/login-oauth-grant/login-oauth-grant.component.mjs +2 -3
  40. package/esm2022/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.mjs +2 -3
  41. package/esm2022/login/pages/login-otp/login-otp.component.mjs +2 -3
  42. package/esm2022/login/pages/login-page-expired/login-page-expired.component.mjs +2 -3
  43. package/esm2022/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.mjs +2 -3
  44. package/esm2022/login/pages/login-password/login-password.component.mjs +2 -3
  45. package/esm2022/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.mjs +2 -3
  46. package/esm2022/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.mjs +2 -3
  47. package/esm2022/login/pages/login-reset-otp/login-reset-otp.component.mjs +2 -3
  48. package/esm2022/login/pages/login-reset-password/login-reset-password.component.mjs +2 -3
  49. package/esm2022/login/pages/login-update-password/login-update-password.component.mjs +2 -3
  50. package/esm2022/login/pages/login-update-profile/login-update-profile.component.mjs +7 -8
  51. package/esm2022/login/pages/login-username/login-username.component.mjs +2 -3
  52. package/esm2022/login/pages/login-verify-email/login-verify-email.component.mjs +2 -3
  53. package/esm2022/login/pages/login-x509-info/login-x509-info.component.mjs +2 -3
  54. package/esm2022/login/pages/logout-confirm/logout-confirm.component.mjs +2 -3
  55. package/esm2022/login/pages/register/register.component.mjs +7 -8
  56. package/esm2022/login/pages/saml-post-form/saml-post-form.component.mjs +2 -3
  57. package/esm2022/login/pages/select-authenticator/select-authenticator.component.mjs +2 -3
  58. package/esm2022/login/pages/terms/terms.component.mjs +2 -3
  59. package/esm2022/login/pages/update-email/update-email.component.mjs +7 -8
  60. package/esm2022/login/pages/webauthn-authenticate/webauthn-authenticate.component.mjs +2 -3
  61. package/esm2022/login/pages/webauthn-error/webauthn-error.component.mjs +2 -3
  62. package/esm2022/login/pages/webauthn-register/webauthn-register.component.mjs +2 -3
  63. package/esm2022/login/providers/keycloakify-angular/keycloakify-angular.providers.mjs +2 -2
  64. package/esm2022/login/public-api.mjs +2 -0
  65. package/fesm2022/keycloakify-angular-account-pages-account.mjs +1 -2
  66. package/fesm2022/keycloakify-angular-account-pages-account.mjs.map +1 -1
  67. package/fesm2022/keycloakify-angular-account-pages-applications.mjs +1 -2
  68. package/fesm2022/keycloakify-angular-account-pages-applications.mjs.map +1 -1
  69. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs +1 -2
  70. package/fesm2022/keycloakify-angular-account-pages-federatedIdentity.mjs.map +1 -1
  71. package/fesm2022/keycloakify-angular-account-pages-log.mjs +1 -2
  72. package/fesm2022/keycloakify-angular-account-pages-log.mjs.map +1 -1
  73. package/fesm2022/keycloakify-angular-account-pages-password.mjs +1 -2
  74. package/fesm2022/keycloakify-angular-account-pages-password.mjs.map +1 -1
  75. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs +1 -2
  76. package/fesm2022/keycloakify-angular-account-pages-sessions.mjs.map +1 -1
  77. package/fesm2022/keycloakify-angular-account-pages-totp.mjs +1 -2
  78. package/fesm2022/keycloakify-angular-account-pages-totp.mjs.map +1 -1
  79. package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs +2 -2
  80. package/fesm2022/keycloakify-angular-account-providers-keycloakify-angular.mjs.map +1 -1
  81. package/fesm2022/keycloakify-angular-account.mjs +34 -0
  82. package/fesm2022/keycloakify-angular-account.mjs.map +1 -0
  83. package/fesm2022/keycloakify-angular-login-containers-template.mjs +3 -9
  84. package/fesm2022/keycloakify-angular-login-containers-template.mjs.map +1 -1
  85. package/fesm2022/keycloakify-angular-login-pages-code.mjs +1 -2
  86. package/fesm2022/keycloakify-angular-login-pages-code.mjs.map +1 -1
  87. package/fesm2022/keycloakify-angular-login-pages-delete-account-confirm.mjs.map +1 -1
  88. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs +1 -2
  89. package/fesm2022/keycloakify-angular-login-pages-delete-credential.mjs.map +1 -1
  90. package/fesm2022/keycloakify-angular-login-pages-error.mjs +1 -2
  91. package/fesm2022/keycloakify-angular-login-pages-error.mjs.map +1 -1
  92. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs +1 -2
  93. package/fesm2022/keycloakify-angular-login-pages-frontchannel-logout.mjs.map +1 -1
  94. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs +6 -7
  95. package/fesm2022/keycloakify-angular-login-pages-idp-review-user-profile.mjs.map +1 -1
  96. package/fesm2022/keycloakify-angular-login-pages-info.mjs +1 -2
  97. package/fesm2022/keycloakify-angular-login-pages-info.mjs.map +1 -1
  98. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs +1 -2
  99. package/fesm2022/keycloakify-angular-login-pages-login-config-totp.mjs.map +1 -1
  100. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs +1 -2
  101. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm-override.mjs.map +1 -1
  102. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs +1 -2
  103. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-confirm.mjs.map +1 -1
  104. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs +1 -2
  105. package/fesm2022/keycloakify-angular-login-pages-login-idp-link-email.mjs.map +1 -1
  106. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs +1 -2
  107. package/fesm2022/keycloakify-angular-login-pages-login-oauth-grant.mjs.map +1 -1
  108. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs +1 -2
  109. package/fesm2022/keycloakify-angular-login-pages-login-oauth2-device-verify-user-code.mjs.map +1 -1
  110. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs +1 -2
  111. package/fesm2022/keycloakify-angular-login-pages-login-otp.mjs.map +1 -1
  112. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs +1 -2
  113. package/fesm2022/keycloakify-angular-login-pages-login-page-expired.mjs.map +1 -1
  114. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs +1 -2
  115. package/fesm2022/keycloakify-angular-login-pages-login-passkeys-conditional-authenticate.mjs.map +1 -1
  116. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs +1 -2
  117. package/fesm2022/keycloakify-angular-login-pages-login-password.mjs.map +1 -1
  118. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs +1 -2
  119. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-config.mjs.map +1 -1
  120. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs +1 -2
  121. package/fesm2022/keycloakify-angular-login-pages-login-recovery-authn-code-input.mjs.map +1 -1
  122. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs +1 -2
  123. package/fesm2022/keycloakify-angular-login-pages-login-reset-otp.mjs.map +1 -1
  124. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs +1 -2
  125. package/fesm2022/keycloakify-angular-login-pages-login-reset-password.mjs.map +1 -1
  126. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs +1 -2
  127. package/fesm2022/keycloakify-angular-login-pages-login-update-password.mjs.map +1 -1
  128. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs +6 -7
  129. package/fesm2022/keycloakify-angular-login-pages-login-update-profile.mjs.map +1 -1
  130. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs +1 -2
  131. package/fesm2022/keycloakify-angular-login-pages-login-username.mjs.map +1 -1
  132. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs +1 -2
  133. package/fesm2022/keycloakify-angular-login-pages-login-verify-email.mjs.map +1 -1
  134. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs +1 -2
  135. package/fesm2022/keycloakify-angular-login-pages-login-x509-info.mjs.map +1 -1
  136. package/fesm2022/keycloakify-angular-login-pages-login.mjs +1 -2
  137. package/fesm2022/keycloakify-angular-login-pages-login.mjs.map +1 -1
  138. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs +1 -2
  139. package/fesm2022/keycloakify-angular-login-pages-logout-confirm.mjs.map +1 -1
  140. package/fesm2022/keycloakify-angular-login-pages-register.mjs +7 -8
  141. package/fesm2022/keycloakify-angular-login-pages-register.mjs.map +1 -1
  142. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs +1 -2
  143. package/fesm2022/keycloakify-angular-login-pages-saml-post-form.mjs.map +1 -1
  144. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs +1 -2
  145. package/fesm2022/keycloakify-angular-login-pages-select-authenticator.mjs.map +1 -1
  146. package/fesm2022/keycloakify-angular-login-pages-terms.mjs +1 -2
  147. package/fesm2022/keycloakify-angular-login-pages-terms.mjs.map +1 -1
  148. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs +6 -7
  149. package/fesm2022/keycloakify-angular-login-pages-update-email.mjs.map +1 -1
  150. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs +1 -2
  151. package/fesm2022/keycloakify-angular-login-pages-webauthn-authenticate.mjs.map +1 -1
  152. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs +1 -2
  153. package/fesm2022/keycloakify-angular-login-pages-webauthn-error.mjs.map +1 -1
  154. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs +1 -2
  155. package/fesm2022/keycloakify-angular-login-pages-webauthn-register.mjs.map +1 -1
  156. package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs +2 -2
  157. package/fesm2022/keycloakify-angular-login-providers-keycloakify-angular.mjs.map +1 -1
  158. package/fesm2022/{keycloakify-angular-login-getDefaultPageComponent.mjs → keycloakify-angular-login.mjs} +3 -1
  159. package/fesm2022/keycloakify-angular-login.mjs.map +1 -0
  160. package/login/containers/template/template.component.d.ts +2 -4
  161. package/login/index.d.ts +5 -0
  162. package/login/login.d.ts +13 -0
  163. package/login/pages/code/code.component.d.ts +1 -1
  164. package/login/pages/delete-account-confirm/delete-account-confirm.component.d.ts +1 -1
  165. package/login/pages/delete-credential/delete-credential.component.d.ts +1 -1
  166. package/login/pages/error/error.component.d.ts +1 -1
  167. package/login/pages/frontchannel-logout/frontchannel-logout.component.d.ts +1 -1
  168. package/login/pages/idp-review-user-profile/idp-review-user-profile.component.d.ts +2 -4
  169. package/login/pages/info/info.component.d.ts +1 -1
  170. package/login/pages/login/login.component.d.ts +1 -1
  171. package/login/pages/login-config-totp/login-config-totp.component.d.ts +1 -1
  172. package/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.d.ts +1 -1
  173. package/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.d.ts +1 -1
  174. package/login/pages/login-idp-link-email/login-idp-link-email.component.d.ts +1 -1
  175. package/login/pages/login-oauth-grant/login-oauth-grant.component.d.ts +1 -1
  176. package/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.d.ts +1 -1
  177. package/login/pages/login-otp/login-otp.component.d.ts +1 -1
  178. package/login/pages/login-page-expired/login-page-expired.component.d.ts +1 -1
  179. package/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.d.ts +1 -1
  180. package/login/pages/login-password/login-password.component.d.ts +1 -1
  181. package/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.d.ts +1 -1
  182. package/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.d.ts +1 -1
  183. package/login/pages/login-reset-otp/login-reset-otp.component.d.ts +1 -1
  184. package/login/pages/login-reset-password/login-reset-password.component.d.ts +1 -1
  185. package/login/pages/login-update-password/login-update-password.component.d.ts +1 -1
  186. package/login/pages/login-update-profile/login-update-profile.component.d.ts +2 -4
  187. package/login/pages/login-username/login-username.component.d.ts +1 -1
  188. package/login/pages/login-verify-email/login-verify-email.component.d.ts +1 -1
  189. package/login/pages/login-x509-info/login-x509-info.component.d.ts +1 -1
  190. package/login/pages/logout-confirm/logout-confirm.component.d.ts +1 -1
  191. package/login/pages/register/register.component.d.ts +2 -4
  192. package/login/pages/saml-post-form/saml-post-form.component.d.ts +1 -1
  193. package/login/pages/select-authenticator/select-authenticator.component.d.ts +1 -1
  194. package/login/pages/terms/terms.component.d.ts +1 -1
  195. package/login/pages/update-email/update-email.component.d.ts +2 -4
  196. package/login/pages/webauthn-authenticate/webauthn-authenticate.component.d.ts +1 -1
  197. package/login/pages/webauthn-error/webauthn-error.component.d.ts +1 -1
  198. package/login/pages/webauthn-register/webauthn-register.component.d.ts +1 -1
  199. package/login/providers/keycloakify-angular/keycloakify-angular.providers.d.ts +1 -1
  200. package/login/public-api.d.ts +1 -0
  201. package/package.json +21 -15
  202. package/src/account/DefaultPage.ts +1 -1
  203. package/src/account/account.ts +13 -0
  204. package/src/account/classes/component-reference/index.ts +1 -0
  205. package/src/account/containers/template/index.ts +1 -0
  206. package/src/account/containers/template/template.component.ts +2 -2
  207. package/src/account/defaultPage.ts +44 -0
  208. package/src/account/directives/kc-class/index.ts +1 -0
  209. package/src/account/index.ts +1 -0
  210. package/src/account/pages/account/account.component.ts +3 -4
  211. package/src/account/pages/account/index.ts +1 -0
  212. package/src/account/pages/applications/applications.component.ts +3 -4
  213. package/src/account/pages/applications/index.ts +1 -0
  214. package/src/account/pages/federatedIdentity/federatedIdentity.component.ts +3 -4
  215. package/src/account/pages/federatedIdentity/index.ts +1 -0
  216. package/src/account/pages/log/index.ts +1 -0
  217. package/src/account/pages/log/log.component.ts +3 -4
  218. package/src/account/pages/password/index.ts +1 -0
  219. package/src/account/pages/password/password.component.ts +3 -4
  220. package/src/account/pages/sessions/index.ts +1 -0
  221. package/src/account/pages/sessions/sessions.component.ts +3 -4
  222. package/src/account/pages/totp/index.ts +1 -0
  223. package/src/account/pages/totp/totp.component.ts +3 -4
  224. package/src/account/providers/keycloakify-angular/index.ts +1 -0
  225. package/src/account/providers/keycloakify-angular/keycloakify-angular.providers.ts +2 -4
  226. package/src/account/services/account-resource-injector/account-resource-injector.service.ts +1 -1
  227. package/src/account/services/account-resource-injector/index.ts +1 -0
  228. package/src/account/services/i18n/index.ts +1 -0
  229. package/src/account/tokens/classes/index.ts +1 -0
  230. package/src/account/tokens/i18n/index.ts +1 -0
  231. package/src/account/tokens/kc-context/index.ts +1 -0
  232. package/src/account/tokens/kc-context/kc-context.token.ts +1 -1
  233. package/src/bin/core.ts +10 -0
  234. package/src/bin/eject-page.ts +311 -0
  235. package/src/bin/initialize-account-theme/boilerplate/KcContext.ts +11 -0
  236. package/src/bin/initialize-account-theme/boilerplate/KcContextMock.ts +18 -0
  237. package/src/bin/initialize-account-theme/boilerplate/KcPage.ts +19 -0
  238. package/src/bin/initialize-account-theme/boilerplate/i18n.ts +11 -0
  239. package/src/bin/initialize-account-theme/initialize-account-theme.ts +98 -0
  240. package/src/bin/initialize-account-theme/updateAccountThemeImplementationInConfig.ts +99 -0
  241. package/src/bin/main.ts +38 -0
  242. package/src/bin/tools/SemVer.ts +114 -0
  243. package/src/bin/tools/String.prototype.replaceAll.ts +37 -0
  244. package/src/bin/tools/crawl.ts +35 -0
  245. package/src/bin/tools/fs.rmSync.ts +34 -0
  246. package/src/bin/tools/getThisCodebaseRootDirPath.ts +19 -0
  247. package/src/bin/tools/kebabCaseToSnakeCase.ts +7 -0
  248. package/src/bin/tools/transformCodebase.ts +88 -0
  249. package/src/bin/tsconfig.json +20 -0
  250. package/src/bin/update-kc-gen.ts +135 -0
  251. package/src/index.ts +1 -0
  252. package/src/lib/directives/attributes/index.ts +1 -0
  253. package/src/lib/index.ts +1 -0
  254. package/src/lib/models/script/index.ts +1 -0
  255. package/src/lib/pipes/input-type/index.ts +1 -0
  256. package/src/lib/pipes/is-array-with-empty-object/index.ts +1 -0
  257. package/src/lib/pipes/kc-sanitize/index.ts +1 -0
  258. package/src/lib/pipes/to-array/index.ts +1 -0
  259. package/src/lib/pipes/to-number/index.ts +1 -0
  260. package/src/lib/services/resource-injector/index.ts +1 -0
  261. package/src/lib/tokens/use-default-css/index.ts +1 -0
  262. package/src/login/classes/component-reference/index.ts +1 -0
  263. package/src/login/components/add-remove-buttons-multi-valued-attribute/add-remove-buttons-multi-valued-attribute.component.ts +1 -1
  264. package/src/login/components/add-remove-buttons-multi-valued-attribute/index.ts +1 -0
  265. package/src/login/components/field-errors/index.ts +1 -0
  266. package/src/login/components/group-label/group-label.component.ts +1 -1
  267. package/src/login/components/group-label/index.ts +1 -0
  268. package/src/login/components/input-field-by-type/index.ts +1 -0
  269. package/src/login/components/input-tag/index.ts +1 -0
  270. package/src/login/components/input-tag/input-tag.component.ts +1 -1
  271. package/src/login/components/input-tag-selects/index.ts +1 -0
  272. package/src/login/components/input-tag-selects/input-tag-selects.component.ts +1 -1
  273. package/src/login/components/logout-other-sessions/index.ts +1 -0
  274. package/src/login/components/logout-other-sessions/logout-other-sessions.component.ts +1 -1
  275. package/src/login/components/password-wrapper/index.ts +1 -0
  276. package/src/login/components/password-wrapper/password-wrapper.component.ts +1 -1
  277. package/src/login/components/select-tag/index.ts +1 -0
  278. package/src/login/components/select-tag/select-tag.component.ts +1 -1
  279. package/src/login/components/textarea-tag/index.ts +1 -0
  280. package/src/login/components/user-profile-form-fields/index.ts +1 -0
  281. package/src/login/components/user-profile-form-fields/user-profile-form-fields.component.ts +2 -2
  282. package/src/login/containers/template/index.ts +1 -0
  283. package/src/login/containers/template/template.component.ts +2 -8
  284. package/src/login/{getDefaultPageComponent.ts → defaultPage.ts} +1 -1
  285. package/src/login/directives/kc-class/index.ts +1 -0
  286. package/src/login/index.ts +1 -0
  287. package/src/login/login.ts +14 -0
  288. package/src/login/pages/code/code.component.ts +4 -5
  289. package/src/login/pages/code/index.ts +1 -0
  290. package/src/login/pages/delete-account-confirm/delete-account-confirm.component.ts +3 -3
  291. package/src/login/pages/delete-account-confirm/index.ts +1 -0
  292. package/src/login/pages/delete-credential/delete-credential.component.ts +4 -5
  293. package/src/login/pages/delete-credential/index.ts +1 -0
  294. package/src/login/pages/error/error.component.ts +4 -5
  295. package/src/login/pages/error/index.ts +1 -0
  296. package/src/login/pages/frontchannel-logout/frontchannel-logout.component.ts +4 -5
  297. package/src/login/pages/frontchannel-logout/index.ts +1 -0
  298. package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.html +1 -1
  299. package/src/login/pages/idp-review-user-profile/idp-review-user-profile.component.ts +4 -6
  300. package/src/login/pages/idp-review-user-profile/index.ts +1 -0
  301. package/src/login/pages/info/index.ts +1 -0
  302. package/src/login/pages/info/info.component.ts +4 -5
  303. package/src/login/pages/login/index.ts +1 -0
  304. package/src/login/pages/login/login.component.ts +4 -5
  305. package/src/login/pages/login-config-totp/index.ts +1 -0
  306. package/src/login/pages/login-config-totp/login-config-totp.component.ts +4 -5
  307. package/src/login/pages/login-idp-link-confirm/index.ts +1 -0
  308. package/src/login/pages/login-idp-link-confirm/login-idp-link-confirm.component.ts +4 -5
  309. package/src/login/pages/login-idp-link-confirm-override/index.ts +1 -0
  310. package/src/login/pages/login-idp-link-confirm-override/login-idp-link-confirm-override.component.ts +4 -5
  311. package/src/login/pages/login-idp-link-email/index.ts +1 -0
  312. package/src/login/pages/login-idp-link-email/login-idp-link-email.component.ts +4 -5
  313. package/src/login/pages/login-oauth-grant/index.ts +1 -0
  314. package/src/login/pages/login-oauth-grant/login-oauth-grant.component.ts +4 -5
  315. package/src/login/pages/login-oauth2-device-verify-user-code/index.ts +1 -0
  316. package/src/login/pages/login-oauth2-device-verify-user-code/login-oauth2-device-verify-user-code.component.ts +4 -5
  317. package/src/login/pages/login-otp/index.ts +1 -0
  318. package/src/login/pages/login-otp/login-otp.component.ts +4 -5
  319. package/src/login/pages/login-page-expired/index.ts +1 -0
  320. package/src/login/pages/login-page-expired/login-page-expired.component.ts +4 -5
  321. package/src/login/pages/login-passkeys-conditional-authenticate/index.ts +1 -0
  322. package/src/login/pages/login-passkeys-conditional-authenticate/login-passkeys-conditional-authenticate.component.ts +4 -5
  323. package/src/login/pages/login-password/index.ts +1 -0
  324. package/src/login/pages/login-password/login-password.component.ts +4 -5
  325. package/src/login/pages/login-recovery-authn-code-config/index.ts +1 -0
  326. package/src/login/pages/login-recovery-authn-code-config/login-recovery-authn-code-config.component.ts +4 -5
  327. package/src/login/pages/login-recovery-authn-code-input/index.ts +1 -0
  328. package/src/login/pages/login-recovery-authn-code-input/login-recovery-authn-code-input.component.ts +4 -5
  329. package/src/login/pages/login-reset-otp/index.ts +1 -0
  330. package/src/login/pages/login-reset-otp/login-reset-otp.component.ts +4 -5
  331. package/src/login/pages/login-reset-password/index.ts +1 -0
  332. package/src/login/pages/login-reset-password/login-reset-password.component.ts +4 -5
  333. package/src/login/pages/login-update-password/index.ts +1 -0
  334. package/src/login/pages/login-update-password/login-update-password.component.ts +4 -5
  335. package/src/login/pages/login-update-profile/index.ts +1 -0
  336. package/src/login/pages/login-update-profile/login-update-profile.component.html +1 -1
  337. package/src/login/pages/login-update-profile/login-update-profile.component.ts +4 -6
  338. package/src/login/pages/login-username/index.ts +1 -0
  339. package/src/login/pages/login-username/login-username.component.ts +4 -5
  340. package/src/login/pages/login-verify-email/index.ts +1 -0
  341. package/src/login/pages/login-verify-email/login-verify-email.component.ts +4 -5
  342. package/src/login/pages/login-x509-info/index.ts +1 -0
  343. package/src/login/pages/login-x509-info/login-x509-info.component.ts +4 -5
  344. package/src/login/pages/logout-confirm/index.ts +1 -0
  345. package/src/login/pages/logout-confirm/logout-confirm.component.ts +4 -5
  346. package/src/login/pages/register/index.ts +1 -0
  347. package/src/login/pages/register/register.component.html +1 -1
  348. package/src/login/pages/register/register.component.ts +4 -6
  349. package/src/login/pages/saml-post-form/index.ts +1 -0
  350. package/src/login/pages/saml-post-form/saml-post-form.component.ts +4 -5
  351. package/src/login/pages/select-authenticator/index.ts +1 -0
  352. package/src/login/pages/select-authenticator/select-authenticator.component.ts +4 -5
  353. package/src/login/pages/terms/index.ts +1 -0
  354. package/src/login/pages/terms/terms.component.ts +4 -5
  355. package/src/login/pages/update-email/index.ts +1 -0
  356. package/src/login/pages/update-email/update-email.component.html +1 -1
  357. package/src/login/pages/update-email/update-email.component.ts +4 -6
  358. package/src/login/pages/webauthn-authenticate/index.ts +1 -0
  359. package/src/login/pages/webauthn-authenticate/webauthn-authenticate.component.ts +4 -5
  360. package/src/login/pages/webauthn-error/index.ts +1 -0
  361. package/src/login/pages/webauthn-error/webauthn-error.component.ts +4 -5
  362. package/src/login/pages/webauthn-register/index.ts +1 -0
  363. package/src/login/pages/webauthn-register/webauthn-register.component.ts +4 -5
  364. package/src/login/providers/keycloakify-angular/index.ts +1 -0
  365. package/src/login/providers/keycloakify-angular/keycloakify-angular.providers.ts +2 -2
  366. package/src/login/services/i18n/index.ts +1 -0
  367. package/src/login/services/login-resource-injector/index.ts +1 -0
  368. package/src/login/services/login-resource-injector/login-resource-injector.service.ts +1 -1
  369. package/src/login/services/submit/index.ts +1 -0
  370. package/src/login/services/user-profile-form/index.ts +1 -0
  371. package/src/login/services/user-profile-form/user-profile-form.service.ts +2 -2
  372. package/src/login/tokens/classes/index.ts +1 -0
  373. package/src/login/tokens/i18n/index.ts +1 -0
  374. package/src/login/tokens/kc-context/index.ts +1 -0
  375. package/src/login/tokens/kc-context/kc-context.token.ts +1 -1
  376. package/src/login/tokens/make-user-confirm-password/index.ts +1 -0
  377. package/esm2022/login/getDefaultPageComponent/getDefaultPageComponent.mjs +0 -77
  378. package/esm2022/login/getDefaultPageComponent/keycloakify-angular-login-getDefaultPageComponent.mjs +0 -5
  379. package/esm2022/login/getDefaultPageComponent/public-api.mjs +0 -2
  380. package/fesm2022/keycloakify-angular-login-getDefaultPageComponent.mjs.map +0 -1
  381. package/login/getDefaultPageComponent/public-api.d.ts +0 -1
  382. /package/login/{getDefaultPageComponent/getDefaultPageComponent.d.ts → defaultPage.d.ts} +0 -0
  383. /package/{stories → src/stories}/login/pages/login/login.stories.ts +0 -0
@@ -0,0 +1,1713 @@
1
+ "use strict";
2
+ exports.id = 925;
3
+ exports.ids = [925];
4
+ exports.modules = {
5
+
6
+ /***/ 925:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
+
9
+
10
+ // EXPORTS
11
+ __webpack_require__.d(__webpack_exports__, {
12
+ command: () => (/* binding */ command)
13
+ });
14
+
15
+ // EXTERNAL MODULE: ./dist/bin/tools/getThisCodebaseRootDirPath.js
16
+ var getThisCodebaseRootDirPath = __webpack_require__(427);
17
+ // EXTERNAL MODULE: ./node_modules/cli-select/dist/index.js
18
+ var dist = __webpack_require__(546);
19
+ var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
20
+ // EXTERNAL MODULE: ./node_modules/keycloakify/bin/shared/constants.js
21
+ var constants = __webpack_require__(316);
22
+ // EXTERNAL MODULE: external "fs"
23
+ var external_fs_ = __webpack_require__(896);
24
+ // EXTERNAL MODULE: external "path"
25
+ var external_path_ = __webpack_require__(928);
26
+ // EXTERNAL MODULE: ./node_modules/tsafe/esm/assert.mjs + 2 modules
27
+ var assert = __webpack_require__(249);
28
+ // EXTERNAL MODULE: ./node_modules/chalk/source/index.js + 3 modules
29
+ var source = __webpack_require__(797);
30
+ ;// CONCATENATED MODULE: ./dist/bin/tools/crawl.js
31
+
32
+
33
+ const crawlRec = (dirPath, filePaths) => {
34
+ for (const basename of external_fs_.readdirSync(dirPath)) {
35
+ const fileOrDirPath = (0,external_path_.join)(dirPath, basename);
36
+ if (external_fs_.lstatSync(fileOrDirPath).isDirectory()) {
37
+ crawlRec(fileOrDirPath, filePaths);
38
+ continue;
39
+ }
40
+ filePaths.push(fileOrDirPath);
41
+ }
42
+ };
43
+ /** List all files in a given directory return paths relative to the dir_path */
44
+ function crawl(params) {
45
+ const { dirPath, returnedPathsType } = params;
46
+ const filePaths = [];
47
+ crawlRec(dirPath, filePaths);
48
+ switch (returnedPathsType) {
49
+ case 'absolute':
50
+ return filePaths;
51
+ case 'relative to dirPath':
52
+ return filePaths.map(filePath => (0,external_path_.relative)(dirPath, filePath));
53
+ }
54
+ }
55
+
56
+ ;// CONCATENATED MODULE: ./dist/bin/tools/SemVer.js
57
+ var SemVer;
58
+ (function (SemVer) {
59
+ const bumpTypes = ['major', 'minor', 'patch', 'rc', 'no bump'];
60
+ function parse(versionStr) {
61
+ const match = versionStr.match(/^v?([0-9]+)\.([0-9]+)(?:\.([0-9]+))?(?:-rc.([0-9]+))?$/);
62
+ if (!match) {
63
+ throw new Error(`${versionStr} is not a valid semantic version`);
64
+ }
65
+ const semVer = Object.assign({ major: parseInt(match[1]), minor: parseInt(match[2]), patch: (() => {
66
+ const str = match[3];
67
+ return str === undefined ? 0 : parseInt(str);
68
+ })() }, (() => {
69
+ const str = match[4];
70
+ return str === undefined ? {} : { rc: parseInt(str) };
71
+ })());
72
+ const initialStr = stringify(semVer);
73
+ Object.defineProperty(semVer, 'parsedFrom', {
74
+ enumerable: true,
75
+ get: function () {
76
+ const currentStr = stringify(this);
77
+ if (currentStr !== initialStr) {
78
+ throw new Error(`SemVer.parsedFrom can't be read anymore, the version have been modified from ${initialStr} to ${currentStr}`);
79
+ }
80
+ return versionStr;
81
+ }
82
+ });
83
+ return semVer;
84
+ }
85
+ SemVer.parse = parse;
86
+ function stringify(v) {
87
+ return `${v.major}.${v.minor}.${v.patch}${v.rc === undefined ? '' : `-rc.${v.rc}`}`;
88
+ }
89
+ SemVer.stringify = stringify;
90
+ /**
91
+ *
92
+ * v1 < v2 => -1
93
+ * v1 === v2 => 0
94
+ * v1 > v2 => 1
95
+ *
96
+ */
97
+ function compare(v1, v2) {
98
+ const sign = (diff) => (diff === 0 ? 0 : diff < 0 ? -1 : 1);
99
+ const noUndefined = (n) => n !== null && n !== void 0 ? n : Infinity;
100
+ for (const level of ['major', 'minor', 'patch', 'rc']) {
101
+ if (noUndefined(v1[level]) !== noUndefined(v2[level])) {
102
+ return sign(noUndefined(v1[level]) - noUndefined(v2[level]));
103
+ }
104
+ }
105
+ return 0;
106
+ }
107
+ SemVer.compare = compare;
108
+ /*
109
+ console.log(compare(parse("3.0.0-rc.3"), parse("3.0.0")) === -1 )
110
+ console.log(compare(parse("3.0.0-rc.3"), parse("3.0.0-rc.4")) === -1 )
111
+ console.log(compare(parse("3.0.0-rc.3"), parse("4.0.0")) === -1 )
112
+ */
113
+ function bumpType(params) {
114
+ const versionAhead = typeof params.versionAhead === 'string'
115
+ ? parse(params.versionAhead)
116
+ : params.versionAhead;
117
+ const versionBehind = typeof params.versionBehind === 'string'
118
+ ? parse(params.versionBehind)
119
+ : params.versionBehind;
120
+ if (compare(versionBehind, versionAhead) === 1) {
121
+ throw new Error(`Version regression ${stringify(versionBehind)} -> ${stringify(versionAhead)}`);
122
+ }
123
+ for (const level of ['major', 'minor', 'patch', 'rc']) {
124
+ if (versionBehind[level] !== versionAhead[level]) {
125
+ return level;
126
+ }
127
+ }
128
+ return 'no bump';
129
+ }
130
+ SemVer.bumpType = bumpType;
131
+ })(SemVer || (SemVer = {}));
132
+
133
+ ;// CONCATENATED MODULE: ./dist/bin/tools/fs.rmSync.js
134
+
135
+
136
+
137
+ /**
138
+ * Polyfill of fs.rmSync(dirPath, { "recursive": true })
139
+ * For older version of Node
140
+ */
141
+ function rmSync(dirPath, options) {
142
+ if (SemVer.compare(SemVer.parse(process.version), SemVer.parse('14.14.0')) > 0) {
143
+ external_fs_.rmSync(dirPath, options);
144
+ return;
145
+ }
146
+ const { force = true } = options;
147
+ if (force && !external_fs_.existsSync(dirPath)) {
148
+ return;
149
+ }
150
+ const removeDir_rec = (dirPath) => external_fs_.readdirSync(dirPath).forEach(basename => {
151
+ const fileOrDirPath = (0,external_path_.join)(dirPath, basename);
152
+ if (external_fs_.lstatSync(fileOrDirPath).isDirectory()) {
153
+ removeDir_rec(fileOrDirPath);
154
+ return;
155
+ }
156
+ else {
157
+ external_fs_.unlinkSync(fileOrDirPath);
158
+ }
159
+ });
160
+ removeDir_rec(dirPath);
161
+ }
162
+
163
+ ;// CONCATENATED MODULE: ./dist/bin/tools/transformCodebase.js
164
+
165
+
166
+
167
+
168
+ /**
169
+ * Apply a transformation function to every file of directory
170
+ * If source and destination are the same this function can be used to apply the transformation in place
171
+ * like filtering out some files or modifying them.
172
+ * */
173
+ function transformCodebase(params) {
174
+ const { srcDirPath, transformSourceCode } = params;
175
+ const isTargetSameAsSource = external_path_.relative(srcDirPath, params.destDirPath) === '';
176
+ const destDirPath = isTargetSameAsSource
177
+ ? external_path_.join(srcDirPath, '..', 'tmp_xOsPdkPsTdzPs34sOkHs')
178
+ : params.destDirPath;
179
+ external_fs_.mkdirSync(destDirPath, {
180
+ recursive: true
181
+ });
182
+ for (const fileRelativePath of crawl({
183
+ dirPath: srcDirPath,
184
+ returnedPathsType: 'relative to dirPath'
185
+ })) {
186
+ const filePath = external_path_.join(srcDirPath, fileRelativePath);
187
+ const destFilePath = external_path_.join(destDirPath, fileRelativePath);
188
+ // NOTE: Optimization, if we don't need to transform the file, just copy
189
+ // it using the lower level implementation.
190
+ if (transformSourceCode === undefined) {
191
+ external_fs_.mkdirSync(external_path_.dirname(destFilePath), {
192
+ recursive: true
193
+ });
194
+ external_fs_.copyFileSync(filePath, destFilePath);
195
+ continue;
196
+ }
197
+ const transformSourceCodeResult = transformSourceCode({
198
+ sourceCode: external_fs_.readFileSync(filePath),
199
+ filePath,
200
+ fileRelativePath
201
+ });
202
+ if (transformSourceCodeResult === undefined) {
203
+ continue;
204
+ }
205
+ external_fs_.mkdirSync(external_path_.dirname(destFilePath), {
206
+ recursive: true
207
+ });
208
+ const { newFileName, modifiedSourceCode } = transformSourceCodeResult;
209
+ external_fs_.writeFileSync(external_path_.join(external_path_.dirname(destFilePath), newFileName !== null && newFileName !== void 0 ? newFileName : external_path_.basename(destFilePath)), modifiedSourceCode);
210
+ }
211
+ if (isTargetSameAsSource) {
212
+ rmSync(srcDirPath, { recursive: true });
213
+ external_fs_.renameSync(destDirPath, srcDirPath);
214
+ }
215
+ }
216
+
217
+ ;// CONCATENATED MODULE: ./node_modules/tsafe/esm/capitalize.mjs
218
+ /** @see <https://docs.tsafe.dev/capitalize> */
219
+ function capitalize(str) {
220
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
221
+ return (str.charAt(0).toUpperCase() + str.slice(1));
222
+ }
223
+
224
+
225
+ //# sourceMappingURL=capitalize.mjs.map
226
+
227
+ ;// CONCATENATED MODULE: ./dist/bin/tools/kebabCaseToSnakeCase.js
228
+
229
+ function kebabCaseToCamelCase(kebabCaseString) {
230
+ const [first, ...rest] = kebabCaseString.split('-');
231
+ return [first, ...rest.map(capitalize)].join('');
232
+ }
233
+
234
+ ;// CONCATENATED MODULE: ./dist/bin/tools/String.prototype.replaceAll.js
235
+ function replaceAll(string, searchValue, replaceValue) {
236
+ if (string.replaceAll !== undefined) {
237
+ return string.replaceAll(searchValue, replaceValue);
238
+ }
239
+ // If the searchValue is a string
240
+ if (typeof searchValue === 'string') {
241
+ // Escape special characters in the string to be used in a regex
242
+ var escapedSearchValue = searchValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
243
+ var regex = new RegExp(escapedSearchValue, 'g');
244
+ return string.replace(regex, replaceValue);
245
+ }
246
+ // If the searchValue is a global RegExp, use it directly
247
+ if (searchValue instanceof RegExp && searchValue.global) {
248
+ return string.replace(searchValue, replaceValue);
249
+ }
250
+ // If the searchValue is a non-global RegExp, throw an error
251
+ if (searchValue instanceof RegExp) {
252
+ throw new TypeError('replaceAll must be called with a global RegExp');
253
+ }
254
+ // Convert searchValue to string if it's not a string or RegExp
255
+ var searchString = String(searchValue);
256
+ var regexFromString = new RegExp(searchString.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g');
257
+ return string.replace(regexFromString, replaceValue);
258
+ }
259
+
260
+ ;// CONCATENATED MODULE: ./dist/bin/eject-page.js
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+
272
+ async function command(params) {
273
+ const { buildContext } = params;
274
+ console.log(source/* default */.Ay.cyan('Theme type:'));
275
+ const themeType = await (async () => {
276
+ const values = constants/* THEME_TYPES */.qA.filter(themeType => {
277
+ switch (themeType) {
278
+ case 'account':
279
+ return buildContext.implementedThemeTypes.account.isImplemented;
280
+ case 'login':
281
+ return buildContext.implementedThemeTypes.login.isImplemented;
282
+ }
283
+ (0,assert/* assert */.v)(false);
284
+ });
285
+ (0,assert/* assert */.v)(values.length > 0, 'No theme is implemented in this project');
286
+ if (values.length === 1) {
287
+ return values[0];
288
+ }
289
+ const { value } = await dist_default()({
290
+ values
291
+ }).catch(() => {
292
+ process.exit(-1);
293
+ });
294
+ return value;
295
+ })();
296
+ console.log(`→ ${themeType}`);
297
+ console.log(source/* default */.Ay.cyan('Select the page you want to customize:'));
298
+ const templateValue = 'template.ftl (Layout common to every page)';
299
+ const { value: pageIdOrComponent } = await dist_default()({
300
+ values: (() => {
301
+ switch (themeType) {
302
+ case 'login':
303
+ return [templateValue, ...constants/* LOGIN_THEME_PAGE_IDS */.hz];
304
+ case 'account':
305
+ return [templateValue, ...constants/* ACCOUNT_THEME_PAGE_IDS */.Hp];
306
+ }
307
+ (0,assert/* assert */.v)(false);
308
+ })()
309
+ }).catch(() => {
310
+ process.exit(-1);
311
+ });
312
+ console.log(`→ ${pageIdOrComponent}`);
313
+ const componentDirRelativeToThemeTypePath = (() => {
314
+ if (pageIdOrComponent === templateValue) {
315
+ return (0,external_path_.join)('containers', 'template');
316
+ }
317
+ return (0,external_path_.join)('pages', pageIdOrComponent.replace(/\.ftl$/, ''));
318
+ })();
319
+ {
320
+ const componentDirRelativeToThemeTypePaths = [
321
+ componentDirRelativeToThemeTypePath
322
+ ];
323
+ while (componentDirRelativeToThemeTypePaths.length !== 0) {
324
+ const componentDirRelativeToThemeTypePath_i = componentDirRelativeToThemeTypePaths.pop();
325
+ (0,assert/* assert */.v)(componentDirRelativeToThemeTypePath_i !== undefined);
326
+ const destDirPath = (0,external_path_.join)(buildContext.themeSrcDirPath, themeType, componentDirRelativeToThemeTypePath_i);
327
+ if (external_fs_.existsSync(destDirPath) && external_fs_.readdirSync(destDirPath).length !== 0) {
328
+ if (componentDirRelativeToThemeTypePath_i ===
329
+ componentDirRelativeToThemeTypePath) {
330
+ console.log(`${pageIdOrComponent.split('.ftl')[0]} is already ejected, ${(0,external_path_.relative)(process.cwd(), destDirPath)} already exists`);
331
+ process.exit(-1);
332
+ }
333
+ continue;
334
+ }
335
+ const localThemeTypeDirPath = (0,external_path_.join)((0,getThisCodebaseRootDirPath/* getThisCodebaseRootDirPath */.J)(), 'src', themeType);
336
+ transformCodebase({
337
+ srcDirPath: (0,external_path_.join)(localThemeTypeDirPath, componentDirRelativeToThemeTypePath_i),
338
+ destDirPath,
339
+ transformSourceCode: ({ filePath, sourceCode }) => {
340
+ if (!filePath.endsWith('.ts')) {
341
+ return { modifiedSourceCode: sourceCode };
342
+ }
343
+ const fileRelativeToThemeTypePath = (0,external_path_.relative)(localThemeTypeDirPath, filePath);
344
+ let modifiedSourceCode_str = sourceCode.toString();
345
+ const getPosixPathRelativeToFile = (params) => {
346
+ const { pathRelativeToThemeType } = params;
347
+ const path = (0,external_path_.relative)((0,external_path_.dirname)(fileRelativeToThemeTypePath), pathRelativeToThemeType)
348
+ .split(external_path_.sep)
349
+ .join('/');
350
+ return path.startsWith('.') ? path : `./${path}`;
351
+ };
352
+ modifiedSourceCode_str = replaceAll(modifiedSourceCode_str, `@keycloakify/angular/${themeType}/i18n`, getPosixPathRelativeToFile({
353
+ pathRelativeToThemeType: 'i18n'
354
+ }));
355
+ modifiedSourceCode_str = replaceAll(modifiedSourceCode_str, `@keycloakify/angular/${themeType}/KcContext`, getPosixPathRelativeToFile({
356
+ pathRelativeToThemeType: 'KcContext'
357
+ }));
358
+ modifiedSourceCode_str = modifiedSourceCode_str.replace(new RegExp(`@keycloakify/angular/${themeType}/components/([^'"]+)`, 'g'), (...[, componentDirRelativeToComponentsPath]) => {
359
+ const componentDirRelativeToThemeTypePath = (0,external_path_.join)('components', componentDirRelativeToComponentsPath);
360
+ componentDirRelativeToThemeTypePaths.push(componentDirRelativeToThemeTypePath);
361
+ return getPosixPathRelativeToFile({
362
+ pathRelativeToThemeType: componentDirRelativeToThemeTypePath
363
+ });
364
+ });
365
+ return {
366
+ modifiedSourceCode: Buffer.from(modifiedSourceCode_str, 'utf8')
367
+ };
368
+ }
369
+ });
370
+ console.log(`${source/* default */.Ay.green('✓')} ${source/* default */.Ay.bold(`.${external_path_.sep}` + (0,external_path_.relative)(process.cwd(), destDirPath))} moved from the @keycloakify/angular to your project`);
371
+ }
372
+ }
373
+ edit_KcPage: {
374
+ if (pageIdOrComponent !== templateValue) {
375
+ break edit_KcPage;
376
+ }
377
+ const kcAppTsFilePath = (0,external_path_.join)(buildContext.themeSrcDirPath, themeType, 'KcPage.ts');
378
+ const kcAppTsCode = external_fs_.readFileSync(kcAppTsFilePath).toString('utf8');
379
+ const modifiedKcAppTsCode = (() => {
380
+ const componentRelativeDirPath_posix = componentDirRelativeToThemeTypePath
381
+ .split(external_path_.sep)
382
+ .join('/');
383
+ return kcAppTsCode.replace(`@keycloakify/angular/${themeType}/${componentRelativeDirPath_posix}`, `./${componentRelativeDirPath_posix}`);
384
+ })();
385
+ if (modifiedKcAppTsCode === kcAppTsCode) {
386
+ console.log(source/* default */.Ay.red('Unable to automatically update KcPage.tsx, please update it manually'));
387
+ return;
388
+ }
389
+ external_fs_.writeFileSync(kcAppTsFilePath, Buffer.from(modifiedKcAppTsCode, 'utf8'));
390
+ console.log(`${source/* default */.Ay.green('✓')} ${source/* default */.Ay.bold(`.${external_path_.sep}` + (0,external_path_.relative)(process.cwd(), kcAppTsFilePath))} Updated`);
391
+ return;
392
+ }
393
+ const pageId = pageIdOrComponent;
394
+ console.log([
395
+ ``,
396
+ `You now need to update your page router:`,
397
+ ``,
398
+ `${source/* default */.Ay.bold((0,external_path_.join)('.', (0,external_path_.relative)(process.cwd(), buildContext.themeSrcDirPath), themeType, 'KcPage.ts'))}:`,
399
+ source/* default */.Ay.grey('```'),
400
+ `// ...`,
401
+ ``,
402
+ ...[
403
+ ` export async function getKcPage(pageId: KcContext['pageId']): Promise<KcPage> {`,
404
+ ` switch (pageId) {`,
405
+ `+ case '${pageId}':`,
406
+ `+ return {`,
407
+ `+ PageComponent: (await import('./${componentDirRelativeToThemeTypePath.split(external_path_.sep).join('/')}')).${kebabCaseToCamelCase(capitalize(pageId).replace(/\.ftl$/, ''))}Component,`,
408
+ `+ TemplateComponent,`,
409
+ ...(themeType === 'login' ? [`+ doMakeUserConfirmPassword,`] : []),
410
+ `+ doUseDefaultCss,`,
411
+ `+ classes,`,
412
+ `+ };`,
413
+ ` //...`,
414
+ ` default:`,
415
+ ` return {`,
416
+ ` PageComponent: await getDefaultPageComponent(pageId),`,
417
+ ` TemplateComponent,`,
418
+ ...(themeType === 'login' ? [` doMakeUserConfirmPassword,`] : []),
419
+ ` doUseDefaultCss,`,
420
+ ` classes,`,
421
+ ` };`,
422
+ ` }`,
423
+ ` }`
424
+ ].map(line => {
425
+ if (line.startsWith('+')) {
426
+ return source/* default */.Ay.green(line);
427
+ }
428
+ if (line.startsWith('-')) {
429
+ return source/* default */.Ay.red(line);
430
+ }
431
+ return source/* default */.Ay.grey(line);
432
+ }),
433
+ source/* default */.Ay.grey('```')
434
+ ].join('\n'));
435
+ }
436
+
437
+
438
+ /***/ }),
439
+
440
+ /***/ 427:
441
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
442
+
443
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
444
+ /* harmony export */ J: () => (/* binding */ getThisCodebaseRootDirPath)
445
+ /* harmony export */ });
446
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(896);
447
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__);
448
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(928);
449
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
450
+
451
+
452
+ function getThisCodebaseRootDirPath_rec(dirPath) {
453
+ if (fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(path__WEBPACK_IMPORTED_MODULE_1__.join(dirPath, 'package.json'))) {
454
+ return dirPath;
455
+ }
456
+ return getThisCodebaseRootDirPath_rec(path__WEBPACK_IMPORTED_MODULE_1__.join(dirPath, '..'));
457
+ }
458
+ let result = undefined;
459
+ function getThisCodebaseRootDirPath() {
460
+ if (result !== undefined) {
461
+ return result;
462
+ }
463
+ return (result = getThisCodebaseRootDirPath_rec(__dirname));
464
+ }
465
+
466
+
467
+ /***/ }),
468
+
469
+ /***/ 672:
470
+ /***/ ((__unused_webpack_module, exports) => {
471
+
472
+
473
+
474
+ Object.defineProperty(exports, "__esModule", ({
475
+ value: true
476
+ }));
477
+ exports.withPromise = exports.withCallback = void 0;
478
+
479
+ /**
480
+ * Open the input with a normal callback function
481
+ *
482
+ * @param {Input} input - input object
483
+ * @param {function} valueMapper - function which maps the resulting id and value back to the expected format
484
+ * @param {function} callback - callback function
485
+ */
486
+ const withCallback = (input, valueMapper, callback) => {
487
+ input.open();
488
+ input.onSelect((id, value) => callback(valueMapper(id, value)));
489
+ };
490
+ /**
491
+ * Open the input with a promise
492
+ *
493
+ * @param {Input} input - input object
494
+ * @param {function} valueMapper - function which maps the resulting id and value back to the expected format
495
+ */
496
+
497
+
498
+ exports.withCallback = withCallback;
499
+
500
+ const withPromise = (input, valueMapper) => {
501
+ return new Promise((resolve, reject) => {
502
+ input.open();
503
+ input.onSelect((id, value) => {
504
+ if (id === null) {
505
+ reject();
506
+ } else {
507
+ resolve(valueMapper(id, value));
508
+ }
509
+ });
510
+ });
511
+ };
512
+
513
+ exports.withPromise = withPromise;
514
+
515
+ /***/ }),
516
+
517
+ /***/ 546:
518
+ /***/ ((module, exports, __webpack_require__) => {
519
+
520
+
521
+
522
+ Object.defineProperty(exports, "__esModule", ({
523
+ value: true
524
+ }));
525
+ exports["default"] = void 0;
526
+
527
+ var _input = _interopRequireDefault(__webpack_require__(938));
528
+
529
+ var _renderer = _interopRequireDefault(__webpack_require__(547));
530
+
531
+ var _callbackMappers = __webpack_require__(672);
532
+
533
+ var _valueMappers = __webpack_require__(348);
534
+
535
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
536
+
537
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
538
+
539
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
540
+
541
+ /**
542
+ * Default options
543
+ */
544
+ const defaultOptions = {
545
+ outputStream: process.stdout,
546
+ inputStream: process.stdin,
547
+ values: [],
548
+ defaultValue: 0,
549
+ selected: '(x)',
550
+ unselected: '( )',
551
+ indentation: 0,
552
+ cleanup: true,
553
+ valueRenderer: value => value
554
+ };
555
+ /**
556
+ * Create an instance of cli-select with the given options
557
+ *
558
+ * @param {object} options - options for cli-select
559
+ * @param {function} callback - if specified, a callback will be used, otherwise a promise gets returned (optional)
560
+ */
561
+
562
+ const creator = (options, callback) => {
563
+ // merge options with default options
564
+ options = _objectSpread({}, defaultOptions, options); // create renderer and input instances
565
+
566
+ const renderer = new _renderer.default(options, options.outputStream);
567
+ const input = new _input.default(options.inputStream);
568
+ input.setDefaultValue(options.defaultValue);
569
+ input.attachRenderer(renderer); // handle array and object values
570
+
571
+ let valueMapper;
572
+
573
+ if (Array.isArray(options.values)) {
574
+ valueMapper = (0, _valueMappers.withArrayValues)(options);
575
+ } else {
576
+ valueMapper = (0, _valueMappers.withObjectValues)(options);
577
+ } // map values
578
+
579
+
580
+ options.values = valueMapper.input;
581
+ input.setValues(options.values); // handle different callback methods
582
+
583
+ if (typeof callback === 'function') {
584
+ return (0, _callbackMappers.withCallback)(input, valueMapper.output, callback);
585
+ } else {
586
+ return (0, _callbackMappers.withPromise)(input, valueMapper.output);
587
+ }
588
+ };
589
+
590
+ exports = module.exports = creator;
591
+ Object.defineProperty(exports, "__esModule", ({
592
+ value: true
593
+ }));
594
+ var _default = creator;
595
+ exports["default"] = _default;
596
+
597
+ /***/ }),
598
+
599
+ /***/ 938:
600
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
601
+
602
+
603
+
604
+ Object.defineProperty(exports, "__esModule", ({
605
+ value: true
606
+ }));
607
+ exports["default"] = void 0;
608
+
609
+ var _readline = _interopRequireDefault(__webpack_require__(785));
610
+
611
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
612
+
613
+ /**
614
+ * Handle cli input
615
+ */
616
+ class Input {
617
+ /**
618
+ * Input constructor
619
+ *
620
+ * @param {any} stream - stream to catch (optional)
621
+ */
622
+ constructor(stream = process.stdin) {
623
+ // set default values
624
+ this.stream = stream;
625
+ this.values = [];
626
+ this.selectedValue = 0;
627
+
628
+ this.onSelectListener = () => {};
629
+
630
+ this.onKeyPress = this.onKeyPress.bind(this);
631
+ }
632
+ /**
633
+ * Set the available values
634
+ *
635
+ * @param {array} values - all available values
636
+ */
637
+
638
+
639
+ setValues(values) {
640
+ this.values = values;
641
+
642
+ if (this.renderer) {
643
+ this.renderer.setValues(values);
644
+ }
645
+ }
646
+ /**
647
+ * Set the default value
648
+ *
649
+ * @param {number} defaultValue - default value id
650
+ */
651
+
652
+
653
+ setDefaultValue(defaultValue) {
654
+ this.selectedValue = defaultValue;
655
+ }
656
+ /**
657
+ * Attach a renderer to the input catcher
658
+ *
659
+ * @param {Renderer} renderer - renderer to use for rendering responses
660
+ */
661
+
662
+
663
+ attachRenderer(renderer) {
664
+ this.renderer = renderer;
665
+ this.renderer.setValues(this.values);
666
+ }
667
+ /**
668
+ * Register an on select listener
669
+ *
670
+ * @param {function} listener - listener function which receives two parameters: valueId and value
671
+ */
672
+
673
+
674
+ onSelect(listener) {
675
+ this.onSelectListener = listener;
676
+ }
677
+ /**
678
+ * Open the stream and listen for input
679
+ */
680
+
681
+
682
+ open() {
683
+ // register keypress event
684
+ _readline.default.emitKeypressEvents(this.stream); // handle keypress
685
+
686
+
687
+ this.stream.on('keypress', this.onKeyPress); // initially render the response
688
+
689
+ if (this.renderer) {
690
+ this.renderer.render(this.selectedValue);
691
+ } // hide pressed keys and start listening on input
692
+
693
+
694
+ this.stream.setRawMode(true);
695
+ this.stream.resume();
696
+ }
697
+ /**
698
+ * Close the stream
699
+ *
700
+ * @param {boolean} cancelled - true if no value was selected (optional)
701
+ */
702
+
703
+
704
+ close(cancelled = false) {
705
+ // reset stream properties
706
+ this.stream.setRawMode(false);
707
+ this.stream.pause(); // cleanup the output
708
+
709
+ if (this.renderer) {
710
+ this.renderer.cleanup();
711
+ } // call the on select listener
712
+
713
+
714
+ if (cancelled) {
715
+ this.onSelectListener(null);
716
+ } else {
717
+ this.onSelectListener(this.selectedValue, this.values[this.selectedValue]);
718
+ }
719
+
720
+ this.stream.removeListener('keypress', this.onKeyPress);
721
+ }
722
+ /**
723
+ * Render the response
724
+ */
725
+
726
+
727
+ render() {
728
+ if (!this.renderer) {
729
+ return;
730
+ }
731
+
732
+ this.renderer.render(this.selectedValue);
733
+ }
734
+ /**
735
+ * Handle key press event
736
+ *
737
+ * @param {string} string - input string
738
+ * @param {object} key - object containing information about the pressed key
739
+ */
740
+
741
+
742
+ onKeyPress(string, key) {
743
+ if (key) {
744
+ if (key.name === 'up' && this.selectedValue > 0) {
745
+ this.selectedValue--;
746
+ this.render();
747
+ } else if (key.name === 'down' && this.selectedValue + 1 < this.values.length) {
748
+ this.selectedValue++;
749
+ this.render();
750
+ } else if (key.name === 'return') {
751
+ this.close();
752
+ } else if (key.name === 'escape' || key.name === 'c' && key.ctrl) {
753
+ this.close(true);
754
+ }
755
+ }
756
+ }
757
+
758
+ }
759
+
760
+ exports["default"] = Input;
761
+
762
+ /***/ }),
763
+
764
+ /***/ 547:
765
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
766
+
767
+
768
+
769
+ Object.defineProperty(exports, "__esModule", ({
770
+ value: true
771
+ }));
772
+ exports["default"] = void 0;
773
+
774
+ var _readline = _interopRequireDefault(__webpack_require__(785));
775
+
776
+ var _ansiEscapes = __webpack_require__(719);
777
+
778
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
779
+
780
+ /**
781
+ * Response renderer
782
+ */
783
+ class Renderer {
784
+ /**
785
+ * Renderer constructor
786
+ *
787
+ * @param {object} options - renderer options
788
+ * @param {any} stream - stream to write to (optional)
789
+ */
790
+ constructor(options, stream = process.stdout) {
791
+ this.options = options;
792
+ this.stream = stream;
793
+ this.values = [];
794
+ this.initialRender = true;
795
+ }
796
+ /**
797
+ * Set the available values
798
+ *
799
+ * @param {array} values - all available values
800
+ */
801
+
802
+
803
+ setValues(values) {
804
+ this.values = values;
805
+ }
806
+ /**
807
+ * Render the values
808
+ *
809
+ * @param {number} selectedValue - selected value (optional)
810
+ */
811
+
812
+
813
+ render(selectedValue = 0) {
814
+ if (this.initialRender) {
815
+ // hide the cursor initially
816
+ this.initialRender = false;
817
+ this.stream.write(_ansiEscapes.cursorHide);
818
+ } else {
819
+ // remove previous lines and values
820
+ this.stream.write((0, _ansiEscapes.eraseLines)(this.values.length));
821
+ } // output the current values
822
+
823
+
824
+ this.values.forEach((value, index) => {
825
+ const symbol = selectedValue === index ? this.options.selected : this.options.unselected;
826
+ const indentation = ' '.repeat(this.options.indentation);
827
+ const renderedValue = this.options.valueRenderer(value, selectedValue === index);
828
+ const end = index !== this.values.length - 1 ? '\n' : '';
829
+ this.stream.write(indentation + symbol + ' ' + renderedValue + end);
830
+ });
831
+ }
832
+ /**
833
+ * Cleanup the console at the end
834
+ */
835
+
836
+
837
+ cleanup() {
838
+ this.stream.write((0, _ansiEscapes.eraseLines)(this.values.length));
839
+ this.stream.write(_ansiEscapes.cursorShow);
840
+ }
841
+
842
+ }
843
+
844
+ exports["default"] = Renderer;
845
+
846
+ /***/ }),
847
+
848
+ /***/ 348:
849
+ /***/ ((__unused_webpack_module, exports) => {
850
+
851
+
852
+
853
+ Object.defineProperty(exports, "__esModule", ({
854
+ value: true
855
+ }));
856
+ exports.withObjectValues = exports.withArrayValues = void 0;
857
+
858
+ /**
859
+ * Map incoming and outgoing values if the initial values are an array
860
+ *
861
+ * @param {object} options - cli-select options
862
+ */
863
+ const withArrayValues = options => {
864
+ return {
865
+ input: options.values,
866
+ output: (id, value) => {
867
+ return {
868
+ id,
869
+ value
870
+ };
871
+ }
872
+ };
873
+ };
874
+ /**
875
+ * Map incoming and outgoing values if the initial values are an object
876
+ *
877
+ * @param {object} options - cli-select options
878
+ */
879
+
880
+
881
+ exports.withArrayValues = withArrayValues;
882
+
883
+ const withObjectValues = options => {
884
+ const originalValues = options.values;
885
+ return {
886
+ input: Object.values(originalValues),
887
+ output: (id, value) => {
888
+ return {
889
+ id: Object.keys(originalValues)[id],
890
+ value
891
+ };
892
+ }
893
+ };
894
+ };
895
+
896
+ exports.withObjectValues = withObjectValues;
897
+
898
+ /***/ }),
899
+
900
+ /***/ 719:
901
+ /***/ ((module) => {
902
+
903
+
904
+ const x = module.exports;
905
+ const ESC = '\u001B[';
906
+ const OSC = '\u001B]';
907
+ const BEL = '\u0007';
908
+ const SEP = ';';
909
+ const isTerminalApp = process.env.TERM_PROGRAM === 'Apple_Terminal';
910
+
911
+ x.cursorTo = (x, y) => {
912
+ if (typeof x !== 'number') {
913
+ throw new TypeError('The `x` argument is required');
914
+ }
915
+
916
+ if (typeof y !== 'number') {
917
+ return ESC + (x + 1) + 'G';
918
+ }
919
+
920
+ return ESC + (y + 1) + ';' + (x + 1) + 'H';
921
+ };
922
+
923
+ x.cursorMove = (x, y) => {
924
+ if (typeof x !== 'number') {
925
+ throw new TypeError('The `x` argument is required');
926
+ }
927
+
928
+ let ret = '';
929
+
930
+ if (x < 0) {
931
+ ret += ESC + (-x) + 'D';
932
+ } else if (x > 0) {
933
+ ret += ESC + x + 'C';
934
+ }
935
+
936
+ if (y < 0) {
937
+ ret += ESC + (-y) + 'A';
938
+ } else if (y > 0) {
939
+ ret += ESC + y + 'B';
940
+ }
941
+
942
+ return ret;
943
+ };
944
+
945
+ x.cursorUp = count => ESC + (typeof count === 'number' ? count : 1) + 'A';
946
+ x.cursorDown = count => ESC + (typeof count === 'number' ? count : 1) + 'B';
947
+ x.cursorForward = count => ESC + (typeof count === 'number' ? count : 1) + 'C';
948
+ x.cursorBackward = count => ESC + (typeof count === 'number' ? count : 1) + 'D';
949
+
950
+ x.cursorLeft = ESC + 'G';
951
+ x.cursorSavePosition = ESC + (isTerminalApp ? '7' : 's');
952
+ x.cursorRestorePosition = ESC + (isTerminalApp ? '8' : 'u');
953
+ x.cursorGetPosition = ESC + '6n';
954
+ x.cursorNextLine = ESC + 'E';
955
+ x.cursorPrevLine = ESC + 'F';
956
+ x.cursorHide = ESC + '?25l';
957
+ x.cursorShow = ESC + '?25h';
958
+
959
+ x.eraseLines = count => {
960
+ let clear = '';
961
+
962
+ for (let i = 0; i < count; i++) {
963
+ clear += x.eraseLine + (i < count - 1 ? x.cursorUp() : '');
964
+ }
965
+
966
+ if (count) {
967
+ clear += x.cursorLeft;
968
+ }
969
+
970
+ return clear;
971
+ };
972
+
973
+ x.eraseEndLine = ESC + 'K';
974
+ x.eraseStartLine = ESC + '1K';
975
+ x.eraseLine = ESC + '2K';
976
+ x.eraseDown = ESC + 'J';
977
+ x.eraseUp = ESC + '1J';
978
+ x.eraseScreen = ESC + '2J';
979
+ x.scrollUp = ESC + 'S';
980
+ x.scrollDown = ESC + 'T';
981
+
982
+ x.clearScreen = '\u001Bc';
983
+
984
+ x.clearTerminal = process.platform === 'win32' ?
985
+ `${x.eraseScreen}${ESC}0f` :
986
+ // 1. Erases the screen (Only done in case `2` is not supported)
987
+ // 2. Erases the whole screen including scrollback buffer
988
+ // 3. Moves cursor to the top-left position
989
+ // More info: https://www.real-world-systems.com/docs/ANSIcode.html
990
+ `${x.eraseScreen}${ESC}3J${ESC}H`;
991
+
992
+ x.beep = BEL;
993
+
994
+ x.link = (text, url) => {
995
+ return [
996
+ OSC,
997
+ '8',
998
+ SEP,
999
+ SEP,
1000
+ url,
1001
+ BEL,
1002
+ text,
1003
+ OSC,
1004
+ '8',
1005
+ SEP,
1006
+ SEP,
1007
+ BEL
1008
+ ].join('');
1009
+ };
1010
+
1011
+ x.image = (buf, opts) => {
1012
+ opts = opts || {};
1013
+
1014
+ let ret = OSC + '1337;File=inline=1';
1015
+
1016
+ if (opts.width) {
1017
+ ret += `;width=${opts.width}`;
1018
+ }
1019
+
1020
+ if (opts.height) {
1021
+ ret += `;height=${opts.height}`;
1022
+ }
1023
+
1024
+ if (opts.preserveAspectRatio === false) {
1025
+ ret += ';preserveAspectRatio=0';
1026
+ }
1027
+
1028
+ return ret + ':' + buf.toString('base64') + BEL;
1029
+ };
1030
+
1031
+ x.iTerm = {};
1032
+
1033
+ x.iTerm.setCwd = cwd => OSC + '50;CurrentDir=' + (cwd || process.cwd()) + BEL;
1034
+
1035
+
1036
+ /***/ }),
1037
+
1038
+ /***/ 797:
1039
+ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
1040
+
1041
+
1042
+ // EXPORTS
1043
+ __webpack_require__.d(__webpack_exports__, {
1044
+ Ay: () => (/* binding */ source)
1045
+ });
1046
+
1047
+ // UNUSED EXPORTS: Chalk, backgroundColorNames, backgroundColors, chalkStderr, colorNames, colors, foregroundColorNames, foregroundColors, modifierNames, modifiers, supportsColor, supportsColorStderr
1048
+
1049
+ ;// CONCATENATED MODULE: ./node_modules/chalk/source/vendor/ansi-styles/index.js
1050
+ const ANSI_BACKGROUND_OFFSET = 10;
1051
+
1052
+ const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`;
1053
+
1054
+ const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`;
1055
+
1056
+ const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
1057
+
1058
+ const styles = {
1059
+ modifier: {
1060
+ reset: [0, 0],
1061
+ // 21 isn't widely supported and 22 does the same thing
1062
+ bold: [1, 22],
1063
+ dim: [2, 22],
1064
+ italic: [3, 23],
1065
+ underline: [4, 24],
1066
+ overline: [53, 55],
1067
+ inverse: [7, 27],
1068
+ hidden: [8, 28],
1069
+ strikethrough: [9, 29],
1070
+ },
1071
+ color: {
1072
+ black: [30, 39],
1073
+ red: [31, 39],
1074
+ green: [32, 39],
1075
+ yellow: [33, 39],
1076
+ blue: [34, 39],
1077
+ magenta: [35, 39],
1078
+ cyan: [36, 39],
1079
+ white: [37, 39],
1080
+
1081
+ // Bright color
1082
+ blackBright: [90, 39],
1083
+ gray: [90, 39], // Alias of `blackBright`
1084
+ grey: [90, 39], // Alias of `blackBright`
1085
+ redBright: [91, 39],
1086
+ greenBright: [92, 39],
1087
+ yellowBright: [93, 39],
1088
+ blueBright: [94, 39],
1089
+ magentaBright: [95, 39],
1090
+ cyanBright: [96, 39],
1091
+ whiteBright: [97, 39],
1092
+ },
1093
+ bgColor: {
1094
+ bgBlack: [40, 49],
1095
+ bgRed: [41, 49],
1096
+ bgGreen: [42, 49],
1097
+ bgYellow: [43, 49],
1098
+ bgBlue: [44, 49],
1099
+ bgMagenta: [45, 49],
1100
+ bgCyan: [46, 49],
1101
+ bgWhite: [47, 49],
1102
+
1103
+ // Bright color
1104
+ bgBlackBright: [100, 49],
1105
+ bgGray: [100, 49], // Alias of `bgBlackBright`
1106
+ bgGrey: [100, 49], // Alias of `bgBlackBright`
1107
+ bgRedBright: [101, 49],
1108
+ bgGreenBright: [102, 49],
1109
+ bgYellowBright: [103, 49],
1110
+ bgBlueBright: [104, 49],
1111
+ bgMagentaBright: [105, 49],
1112
+ bgCyanBright: [106, 49],
1113
+ bgWhiteBright: [107, 49],
1114
+ },
1115
+ };
1116
+
1117
+ const modifierNames = Object.keys(styles.modifier);
1118
+ const foregroundColorNames = Object.keys(styles.color);
1119
+ const backgroundColorNames = Object.keys(styles.bgColor);
1120
+ const colorNames = [...foregroundColorNames, ...backgroundColorNames];
1121
+
1122
+ function assembleStyles() {
1123
+ const codes = new Map();
1124
+
1125
+ for (const [groupName, group] of Object.entries(styles)) {
1126
+ for (const [styleName, style] of Object.entries(group)) {
1127
+ styles[styleName] = {
1128
+ open: `\u001B[${style[0]}m`,
1129
+ close: `\u001B[${style[1]}m`,
1130
+ };
1131
+
1132
+ group[styleName] = styles[styleName];
1133
+
1134
+ codes.set(style[0], style[1]);
1135
+ }
1136
+
1137
+ Object.defineProperty(styles, groupName, {
1138
+ value: group,
1139
+ enumerable: false,
1140
+ });
1141
+ }
1142
+
1143
+ Object.defineProperty(styles, 'codes', {
1144
+ value: codes,
1145
+ enumerable: false,
1146
+ });
1147
+
1148
+ styles.color.close = '\u001B[39m';
1149
+ styles.bgColor.close = '\u001B[49m';
1150
+
1151
+ styles.color.ansi = wrapAnsi16();
1152
+ styles.color.ansi256 = wrapAnsi256();
1153
+ styles.color.ansi16m = wrapAnsi16m();
1154
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
1155
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
1156
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
1157
+
1158
+ // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js
1159
+ Object.defineProperties(styles, {
1160
+ rgbToAnsi256: {
1161
+ value(red, green, blue) {
1162
+ // We use the extended greyscale palette here, with the exception of
1163
+ // black and white. normal palette only has 4 greyscale shades.
1164
+ if (red === green && green === blue) {
1165
+ if (red < 8) {
1166
+ return 16;
1167
+ }
1168
+
1169
+ if (red > 248) {
1170
+ return 231;
1171
+ }
1172
+
1173
+ return Math.round(((red - 8) / 247) * 24) + 232;
1174
+ }
1175
+
1176
+ return 16
1177
+ + (36 * Math.round(red / 255 * 5))
1178
+ + (6 * Math.round(green / 255 * 5))
1179
+ + Math.round(blue / 255 * 5);
1180
+ },
1181
+ enumerable: false,
1182
+ },
1183
+ hexToRgb: {
1184
+ value(hex) {
1185
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
1186
+ if (!matches) {
1187
+ return [0, 0, 0];
1188
+ }
1189
+
1190
+ let [colorString] = matches;
1191
+
1192
+ if (colorString.length === 3) {
1193
+ colorString = [...colorString].map(character => character + character).join('');
1194
+ }
1195
+
1196
+ const integer = Number.parseInt(colorString, 16);
1197
+
1198
+ return [
1199
+ /* eslint-disable no-bitwise */
1200
+ (integer >> 16) & 0xFF,
1201
+ (integer >> 8) & 0xFF,
1202
+ integer & 0xFF,
1203
+ /* eslint-enable no-bitwise */
1204
+ ];
1205
+ },
1206
+ enumerable: false,
1207
+ },
1208
+ hexToAnsi256: {
1209
+ value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
1210
+ enumerable: false,
1211
+ },
1212
+ ansi256ToAnsi: {
1213
+ value(code) {
1214
+ if (code < 8) {
1215
+ return 30 + code;
1216
+ }
1217
+
1218
+ if (code < 16) {
1219
+ return 90 + (code - 8);
1220
+ }
1221
+
1222
+ let red;
1223
+ let green;
1224
+ let blue;
1225
+
1226
+ if (code >= 232) {
1227
+ red = (((code - 232) * 10) + 8) / 255;
1228
+ green = red;
1229
+ blue = red;
1230
+ } else {
1231
+ code -= 16;
1232
+
1233
+ const remainder = code % 36;
1234
+
1235
+ red = Math.floor(code / 36) / 5;
1236
+ green = Math.floor(remainder / 6) / 5;
1237
+ blue = (remainder % 6) / 5;
1238
+ }
1239
+
1240
+ const value = Math.max(red, green, blue) * 2;
1241
+
1242
+ if (value === 0) {
1243
+ return 30;
1244
+ }
1245
+
1246
+ // eslint-disable-next-line no-bitwise
1247
+ let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));
1248
+
1249
+ if (value === 2) {
1250
+ result += 60;
1251
+ }
1252
+
1253
+ return result;
1254
+ },
1255
+ enumerable: false,
1256
+ },
1257
+ rgbToAnsi: {
1258
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
1259
+ enumerable: false,
1260
+ },
1261
+ hexToAnsi: {
1262
+ value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
1263
+ enumerable: false,
1264
+ },
1265
+ });
1266
+
1267
+ return styles;
1268
+ }
1269
+
1270
+ const ansiStyles = assembleStyles();
1271
+
1272
+ /* harmony default export */ const ansi_styles = (ansiStyles);
1273
+
1274
+ // EXTERNAL MODULE: external "node:process"
1275
+ var external_node_process_ = __webpack_require__(708);
1276
+ // EXTERNAL MODULE: external "node:os"
1277
+ var external_node_os_ = __webpack_require__(161);
1278
+ // EXTERNAL MODULE: external "node:tty"
1279
+ var external_node_tty_ = __webpack_require__(66);
1280
+ ;// CONCATENATED MODULE: ./node_modules/chalk/source/vendor/supports-color/index.js
1281
+
1282
+
1283
+
1284
+
1285
+ // From: https://github.com/sindresorhus/has-flag/blob/main/index.js
1286
+ /// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) {
1287
+ function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : external_node_process_.argv) {
1288
+ const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
1289
+ const position = argv.indexOf(prefix + flag);
1290
+ const terminatorPosition = argv.indexOf('--');
1291
+ return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
1292
+ }
1293
+
1294
+ const {env} = external_node_process_;
1295
+
1296
+ let flagForceColor;
1297
+ if (
1298
+ hasFlag('no-color')
1299
+ || hasFlag('no-colors')
1300
+ || hasFlag('color=false')
1301
+ || hasFlag('color=never')
1302
+ ) {
1303
+ flagForceColor = 0;
1304
+ } else if (
1305
+ hasFlag('color')
1306
+ || hasFlag('colors')
1307
+ || hasFlag('color=true')
1308
+ || hasFlag('color=always')
1309
+ ) {
1310
+ flagForceColor = 1;
1311
+ }
1312
+
1313
+ function envForceColor() {
1314
+ if ('FORCE_COLOR' in env) {
1315
+ if (env.FORCE_COLOR === 'true') {
1316
+ return 1;
1317
+ }
1318
+
1319
+ if (env.FORCE_COLOR === 'false') {
1320
+ return 0;
1321
+ }
1322
+
1323
+ return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
1324
+ }
1325
+ }
1326
+
1327
+ function translateLevel(level) {
1328
+ if (level === 0) {
1329
+ return false;
1330
+ }
1331
+
1332
+ return {
1333
+ level,
1334
+ hasBasic: true,
1335
+ has256: level >= 2,
1336
+ has16m: level >= 3,
1337
+ };
1338
+ }
1339
+
1340
+ function _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {
1341
+ const noFlagForceColor = envForceColor();
1342
+ if (noFlagForceColor !== undefined) {
1343
+ flagForceColor = noFlagForceColor;
1344
+ }
1345
+
1346
+ const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
1347
+
1348
+ if (forceColor === 0) {
1349
+ return 0;
1350
+ }
1351
+
1352
+ if (sniffFlags) {
1353
+ if (hasFlag('color=16m')
1354
+ || hasFlag('color=full')
1355
+ || hasFlag('color=truecolor')) {
1356
+ return 3;
1357
+ }
1358
+
1359
+ if (hasFlag('color=256')) {
1360
+ return 2;
1361
+ }
1362
+ }
1363
+
1364
+ // Check for Azure DevOps pipelines.
1365
+ // Has to be above the `!streamIsTTY` check.
1366
+ if ('TF_BUILD' in env && 'AGENT_NAME' in env) {
1367
+ return 1;
1368
+ }
1369
+
1370
+ if (haveStream && !streamIsTTY && forceColor === undefined) {
1371
+ return 0;
1372
+ }
1373
+
1374
+ const min = forceColor || 0;
1375
+
1376
+ if (env.TERM === 'dumb') {
1377
+ return min;
1378
+ }
1379
+
1380
+ if (external_node_process_.platform === 'win32') {
1381
+ // Windows 10 build 10586 is the first Windows release that supports 256 colors.
1382
+ // Windows 10 build 14931 is the first release that supports 16m/TrueColor.
1383
+ const osRelease = external_node_os_.release().split('.');
1384
+ if (
1385
+ Number(osRelease[0]) >= 10
1386
+ && Number(osRelease[2]) >= 10_586
1387
+ ) {
1388
+ return Number(osRelease[2]) >= 14_931 ? 3 : 2;
1389
+ }
1390
+
1391
+ return 1;
1392
+ }
1393
+
1394
+ if ('CI' in env) {
1395
+ if ('GITHUB_ACTIONS' in env || 'GITEA_ACTIONS' in env) {
1396
+ return 3;
1397
+ }
1398
+
1399
+ if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {
1400
+ return 1;
1401
+ }
1402
+
1403
+ return min;
1404
+ }
1405
+
1406
+ if ('TEAMCITY_VERSION' in env) {
1407
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
1408
+ }
1409
+
1410
+ if (env.COLORTERM === 'truecolor') {
1411
+ return 3;
1412
+ }
1413
+
1414
+ if (env.TERM === 'xterm-kitty') {
1415
+ return 3;
1416
+ }
1417
+
1418
+ if ('TERM_PROGRAM' in env) {
1419
+ const version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);
1420
+
1421
+ switch (env.TERM_PROGRAM) {
1422
+ case 'iTerm.app': {
1423
+ return version >= 3 ? 3 : 2;
1424
+ }
1425
+
1426
+ case 'Apple_Terminal': {
1427
+ return 2;
1428
+ }
1429
+ // No default
1430
+ }
1431
+ }
1432
+
1433
+ if (/-256(color)?$/i.test(env.TERM)) {
1434
+ return 2;
1435
+ }
1436
+
1437
+ if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
1438
+ return 1;
1439
+ }
1440
+
1441
+ if ('COLORTERM' in env) {
1442
+ return 1;
1443
+ }
1444
+
1445
+ return min;
1446
+ }
1447
+
1448
+ function createSupportsColor(stream, options = {}) {
1449
+ const level = _supportsColor(stream, {
1450
+ streamIsTTY: stream && stream.isTTY,
1451
+ ...options,
1452
+ });
1453
+
1454
+ return translateLevel(level);
1455
+ }
1456
+
1457
+ const supportsColor = {
1458
+ stdout: createSupportsColor({isTTY: external_node_tty_.isatty(1)}),
1459
+ stderr: createSupportsColor({isTTY: external_node_tty_.isatty(2)}),
1460
+ };
1461
+
1462
+ /* harmony default export */ const supports_color = (supportsColor);
1463
+
1464
+ ;// CONCATENATED MODULE: ./node_modules/chalk/source/utilities.js
1465
+ // TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.
1466
+ function stringReplaceAll(string, substring, replacer) {
1467
+ let index = string.indexOf(substring);
1468
+ if (index === -1) {
1469
+ return string;
1470
+ }
1471
+
1472
+ const substringLength = substring.length;
1473
+ let endIndex = 0;
1474
+ let returnValue = '';
1475
+ do {
1476
+ returnValue += string.slice(endIndex, index) + substring + replacer;
1477
+ endIndex = index + substringLength;
1478
+ index = string.indexOf(substring, endIndex);
1479
+ } while (index !== -1);
1480
+
1481
+ returnValue += string.slice(endIndex);
1482
+ return returnValue;
1483
+ }
1484
+
1485
+ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
1486
+ let endIndex = 0;
1487
+ let returnValue = '';
1488
+ do {
1489
+ const gotCR = string[index - 1] === '\r';
1490
+ returnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\r\n' : '\n') + postfix;
1491
+ endIndex = index + 1;
1492
+ index = string.indexOf('\n', endIndex);
1493
+ } while (index !== -1);
1494
+
1495
+ returnValue += string.slice(endIndex);
1496
+ return returnValue;
1497
+ }
1498
+
1499
+ ;// CONCATENATED MODULE: ./node_modules/chalk/source/index.js
1500
+
1501
+
1502
+
1503
+
1504
+ const {stdout: stdoutColor, stderr: stderrColor} = supports_color;
1505
+
1506
+ const GENERATOR = Symbol('GENERATOR');
1507
+ const STYLER = Symbol('STYLER');
1508
+ const IS_EMPTY = Symbol('IS_EMPTY');
1509
+
1510
+ // `supportsColor.level` → `ansiStyles.color[name]` mapping
1511
+ const levelMapping = [
1512
+ 'ansi',
1513
+ 'ansi',
1514
+ 'ansi256',
1515
+ 'ansi16m',
1516
+ ];
1517
+
1518
+ const source_styles = Object.create(null);
1519
+
1520
+ const applyOptions = (object, options = {}) => {
1521
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
1522
+ throw new Error('The `level` option should be an integer from 0 to 3');
1523
+ }
1524
+
1525
+ // Detect level if not set manually
1526
+ const colorLevel = stdoutColor ? stdoutColor.level : 0;
1527
+ object.level = options.level === undefined ? colorLevel : options.level;
1528
+ };
1529
+
1530
+ class Chalk {
1531
+ constructor(options) {
1532
+ // eslint-disable-next-line no-constructor-return
1533
+ return chalkFactory(options);
1534
+ }
1535
+ }
1536
+
1537
+ const chalkFactory = options => {
1538
+ const chalk = (...strings) => strings.join(' ');
1539
+ applyOptions(chalk, options);
1540
+
1541
+ Object.setPrototypeOf(chalk, createChalk.prototype);
1542
+
1543
+ return chalk;
1544
+ };
1545
+
1546
+ function createChalk(options) {
1547
+ return chalkFactory(options);
1548
+ }
1549
+
1550
+ Object.setPrototypeOf(createChalk.prototype, Function.prototype);
1551
+
1552
+ for (const [styleName, style] of Object.entries(ansi_styles)) {
1553
+ source_styles[styleName] = {
1554
+ get() {
1555
+ const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
1556
+ Object.defineProperty(this, styleName, {value: builder});
1557
+ return builder;
1558
+ },
1559
+ };
1560
+ }
1561
+
1562
+ source_styles.visible = {
1563
+ get() {
1564
+ const builder = createBuilder(this, this[STYLER], true);
1565
+ Object.defineProperty(this, 'visible', {value: builder});
1566
+ return builder;
1567
+ },
1568
+ };
1569
+
1570
+ const getModelAnsi = (model, level, type, ...arguments_) => {
1571
+ if (model === 'rgb') {
1572
+ if (level === 'ansi16m') {
1573
+ return ansi_styles[type].ansi16m(...arguments_);
1574
+ }
1575
+
1576
+ if (level === 'ansi256') {
1577
+ return ansi_styles[type].ansi256(ansi_styles.rgbToAnsi256(...arguments_));
1578
+ }
1579
+
1580
+ return ansi_styles[type].ansi(ansi_styles.rgbToAnsi(...arguments_));
1581
+ }
1582
+
1583
+ if (model === 'hex') {
1584
+ return getModelAnsi('rgb', level, type, ...ansi_styles.hexToRgb(...arguments_));
1585
+ }
1586
+
1587
+ return ansi_styles[type][model](...arguments_);
1588
+ };
1589
+
1590
+ const usedModels = ['rgb', 'hex', 'ansi256'];
1591
+
1592
+ for (const model of usedModels) {
1593
+ source_styles[model] = {
1594
+ get() {
1595
+ const {level} = this;
1596
+ return function (...arguments_) {
1597
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansi_styles.color.close, this[STYLER]);
1598
+ return createBuilder(this, styler, this[IS_EMPTY]);
1599
+ };
1600
+ },
1601
+ };
1602
+
1603
+ const bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);
1604
+ source_styles[bgModel] = {
1605
+ get() {
1606
+ const {level} = this;
1607
+ return function (...arguments_) {
1608
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansi_styles.bgColor.close, this[STYLER]);
1609
+ return createBuilder(this, styler, this[IS_EMPTY]);
1610
+ };
1611
+ },
1612
+ };
1613
+ }
1614
+
1615
+ const proto = Object.defineProperties(() => {}, {
1616
+ ...source_styles,
1617
+ level: {
1618
+ enumerable: true,
1619
+ get() {
1620
+ return this[GENERATOR].level;
1621
+ },
1622
+ set(level) {
1623
+ this[GENERATOR].level = level;
1624
+ },
1625
+ },
1626
+ });
1627
+
1628
+ const createStyler = (open, close, parent) => {
1629
+ let openAll;
1630
+ let closeAll;
1631
+ if (parent === undefined) {
1632
+ openAll = open;
1633
+ closeAll = close;
1634
+ } else {
1635
+ openAll = parent.openAll + open;
1636
+ closeAll = close + parent.closeAll;
1637
+ }
1638
+
1639
+ return {
1640
+ open,
1641
+ close,
1642
+ openAll,
1643
+ closeAll,
1644
+ parent,
1645
+ };
1646
+ };
1647
+
1648
+ const createBuilder = (self, _styler, _isEmpty) => {
1649
+ // Single argument is hot path, implicit coercion is faster than anything
1650
+ // eslint-disable-next-line no-implicit-coercion
1651
+ const builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));
1652
+
1653
+ // We alter the prototype because we must return a function, but there is
1654
+ // no way to create a function with a different prototype
1655
+ Object.setPrototypeOf(builder, proto);
1656
+
1657
+ builder[GENERATOR] = self;
1658
+ builder[STYLER] = _styler;
1659
+ builder[IS_EMPTY] = _isEmpty;
1660
+
1661
+ return builder;
1662
+ };
1663
+
1664
+ const applyStyle = (self, string) => {
1665
+ if (self.level <= 0 || !string) {
1666
+ return self[IS_EMPTY] ? '' : string;
1667
+ }
1668
+
1669
+ let styler = self[STYLER];
1670
+
1671
+ if (styler === undefined) {
1672
+ return string;
1673
+ }
1674
+
1675
+ const {openAll, closeAll} = styler;
1676
+ if (string.includes('\u001B')) {
1677
+ while (styler !== undefined) {
1678
+ // Replace any instances already present with a re-opening code
1679
+ // otherwise only the part of the string until said closing code
1680
+ // will be colored, and the rest will simply be 'plain'.
1681
+ string = stringReplaceAll(string, styler.close, styler.open);
1682
+
1683
+ styler = styler.parent;
1684
+ }
1685
+ }
1686
+
1687
+ // We can move both next actions out of loop, because remaining actions in loop won't have
1688
+ // any/visible effect on parts we add here. Close the styling before a linebreak and reopen
1689
+ // after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92
1690
+ const lfIndex = string.indexOf('\n');
1691
+ if (lfIndex !== -1) {
1692
+ string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
1693
+ }
1694
+
1695
+ return openAll + string + closeAll;
1696
+ };
1697
+
1698
+ Object.defineProperties(createChalk.prototype, source_styles);
1699
+
1700
+ const chalk = createChalk();
1701
+ const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});
1702
+
1703
+
1704
+
1705
+
1706
+
1707
+ /* harmony default export */ const source = (chalk);
1708
+
1709
+
1710
+ /***/ })
1711
+
1712
+ };
1713
+ ;