keycloakify 10.0.0-rc.14 → 10.0.0-rc.141

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 (908) hide show
  1. package/PUBLIC_URL.d.ts +1 -1
  2. package/PUBLIC_URL.js +4 -4
  3. package/PUBLIC_URL.js.map +1 -1
  4. package/README.md +37 -247
  5. package/account/DefaultPage.d.ts +5 -0
  6. package/account/{Fallback.js → DefaultPage.js} +3 -3
  7. package/account/DefaultPage.js.map +1 -0
  8. package/account/{kcContext → KcContext}/KcContext.d.ts +17 -1
  9. package/account/KcContext/KcContext.js.map +1 -0
  10. package/account/KcContext/getKcContextMock.d.ts +24 -0
  11. package/account/KcContext/getKcContextMock.js +28 -0
  12. package/account/KcContext/getKcContextMock.js.map +1 -0
  13. package/account/KcContext/index.d.ts +2 -0
  14. package/account/KcContext/index.js +2 -0
  15. package/account/KcContext/index.js.map +1 -0
  16. package/account/{kcContext → KcContext}/kcContextMocks.d.ts +1 -1
  17. package/account/KcContext/kcContextMocks.js +146 -0
  18. package/account/KcContext/kcContextMocks.js.map +1 -0
  19. package/account/Template.d.ts +2 -2
  20. package/account/Template.js +14 -12
  21. package/account/Template.js.map +1 -1
  22. package/account/TemplateProps.d.ts +3 -5
  23. package/account/i18n/GenericI18n.d.ts +6 -0
  24. package/account/i18n/GenericI18n.js +2 -0
  25. package/account/i18n/GenericI18n.js.map +1 -0
  26. package/account/i18n/i18n.d.ts +42 -50
  27. package/account/i18n/i18n.js +91 -92
  28. package/account/i18n/i18n.js.map +1 -1
  29. package/account/i18n/index.d.ts +5 -1
  30. package/account/i18n/index.js +1 -1
  31. package/account/i18n/index.js.map +1 -1
  32. package/account/i18n/{baseMessages → messages_defaultSet}/ar.d.ts +2 -0
  33. package/account/i18n/{baseMessages → messages_defaultSet}/ar.js +3 -1
  34. package/account/i18n/messages_defaultSet/ar.js.map +1 -0
  35. package/account/i18n/{baseMessages → messages_defaultSet}/ca.d.ts +2 -0
  36. package/account/i18n/{baseMessages → messages_defaultSet}/ca.js +3 -1
  37. package/account/i18n/messages_defaultSet/ca.js.map +1 -0
  38. package/account/i18n/{baseMessages → messages_defaultSet}/cs.d.ts +2 -0
  39. package/account/i18n/{baseMessages → messages_defaultSet}/cs.js +3 -1
  40. package/account/i18n/messages_defaultSet/cs.js.map +1 -0
  41. package/account/i18n/{baseMessages → messages_defaultSet}/da.d.ts +2 -0
  42. package/account/i18n/{baseMessages → messages_defaultSet}/da.js +3 -1
  43. package/account/i18n/messages_defaultSet/da.js.map +1 -0
  44. package/account/i18n/{baseMessages → messages_defaultSet}/de.d.ts +2 -0
  45. package/account/i18n/{baseMessages → messages_defaultSet}/de.js +3 -1
  46. package/account/i18n/messages_defaultSet/de.js.map +1 -0
  47. package/account/i18n/{baseMessages → messages_defaultSet}/el.d.ts +2 -0
  48. package/account/i18n/{baseMessages → messages_defaultSet}/el.js +3 -1
  49. package/account/i18n/messages_defaultSet/el.js.map +1 -0
  50. package/account/i18n/{baseMessages → messages_defaultSet}/en.d.ts +2 -0
  51. package/account/i18n/{baseMessages → messages_defaultSet}/en.js +3 -1
  52. package/account/i18n/messages_defaultSet/en.js.map +1 -0
  53. package/account/i18n/{baseMessages → messages_defaultSet}/es.d.ts +2 -0
  54. package/account/i18n/{baseMessages → messages_defaultSet}/es.js +3 -1
  55. package/account/i18n/messages_defaultSet/es.js.map +1 -0
  56. package/account/i18n/{baseMessages → messages_defaultSet}/fa.d.ts +2 -0
  57. package/account/i18n/{baseMessages → messages_defaultSet}/fa.js +3 -1
  58. package/account/i18n/messages_defaultSet/fa.js.map +1 -0
  59. package/account/i18n/{baseMessages → messages_defaultSet}/fi.d.ts +2 -0
  60. package/account/i18n/{baseMessages → messages_defaultSet}/fi.js +3 -1
  61. package/account/i18n/messages_defaultSet/fi.js.map +1 -0
  62. package/account/i18n/{baseMessages → messages_defaultSet}/fr.d.ts +2 -0
  63. package/account/i18n/{baseMessages → messages_defaultSet}/fr.js +3 -1
  64. package/account/i18n/messages_defaultSet/fr.js.map +1 -0
  65. package/account/i18n/{baseMessages → messages_defaultSet}/hu.d.ts +2 -0
  66. package/account/i18n/{baseMessages → messages_defaultSet}/hu.js +3 -1
  67. package/account/i18n/messages_defaultSet/hu.js.map +1 -0
  68. package/account/i18n/{baseMessages → messages_defaultSet}/index.d.ts +19 -1
  69. package/account/i18n/{baseMessages → messages_defaultSet}/index.js +3 -3
  70. package/{login/i18n/baseMessages → account/i18n/messages_defaultSet}/index.js.map +1 -1
  71. package/account/i18n/{baseMessages → messages_defaultSet}/it.d.ts +2 -0
  72. package/account/i18n/{baseMessages → messages_defaultSet}/it.js +3 -1
  73. package/account/i18n/messages_defaultSet/it.js.map +1 -0
  74. package/account/i18n/{baseMessages → messages_defaultSet}/ja.d.ts +2 -0
  75. package/account/i18n/{baseMessages → messages_defaultSet}/ja.js +3 -1
  76. package/account/i18n/messages_defaultSet/ja.js.map +1 -0
  77. package/account/i18n/{baseMessages → messages_defaultSet}/lt.d.ts +2 -0
  78. package/account/i18n/{baseMessages → messages_defaultSet}/lt.js +3 -1
  79. package/account/i18n/messages_defaultSet/lt.js.map +1 -0
  80. package/account/i18n/{baseMessages → messages_defaultSet}/lv.d.ts +2 -0
  81. package/account/i18n/{baseMessages → messages_defaultSet}/lv.js +3 -1
  82. package/account/i18n/messages_defaultSet/lv.js.map +1 -0
  83. package/account/i18n/{baseMessages → messages_defaultSet}/nl.d.ts +2 -0
  84. package/account/i18n/{baseMessages → messages_defaultSet}/nl.js +3 -1
  85. package/account/i18n/messages_defaultSet/nl.js.map +1 -0
  86. package/account/i18n/{baseMessages → messages_defaultSet}/no.d.ts +2 -0
  87. package/account/i18n/{baseMessages → messages_defaultSet}/no.js +3 -1
  88. package/account/i18n/messages_defaultSet/no.js.map +1 -0
  89. package/account/i18n/{baseMessages → messages_defaultSet}/pl.d.ts +2 -0
  90. package/account/i18n/{baseMessages → messages_defaultSet}/pl.js +3 -1
  91. package/account/i18n/messages_defaultSet/pl.js.map +1 -0
  92. package/account/i18n/{baseMessages → messages_defaultSet}/pt-BR.d.ts +2 -0
  93. package/account/i18n/{baseMessages → messages_defaultSet}/pt-BR.js +3 -1
  94. package/account/i18n/messages_defaultSet/pt-BR.js.map +1 -0
  95. package/account/i18n/{baseMessages → messages_defaultSet}/ru.d.ts +2 -0
  96. package/account/i18n/{baseMessages → messages_defaultSet}/ru.js +3 -1
  97. package/account/i18n/messages_defaultSet/ru.js.map +1 -0
  98. package/account/i18n/{baseMessages → messages_defaultSet}/sk.d.ts +2 -0
  99. package/account/i18n/{baseMessages → messages_defaultSet}/sk.js +3 -1
  100. package/account/i18n/messages_defaultSet/sk.js.map +1 -0
  101. package/account/i18n/{baseMessages → messages_defaultSet}/sv.d.ts +2 -0
  102. package/account/i18n/{baseMessages → messages_defaultSet}/sv.js +3 -1
  103. package/account/i18n/messages_defaultSet/sv.js.map +1 -0
  104. package/account/i18n/{baseMessages → messages_defaultSet}/th.d.ts +2 -0
  105. package/account/i18n/{baseMessages → messages_defaultSet}/th.js +3 -1
  106. package/account/i18n/messages_defaultSet/th.js.map +1 -0
  107. package/account/i18n/{baseMessages → messages_defaultSet}/tr.d.ts +2 -0
  108. package/account/i18n/{baseMessages → messages_defaultSet}/tr.js +3 -1
  109. package/account/i18n/messages_defaultSet/tr.js.map +1 -0
  110. package/account/i18n/{baseMessages → messages_defaultSet}/uk.d.ts +2 -0
  111. package/account/i18n/{baseMessages → messages_defaultSet}/uk.js +3 -1
  112. package/account/i18n/messages_defaultSet/uk.js.map +1 -0
  113. package/account/i18n/{baseMessages → messages_defaultSet}/zh-CN.d.ts +2 -0
  114. package/account/i18n/{baseMessages → messages_defaultSet}/zh-CN.js +3 -1
  115. package/account/i18n/messages_defaultSet/zh-CN.js.map +1 -0
  116. package/account/i18n/useI18n.d.ts +14 -0
  117. package/account/i18n/useI18n.js +59 -0
  118. package/account/i18n/useI18n.js.map +1 -0
  119. package/account/index.d.ts +3 -7
  120. package/account/index.js +1 -5
  121. package/account/index.js.map +1 -1
  122. package/account/lib/kcClsx.d.ts +9 -0
  123. package/account/lib/kcClsx.js +19 -0
  124. package/account/lib/kcClsx.js.map +1 -0
  125. package/account/pages/Account.d.ts +1 -1
  126. package/account/pages/Account.js +7 -6
  127. package/account/pages/Account.js.map +1 -1
  128. package/account/pages/Applications.d.ts +1 -1
  129. package/account/pages/Applications.js +8 -9
  130. package/account/pages/Applications.js.map +1 -1
  131. package/account/pages/FederatedIdentity.d.ts +3 -3
  132. package/account/pages/FederatedIdentity.js +1 -1
  133. package/account/pages/FederatedIdentity.js.map +1 -1
  134. package/account/pages/Log.d.ts +1 -1
  135. package/account/pages/Log.js +3 -3
  136. package/account/pages/Log.js.map +1 -1
  137. package/account/pages/PageProps.d.ts +4 -6
  138. package/account/pages/Password.d.ts +1 -1
  139. package/account/pages/Password.js +16 -13
  140. package/account/pages/Password.js.map +1 -1
  141. package/account/pages/Sessions.d.ts +1 -1
  142. package/account/pages/Sessions.js +3 -4
  143. package/account/pages/Sessions.js.map +1 -1
  144. package/account/pages/Totp.d.ts +1 -1
  145. package/account/pages/Totp.js +9 -10
  146. package/account/pages/Totp.js.map +1 -1
  147. package/bin/193.index.js +160 -0
  148. package/bin/246.index.js +75118 -371
  149. package/bin/266.index.js +806 -0
  150. package/bin/{772.index.js → 304.index.js} +262 -678
  151. package/bin/31.index.js +865 -0
  152. package/bin/430.index.js +1349 -0
  153. package/bin/440.index.js +1538 -0
  154. package/bin/453.index.js +821 -0
  155. package/bin/525.index.js +41826 -0
  156. package/bin/526.index.js +1345 -0
  157. package/bin/599.index.js +567 -0
  158. package/bin/622.index.js +729 -0
  159. package/bin/678.index.js +10486 -0
  160. package/bin/697.index.js +4749 -0
  161. package/bin/720.index.js +243 -0
  162. package/bin/743.index.js +70 -0
  163. package/bin/780.index.js +895 -0
  164. package/bin/786.index.js +185 -0
  165. package/bin/877.index.js +275 -0
  166. package/bin/932.index.js +957 -0
  167. package/bin/941.index.js +4215 -0
  168. package/bin/97.index.js +699 -0
  169. package/bin/main.js +7685 -141696
  170. package/bin/shared/KeycloakVersionRange.d.ts +5 -0
  171. package/bin/shared/KeycloakVersionRange.js.map +1 -0
  172. package/bin/shared/buildContext.d.ts +110 -0
  173. package/bin/shared/buildContext.js.map +1 -0
  174. package/bin/shared/constants.d.ts +18 -15
  175. package/bin/shared/constants.js +15 -15
  176. package/bin/shared/constants.js.map +1 -1
  177. package/bin/shared/copyKeycloakResourcesToPublic.d.ts +8 -0
  178. package/bin/shared/copyKeycloakResourcesToPublic.js.map +1 -0
  179. package/bin/shared/downloadKeycloakDefaultTheme.d.ts +11 -0
  180. package/bin/shared/downloadKeycloakDefaultTheme.js.map +1 -0
  181. package/bin/shared/downloadKeycloakStaticResources.d.ts +9 -0
  182. package/bin/shared/downloadKeycloakStaticResources.js.map +1 -0
  183. package/bin/shared/generateKcGenTs.d.ts +15 -0
  184. package/bin/shared/generateKcGenTs.js.map +1 -0
  185. package/bin/shared/getLatestsSemVersionedTag.d.ts +15 -0
  186. package/bin/shared/getLatestsSemVersionedTag.js.map +1 -0
  187. package/bin/shared/metaInfKeycloakThemes.d.ts +13 -0
  188. package/bin/shared/metaInfKeycloakThemes.js.map +1 -0
  189. package/bin/shared/promptKeycloakVersion.d.ts +9 -0
  190. package/bin/shared/promptKeycloakVersion.js.map +1 -0
  191. package/lib/BASE_URL.js.map +1 -1
  192. package/lib/getKcClsx.d.ts +11 -0
  193. package/lib/getKcClsx.js +56 -0
  194. package/lib/getKcClsx.js.map +1 -0
  195. package/login/{Fallback.d.ts → DefaultPage.d.ts} +7 -6
  196. package/login/{Fallback.js → DefaultPage.js} +2 -2
  197. package/login/DefaultPage.js.map +1 -0
  198. package/login/{kcContext → KcContext}/KcContext.d.ts +43 -25
  199. package/login/KcContext/KcContext.js.map +1 -0
  200. package/login/KcContext/getKcContextMock.d.ts +24 -0
  201. package/login/KcContext/getKcContextMock.js +28 -0
  202. package/login/KcContext/getKcContextMock.js.map +1 -0
  203. package/login/KcContext/index.d.ts +2 -0
  204. package/login/KcContext/index.js +2 -0
  205. package/login/KcContext/index.js.map +1 -0
  206. package/login/{kcContext → KcContext}/kcContextMocks.d.ts +1 -1
  207. package/login/KcContext/kcContextMocks.js +333 -0
  208. package/login/KcContext/kcContextMocks.js.map +1 -0
  209. package/login/Template.d.ts +2 -2
  210. package/login/Template.js +33 -27
  211. package/login/Template.js.map +1 -1
  212. package/login/TemplateProps.d.ts +3 -6
  213. package/login/UserProfileFormFields.d.ts +3 -20
  214. package/login/UserProfileFormFields.js +81 -124
  215. package/login/UserProfileFormFields.js.map +1 -1
  216. package/login/UserProfileFormFieldsProps.d.ts +24 -0
  217. package/login/UserProfileFormFieldsProps.js +2 -0
  218. package/login/UserProfileFormFieldsProps.js.map +1 -0
  219. package/login/i18n/GenericI18n.d.ts +6 -0
  220. package/login/i18n/GenericI18n.js +2 -0
  221. package/login/i18n/GenericI18n.js.map +1 -0
  222. package/login/i18n/i18n.d.ts +42 -52
  223. package/login/i18n/i18n.js +93 -94
  224. package/login/i18n/i18n.js.map +1 -1
  225. package/login/i18n/index.d.ts +5 -1
  226. package/login/i18n/index.js +1 -1
  227. package/login/i18n/index.js.map +1 -1
  228. package/login/i18n/{baseMessages → messages_defaultSet}/ar.d.ts +9 -0
  229. package/login/i18n/{baseMessages → messages_defaultSet}/ar.js +11 -2
  230. package/login/i18n/messages_defaultSet/ar.js.map +1 -0
  231. package/login/i18n/{baseMessages → messages_defaultSet}/ca.d.ts +10 -1
  232. package/login/i18n/{baseMessages → messages_defaultSet}/ca.js +12 -3
  233. package/login/i18n/messages_defaultSet/ca.js.map +1 -0
  234. package/login/i18n/{baseMessages → messages_defaultSet}/cs.d.ts +9 -0
  235. package/login/i18n/{baseMessages → messages_defaultSet}/cs.js +11 -2
  236. package/login/i18n/messages_defaultSet/cs.js.map +1 -0
  237. package/login/i18n/{baseMessages → messages_defaultSet}/da.d.ts +9 -0
  238. package/login/i18n/{baseMessages → messages_defaultSet}/da.js +11 -2
  239. package/login/i18n/messages_defaultSet/da.js.map +1 -0
  240. package/login/i18n/{baseMessages → messages_defaultSet}/de.d.ts +9 -0
  241. package/login/i18n/{baseMessages → messages_defaultSet}/de.js +11 -2
  242. package/login/i18n/messages_defaultSet/de.js.map +1 -0
  243. package/login/i18n/{baseMessages → messages_defaultSet}/el.d.ts +9 -1
  244. package/login/i18n/{baseMessages → messages_defaultSet}/el.js +11 -3
  245. package/login/i18n/messages_defaultSet/el.js.map +1 -0
  246. package/login/i18n/{baseMessages → messages_defaultSet}/en.d.ts +10 -1
  247. package/login/i18n/{baseMessages → messages_defaultSet}/en.js +12 -3
  248. package/login/i18n/messages_defaultSet/en.js.map +1 -0
  249. package/login/i18n/{baseMessages → messages_defaultSet}/es.d.ts +10 -1
  250. package/login/i18n/{baseMessages → messages_defaultSet}/es.js +12 -3
  251. package/login/i18n/messages_defaultSet/es.js.map +1 -0
  252. package/login/i18n/{baseMessages → messages_defaultSet}/fa.d.ts +9 -1
  253. package/login/i18n/{baseMessages → messages_defaultSet}/fa.js +11 -3
  254. package/login/i18n/messages_defaultSet/fa.js.map +1 -0
  255. package/login/i18n/{baseMessages → messages_defaultSet}/fi.d.ts +9 -0
  256. package/login/i18n/{baseMessages → messages_defaultSet}/fi.js +11 -2
  257. package/login/i18n/messages_defaultSet/fi.js.map +1 -0
  258. package/login/i18n/{baseMessages → messages_defaultSet}/fr.d.ts +9 -0
  259. package/login/i18n/{baseMessages → messages_defaultSet}/fr.js +11 -2
  260. package/login/i18n/messages_defaultSet/fr.js.map +1 -0
  261. package/login/i18n/{baseMessages → messages_defaultSet}/hu.d.ts +10 -1
  262. package/login/i18n/{baseMessages → messages_defaultSet}/hu.js +12 -3
  263. package/login/i18n/messages_defaultSet/hu.js.map +1 -0
  264. package/login/i18n/{baseMessages → messages_defaultSet}/index.d.ts +110 -3
  265. package/login/i18n/{baseMessages → messages_defaultSet}/index.js +3 -3
  266. package/login/i18n/messages_defaultSet/index.js.map +1 -0
  267. package/login/i18n/{baseMessages → messages_defaultSet}/it.d.ts +9 -0
  268. package/login/i18n/{baseMessages → messages_defaultSet}/it.js +11 -2
  269. package/login/i18n/messages_defaultSet/it.js.map +1 -0
  270. package/login/i18n/{baseMessages → messages_defaultSet}/ja.d.ts +9 -0
  271. package/login/i18n/{baseMessages → messages_defaultSet}/ja.js +11 -2
  272. package/login/i18n/messages_defaultSet/ja.js.map +1 -0
  273. package/login/i18n/{baseMessages → messages_defaultSet}/lt.d.ts +9 -0
  274. package/login/i18n/{baseMessages → messages_defaultSet}/lt.js +11 -2
  275. package/login/i18n/messages_defaultSet/lt.js.map +1 -0
  276. package/login/i18n/{baseMessages → messages_defaultSet}/lv.d.ts +9 -0
  277. package/login/i18n/{baseMessages → messages_defaultSet}/lv.js +11 -2
  278. package/login/i18n/messages_defaultSet/lv.js.map +1 -0
  279. package/login/i18n/{baseMessages → messages_defaultSet}/nl.d.ts +9 -0
  280. package/login/i18n/{baseMessages → messages_defaultSet}/nl.js +11 -2
  281. package/login/i18n/messages_defaultSet/nl.js.map +1 -0
  282. package/login/i18n/{baseMessages → messages_defaultSet}/no.d.ts +9 -0
  283. package/login/i18n/{baseMessages → messages_defaultSet}/no.js +11 -2
  284. package/login/i18n/messages_defaultSet/no.js.map +1 -0
  285. package/login/i18n/{baseMessages → messages_defaultSet}/pl.d.ts +9 -0
  286. package/login/i18n/{baseMessages → messages_defaultSet}/pl.js +11 -2
  287. package/login/i18n/messages_defaultSet/pl.js.map +1 -0
  288. package/login/i18n/{baseMessages → messages_defaultSet}/pt-BR.d.ts +9 -0
  289. package/login/i18n/{baseMessages → messages_defaultSet}/pt-BR.js +11 -2
  290. package/login/i18n/messages_defaultSet/pt-BR.js.map +1 -0
  291. package/login/i18n/{baseMessages → messages_defaultSet}/ru.d.ts +9 -0
  292. package/login/i18n/{baseMessages → messages_defaultSet}/ru.js +11 -2
  293. package/login/i18n/messages_defaultSet/ru.js.map +1 -0
  294. package/login/i18n/{baseMessages → messages_defaultSet}/sk.d.ts +9 -0
  295. package/login/i18n/{baseMessages → messages_defaultSet}/sk.js +11 -2
  296. package/login/i18n/messages_defaultSet/sk.js.map +1 -0
  297. package/login/i18n/{baseMessages → messages_defaultSet}/sv.d.ts +9 -0
  298. package/login/i18n/{baseMessages → messages_defaultSet}/sv.js +11 -2
  299. package/login/i18n/messages_defaultSet/sv.js.map +1 -0
  300. package/login/i18n/{baseMessages → messages_defaultSet}/th.d.ts +9 -0
  301. package/login/i18n/{baseMessages → messages_defaultSet}/th.js +11 -2
  302. package/login/i18n/messages_defaultSet/th.js.map +1 -0
  303. package/login/i18n/{baseMessages → messages_defaultSet}/tr.d.ts +9 -0
  304. package/login/i18n/{baseMessages → messages_defaultSet}/tr.js +11 -2
  305. package/login/i18n/messages_defaultSet/tr.js.map +1 -0
  306. package/login/i18n/{baseMessages → messages_defaultSet}/uk.d.ts +9 -0
  307. package/login/i18n/{baseMessages → messages_defaultSet}/uk.js +11 -2
  308. package/login/i18n/messages_defaultSet/uk.js.map +1 -0
  309. package/login/i18n/{baseMessages → messages_defaultSet}/zh-CN.d.ts +10 -1
  310. package/login/i18n/{baseMessages → messages_defaultSet}/zh-CN.js +12 -3
  311. package/login/i18n/messages_defaultSet/zh-CN.js.map +1 -0
  312. package/login/i18n/useI18n.d.ts +14 -0
  313. package/login/i18n/useI18n.js +59 -0
  314. package/login/i18n/useI18n.js.map +1 -0
  315. package/login/index.d.ts +3 -8
  316. package/login/index.js +1 -6
  317. package/login/index.js.map +1 -1
  318. package/login/lib/kcClsx.d.ts +9 -0
  319. package/login/lib/kcClsx.js +130 -0
  320. package/login/lib/kcClsx.js.map +1 -0
  321. package/login/lib/useUserProfileForm.d.ts +22 -8
  322. package/login/lib/useUserProfileForm.js +439 -295
  323. package/login/lib/useUserProfileForm.js.map +1 -1
  324. package/login/pages/Code.d.ts +1 -1
  325. package/login/pages/Code.js +3 -3
  326. package/login/pages/Code.js.map +1 -1
  327. package/login/pages/DeleteAccountConfirm.d.ts +1 -1
  328. package/login/pages/DeleteAccountConfirm.js +7 -4
  329. package/login/pages/DeleteAccountConfirm.js.map +1 -1
  330. package/login/pages/DeleteCredential.d.ts +1 -1
  331. package/login/pages/DeleteCredential.js +3 -4
  332. package/login/pages/DeleteCredential.js.map +1 -1
  333. package/login/pages/Error.d.ts +1 -1
  334. package/login/pages/Error.js +1 -1
  335. package/login/pages/Error.js.map +1 -1
  336. package/login/pages/FrontchannelLogout.d.ts +1 -1
  337. package/login/pages/FrontchannelLogout.js +1 -1
  338. package/login/pages/FrontchannelLogout.js.map +1 -1
  339. package/login/pages/IdpReviewUserProfile.d.ts +4 -3
  340. package/login/pages/IdpReviewUserProfile.js +4 -5
  341. package/login/pages/IdpReviewUserProfile.js.map +1 -1
  342. package/login/pages/Info.d.ts +1 -1
  343. package/login/pages/Info.js +19 -9
  344. package/login/pages/Info.js.map +1 -1
  345. package/login/pages/Login.d.ts +1 -1
  346. package/login/pages/Login.js +12 -8
  347. package/login/pages/Login.js.map +1 -1
  348. package/login/pages/LoginConfigTotp.d.ts +1 -1
  349. package/login/pages/LoginConfigTotp.js +10 -7
  350. package/login/pages/LoginConfigTotp.js.map +1 -1
  351. package/login/pages/LoginIdpLinkConfirm.d.ts +1 -1
  352. package/login/pages/LoginIdpLinkConfirm.js +3 -4
  353. package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
  354. package/login/pages/LoginIdpLinkEmail.d.ts +2 -2
  355. package/login/pages/LoginIdpLinkEmail.js +1 -1
  356. package/login/pages/LoginIdpLinkEmail.js.map +1 -1
  357. package/login/pages/LoginOauth2DeviceVerifyUserCode.d.ts +3 -3
  358. package/login/pages/LoginOauth2DeviceVerifyUserCode.js +3 -4
  359. package/login/pages/LoginOauth2DeviceVerifyUserCode.js.map +1 -1
  360. package/login/pages/LoginOauthGrant.d.ts +3 -3
  361. package/login/pages/LoginOauthGrant.js +4 -5
  362. package/login/pages/LoginOauthGrant.js.map +1 -1
  363. package/login/pages/LoginOtp.d.ts +1 -1
  364. package/login/pages/LoginOtp.js +5 -4
  365. package/login/pages/LoginOtp.js.map +1 -1
  366. package/login/pages/LoginPageExpired.d.ts +1 -1
  367. package/login/pages/LoginPageExpired.js +1 -1
  368. package/login/pages/LoginPageExpired.js.map +1 -1
  369. package/login/pages/LoginPassword.d.ts +1 -1
  370. package/login/pages/LoginPassword.js +9 -7
  371. package/login/pages/LoginPassword.js.map +1 -1
  372. package/login/pages/LoginRecoveryAuthnCodeConfig.d.ts +1 -1
  373. package/login/pages/LoginRecoveryAuthnCodeConfig.js +16 -16
  374. package/login/pages/LoginRecoveryAuthnCodeConfig.js.map +1 -1
  375. package/login/pages/LoginRecoveryAuthnCodeInput.d.ts +1 -1
  376. package/login/pages/LoginRecoveryAuthnCodeInput.js +5 -4
  377. package/login/pages/LoginRecoveryAuthnCodeInput.js.map +1 -1
  378. package/login/pages/LoginResetOtp.d.ts +1 -1
  379. package/login/pages/LoginResetOtp.js +3 -4
  380. package/login/pages/LoginResetOtp.js.map +1 -1
  381. package/login/pages/LoginResetPassword.d.ts +1 -1
  382. package/login/pages/LoginResetPassword.js +6 -5
  383. package/login/pages/LoginResetPassword.js.map +1 -1
  384. package/login/pages/LoginUpdatePassword.d.ts +1 -1
  385. package/login/pages/LoginUpdatePassword.js +12 -9
  386. package/login/pages/LoginUpdatePassword.js.map +1 -1
  387. package/login/pages/LoginUpdateProfile.d.ts +4 -3
  388. package/login/pages/LoginUpdateProfile.js +5 -9
  389. package/login/pages/LoginUpdateProfile.js.map +1 -1
  390. package/login/pages/LoginUsername.d.ts +1 -1
  391. package/login/pages/LoginUsername.js +5 -5
  392. package/login/pages/LoginUsername.js.map +1 -1
  393. package/login/pages/LoginVerifyEmail.d.ts +1 -1
  394. package/login/pages/LoginVerifyEmail.js +1 -1
  395. package/login/pages/LoginVerifyEmail.js.map +1 -1
  396. package/login/pages/LoginX509Info.d.ts +1 -1
  397. package/login/pages/LoginX509Info.js +3 -4
  398. package/login/pages/LoginX509Info.js.map +1 -1
  399. package/login/pages/LogoutConfirm.d.ts +1 -1
  400. package/login/pages/LogoutConfirm.js +3 -4
  401. package/login/pages/LogoutConfirm.js.map +1 -1
  402. package/login/pages/PageProps.d.ts +3 -5
  403. package/login/pages/Register.d.ts +4 -3
  404. package/login/pages/Register.js +9 -19
  405. package/login/pages/Register.js.map +1 -1
  406. package/login/pages/SamlPostForm.d.ts +1 -1
  407. package/login/pages/SamlPostForm.js +2 -2
  408. package/login/pages/SamlPostForm.js.map +1 -1
  409. package/login/pages/SelectAuthenticator.d.ts +2 -2
  410. package/login/pages/SelectAuthenticator.js +4 -8
  411. package/login/pages/SelectAuthenticator.js.map +1 -1
  412. package/login/pages/Terms.d.ts +2 -2
  413. package/login/pages/Terms.js +3 -10
  414. package/login/pages/Terms.js.map +1 -1
  415. package/login/pages/UpdateEmail.d.ts +3 -2
  416. package/login/pages/UpdateEmail.js +6 -10
  417. package/login/pages/UpdateEmail.js.map +1 -1
  418. package/login/pages/WebauthnAuthenticate.d.ts +1 -1
  419. package/login/pages/WebauthnAuthenticate.js +25 -22
  420. package/login/pages/WebauthnAuthenticate.js.map +1 -1
  421. package/login/pages/WebauthnError.d.ts +1 -1
  422. package/login/pages/WebauthnError.js +4 -5
  423. package/login/pages/WebauthnError.js.map +1 -1
  424. package/login/pages/WebauthnRegister.d.ts +1 -1
  425. package/login/pages/WebauthnRegister.js +16 -17
  426. package/login/pages/WebauthnRegister.js.map +1 -1
  427. package/package.json +824 -710
  428. package/src/PUBLIC_URL.ts +4 -4
  429. package/src/account/{Fallback.tsx → DefaultPage.tsx} +5 -5
  430. package/src/account/{kcContext → KcContext}/KcContext.ts +28 -3
  431. package/src/account/KcContext/getKcContextMock.ts +69 -0
  432. package/src/account/KcContext/index.ts +2 -0
  433. package/src/account/KcContext/kcContextMocks.ts +193 -0
  434. package/src/account/Template.tsx +20 -17
  435. package/src/account/TemplateProps.ts +4 -5
  436. package/src/account/i18n/GenericI18n.tsx +6 -0
  437. package/src/account/i18n/i18n.tsx +164 -144
  438. package/src/account/i18n/index.ts +5 -1
  439. package/src/account/i18n/{baseMessages → messages_defaultSet}/ar.ts +3 -1
  440. package/src/account/i18n/{baseMessages → messages_defaultSet}/ca.ts +3 -1
  441. package/src/account/i18n/{baseMessages → messages_defaultSet}/cs.ts +3 -1
  442. package/src/account/i18n/{baseMessages → messages_defaultSet}/da.ts +3 -1
  443. package/src/account/i18n/{baseMessages → messages_defaultSet}/de.ts +3 -1
  444. package/src/account/i18n/{baseMessages → messages_defaultSet}/el.ts +3 -1
  445. package/src/account/i18n/{baseMessages → messages_defaultSet}/en.ts +3 -1
  446. package/src/account/i18n/{baseMessages → messages_defaultSet}/es.ts +3 -1
  447. package/src/account/i18n/{baseMessages → messages_defaultSet}/fa.ts +3 -1
  448. package/src/account/i18n/{baseMessages → messages_defaultSet}/fi.ts +3 -1
  449. package/src/account/i18n/{baseMessages → messages_defaultSet}/fr.ts +3 -1
  450. package/src/account/i18n/{baseMessages → messages_defaultSet}/hu.ts +3 -1
  451. package/src/account/i18n/{baseMessages → messages_defaultSet}/index.ts +3 -3
  452. package/src/account/i18n/{baseMessages → messages_defaultSet}/it.ts +3 -1
  453. package/src/account/i18n/{baseMessages → messages_defaultSet}/ja.ts +3 -1
  454. package/src/account/i18n/{baseMessages → messages_defaultSet}/lt.ts +3 -1
  455. package/src/account/i18n/{baseMessages → messages_defaultSet}/lv.ts +3 -1
  456. package/src/account/i18n/{baseMessages → messages_defaultSet}/nl.ts +3 -1
  457. package/src/account/i18n/{baseMessages → messages_defaultSet}/no.ts +3 -1
  458. package/src/account/i18n/{baseMessages → messages_defaultSet}/pl.ts +3 -1
  459. package/src/account/i18n/{baseMessages → messages_defaultSet}/pt-BR.ts +3 -1
  460. package/src/account/i18n/{baseMessages → messages_defaultSet}/ru.ts +3 -1
  461. package/src/account/i18n/{baseMessages → messages_defaultSet}/sk.ts +3 -1
  462. package/src/account/i18n/{baseMessages → messages_defaultSet}/sv.ts +3 -1
  463. package/src/account/i18n/{baseMessages → messages_defaultSet}/th.ts +3 -1
  464. package/src/account/i18n/{baseMessages → messages_defaultSet}/tr.ts +3 -1
  465. package/src/account/i18n/{baseMessages → messages_defaultSet}/uk.ts +3 -1
  466. package/src/account/i18n/{baseMessages → messages_defaultSet}/zh-CN.ts +3 -1
  467. package/src/account/i18n/useI18n.tsx +95 -0
  468. package/src/account/index.ts +3 -10
  469. package/src/account/lib/kcClsx.ts +25 -0
  470. package/src/account/pages/Account.tsx +12 -18
  471. package/src/account/pages/Applications.tsx +8 -10
  472. package/src/account/pages/FederatedIdentity.tsx +4 -4
  473. package/src/account/pages/Log.tsx +5 -5
  474. package/src/account/pages/PageProps.ts +4 -6
  475. package/src/account/pages/Password.tsx +17 -19
  476. package/src/account/pages/Sessions.tsx +5 -6
  477. package/src/account/pages/Totp.tsx +32 -42
  478. package/src/bin/add-story.ts +137 -0
  479. package/src/bin/copy-keycloak-resources-to-public.ts +3 -6
  480. package/src/bin/eject-page.ts +364 -0
  481. package/src/bin/initialize-account-theme/copyBoilerplate.ts +32 -0
  482. package/src/bin/initialize-account-theme/index.ts +1 -0
  483. package/src/bin/initialize-account-theme/initialize-account-theme.ts +112 -0
  484. package/src/bin/initialize-account-theme/initializeAccountTheme_multiPage.ts +21 -0
  485. package/src/bin/initialize-account-theme/initializeAccountTheme_singlePage.ts +152 -0
  486. package/src/bin/initialize-account-theme/src/multi-page/KcContext.ts +12 -0
  487. package/src/bin/initialize-account-theme/src/multi-page/KcPage.tsx +25 -0
  488. package/src/bin/initialize-account-theme/src/multi-page/KcPageStory.tsx +38 -0
  489. package/src/bin/initialize-account-theme/src/multi-page/i18n.ts +5 -0
  490. package/src/bin/initialize-account-theme/src/single-page/KcContext.ts +7 -0
  491. package/src/bin/initialize-account-theme/src/single-page/KcPage.tsx +11 -0
  492. package/src/bin/initialize-account-theme/updateAccountThemeImplementationInConfig.ts +92 -0
  493. package/src/bin/initialize-email-theme.ts +30 -26
  494. package/src/bin/keycloakify/buildJars/buildJar.ts +155 -80
  495. package/src/bin/keycloakify/buildJars/buildJars.ts +39 -32
  496. package/src/bin/keycloakify/buildJars/extensionVersions.ts +3 -2
  497. package/src/bin/keycloakify/buildJars/generatePom.ts +19 -11
  498. package/src/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.ts +44 -12
  499. package/src/bin/keycloakify/generateFtl/generateFtl.ts +79 -53
  500. package/src/bin/keycloakify/generateFtl/kcContextDeclarationTemplate.ftl +667 -0
  501. package/src/bin/keycloakify/generateResources/bringInAccountV1.ts +89 -0
  502. package/src/bin/keycloakify/generateResources/generateMessageProperties.ts +192 -0
  503. package/src/bin/keycloakify/generateResources/generateResources.ts +42 -0
  504. package/src/bin/keycloakify/generateResources/generateResourcesForMainTheme.ts +366 -0
  505. package/src/bin/keycloakify/generateResources/generateResourcesForThemeVariant.ts +70 -0
  506. package/src/bin/keycloakify/generateResources/index.ts +1 -0
  507. package/src/bin/keycloakify/{generateSrcMainResources → generateResources}/readExtraPageNames.ts +20 -9
  508. package/src/bin/keycloakify/generateResources/readFieldNameUsage.ts +91 -0
  509. package/src/bin/keycloakify/keycloakify.ts +53 -17
  510. package/src/bin/keycloakify/replacers/replaceImportsInCssCode.ts +52 -42
  511. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.ts +14 -11
  512. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/vite.ts +34 -19
  513. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.ts +53 -18
  514. package/src/bin/main.ts +113 -44
  515. package/src/bin/shared/KeycloakVersionRange.ts +5 -3
  516. package/src/bin/shared/buildContext.ts +977 -0
  517. package/src/bin/shared/constants.ts +23 -15
  518. package/src/bin/shared/copyKeycloakResourcesToPublic.ts +34 -23
  519. package/src/bin/shared/downloadKeycloakDefaultTheme.ts +297 -0
  520. package/src/bin/shared/downloadKeycloakStaticResources.ts +31 -27
  521. package/src/bin/shared/generateKcGenTs.ts +175 -0
  522. package/src/bin/shared/getLatestsSemVersionedTag.ts +201 -0
  523. package/src/bin/shared/metaInfKeycloakThemes.ts +25 -19
  524. package/src/bin/shared/promptKeycloakVersion.ts +39 -75
  525. package/src/bin/start-keycloak/appBuild.ts +184 -0
  526. package/src/bin/start-keycloak/index.ts +1 -0
  527. package/src/bin/start-keycloak/keycloakifyBuild.ts +43 -0
  528. package/src/bin/start-keycloak/myrealm-realm-18.json +2155 -0
  529. package/src/bin/start-keycloak/myrealm-realm-19.json +2186 -0
  530. package/src/bin/start-keycloak/myrealm-realm-20.json +2197 -0
  531. package/src/bin/start-keycloak/myrealm-realm-21.json +2201 -0
  532. package/src/bin/start-keycloak/myrealm-realm-23.json +2155 -0
  533. package/src/bin/start-keycloak/myrealm-realm-24.json +2318 -0
  534. package/src/bin/start-keycloak/myrealm-realm-25.json +2400 -0
  535. package/src/bin/start-keycloak/start-keycloak.ts +523 -0
  536. package/src/bin/tools/SemVer.ts +32 -13
  537. package/src/bin/tools/String.prototype.replaceAll.ts +9 -2
  538. package/src/bin/tools/assertNoPnpmDlx.ts +17 -0
  539. package/src/bin/tools/crawl.ts +4 -1
  540. package/src/bin/tools/crc32.ts +42 -24
  541. package/src/bin/tools/downloadAndExtractArchive.ts +273 -0
  542. package/src/bin/tools/escapeStringForPropertiesFile.ts +64 -0
  543. package/src/bin/tools/extractArchive.ts +140 -0
  544. package/src/bin/tools/fetchProxyOptions.ts +100 -56
  545. package/src/bin/tools/getAbsoluteAndInOsFormatPath.ts +10 -2
  546. package/src/bin/tools/npmInstall.ts +63 -0
  547. package/src/bin/tools/octokit-addons/getLatestsSemVersionedTag.ts +11 -4
  548. package/src/bin/tools/octokit-addons/listTags.ts +15 -4
  549. package/src/bin/tools/partitionPromiseSettledResults.ts +12 -3
  550. package/src/bin/tools/readThisNpmPackageVersion.ts +5 -1
  551. package/src/bin/tools/transformCodebase.ts +29 -10
  552. package/src/bin/tools/trimIndent.ts +4 -1
  553. package/src/bin/tsconfig.json +7 -4
  554. package/src/bin/update-kc-gen.ts +13 -0
  555. package/src/lib/getKcClsx.ts +89 -0
  556. package/src/login/{Fallback.tsx → DefaultPage.tsx} +7 -6
  557. package/src/login/{kcContext → KcContext}/KcContext.ts +66 -56
  558. package/src/login/KcContext/getKcContextMock.ts +69 -0
  559. package/src/login/KcContext/index.ts +8 -0
  560. package/src/login/KcContext/kcContextMocks.ts +582 -0
  561. package/src/login/Template.tsx +79 -104
  562. package/src/login/TemplateProps.ts +3 -7
  563. package/src/login/UserProfileFormFields.tsx +139 -220
  564. package/src/login/UserProfileFormFieldsProps.tsx +22 -0
  565. package/src/login/i18n/GenericI18n.tsx +6 -0
  566. package/src/login/i18n/i18n.tsx +167 -147
  567. package/src/login/i18n/index.ts +5 -1
  568. package/src/login/i18n/{baseMessages → messages_defaultSet}/ar.ts +11 -2
  569. package/src/login/i18n/{baseMessages → messages_defaultSet}/ca.ts +12 -3
  570. package/src/login/i18n/{baseMessages → messages_defaultSet}/cs.ts +11 -2
  571. package/src/login/i18n/{baseMessages → messages_defaultSet}/da.ts +11 -2
  572. package/src/login/i18n/{baseMessages → messages_defaultSet}/de.ts +11 -2
  573. package/src/login/i18n/{baseMessages → messages_defaultSet}/el.ts +11 -3
  574. package/src/login/i18n/{baseMessages → messages_defaultSet}/en.ts +12 -3
  575. package/src/login/i18n/{baseMessages → messages_defaultSet}/es.ts +12 -3
  576. package/src/login/i18n/{baseMessages → messages_defaultSet}/fa.ts +11 -3
  577. package/src/login/i18n/{baseMessages → messages_defaultSet}/fi.ts +11 -2
  578. package/src/login/i18n/{baseMessages → messages_defaultSet}/fr.ts +11 -2
  579. package/src/login/i18n/{baseMessages → messages_defaultSet}/hu.ts +12 -3
  580. package/src/login/i18n/{baseMessages → messages_defaultSet}/index.ts +3 -3
  581. package/src/login/i18n/{baseMessages → messages_defaultSet}/it.ts +11 -2
  582. package/src/login/i18n/{baseMessages → messages_defaultSet}/ja.ts +11 -2
  583. package/src/login/i18n/{baseMessages → messages_defaultSet}/lt.ts +11 -2
  584. package/src/login/i18n/{baseMessages → messages_defaultSet}/lv.ts +11 -2
  585. package/src/login/i18n/{baseMessages → messages_defaultSet}/nl.ts +11 -2
  586. package/src/login/i18n/{baseMessages → messages_defaultSet}/no.ts +11 -2
  587. package/src/login/i18n/{baseMessages → messages_defaultSet}/pl.ts +11 -2
  588. package/src/login/i18n/{baseMessages → messages_defaultSet}/pt-BR.ts +11 -2
  589. package/src/login/i18n/{baseMessages → messages_defaultSet}/ru.ts +11 -2
  590. package/src/login/i18n/{baseMessages → messages_defaultSet}/sk.ts +11 -2
  591. package/src/login/i18n/{baseMessages → messages_defaultSet}/sv.ts +11 -2
  592. package/src/login/i18n/{baseMessages → messages_defaultSet}/th.ts +11 -2
  593. package/src/login/i18n/{baseMessages → messages_defaultSet}/tr.ts +11 -2
  594. package/src/login/i18n/{baseMessages → messages_defaultSet}/uk.ts +11 -2
  595. package/src/login/i18n/{baseMessages → messages_defaultSet}/zh-CN.ts +12 -3
  596. package/src/login/i18n/useI18n.tsx +95 -0
  597. package/src/login/index.ts +3 -11
  598. package/src/login/lib/kcClsx.ts +143 -0
  599. package/src/login/lib/useUserProfileForm.tsx +535 -354
  600. package/src/login/pages/Code.tsx +8 -5
  601. package/src/login/pages/DeleteAccountConfirm.tsx +15 -10
  602. package/src/login/pages/DeleteCredential.tsx +9 -7
  603. package/src/login/pages/Error.tsx +10 -3
  604. package/src/login/pages/FrontchannelLogout.tsx +6 -3
  605. package/src/login/pages/IdpReviewUserProfile.tsx +20 -21
  606. package/src/login/pages/Info.tsx +31 -14
  607. package/src/login/pages/Login.tsx +51 -59
  608. package/src/login/pages/LoginConfigTotp.tsx +49 -43
  609. package/src/login/pages/LoginIdpLinkConfirm.tsx +7 -18
  610. package/src/login/pages/LoginIdpLinkEmail.tsx +9 -3
  611. package/src/login/pages/LoginOauth2DeviceVerifyUserCode.tsx +24 -23
  612. package/src/login/pages/LoginOauthGrant.tsx +14 -20
  613. package/src/login/pages/LoginOtp.tsx +34 -32
  614. package/src/login/pages/LoginPageExpired.tsx +2 -2
  615. package/src/login/pages/LoginPassword.tsx +29 -34
  616. package/src/login/pages/LoginRecoveryAuthnCodeConfig.tsx +34 -34
  617. package/src/login/pages/LoginRecoveryAuthnCodeInput.tsx +26 -24
  618. package/src/login/pages/LoginResetOtp.tsx +19 -22
  619. package/src/login/pages/LoginResetPassword.tsx +28 -26
  620. package/src/login/pages/LoginUpdatePassword.tsx +82 -84
  621. package/src/login/pages/LoginUpdateProfile.tsx +32 -30
  622. package/src/login/pages/LoginUsername.tsx +23 -34
  623. package/src/login/pages/LoginVerifyEmail.tsx +5 -2
  624. package/src/login/pages/LoginX509Info.tsx +24 -33
  625. package/src/login/pages/LogoutConfirm.tsx +8 -14
  626. package/src/login/pages/PageProps.ts +3 -5
  627. package/src/login/pages/Register.tsx +54 -54
  628. package/src/login/pages/SamlPostForm.tsx +3 -3
  629. package/src/login/pages/SelectAuthenticator.tsx +24 -25
  630. package/src/login/pages/Terms.tsx +14 -24
  631. package/src/login/pages/UpdateEmail.tsx +30 -33
  632. package/src/login/pages/WebauthnAuthenticate.tsx +43 -47
  633. package/src/login/pages/WebauthnError.tsx +15 -19
  634. package/src/login/pages/WebauthnRegister.tsx +28 -37
  635. package/src/tools/Array.prototype.every.ts +4 -1
  636. package/src/tools/LazyOrNot.ts +3 -1
  637. package/src/tools/Object.fromEntries.ts +23 -0
  638. package/src/tools/StatefulObservable/README.md +16 -0
  639. package/src/tools/StatefulObservable/StatefulObservable.ts +58 -0
  640. package/src/tools/StatefulObservable/hooks/index.ts +2 -0
  641. package/src/tools/StatefulObservable/hooks/useObservable.ts +25 -0
  642. package/src/tools/StatefulObservable/hooks/useRerenderOnChange.ts +19 -0
  643. package/src/tools/StatefulObservable/index.ts +2 -0
  644. package/src/tools/ValueOf.ts +2 -0
  645. package/src/tools/clsx.ts +6 -42
  646. package/src/tools/clsx_withTransform.ts +55 -0
  647. package/src/tools/deepAssign.ts +57 -19
  648. package/src/tools/formatNumber.ts +7 -3
  649. package/src/tools/structuredCloneButFunctions.ts +24 -0
  650. package/src/tools/useConstCallback.ts +3 -1
  651. package/src/tools/useInsertLinkTags.ts +75 -63
  652. package/src/tools/useInsertScriptTags.ts +76 -72
  653. package/src/tools/useOnFirstMount.ts +18 -0
  654. package/src/tools/useSetClassName.ts +4 -1
  655. package/src/vite-plugin/vite-plugin.ts +78 -40
  656. package/stories/account/pages/Account.stories.tsx +18 -0
  657. package/stories/account/pages/Applications.stories.tsx +80 -0
  658. package/stories/account/pages/FederatedIdentity.stories.tsx +38 -0
  659. package/stories/account/pages/Log.stories.tsx +357 -0
  660. package/stories/account/pages/Password.stories.tsx +28 -0
  661. package/stories/account/pages/Sessions.stories.tsx +59 -0
  662. package/stories/account/pages/Totp.stories.tsx +182 -0
  663. package/stories/account-spa/index.stories.tsx +94 -0
  664. package/stories/intro/intro.stories.tsx +90 -0
  665. package/stories/login/pages/Code.stories.tsx +18 -0
  666. package/stories/login/pages/DeleteAccountConfirm.stories.tsx +18 -0
  667. package/stories/login/pages/DeleteCredential.stories.tsx +18 -0
  668. package/stories/login/pages/Error.stories.tsx +28 -0
  669. package/stories/login/pages/FrontchannelLogout.stories.tsx +18 -0
  670. package/stories/login/pages/IdpReviewUserProfile.stories.tsx +18 -0
  671. package/stories/login/pages/Info.stories.tsx +57 -0
  672. package/stories/login/pages/Login.stories.tsx +233 -0
  673. package/stories/login/pages/LoginConfigTotp.stories.tsx +43 -0
  674. package/stories/login/pages/LoginDeviceVerifyUserCode.stories.tsx +18 -0
  675. package/stories/login/pages/LoginIdpLinkConfirm.stories.tsx +18 -0
  676. package/stories/login/pages/LoginIdpLinkEmail.stories.tsx +18 -0
  677. package/stories/login/pages/LoginOauth2DeviceVerifyUserCode.stories.tsx +18 -0
  678. package/stories/login/pages/LoginOauthGrant.stories.tsx +18 -0
  679. package/stories/login/pages/LoginOtp.stories.tsx +18 -0
  680. package/stories/login/pages/LoginPageExpired.stories.tsx +18 -0
  681. package/stories/login/pages/LoginPassword.stories.tsx +18 -0
  682. package/stories/login/pages/LoginRecoveryAuthnCodeConfig.stories.tsx +18 -0
  683. package/stories/login/pages/LoginRecoveryAuthnCodeInput.stories.tsx +18 -0
  684. package/stories/login/pages/LoginResetOtp.stories.tsx +18 -0
  685. package/stories/login/pages/LoginResetPassword.stories.tsx +31 -0
  686. package/stories/login/pages/LoginUpdatePassword.stories.tsx +18 -0
  687. package/stories/login/pages/LoginUpdateProfile.stories.tsx +18 -0
  688. package/stories/login/pages/LoginUsername.stories.tsx +31 -0
  689. package/stories/login/pages/LoginVerifyEmail.stories.tsx +30 -0
  690. package/stories/login/pages/LoginX509Info.stories.tsx +18 -0
  691. package/stories/login/pages/LogoutConfirm.stories.tsx +18 -0
  692. package/stories/login/pages/Register.stories.tsx +187 -0
  693. package/stories/login/pages/SamlPostForm.stories.tsx +18 -0
  694. package/stories/login/pages/SelectAuthenticator.stories.tsx +84 -0
  695. package/stories/login/pages/Terms.stories.tsx +47 -0
  696. package/stories/login/pages/UpdateEmail.stories.tsx +18 -0
  697. package/stories/login/pages/WebauthnAuthenticate.stories.tsx +18 -0
  698. package/stories/login/pages/WebauthnError.stories.tsx +18 -0
  699. package/stories/login/pages/WebauthnRegister.stories.tsx +18 -0
  700. package/tools/Array.prototype.every.js +2 -1
  701. package/tools/Array.prototype.every.js.map +1 -1
  702. package/tools/HTMLElement.prototype.prepend.js.map +1 -1
  703. package/tools/Object.fromEntries.d.ts +1 -0
  704. package/tools/Object.fromEntries.js +17 -0
  705. package/tools/Object.fromEntries.js.map +1 -0
  706. package/tools/StatefulObservable/StatefulObservable.d.ts +8 -0
  707. package/tools/StatefulObservable/StatefulObservable.js +36 -0
  708. package/tools/StatefulObservable/StatefulObservable.js.map +1 -0
  709. package/tools/StatefulObservable/hooks/index.d.ts +2 -0
  710. package/tools/StatefulObservable/hooks/index.js +3 -0
  711. package/tools/StatefulObservable/hooks/index.js.map +1 -0
  712. package/tools/StatefulObservable/hooks/useObservable.d.ts +8 -0
  713. package/tools/StatefulObservable/hooks/useObservable.js +17 -0
  714. package/tools/StatefulObservable/hooks/useObservable.js.map +1 -0
  715. package/tools/StatefulObservable/hooks/useRerenderOnChange.d.ts +5 -0
  716. package/tools/StatefulObservable/hooks/useRerenderOnChange.js +14 -0
  717. package/tools/StatefulObservable/hooks/useRerenderOnChange.js.map +1 -0
  718. package/tools/StatefulObservable/index.d.ts +2 -0
  719. package/tools/StatefulObservable/index.js +3 -0
  720. package/tools/StatefulObservable/index.js.map +1 -0
  721. package/tools/ValueOf.d.ts +2 -0
  722. package/tools/ValueOf.js +2 -0
  723. package/tools/ValueOf.js.map +1 -0
  724. package/tools/clsx.d.ts +3 -2
  725. package/tools/clsx.js +5 -41
  726. package/tools/clsx.js.map +1 -1
  727. package/tools/clsx_withTransform.d.ts +5 -0
  728. package/tools/clsx_withTransform.js +43 -0
  729. package/tools/clsx_withTransform.js.map +1 -0
  730. package/tools/deepAssign.d.ts +1 -0
  731. package/tools/deepAssign.js +41 -16
  732. package/tools/deepAssign.js.map +1 -1
  733. package/tools/formatNumber.js +2 -1
  734. package/tools/formatNumber.js.map +1 -1
  735. package/tools/structuredCloneButFunctions.d.ts +7 -0
  736. package/tools/structuredCloneButFunctions.js +19 -0
  737. package/tools/structuredCloneButFunctions.js.map +1 -0
  738. package/tools/useConstCallback.js.map +1 -1
  739. package/tools/useInsertLinkTags.d.ts +11 -6
  740. package/tools/useInsertLinkTags.js +59 -52
  741. package/tools/useInsertLinkTags.js.map +1 -1
  742. package/tools/useInsertScriptTags.d.ts +15 -6
  743. package/tools/useInsertScriptTags.js +62 -61
  744. package/tools/useInsertScriptTags.js.map +1 -1
  745. package/tools/useOnFirstMount.d.ts +2 -0
  746. package/tools/useOnFirstMount.js +15 -0
  747. package/tools/useOnFirstMount.js.map +1 -0
  748. package/tools/useSetClassName.js.map +1 -1
  749. package/vite-plugin/index.js +53519 -0
  750. package/vite-plugin/vite-plugin.d.ts +7 -0
  751. package/account/Fallback.d.ts +0 -5
  752. package/account/Fallback.js.map +0 -1
  753. package/account/i18n/baseMessages/ar.js.map +0 -1
  754. package/account/i18n/baseMessages/ca.js.map +0 -1
  755. package/account/i18n/baseMessages/cs.js.map +0 -1
  756. package/account/i18n/baseMessages/da.js.map +0 -1
  757. package/account/i18n/baseMessages/de.js.map +0 -1
  758. package/account/i18n/baseMessages/el.js.map +0 -1
  759. package/account/i18n/baseMessages/en.js.map +0 -1
  760. package/account/i18n/baseMessages/es.js.map +0 -1
  761. package/account/i18n/baseMessages/fa.js.map +0 -1
  762. package/account/i18n/baseMessages/fi.js.map +0 -1
  763. package/account/i18n/baseMessages/fr.js.map +0 -1
  764. package/account/i18n/baseMessages/hu.js.map +0 -1
  765. package/account/i18n/baseMessages/index.js.map +0 -1
  766. package/account/i18n/baseMessages/it.js.map +0 -1
  767. package/account/i18n/baseMessages/ja.js.map +0 -1
  768. package/account/i18n/baseMessages/lt.js.map +0 -1
  769. package/account/i18n/baseMessages/lv.js.map +0 -1
  770. package/account/i18n/baseMessages/nl.js.map +0 -1
  771. package/account/i18n/baseMessages/no.js.map +0 -1
  772. package/account/i18n/baseMessages/pl.js.map +0 -1
  773. package/account/i18n/baseMessages/pt-BR.js.map +0 -1
  774. package/account/i18n/baseMessages/ru.js.map +0 -1
  775. package/account/i18n/baseMessages/sk.js.map +0 -1
  776. package/account/i18n/baseMessages/sv.js.map +0 -1
  777. package/account/i18n/baseMessages/th.js.map +0 -1
  778. package/account/i18n/baseMessages/tr.js.map +0 -1
  779. package/account/i18n/baseMessages/uk.js.map +0 -1
  780. package/account/i18n/baseMessages/zh-CN.js.map +0 -1
  781. package/account/kcContext/KcContext.js.map +0 -1
  782. package/account/kcContext/createGetKcContext.d.ts +0 -19
  783. package/account/kcContext/createGetKcContext.js +0 -73
  784. package/account/kcContext/createGetKcContext.js.map +0 -1
  785. package/account/kcContext/getKcContext.d.ts +0 -13
  786. package/account/kcContext/getKcContext.js +0 -13
  787. package/account/kcContext/getKcContext.js.map +0 -1
  788. package/account/kcContext/getKcContextFromWindow.d.ts +0 -8
  789. package/account/kcContext/getKcContextFromWindow.js +0 -5
  790. package/account/kcContext/getKcContextFromWindow.js.map +0 -1
  791. package/account/kcContext/index.d.ts +0 -1
  792. package/account/kcContext/index.js +0 -2
  793. package/account/kcContext/index.js.map +0 -1
  794. package/account/kcContext/kcContextMocks.js +0 -215
  795. package/account/kcContext/kcContextMocks.js.map +0 -1
  796. package/account/lib/useGetClassName.d.ts +0 -7
  797. package/account/lib/useGetClassName.js +0 -19
  798. package/account/lib/useGetClassName.js.map +0 -1
  799. package/bin/420.index.js +0 -508
  800. package/bin/509.index.js +0 -438
  801. package/lib/isStorybook.d.ts +0 -1
  802. package/lib/isStorybook.js +0 -2
  803. package/lib/isStorybook.js.map +0 -1
  804. package/lib/useGetClassName.d.ts +0 -10
  805. package/lib/useGetClassName.js +0 -14
  806. package/lib/useGetClassName.js.map +0 -1
  807. package/login/Fallback.js.map +0 -1
  808. package/login/i18n/baseMessages/ar.js.map +0 -1
  809. package/login/i18n/baseMessages/ca.js.map +0 -1
  810. package/login/i18n/baseMessages/cs.js.map +0 -1
  811. package/login/i18n/baseMessages/da.js.map +0 -1
  812. package/login/i18n/baseMessages/de.js.map +0 -1
  813. package/login/i18n/baseMessages/el.js.map +0 -1
  814. package/login/i18n/baseMessages/en.js.map +0 -1
  815. package/login/i18n/baseMessages/es.js.map +0 -1
  816. package/login/i18n/baseMessages/fa.js.map +0 -1
  817. package/login/i18n/baseMessages/fi.js.map +0 -1
  818. package/login/i18n/baseMessages/fr.js.map +0 -1
  819. package/login/i18n/baseMessages/hu.js.map +0 -1
  820. package/login/i18n/baseMessages/it.js.map +0 -1
  821. package/login/i18n/baseMessages/ja.js.map +0 -1
  822. package/login/i18n/baseMessages/lt.js.map +0 -1
  823. package/login/i18n/baseMessages/lv.js.map +0 -1
  824. package/login/i18n/baseMessages/nl.js.map +0 -1
  825. package/login/i18n/baseMessages/no.js.map +0 -1
  826. package/login/i18n/baseMessages/pl.js.map +0 -1
  827. package/login/i18n/baseMessages/pt-BR.js.map +0 -1
  828. package/login/i18n/baseMessages/ru.js.map +0 -1
  829. package/login/i18n/baseMessages/sk.js.map +0 -1
  830. package/login/i18n/baseMessages/sv.js.map +0 -1
  831. package/login/i18n/baseMessages/th.js.map +0 -1
  832. package/login/i18n/baseMessages/tr.js.map +0 -1
  833. package/login/i18n/baseMessages/uk.js.map +0 -1
  834. package/login/i18n/baseMessages/zh-CN.js.map +0 -1
  835. package/login/kcContext/KcContext.js.map +0 -1
  836. package/login/kcContext/createGetKcContext.d.ts +0 -19
  837. package/login/kcContext/createGetKcContext.js +0 -109
  838. package/login/kcContext/createGetKcContext.js.map +0 -1
  839. package/login/kcContext/getKcContext.d.ts +0 -13
  840. package/login/kcContext/getKcContext.js +0 -13
  841. package/login/kcContext/getKcContext.js.map +0 -1
  842. package/login/kcContext/getKcContextFromWindow.d.ts +0 -8
  843. package/login/kcContext/getKcContextFromWindow.js +0 -5
  844. package/login/kcContext/getKcContextFromWindow.js.map +0 -1
  845. package/login/kcContext/index.d.ts +0 -1
  846. package/login/kcContext/index.js +0 -2
  847. package/login/kcContext/index.js.map +0 -1
  848. package/login/kcContext/kcContextMocks.js +0 -390
  849. package/login/kcContext/kcContextMocks.js.map +0 -1
  850. package/login/lib/useDownloadTerms.d.ts +0 -17
  851. package/login/lib/useDownloadTerms.js +0 -32
  852. package/login/lib/useDownloadTerms.js.map +0 -1
  853. package/login/lib/useGetClassName.d.ts +0 -7
  854. package/login/lib/useGetClassName.js +0 -130
  855. package/login/lib/useGetClassName.js.map +0 -1
  856. package/src/account/kcContext/createGetKcContext.ts +0 -108
  857. package/src/account/kcContext/getKcContext.ts +0 -21
  858. package/src/account/kcContext/getKcContextFromWindow.ts +0 -11
  859. package/src/account/kcContext/index.ts +0 -1
  860. package/src/account/kcContext/kcContextMocks.ts +0 -260
  861. package/src/account/lib/useGetClassName.ts +0 -20
  862. package/src/bin/download-builtin-keycloak-theme.ts +0 -30
  863. package/src/bin/eject-keycloak-page.ts +0 -126
  864. package/src/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +0 -521
  865. package/src/bin/keycloakify/generateSrcMainResources/bringInAccountV1.ts +0 -79
  866. package/src/bin/keycloakify/generateSrcMainResources/generateMessageProperties.ts +0 -179
  867. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResources.ts +0 -32
  868. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForMainTheme.ts +0 -261
  869. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForThemeVariant.ts +0 -56
  870. package/src/bin/keycloakify/generateSrcMainResources/index.ts +0 -1
  871. package/src/bin/keycloakify/generateSrcMainResources/readFieldNameUsage.ts +0 -56
  872. package/src/bin/keycloakify/generateStartKeycloakTestingContainer.ts +0 -60
  873. package/src/bin/keycloakify/replacers/replaceImportsInInlineCssCode.ts +0 -24
  874. package/src/bin/shared/buildOptions.ts +0 -277
  875. package/src/bin/shared/downloadAndUnzip.ts +0 -203
  876. package/src/bin/shared/downloadBuiltinKeycloakTheme.ts +0 -264
  877. package/src/bin/shared/getJarFileBasename.ts +0 -9
  878. package/src/bin/shared/getThemeSrcDirPath.ts +0 -47
  879. package/src/bin/start-keycloak.ts +0 -236
  880. package/src/bin/tools/getNpmWorkspaceRootDirPath.ts +0 -27
  881. package/src/bin/tools/unzip.ts +0 -141
  882. package/src/lib/isStorybook.ts +0 -1
  883. package/src/lib/useGetClassName.ts +0 -18
  884. package/src/login/kcContext/createGetKcContext.ts +0 -159
  885. package/src/login/kcContext/getKcContext.ts +0 -21
  886. package/src/login/kcContext/getKcContextFromWindow.ts +0 -11
  887. package/src/login/kcContext/index.ts +0 -1
  888. package/src/login/kcContext/kcContextMocks.ts +0 -630
  889. package/src/login/lib/useDownloadTerms.ts +0 -57
  890. package/src/login/lib/useGetClassName.ts +0 -132
  891. package/src/tools/AndByDiscriminatingKey.ts +0 -25
  892. package/src/tools/Markdown.ts +0 -3
  893. package/src/tools/deepClone.ts +0 -17
  894. package/src/tools/memoize.ts +0 -55
  895. package/tools/AndByDiscriminatingKey.d.ts +0 -5
  896. package/tools/AndByDiscriminatingKey.js +0 -2
  897. package/tools/AndByDiscriminatingKey.js.map +0 -1
  898. package/tools/Markdown.d.ts +0 -2
  899. package/tools/Markdown.js +0 -3
  900. package/tools/Markdown.js.map +0 -1
  901. package/tools/deepClone.d.ts +0 -2
  902. package/tools/deepClone.js +0 -14
  903. package/tools/deepClone.js.map +0 -1
  904. package/tools/memoize.d.ts +0 -7
  905. package/tools/memoize.js +0 -38
  906. package/tools/memoize.js.map +0 -1
  907. /package/account/{kcContext → KcContext}/KcContext.js +0 -0
  908. /package/login/{kcContext → KcContext}/KcContext.js +0 -0
@@ -0,0 +1,1538 @@
1
+ "use strict";
2
+ exports.id = 440;
3
+ exports.ids = [440];
4
+ exports.modules = {
5
+
6
+ /***/ 73817:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
+
9
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10
+ /* harmony export */ "k": () => (/* binding */ generateMessageProperties)
11
+ /* harmony export */ });
12
+ /* harmony import */ var _shared_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(173);
13
+ /* harmony import */ var _tools_crawl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(73036);
14
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(71017);
15
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_2__);
16
+ /* harmony import */ var tsafe_symToStr__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(47986);
17
+ /* harmony import */ var recast__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(48128);
18
+ /* harmony import */ var _babel_parser__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(85026);
19
+ /* harmony import */ var _babel_generator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(92332);
20
+ /* harmony import */ var _babel_types__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(7912);
21
+ /* harmony import */ var _babel_types__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_babel_types__WEBPACK_IMPORTED_MODULE_7__);
22
+ /* harmony import */ var _tools_escapeStringForPropertiesFile__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(27190);
23
+ /* harmony import */ var _tools_getThisCodebaseRootDirPath__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(58822);
24
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(57147);
25
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_9__);
26
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(88078);
27
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(tsafe_assert__WEBPACK_IMPORTED_MODULE_10__);
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+ function generateMessageProperties(params) {
41
+ const { themeSrcDirPath, themeType } = params;
42
+ const baseMessagesDirPath = (0,path__WEBPACK_IMPORTED_MODULE_2__.join)((0,_tools_getThisCodebaseRootDirPath__WEBPACK_IMPORTED_MODULE_8__/* .getThisCodebaseRootDirPath */ .e)(), "src", themeType, "i18n", "messages_defaultSet");
43
+ const baseMessageBundle = Object.fromEntries(fs__WEBPACK_IMPORTED_MODULE_9__.readdirSync(baseMessagesDirPath)
44
+ .filter(baseName => baseName !== "index.ts")
45
+ .map(basename => ({
46
+ languageTag: basename.replace(/\.ts$/, ""),
47
+ filePath: (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(baseMessagesDirPath, basename)
48
+ }))
49
+ .map(({ languageTag, filePath }) => {
50
+ const lines = fs__WEBPACK_IMPORTED_MODULE_9__.readFileSync(filePath)
51
+ .toString("utf8")
52
+ .split(/\r?\n/);
53
+ let messagesJson = "{";
54
+ let isInDeclaration = false;
55
+ for (const line of lines) {
56
+ if (!isInDeclaration) {
57
+ if (line.startsWith("const messages")) {
58
+ isInDeclaration = true;
59
+ }
60
+ continue;
61
+ }
62
+ if (line.startsWith("}")) {
63
+ messagesJson += "}";
64
+ break;
65
+ }
66
+ messagesJson += line;
67
+ }
68
+ const messages = JSON.parse(messagesJson);
69
+ return [languageTag, messages];
70
+ }));
71
+ const { i18nTsFilePath } = (() => {
72
+ let files = (0,_tools_crawl__WEBPACK_IMPORTED_MODULE_1__/* .crawl */ .J)({
73
+ dirPath: (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(themeSrcDirPath, themeType),
74
+ returnedPathsType: "absolute"
75
+ });
76
+ files = files.filter(file => {
77
+ const regex = /\.(js|ts|tsx)$/;
78
+ return regex.test(file);
79
+ });
80
+ files = files.sort((a, b) => {
81
+ const regex = /\.i18n\.(ts|js|tsx)$/;
82
+ const aIsI18nFile = regex.test(a);
83
+ const bIsI18nFile = regex.test(b);
84
+ return aIsI18nFile === bIsI18nFile ? 0 : aIsI18nFile ? -1 : 1;
85
+ });
86
+ files = files.sort((a, b) => a.length - b.length);
87
+ files = files.filter(file => fs__WEBPACK_IMPORTED_MODULE_9__.readFileSync(file).toString("utf8").includes("createUseI18n("));
88
+ const i18nTsFilePath = files[0];
89
+ return { i18nTsFilePath };
90
+ })();
91
+ const messageBundle = (() => {
92
+ if (i18nTsFilePath === undefined) {
93
+ return undefined;
94
+ }
95
+ const root = recast__WEBPACK_IMPORTED_MODULE_4__/* .parse */ .Qc(fs__WEBPACK_IMPORTED_MODULE_9__.readFileSync(i18nTsFilePath).toString("utf8"), {
96
+ parser: {
97
+ parse: (code) => _babel_parser__WEBPACK_IMPORTED_MODULE_5__/* .parse */ .Qc(code, {
98
+ sourceType: "module",
99
+ plugins: ["typescript"]
100
+ }),
101
+ generator: _babel_generator__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP,
102
+ types: _babel_types__WEBPACK_IMPORTED_MODULE_7__
103
+ }
104
+ });
105
+ let messageBundleDeclarationTsCode = undefined;
106
+ recast__WEBPACK_IMPORTED_MODULE_4__/* .visit */ .Vn(root, {
107
+ visitCallExpression: function (path) {
108
+ if (path.node.callee.type === "Identifier" &&
109
+ path.node.callee.name === "createUseI18n") {
110
+ messageBundleDeclarationTsCode = (0,_babel_generator__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP)(path.node.arguments[0]).code;
111
+ return false;
112
+ }
113
+ this.traverse(path);
114
+ }
115
+ });
116
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_10__.assert)(messageBundleDeclarationTsCode !== undefined);
117
+ let messageBundle = {};
118
+ try {
119
+ eval(`${(0,tsafe_symToStr__WEBPACK_IMPORTED_MODULE_3__/* .symToStr */ .r)({ messageBundle })} = ${messageBundleDeclarationTsCode}`);
120
+ }
121
+ catch (_a) {
122
+ console.warn([
123
+ "WARNING: Make sure the messageBundle your provided as argument of createUseI18n can be statically evaluated.",
124
+ "This is important because we need to put your i18n messages in messages_*.properties files",
125
+ "or they won't be available server side.",
126
+ "\n",
127
+ "The following code could not be evaluated:",
128
+ "\n",
129
+ messageBundleDeclarationTsCode
130
+ ].join(" "));
131
+ }
132
+ return messageBundle;
133
+ })();
134
+ const mergedMessageBundle = Object.fromEntries(Object.entries(baseMessageBundle).map(([languageTag, messages]) => {
135
+ var _a, _b, _c;
136
+ return [
137
+ languageTag,
138
+ Object.assign(Object.assign({}, messages), (messageBundle === undefined
139
+ ? {}
140
+ : (_c = (_b = (_a = messageBundle[languageTag]) !== null && _a !== void 0 ? _a : messageBundle[_shared_constants__WEBPACK_IMPORTED_MODULE_0__/* .FALLBACK_LANGUAGE_TAG */ ._L]) !== null && _b !== void 0 ? _b : messageBundle[Object.keys(messageBundle)[0]]) !== null && _c !== void 0 ? _c : {}))
141
+ ];
142
+ }));
143
+ const messageProperties = Object.entries(mergedMessageBundle).map(([languageTag, messages]) => ({
144
+ languageTag,
145
+ propertiesFileSource: [
146
+ "",
147
+ ...(themeType !== "account" ? ["parent=base"] : []),
148
+ ...Object.entries(messages).map(([key, value]) => `${key}=${(0,_tools_escapeStringForPropertiesFile__WEBPACK_IMPORTED_MODULE_11__/* .escapeStringForPropertiesFile */ .y)(value)}`),
149
+ ""
150
+ ].join("\n")
151
+ }));
152
+ return messageProperties;
153
+ }
154
+ //# sourceMappingURL=generateMessageProperties.js.map
155
+
156
+ /***/ }),
157
+
158
+ /***/ 46440:
159
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
160
+
161
+ // ESM COMPAT FLAG
162
+ __webpack_require__.r(__webpack_exports__);
163
+
164
+ // EXPORTS
165
+ __webpack_require__.d(__webpack_exports__, {
166
+ "command": () => (/* reexport */ command)
167
+ });
168
+
169
+ // EXTERNAL MODULE: ./node_modules/tsafe/assert.js
170
+ var assert = __webpack_require__(88078);
171
+ // EXTERNAL MODULE: ./dist/bin/tools/transformCodebase.js
172
+ var transformCodebase = __webpack_require__(60332);
173
+ // EXTERNAL MODULE: external "fs"
174
+ var external_fs_ = __webpack_require__(57147);
175
+ var external_fs_default = /*#__PURE__*/__webpack_require__.n(external_fs_);
176
+ // EXTERNAL MODULE: external "path"
177
+ var external_path_ = __webpack_require__(71017);
178
+ // EXTERNAL MODULE: ./dist/bin/shared/constants.js
179
+ var constants = __webpack_require__(173);
180
+ ;// CONCATENATED MODULE: ./dist/bin/tools/String.prototype.replaceAll.js
181
+ function replaceAll(string, searchValue, replaceValue) {
182
+ if (string.replaceAll !== undefined) {
183
+ return string.replaceAll(searchValue, replaceValue);
184
+ }
185
+ // If the searchValue is a string
186
+ if (typeof searchValue === "string") {
187
+ // Escape special characters in the string to be used in a regex
188
+ var escapedSearchValue = searchValue.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
189
+ var regex = new RegExp(escapedSearchValue, "g");
190
+ return string.replace(regex, replaceValue);
191
+ }
192
+ // If the searchValue is a global RegExp, use it directly
193
+ if (searchValue instanceof RegExp && searchValue.global) {
194
+ return string.replace(searchValue, replaceValue);
195
+ }
196
+ // If the searchValue is a non-global RegExp, throw an error
197
+ if (searchValue instanceof RegExp) {
198
+ throw new TypeError("replaceAll must be called with a global RegExp");
199
+ }
200
+ // Convert searchValue to string if it's not a string or RegExp
201
+ var searchString = String(searchValue);
202
+ var regexFromString = new RegExp(searchString.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "g");
203
+ return string.replace(regexFromString, replaceValue);
204
+ }
205
+ //# sourceMappingURL=String.prototype.replaceAll.js.map
206
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/replacers/replaceImportsInJsCode/vite.js
207
+
208
+
209
+
210
+
211
+ (0,assert.assert)();
212
+ function replaceImportsInJsCode_vite(params) {
213
+ const { jsCode, buildContext, basenameOfAssetsFiles, systemType = external_path_.sep === "/" ? "posix" : "win32" } = params;
214
+ const { relative: pathRelative, sep: pathSep } = external_path_[systemType];
215
+ let fixedJsCode = jsCode;
216
+ replace_base_js_import: {
217
+ if (buildContext.urlPathname === undefined) {
218
+ break replace_base_js_import;
219
+ }
220
+ // Optimization
221
+ if (!jsCode.includes(buildContext.urlPathname)) {
222
+ break replace_base_js_import;
223
+ }
224
+ // Replace `Hv=function(e){return"/abcde12345/"+e}` by `Hv=function(e){return"/"+e}`
225
+ fixedJsCode = fixedJsCode.replace(new RegExp(`([\\w\\$][\\w\\d\\$]*)=function\\(([\\w\\$][\\w\\d\\$]*)\\)\\{return"${replaceAll(buildContext.urlPathname, "/", "\\/")}"\\+\\2\\}`, "g"), (...[, funcName, paramName]) => `${funcName}=function(${paramName}){return"/"+${paramName}}`);
226
+ }
227
+ replace_javascript_relatives_import_paths: {
228
+ // Example: "assets/ or "foo/bar/"
229
+ const staticDir = (() => {
230
+ let out = pathRelative(buildContext.projectBuildDirPath, buildContext.assetsDirPath);
231
+ out = replaceAll(out, pathSep, "/") + "/";
232
+ if (out === "/") {
233
+ throw new Error(`The assetsDirPath must be a subdirectory of projectBuildDirPath`);
234
+ }
235
+ return out;
236
+ })();
237
+ // Optimization
238
+ if (!jsCode.includes(staticDir)) {
239
+ break replace_javascript_relatives_import_paths;
240
+ }
241
+ basenameOfAssetsFiles
242
+ .map(basenameOfAssetsFile => `${staticDir}${basenameOfAssetsFile}`)
243
+ .forEach(relativePathOfAssetFile => {
244
+ var _a;
245
+ fixedJsCode = replaceAll(fixedJsCode, `"${relativePathOfAssetFile}"`, `(window.kcContext["x-keycloakify"].resourcesPath.substring(1) + "/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}/${relativePathOfAssetFile}")`);
246
+ fixedJsCode = replaceAll(fixedJsCode, `"${(_a = buildContext.urlPathname) !== null && _a !== void 0 ? _a : "/"}${relativePathOfAssetFile}"`, `(window.kcContext["x-keycloakify"].resourcesPath + "/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}/${relativePathOfAssetFile}")`);
247
+ });
248
+ }
249
+ return { fixedJsCode };
250
+ }
251
+ //# sourceMappingURL=vite.js.map
252
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.js
253
+
254
+
255
+
256
+
257
+ (0,assert.assert)();
258
+ function replaceImportsInJsCode_webpack(params) {
259
+ const { jsCode, buildContext, systemType = external_path_.sep === "/" ? "posix" : "win32" } = params;
260
+ const { relative: pathRelative, sep: pathSep } = external_path_[systemType];
261
+ let fixedJsCode = jsCode;
262
+ if (buildContext.urlPathname !== undefined) {
263
+ // "__esModule",{value:!0})},n.p="/foo-bar/",function(){if("undefined" -> ... n.p="/" ...
264
+ fixedJsCode = fixedJsCode.replace(new RegExp(`,([a-zA-Z]\\.[a-zA-Z])="${replaceAll(buildContext.urlPathname, "/", "\\/")}",`, "g"), (...[, assignTo]) => `,${assignTo}="/",`);
265
+ }
266
+ // Example: "static/ or "foo/bar/"
267
+ const staticDir = (() => {
268
+ let out = pathRelative(buildContext.projectBuildDirPath, buildContext.assetsDirPath);
269
+ out = replaceAll(out, pathSep, "/") + "/";
270
+ if (out === "/") {
271
+ throw new Error(`The assetsDirPath must be a subdirectory of projectBuildDirPath`);
272
+ }
273
+ return out;
274
+ })();
275
+ const getReplaceArgs = (language) => [
276
+ new RegExp(`([a-zA-Z_]+)\\.([a-zA-Z]+)=(function\\(([a-z]+)\\){return|([a-z]+)=>)"${staticDir.replace(/\//g, "\\/")}${language}\\/"`, "g"),
277
+ (...[, n, u, matchedFunction, eForFunction]) => {
278
+ const isArrowFunction = matchedFunction.includes("=>");
279
+ const e = isArrowFunction
280
+ ? matchedFunction.replace("=>", "").trim()
281
+ : eForFunction;
282
+ return `
283
+ ${n}[(function(){
284
+ var pd = Object.getOwnPropertyDescriptor(${n}, "p");
285
+ if( pd === undefined || pd.configurable ){
286
+ Object.defineProperty(${n}, "p", {
287
+ get: function() { return window.kcContext["x-keycloakify"].resourcesPath; },
288
+ set: function() {}
289
+ });
290
+ }
291
+ return "${u}";
292
+ })()] = ${isArrowFunction ? `${e} =>` : `function(${e}) { return `} "/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}/${staticDir}${language}/"`
293
+ .replace(/\s+/g, " ")
294
+ .trim();
295
+ }
296
+ ];
297
+ fixedJsCode = fixedJsCode
298
+ .replace(...getReplaceArgs("js"))
299
+ .replace(...getReplaceArgs("css"))
300
+ .replace(new RegExp(`[a-zA-Z]+\\.[a-zA-Z]+\\+"${staticDir.replace(/\//g, "\\/")}`, "g"), `window.kcContext["x-keycloakify"].resourcesPath + "/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}/${staticDir}`);
301
+ return { fixedJsCode };
302
+ }
303
+ //# sourceMappingURL=webpack.js.map
304
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.js
305
+
306
+
307
+
308
+
309
+ (0,assert.assert)();
310
+ function replaceImportsInJsCode(params) {
311
+ const { jsCode, buildContext } = params;
312
+ const { fixedJsCode } = (() => {
313
+ switch (buildContext.bundler) {
314
+ case "vite":
315
+ return replaceImportsInJsCode_vite({
316
+ jsCode,
317
+ buildContext,
318
+ basenameOfAssetsFiles: readAssetsDirSync({
319
+ assetsDirPath: params.buildContext.assetsDirPath
320
+ })
321
+ });
322
+ case "webpack":
323
+ return replaceImportsInJsCode_webpack({
324
+ jsCode,
325
+ buildContext
326
+ });
327
+ }
328
+ })();
329
+ return { fixedJsCode };
330
+ }
331
+ const { readAssetsDirSync } = (() => {
332
+ let cache = undefined;
333
+ function readAssetsDirSync(params) {
334
+ const { assetsDirPath } = params;
335
+ if (cache !== undefined && cache.assetsDirPath === assetsDirPath) {
336
+ return cache.basenameOfAssetsFiles;
337
+ }
338
+ const basenameOfAssetsFiles = external_fs_.readdirSync(assetsDirPath);
339
+ cache = {
340
+ assetsDirPath,
341
+ basenameOfAssetsFiles
342
+ };
343
+ return basenameOfAssetsFiles;
344
+ }
345
+ return { readAssetsDirSync };
346
+ })();
347
+ //# sourceMappingURL=replaceImportsInJsCode.js.map
348
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/replacers/replaceImportsInJsCode/index.js
349
+
350
+ //# sourceMappingURL=index.js.map
351
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/replacers/replaceImportsInCssCode.js
352
+
353
+
354
+
355
+ (0,assert.assert)();
356
+ function replaceImportsInCssCode(params) {
357
+ const { cssCode, cssFileRelativeDirPath, buildContext } = params;
358
+ let fixedCssCode = cssCode;
359
+ [
360
+ /url\("(\/[^/][^"]+)"\)/g,
361
+ /url\('(\/[^/][^']+)'\)/g,
362
+ /url\((\/[^/][^)]+)\)/g
363
+ ].forEach(regex => (fixedCssCode = fixedCssCode.replace(regex, (match, assetFileAbsoluteUrlPathname) => {
364
+ if (buildContext.urlPathname !== undefined) {
365
+ if (!assetFileAbsoluteUrlPathname.startsWith(buildContext.urlPathname)) {
366
+ // NOTE: Should never happen
367
+ return match;
368
+ }
369
+ assetFileAbsoluteUrlPathname =
370
+ assetFileAbsoluteUrlPathname.replace(buildContext.urlPathname, "/");
371
+ }
372
+ inline_style_in_html: {
373
+ if (cssFileRelativeDirPath !== undefined) {
374
+ break inline_style_in_html;
375
+ }
376
+ return `url("\${xKeycloakify.resourcesPath}/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}${assetFileAbsoluteUrlPathname}")`;
377
+ }
378
+ const assetFileRelativeUrlPathname = external_path_.posix.relative(cssFileRelativeDirPath.replace(/\\/g, "/"), assetFileAbsoluteUrlPathname.replace(/^\//, ""));
379
+ return `url("${assetFileRelativeUrlPathname}")`;
380
+ })));
381
+ return { fixedCssCode };
382
+ }
383
+ //# sourceMappingURL=replaceImportsInCssCode.js.map
384
+ // EXTERNAL MODULE: ./node_modules/cheerio/lib/esm/index.js + 76 modules
385
+ var esm = __webpack_require__(87182);
386
+ // EXTERNAL MODULE: ./dist/bin/tools/getThisCodebaseRootDirPath.js
387
+ var getThisCodebaseRootDirPath = __webpack_require__(58822);
388
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateFtl/generateFtl.js
389
+
390
+
391
+
392
+
393
+
394
+
395
+
396
+
397
+ (0,assert.assert)();
398
+ function generateFtlFilesCodeFactory(params) {
399
+ var _a;
400
+ const { themeName, indexHtmlCode, buildContext, keycloakifyVersion, themeType, fieldNames } = params;
401
+ const $ = esm/* load */.zD(indexHtmlCode);
402
+ fix_imports_statements: {
403
+ $("script:not([src])").each((...[, element]) => {
404
+ const jsCode = $(element).html();
405
+ (0,assert.assert)(jsCode !== null);
406
+ const { fixedJsCode } = replaceImportsInJsCode({
407
+ jsCode,
408
+ buildContext
409
+ });
410
+ $(element).text(fixedJsCode);
411
+ });
412
+ $("style").each((...[, element]) => {
413
+ const cssCode = $(element).html();
414
+ (0,assert.assert)(cssCode !== null);
415
+ const { fixedCssCode } = replaceImportsInCssCode({
416
+ cssCode,
417
+ cssFileRelativeDirPath: undefined,
418
+ buildContext
419
+ });
420
+ $(element).text(fixedCssCode);
421
+ });
422
+ [
423
+ ["link", "href"],
424
+ ["script", "src"],
425
+ ["script", "data-src"]
426
+ ].forEach(([selector, attrName]) => $(selector).each((...[, element]) => {
427
+ var _a;
428
+ const href = $(element).attr(attrName);
429
+ if (href === undefined) {
430
+ return;
431
+ }
432
+ $(element).attr(attrName, href.replace(new RegExp(`^${((_a = buildContext.urlPathname) !== null && _a !== void 0 ? _a : "/").replace(/\//g, "\\/")}`), `\${xKeycloakify.resourcesPath}/${constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_}/`));
433
+ }));
434
+ }
435
+ //FTL is no valid html, we can't insert with cheerio, we put placeholder for injecting later.
436
+ const kcContextDeclarationTemplateFtl = external_fs_.readFileSync((0,external_path_.join)((0,getThisCodebaseRootDirPath/* getThisCodebaseRootDirPath */.e)(), "src", "bin", "keycloakify", "generateFtl", "kcContextDeclarationTemplate.ftl"))
437
+ .toString("utf8")
438
+ .replace("{{themeType}}", themeType)
439
+ .replace("{{themeName}}", themeName)
440
+ .replace("{{keycloakifyVersion}}", keycloakifyVersion)
441
+ .replace("{{themeVersion}}", buildContext.themeVersion)
442
+ .replace("{{fieldNames}}", fieldNames.map(name => `"${name}"`).join(", "))
443
+ .replace("{{RESOURCES_COMMON}}", constants/* RESOURCES_COMMON */.nX)
444
+ .replace("{{userDefinedExclusions}}", (_a = buildContext.kcContextExclusionsFtlCode) !== null && _a !== void 0 ? _a : "");
445
+ const ftlObjectToJsCodeDeclaringAnObjectPlaceholder = '{ "x": "vIdLqMeOed9sdLdIdOxdK0d" }';
446
+ $("head").prepend(`<script>\n${ftlObjectToJsCodeDeclaringAnObjectPlaceholder}\n</script>`);
447
+ // Remove part of the document marked as ignored.
448
+ {
449
+ const startTags = $('meta[name="keycloakify-ignore-start"]');
450
+ startTags.each((...[, startTag]) => {
451
+ const $startTag = $(startTag);
452
+ const $endTag = $startTag
453
+ .nextAll('meta[name="keycloakify-ignore-end"]')
454
+ .first();
455
+ if ($endTag.length) {
456
+ let currentNode = $startTag.next();
457
+ while (currentNode.length && !currentNode.is($endTag)) {
458
+ currentNode.remove();
459
+ currentNode = $startTag.next();
460
+ }
461
+ $startTag.remove();
462
+ $endTag.remove();
463
+ }
464
+ });
465
+ }
466
+ const partiallyFixedIndexHtmlCode = $.html();
467
+ function generateFtlFilesCode(params) {
468
+ const { pageId } = params;
469
+ const $ = esm/* load */.zD(partiallyFixedIndexHtmlCode);
470
+ let ftlCode = $.html();
471
+ Object.entries({
472
+ [ftlObjectToJsCodeDeclaringAnObjectPlaceholder]: kcContextDeclarationTemplateFtl,
473
+ "{{pageId}}": pageId,
474
+ "{{ftlTemplateFileName}}": pageId
475
+ }).map(([searchValue, replaceValue]) => (ftlCode = ftlCode.replace(searchValue, replaceValue)));
476
+ return { ftlCode };
477
+ }
478
+ return { generateFtlFilesCode };
479
+ }
480
+ //# sourceMappingURL=generateFtl.js.map
481
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateFtl/index.js
482
+
483
+ //# sourceMappingURL=index.js.map
484
+ // EXTERNAL MODULE: ./dist/bin/shared/downloadKeycloakStaticResources.js
485
+ var downloadKeycloakStaticResources = __webpack_require__(62190);
486
+ // EXTERNAL MODULE: ./dist/bin/tools/crawl.js
487
+ var crawl = __webpack_require__(73036);
488
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/readFieldNameUsage.js
489
+
490
+
491
+
492
+
493
+ /** Assumes the theme type exists */
494
+ function readFieldNameUsage(params) {
495
+ const { themeSrcDirPath, themeType } = params;
496
+ // NOTE: We pre-populate with the synthetic user attributes defined in useUserProfileForm (can't be parsed automatically)
497
+ const fieldNames = new Set([
498
+ "firstName",
499
+ "lastName",
500
+ "email",
501
+ "username",
502
+ "password",
503
+ "password-confirm"
504
+ ]);
505
+ for (const srcDirPath of [
506
+ (0,external_path_.join)((0,getThisCodebaseRootDirPath/* getThisCodebaseRootDirPath */.e)(), "src", themeType),
507
+ (0,external_path_.join)(themeSrcDirPath, themeType)
508
+ ]) {
509
+ const filePaths = (0,crawl/* crawl */.J)({
510
+ dirPath: srcDirPath,
511
+ returnedPathsType: "absolute"
512
+ }).filter(filePath => /\.(ts|tsx|js|jsx)$/.test(filePath));
513
+ for (const filePath of filePaths) {
514
+ const rawSourceFile = external_fs_.readFileSync(filePath).toString("utf8");
515
+ if (!rawSourceFile.includes("messagesPerField")) {
516
+ continue;
517
+ }
518
+ for (const functionName of [
519
+ "printIfExists",
520
+ "existsError",
521
+ "get",
522
+ "exists",
523
+ "getFirstError"
524
+ ]) {
525
+ if (!rawSourceFile.includes(functionName)) {
526
+ continue;
527
+ }
528
+ try {
529
+ rawSourceFile
530
+ .split(functionName)
531
+ .filter(part => part.startsWith("("))
532
+ .map(part => {
533
+ let [p1] = part.split(")");
534
+ p1 = p1.slice(1);
535
+ return p1;
536
+ })
537
+ .map(part => {
538
+ return part
539
+ .split(",")
540
+ .map(a => a.trim())
541
+ .filter((...[, i]) => functionName !== "printIfExists" ? true : i === 0)
542
+ .filter(a => a.startsWith('"') ||
543
+ a.startsWith("'") ||
544
+ a.startsWith("`"))
545
+ .filter(a => a.endsWith('"') ||
546
+ a.endsWith("'") ||
547
+ a.endsWith("`"))
548
+ .map(a => a.slice(1).slice(0, -1));
549
+ })
550
+ .flat()
551
+ .forEach(fieldName => fieldNames.add(fieldName));
552
+ }
553
+ catch (_a) { }
554
+ }
555
+ }
556
+ }
557
+ return Array.from(fieldNames);
558
+ }
559
+ //# sourceMappingURL=readFieldNameUsage.js.map
560
+ // EXTERNAL MODULE: ./node_modules/tsafe/id.js
561
+ var id = __webpack_require__(43047);
562
+ // EXTERNAL MODULE: ./node_modules/evt/tools/reducers/removeDuplicates.js
563
+ var removeDuplicates = __webpack_require__(78300);
564
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/readExtraPageNames.js
565
+
566
+
567
+
568
+
569
+
570
+
571
+ function readExtraPagesNames(params) {
572
+ const { themeSrcDirPath, themeType } = params;
573
+ const filePaths = (0,crawl/* crawl */.J)({
574
+ dirPath: (0,external_path_.join)(themeSrcDirPath, themeType),
575
+ returnedPathsType: "absolute"
576
+ }).filter(filePath => /\.(ts|tsx|js|jsx)$/.test(filePath));
577
+ const candidateFilePaths = filePaths.filter(filePath => /[kK]cContext\.[^.]+$/.test(filePath));
578
+ if (candidateFilePaths.length === 0) {
579
+ candidateFilePaths.push(...filePaths);
580
+ }
581
+ const extraPages = [];
582
+ for (const candidateFilPath of candidateFilePaths) {
583
+ const rawSourceFile = external_fs_.readFileSync(candidateFilPath).toString("utf8");
584
+ extraPages.push(...Array.from(rawSourceFile.matchAll(/["']([^.\s]+.ftl)["']:/g), m => m[1]));
585
+ }
586
+ return extraPages.reduce(...(0,removeDuplicates.removeDuplicates)()).filter(pageId => {
587
+ switch (themeType) {
588
+ case "account":
589
+ return !(0,id.id)(constants/* ACCOUNT_THEME_PAGE_IDS */.yV).includes(pageId);
590
+ case "login":
591
+ return !(0,id.id)(constants/* LOGIN_THEME_PAGE_IDS */.XV).includes(pageId);
592
+ }
593
+ });
594
+ }
595
+ //# sourceMappingURL=readExtraPageNames.js.map
596
+ // EXTERNAL MODULE: ./dist/bin/keycloakify/generateResources/generateMessageProperties.js
597
+ var generateMessageProperties = __webpack_require__(73817);
598
+ // EXTERNAL MODULE: ./dist/bin/shared/downloadKeycloakDefaultTheme.js
599
+ var downloadKeycloakDefaultTheme = __webpack_require__(60597);
600
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/bringInAccountV1.js
601
+
602
+
603
+
604
+
605
+
606
+
607
+ (0,assert.assert)();
608
+ async function bringInAccountV1(params) {
609
+ const { resourcesDirPath, buildContext } = params;
610
+ const { defaultThemeDirPath } = await (0,downloadKeycloakDefaultTheme/* downloadKeycloakDefaultTheme */.x)({
611
+ keycloakVersion: constants/* LAST_KEYCLOAK_VERSION_WITH_ACCOUNT_V1 */.rK,
612
+ buildContext
613
+ });
614
+ const accountV1DirPath = (0,external_path_.join)(resourcesDirPath, "theme", constants/* ACCOUNT_V1_THEME_NAME */.ZQ, "account");
615
+ (0,transformCodebase/* transformCodebase */.N)({
616
+ srcDirPath: (0,external_path_.join)(defaultThemeDirPath, "base", "account"),
617
+ destDirPath: accountV1DirPath
618
+ });
619
+ (0,transformCodebase/* transformCodebase */.N)({
620
+ srcDirPath: (0,external_path_.join)(defaultThemeDirPath, "keycloak", "account", "resources"),
621
+ destDirPath: (0,external_path_.join)(accountV1DirPath, "resources")
622
+ });
623
+ (0,transformCodebase/* transformCodebase */.N)({
624
+ srcDirPath: (0,external_path_.join)(defaultThemeDirPath, "keycloak", "common", "resources"),
625
+ destDirPath: (0,external_path_.join)(accountV1DirPath, "resources", constants/* RESOURCES_COMMON */.nX)
626
+ });
627
+ external_fs_.writeFileSync((0,external_path_.join)(accountV1DirPath, "theme.properties"), Buffer.from([
628
+ "accountResourceProvider=account-v1",
629
+ "",
630
+ "locales=ar,ca,cs,da,de,en,es,fr,fi,hu,it,ja,lt,nl,no,pl,pt-BR,ru,sk,sv,tr,zh-CN",
631
+ "",
632
+ "styles=" +
633
+ [
634
+ "css/account.css",
635
+ "img/icon-sidebar-active.png",
636
+ "img/logo.png",
637
+ ...[
638
+ "patternfly.min.css",
639
+ "patternfly-additions.min.css",
640
+ "patternfly-additions.min.css"
641
+ ].map(fileBasename => `${constants/* RESOURCES_COMMON */.nX}/node_modules/patternfly/dist/css/${fileBasename}`)
642
+ ].join(" "),
643
+ "",
644
+ "##### css classes for form buttons",
645
+ "# main class used for all buttons",
646
+ "kcButtonClass=btn",
647
+ "# classes defining priority of the button - primary or default (there is typically only one priority button for the form)",
648
+ "kcButtonPrimaryClass=btn-primary",
649
+ "kcButtonDefaultClass=btn-default",
650
+ "# classes defining size of the button",
651
+ "kcButtonLargeClass=btn-lg",
652
+ ""
653
+ ].join("\n"), "utf8"));
654
+ }
655
+ //# sourceMappingURL=bringInAccountV1.js.map
656
+ // EXTERNAL MODULE: ./dist/bin/tools/fs.rmSync.js
657
+ var fs_rmSync = __webpack_require__(89693);
658
+ // EXTERNAL MODULE: ./dist/bin/tools/readThisNpmPackageVersion.js
659
+ var readThisNpmPackageVersion = __webpack_require__(64795);
660
+ ;// CONCATENATED MODULE: ./dist/bin/shared/metaInfKeycloakThemes.js
661
+
662
+
663
+ function writeMetaInfKeycloakThemes(params) {
664
+ const { resourcesDirPath, getNewMetaInfKeycloakTheme } = params;
665
+ const filePath = (0,external_path_.join)(resourcesDirPath, "META-INF", "keycloak-themes.json");
666
+ const currentMetaInfKeycloakTheme = !external_fs_.existsSync(filePath)
667
+ ? undefined
668
+ : JSON.parse(external_fs_.readFileSync(filePath).toString("utf8"));
669
+ const newMetaInfKeycloakThemes = getNewMetaInfKeycloakTheme({
670
+ metaInfKeycloakTheme: currentMetaInfKeycloakTheme
671
+ });
672
+ {
673
+ const dirPath = (0,external_path_.dirname)(filePath);
674
+ if (!external_fs_.existsSync(dirPath)) {
675
+ external_fs_.mkdirSync(dirPath, { recursive: true });
676
+ }
677
+ }
678
+ external_fs_.writeFileSync(filePath, Buffer.from(JSON.stringify(newMetaInfKeycloakThemes, null, 2), "utf8"));
679
+ }
680
+ //# sourceMappingURL=metaInfKeycloakThemes.js.map
681
+ // EXTERNAL MODULE: ./node_modules/tsafe/objectEntries.js
682
+ var objectEntries = __webpack_require__(39612);
683
+ // EXTERNAL MODULE: ./dist/bin/tools/escapeStringForPropertiesFile.js
684
+ var escapeStringForPropertiesFile = __webpack_require__(27190);
685
+ // EXTERNAL MODULE: ./dist/bin/tools/downloadAndExtractArchive.js
686
+ var downloadAndExtractArchive = __webpack_require__(38367);
687
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/generateResourcesForMainTheme.js
688
+
689
+
690
+
691
+
692
+
693
+
694
+
695
+
696
+
697
+
698
+
699
+
700
+
701
+
702
+
703
+
704
+
705
+
706
+
707
+ (0,assert.assert)();
708
+ async function generateResourcesForMainTheme(params) {
709
+ var _a;
710
+ const { themeName, resourcesDirPath, buildContext } = params;
711
+ const getThemeTypeDirPath = (params) => {
712
+ const { themeType } = params;
713
+ return (0,external_path_.join)(resourcesDirPath, "theme", themeName, themeType);
714
+ };
715
+ for (const themeType of ["login", "account"]) {
716
+ if (!buildContext.implementedThemeTypes[themeType].isImplemented) {
717
+ continue;
718
+ }
719
+ const isForAccountSpa = themeType === "account" &&
720
+ ((0,assert.assert)(buildContext.implementedThemeTypes.account.isImplemented),
721
+ buildContext.implementedThemeTypes.account.type === "Single-Page");
722
+ const themeTypeDirPath = getThemeTypeDirPath({ themeType });
723
+ apply_replacers_and_move_to_theme_resources: {
724
+ const destDirPath = (0,external_path_.join)(themeTypeDirPath, "resources", constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_);
725
+ // NOTE: Prevent accumulation of files in the assets dir, as names are hashed they pile up.
726
+ (0,fs_rmSync/* rmSync */.a)(destDirPath, { recursive: true, force: true });
727
+ if (themeType === "account" &&
728
+ buildContext.implementedThemeTypes.login.isImplemented) {
729
+ // NOTE: We prevent doing it twice, it has been done for the login theme.
730
+ (0,transformCodebase/* transformCodebase */.N)({
731
+ srcDirPath: (0,external_path_.join)(getThemeTypeDirPath({
732
+ themeType: "login"
733
+ }), "resources", constants/* BASENAME_OF_KEYCLOAKIFY_RESOURCES_DIR */.F_),
734
+ destDirPath
735
+ });
736
+ break apply_replacers_and_move_to_theme_resources;
737
+ }
738
+ {
739
+ const dirPath = (0,external_path_.join)(buildContext.projectBuildDirPath, constants/* KEYCLOAK_RESOURCES */.lj);
740
+ if (external_fs_.existsSync(dirPath)) {
741
+ (0,assert.assert)(buildContext.bundler === "webpack");
742
+ throw new Error([
743
+ `Keycloakify build error: The ${constants/* KEYCLOAK_RESOURCES */.lj} directory shouldn't exist in your build directory.`,
744
+ `(${(0,external_path_.relative)(process.cwd(), dirPath)}).\n`,
745
+ `Theses assets are only required for local development with Storybook.",
746
+ "Please remove this directory as an additional step of your command.\n`,
747
+ `For example: \`"build": "... && rimraf ${(0,external_path_.relative)(buildContext.projectDirPath, dirPath)}"\``
748
+ ].join(" "));
749
+ }
750
+ }
751
+ (0,transformCodebase/* transformCodebase */.N)({
752
+ srcDirPath: buildContext.projectBuildDirPath,
753
+ destDirPath,
754
+ transformSourceCode: ({ filePath, fileRelativePath, sourceCode }) => {
755
+ if (filePath.endsWith(".css")) {
756
+ const { fixedCssCode } = replaceImportsInCssCode({
757
+ cssCode: sourceCode.toString("utf8"),
758
+ cssFileRelativeDirPath: (0,external_path_.dirname)(fileRelativePath),
759
+ buildContext
760
+ });
761
+ return {
762
+ modifiedSourceCode: Buffer.from(fixedCssCode, "utf8")
763
+ };
764
+ }
765
+ if (filePath.endsWith(".js")) {
766
+ const { fixedJsCode } = replaceImportsInJsCode({
767
+ jsCode: sourceCode.toString("utf8"),
768
+ buildContext
769
+ });
770
+ return {
771
+ modifiedSourceCode: Buffer.from(fixedJsCode, "utf8")
772
+ };
773
+ }
774
+ return { modifiedSourceCode: sourceCode };
775
+ }
776
+ });
777
+ }
778
+ const { generateFtlFilesCode } = generateFtlFilesCodeFactory({
779
+ themeName,
780
+ indexHtmlCode: external_fs_.readFileSync((0,external_path_.join)(buildContext.projectBuildDirPath, "index.html"))
781
+ .toString("utf8"),
782
+ buildContext,
783
+ keycloakifyVersion: (0,readThisNpmPackageVersion/* readThisNpmPackageVersion */.K)(),
784
+ themeType,
785
+ fieldNames: readFieldNameUsage({
786
+ themeSrcDirPath: buildContext.themeSrcDirPath,
787
+ themeType
788
+ })
789
+ });
790
+ [
791
+ ...(() => {
792
+ switch (themeType) {
793
+ case "login":
794
+ return constants/* LOGIN_THEME_PAGE_IDS */.XV;
795
+ case "account":
796
+ return isForAccountSpa ? ["index.ftl"] : constants/* ACCOUNT_THEME_PAGE_IDS */.yV;
797
+ }
798
+ })(),
799
+ ...(isForAccountSpa
800
+ ? []
801
+ : readExtraPagesNames({
802
+ themeType,
803
+ themeSrcDirPath: buildContext.themeSrcDirPath
804
+ }))
805
+ ].forEach(pageId => {
806
+ const { ftlCode } = generateFtlFilesCode({ pageId });
807
+ external_fs_.writeFileSync((0,external_path_.join)(themeTypeDirPath, pageId), Buffer.from(ftlCode, "utf8"));
808
+ });
809
+ i18n_messages_generation: {
810
+ if (isForAccountSpa) {
811
+ break i18n_messages_generation;
812
+ }
813
+ (0,generateMessageProperties/* generateMessageProperties */.k)({
814
+ themeSrcDirPath: buildContext.themeSrcDirPath,
815
+ themeType
816
+ }).forEach(({ languageTag, propertiesFileSource }) => {
817
+ const messagesDirPath = (0,external_path_.join)(themeTypeDirPath, "messages");
818
+ external_fs_.mkdirSync((0,external_path_.join)(themeTypeDirPath, "messages"), {
819
+ recursive: true
820
+ });
821
+ const propertiesFilePath = (0,external_path_.join)(messagesDirPath, `messages_${languageTag}.properties`);
822
+ external_fs_.writeFileSync(propertiesFilePath, Buffer.from(propertiesFileSource, "utf8"));
823
+ });
824
+ }
825
+ keycloak_static_resources: {
826
+ if (isForAccountSpa) {
827
+ break keycloak_static_resources;
828
+ }
829
+ await (0,downloadKeycloakStaticResources/* downloadKeycloakStaticResources */.p)({
830
+ keycloakVersion: (() => {
831
+ switch (themeType) {
832
+ case "account":
833
+ return constants/* LAST_KEYCLOAK_VERSION_WITH_ACCOUNT_V1 */.rK;
834
+ case "login":
835
+ return buildContext.loginThemeResourcesFromKeycloakVersion;
836
+ }
837
+ })(),
838
+ themeDirPath: (0,external_path_.resolve)((0,external_path_.join)(themeTypeDirPath, "..")),
839
+ themeType,
840
+ buildContext
841
+ });
842
+ }
843
+ external_fs_.writeFileSync((0,external_path_.join)(themeTypeDirPath, "theme.properties"), Buffer.from([
844
+ `parent=${(() => {
845
+ switch (themeType) {
846
+ case "account":
847
+ return isForAccountSpa ? "base" : constants/* ACCOUNT_V1_THEME_NAME */.ZQ;
848
+ case "login":
849
+ return "keycloak";
850
+ }
851
+ (0,assert.assert)(false);
852
+ })()}`,
853
+ ...(isForAccountSpa ? ["deprecatedMode=false"] : []),
854
+ ...((_a = buildContext.extraThemeProperties) !== null && _a !== void 0 ? _a : []),
855
+ ...buildContext.environmentVariables.map(({ name, default: defaultValue }) => `${name}=\${env.${name}:${(0,escapeStringForPropertiesFile/* escapeStringForPropertiesFile */.y)(defaultValue)}}`)
856
+ ].join("\n\n"), "utf8"));
857
+ }
858
+ email: {
859
+ if (!buildContext.implementedThemeTypes.email.isImplemented) {
860
+ break email;
861
+ }
862
+ const emailThemeSrcDirPath = (0,external_path_.join)(buildContext.themeSrcDirPath, "email");
863
+ (0,transformCodebase/* transformCodebase */.N)({
864
+ srcDirPath: emailThemeSrcDirPath,
865
+ destDirPath: getThemeTypeDirPath({ themeType: "email" })
866
+ });
867
+ }
868
+ bring_in_account_v1: {
869
+ if (!buildContext.implementedThemeTypes.account.isImplemented) {
870
+ break bring_in_account_v1;
871
+ }
872
+ if (buildContext.implementedThemeTypes.account.type !== "Multi-Page") {
873
+ break bring_in_account_v1;
874
+ }
875
+ await bringInAccountV1({
876
+ resourcesDirPath,
877
+ buildContext
878
+ });
879
+ }
880
+ bring_in_account_v3_i18n_messages: {
881
+ if (!buildContext.implementedThemeTypes.account.isImplemented) {
882
+ break bring_in_account_v3_i18n_messages;
883
+ }
884
+ if (buildContext.implementedThemeTypes.account.type !== "Single-Page") {
885
+ break bring_in_account_v3_i18n_messages;
886
+ }
887
+ const { extractedDirPath } = await (0,downloadAndExtractArchive/* downloadAndExtractArchive */.I)({
888
+ urlOrPath: "https://repo1.maven.org/maven2/org/keycloak/keycloak-account-ui/25.0.1/keycloak-account-ui-25.0.1.jar",
889
+ cacheDirPath: buildContext.cacheDirPath,
890
+ fetchOptions: buildContext.fetchOptions,
891
+ uniqueIdOfOnArchiveFile: "bring_in_account_v3_i18n_messages",
892
+ onArchiveFile: async ({ fileRelativePath, writeFile }) => {
893
+ if (!fileRelativePath.startsWith((0,external_path_.join)("theme", "keycloak.v3", "account", "messages"))) {
894
+ return;
895
+ }
896
+ await writeFile({
897
+ fileRelativePath: (0,external_path_.basename)(fileRelativePath)
898
+ });
899
+ }
900
+ });
901
+ (0,transformCodebase/* transformCodebase */.N)({
902
+ srcDirPath: extractedDirPath,
903
+ destDirPath: (0,external_path_.join)(getThemeTypeDirPath({ themeType: "account" }), "messages")
904
+ });
905
+ }
906
+ {
907
+ const metaInfKeycloakThemes = { themes: [] };
908
+ metaInfKeycloakThemes.themes.push({
909
+ name: themeName,
910
+ types: (0,objectEntries.objectEntries)(buildContext.implementedThemeTypes)
911
+ .filter(([, { isImplemented }]) => isImplemented)
912
+ .map(([themeType]) => themeType)
913
+ });
914
+ if (buildContext.implementedThemeTypes.account.isImplemented) {
915
+ metaInfKeycloakThemes.themes.push({
916
+ name: constants/* ACCOUNT_V1_THEME_NAME */.ZQ,
917
+ types: ["account"]
918
+ });
919
+ }
920
+ writeMetaInfKeycloakThemes({
921
+ resourcesDirPath,
922
+ getNewMetaInfKeycloakTheme: () => metaInfKeycloakThemes
923
+ });
924
+ }
925
+ }
926
+ //# sourceMappingURL=generateResourcesForMainTheme.js.map
927
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/generateResourcesForThemeVariant.js
928
+
929
+
930
+
931
+
932
+ (0,assert.assert)();
933
+ function generateResourcesForThemeVariant(params) {
934
+ const { resourcesDirPath, themeName, themeVariantName } = params;
935
+ const mainThemeDirPath = (0,external_path_.join)(resourcesDirPath, "theme", themeName);
936
+ (0,transformCodebase/* transformCodebase */.N)({
937
+ srcDirPath: mainThemeDirPath,
938
+ destDirPath: (0,external_path_.join)(mainThemeDirPath, "..", themeVariantName),
939
+ transformSourceCode: ({ fileRelativePath, sourceCode }) => {
940
+ if ((0,external_path_.extname)(fileRelativePath) === ".ftl" &&
941
+ fileRelativePath.split(external_path_.sep).length === 2) {
942
+ const modifiedSourceCode = Buffer.from(Buffer.from(sourceCode)
943
+ .toString("utf-8")
944
+ .replace(`"themeName": "${themeName}"`, `"themeName": "${themeVariantName}"`), "utf8");
945
+ (0,assert.assert)(Buffer.compare(modifiedSourceCode, sourceCode) !== 0);
946
+ return { modifiedSourceCode };
947
+ }
948
+ return { modifiedSourceCode: sourceCode };
949
+ }
950
+ });
951
+ writeMetaInfKeycloakThemes({
952
+ resourcesDirPath,
953
+ getNewMetaInfKeycloakTheme: ({ metaInfKeycloakTheme }) => {
954
+ (0,assert.assert)(metaInfKeycloakTheme !== undefined);
955
+ const newMetaInfKeycloakTheme = metaInfKeycloakTheme;
956
+ newMetaInfKeycloakTheme.themes.push({
957
+ name: themeVariantName,
958
+ types: (() => {
959
+ const theme = newMetaInfKeycloakTheme.themes.find(({ name }) => name === themeName);
960
+ (0,assert.assert)(theme !== undefined);
961
+ return theme.types;
962
+ })()
963
+ });
964
+ return newMetaInfKeycloakTheme;
965
+ }
966
+ });
967
+ }
968
+ //# sourceMappingURL=generateResourcesForThemeVariant.js.map
969
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/generateResources.js
970
+
971
+
972
+
973
+
974
+
975
+ (0,assert.assert)();
976
+ async function generateResources(params) {
977
+ const { resourcesDirPath, buildContext } = params;
978
+ const [themeName, ...themeVariantNames] = buildContext.themeNames;
979
+ if (external_fs_default().existsSync(resourcesDirPath)) {
980
+ (0,fs_rmSync/* rmSync */.a)(resourcesDirPath, { recursive: true });
981
+ }
982
+ await generateResourcesForMainTheme({
983
+ resourcesDirPath,
984
+ themeName,
985
+ buildContext
986
+ });
987
+ for (const themeVariantName of themeVariantNames) {
988
+ generateResourcesForThemeVariant({
989
+ resourcesDirPath,
990
+ themeName,
991
+ themeVariantName
992
+ });
993
+ }
994
+ }
995
+ //# sourceMappingURL=generateResources.js.map
996
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/generateResources/index.js
997
+
998
+ //# sourceMappingURL=index.js.map
999
+ // EXTERNAL MODULE: external "child_process"
1000
+ var external_child_process_ = __webpack_require__(32081);
1001
+ var external_child_process_default = /*#__PURE__*/__webpack_require__.n(external_child_process_);
1002
+ // EXTERNAL MODULE: ./dist/bin/shared/buildContext.js + 1 modules
1003
+ var shared_buildContext = __webpack_require__(56031);
1004
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/extensionVersions.js
1005
+ // NOTE: v0.5 is a dummy version.
1006
+ const keycloakAccountV1Versions = [null, "0.3", "0.4", "0.6"];
1007
+ const keycloakThemeAdditionalInfoExtensionVersions = [null, "1.1.5"];
1008
+ //# sourceMappingURL=extensionVersions.js.map
1009
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.js
1010
+
1011
+ function getKeycloakVersionRangeForJar(params) {
1012
+ const { keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, doesImplementAccountV1Theme } = params;
1013
+ if (doesImplementAccountV1Theme) {
1014
+ const keycloakVersionRange = (() => {
1015
+ switch (keycloakAccountV1Version) {
1016
+ case null:
1017
+ switch (keycloakThemeAdditionalInfoExtensionVersion) {
1018
+ case null:
1019
+ return "21-and-below";
1020
+ case "1.1.5":
1021
+ return undefined;
1022
+ }
1023
+ (0,assert.assert)(false);
1024
+ case "0.3":
1025
+ switch (keycloakThemeAdditionalInfoExtensionVersion) {
1026
+ case null:
1027
+ return undefined;
1028
+ case "1.1.5":
1029
+ return "23";
1030
+ }
1031
+ (0,assert.assert)(false);
1032
+ case "0.4":
1033
+ switch (keycloakThemeAdditionalInfoExtensionVersion) {
1034
+ case null:
1035
+ return undefined;
1036
+ case "1.1.5":
1037
+ return "24";
1038
+ }
1039
+ (0,assert.assert)(false);
1040
+ case "0.6":
1041
+ switch (keycloakThemeAdditionalInfoExtensionVersion) {
1042
+ case null:
1043
+ return undefined;
1044
+ case "1.1.5":
1045
+ return "25-and-above";
1046
+ }
1047
+ }
1048
+ (0,assert.assert)(false);
1049
+ })();
1050
+ (0,assert.assert)();
1051
+ return keycloakVersionRange;
1052
+ }
1053
+ else {
1054
+ const keycloakVersionRange = (() => {
1055
+ if (keycloakAccountV1Version !== null) {
1056
+ return undefined;
1057
+ }
1058
+ switch (keycloakThemeAdditionalInfoExtensionVersion) {
1059
+ case null:
1060
+ return "21-and-below";
1061
+ case "1.1.5":
1062
+ return "22-and-above";
1063
+ }
1064
+ (0,assert.assert)(false);
1065
+ })();
1066
+ (0,assert.assert)();
1067
+ return keycloakVersionRange;
1068
+ }
1069
+ }
1070
+ //# sourceMappingURL=getKeycloakVersionRangeForJar.js.map
1071
+ // EXTERNAL MODULE: external "fs/promises"
1072
+ var promises_ = __webpack_require__(73292);
1073
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/generatePom.js
1074
+
1075
+ (0,assert.assert)();
1076
+ function generatePom(params) {
1077
+ const { keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, buildContext } = params;
1078
+ const { pomFileCode } = (function generatePomFileCode() {
1079
+ const pomFileCode = [
1080
+ `<?xml version="1.0"?>`,
1081
+ `<project xmlns="http://maven.apache.org/POM/4.0.0"`,
1082
+ ` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"`,
1083
+ ` xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">`,
1084
+ ` <modelVersion>4.0.0</modelVersion>`,
1085
+ ` <groupId>${buildContext.groupId}</groupId>`,
1086
+ ` <artifactId>${buildContext.artifactId}</artifactId>`,
1087
+ ` <version>${buildContext.themeVersion}</version>`,
1088
+ ` <name>${buildContext.artifactId}</name>`,
1089
+ ` <description />`,
1090
+ ` <packaging>jar</packaging>`,
1091
+ ` <properties>`,
1092
+ ` <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>`,
1093
+ ` </properties>`,
1094
+ ...(keycloakAccountV1Version !== null ||
1095
+ keycloakThemeAdditionalInfoExtensionVersion !== null
1096
+ ? [
1097
+ ` <build>`,
1098
+ ` <plugins>`,
1099
+ ` <plugin>`,
1100
+ ` <groupId>org.apache.maven.plugins</groupId>`,
1101
+ ` <artifactId>maven-shade-plugin</artifactId>`,
1102
+ ` <version>3.5.1</version>`,
1103
+ ` <executions>`,
1104
+ ` <execution>`,
1105
+ ` <phase>package</phase>`,
1106
+ ` <goals>`,
1107
+ ` <goal>shade</goal>`,
1108
+ ` </goals>`,
1109
+ ` </execution>`,
1110
+ ` </executions>`,
1111
+ ` </plugin>`,
1112
+ ` </plugins>`,
1113
+ ` </build>`,
1114
+ ` <dependencies>`,
1115
+ ...(keycloakAccountV1Version !== null
1116
+ ? [
1117
+ ` <dependency>`,
1118
+ ` <groupId>io.phasetwo.keycloak</groupId>`,
1119
+ ` <artifactId>keycloak-account-v1</artifactId>`,
1120
+ ` <version>${keycloakAccountV1Version}</version>`,
1121
+ ` </dependency>`
1122
+ ]
1123
+ : []),
1124
+ ...(keycloakThemeAdditionalInfoExtensionVersion !== null
1125
+ ? [
1126
+ ` <dependency>`,
1127
+ ` <groupId>dev.jcputney</groupId>`,
1128
+ ` <artifactId>keycloak-theme-additional-info-extension</artifactId>`,
1129
+ ` <version>${keycloakThemeAdditionalInfoExtensionVersion}</version>`,
1130
+ ` </dependency>`
1131
+ ]
1132
+ : []),
1133
+ ` </dependencies>`
1134
+ ]
1135
+ : []),
1136
+ `</project>`
1137
+ ].join("\n");
1138
+ return { pomFileCode };
1139
+ })();
1140
+ return { pomFileCode };
1141
+ }
1142
+ //# sourceMappingURL=generatePom.js.map
1143
+ // EXTERNAL MODULE: ./dist/bin/tools/isInside.js
1144
+ var isInside = __webpack_require__(90665);
1145
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/buildJar.js
1146
+
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+
1157
+ (0,assert.assert)();
1158
+ async function buildJar(params) {
1159
+ const { jarFileBasename, keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, resourcesDirPath, doesImplementAccountV1Theme, buildContext } = params;
1160
+ const keycloakifyBuildCacheDirPath = (0,external_path_.join)(buildContext.cacheDirPath, "maven", jarFileBasename.replace(".jar", ""));
1161
+ const tmpResourcesDirPath = (0,external_path_.join)(keycloakifyBuildCacheDirPath, "src", "main", "resources");
1162
+ (0,fs_rmSync/* rmSync */.a)(tmpResourcesDirPath, { recursive: true, force: true });
1163
+ (0,transformCodebase/* transformCodebase */.N)({
1164
+ srcDirPath: resourcesDirPath,
1165
+ destDirPath: tmpResourcesDirPath,
1166
+ transformSourceCode: !doesImplementAccountV1Theme || keycloakAccountV1Version !== null
1167
+ ? undefined
1168
+ : (params) => {
1169
+ const { fileRelativePath, sourceCode } = params;
1170
+ if ((0,isInside/* isInside */.V)({
1171
+ dirPath: (0,external_path_.join)("theme", constants/* ACCOUNT_V1_THEME_NAME */.ZQ),
1172
+ filePath: fileRelativePath
1173
+ })) {
1174
+ return undefined;
1175
+ }
1176
+ for (const themeName of buildContext.themeNames) {
1177
+ if (fileRelativePath ===
1178
+ (0,external_path_.join)("theme", themeName, "account", "theme.properties")) {
1179
+ const modifiedSourceCode = Buffer.from(sourceCode
1180
+ .toString("utf8")
1181
+ .replace(`parent=${constants/* ACCOUNT_V1_THEME_NAME */.ZQ}`, "parent=keycloak"), "utf8");
1182
+ (0,assert.assert)(Buffer.compare(modifiedSourceCode, sourceCode) !== 0);
1183
+ return { modifiedSourceCode };
1184
+ }
1185
+ }
1186
+ return { modifiedSourceCode: sourceCode };
1187
+ }
1188
+ });
1189
+ remove_account_v1_in_meta_inf: {
1190
+ if (!doesImplementAccountV1Theme) {
1191
+ // NOTE: We do not have account v1 anyway
1192
+ break remove_account_v1_in_meta_inf;
1193
+ }
1194
+ if (keycloakAccountV1Version !== null) {
1195
+ // NOTE: No, we need to keep account-v1 in meta-inf
1196
+ break remove_account_v1_in_meta_inf;
1197
+ }
1198
+ writeMetaInfKeycloakThemes({
1199
+ resourcesDirPath: tmpResourcesDirPath,
1200
+ getNewMetaInfKeycloakTheme: ({ metaInfKeycloakTheme }) => {
1201
+ (0,assert.assert)(metaInfKeycloakTheme !== undefined);
1202
+ metaInfKeycloakTheme.themes = metaInfKeycloakTheme.themes.filter(({ name }) => name !== constants/* ACCOUNT_V1_THEME_NAME */.ZQ);
1203
+ return metaInfKeycloakTheme;
1204
+ }
1205
+ });
1206
+ }
1207
+ route_legacy_pages: {
1208
+ if (!buildContext.implementedThemeTypes.login.isImplemented) {
1209
+ break route_legacy_pages;
1210
+ }
1211
+ // NOTE: If there's no account theme there is no special target for keycloak 24 and up so we create
1212
+ // the pages anyway. If there is an account pages, since we know that account-v1 is only support keycloak
1213
+ // 24 in version 0.4 and up, we can safely break the route for legacy pages.
1214
+ const doBreak = (() => {
1215
+ switch (keycloakAccountV1Version) {
1216
+ case null:
1217
+ return false;
1218
+ case "0.3":
1219
+ return false;
1220
+ default:
1221
+ return true;
1222
+ }
1223
+ })();
1224
+ // TODO: Remove this optimization, it's a bit hacky.
1225
+ if (doBreak) {
1226
+ break route_legacy_pages;
1227
+ }
1228
+ ["register.ftl", "login-update-profile.ftl"].forEach(pageId => buildContext.themeNames.map(themeName => {
1229
+ const ftlFilePath = (0,external_path_.join)(tmpResourcesDirPath, "theme", themeName, "login", pageId);
1230
+ const ftlFileContent = (0,external_fs_.readFileSync)(ftlFilePath).toString("utf8");
1231
+ const ftlFileBasename = (() => {
1232
+ switch (pageId) {
1233
+ case "register.ftl":
1234
+ return "register-user-profile.ftl";
1235
+ case "login-update-profile.ftl":
1236
+ return "update-user-profile.ftl";
1237
+ }
1238
+ (0,assert.assert)(false);
1239
+ })();
1240
+ const modifiedFtlFileContent = ftlFileContent.replace(`"ftlTemplateFileName": "${pageId}"`, `"ftlTemplateFileName": "${ftlFileBasename}"`);
1241
+ (0,assert.assert)(modifiedFtlFileContent !== ftlFileContent);
1242
+ promises_.writeFile((0,external_path_.join)((0,external_path_.dirname)(ftlFilePath), ftlFileBasename), Buffer.from(modifiedFtlFileContent, "utf8"));
1243
+ }));
1244
+ }
1245
+ {
1246
+ const { pomFileCode } = generatePom({
1247
+ buildContext,
1248
+ keycloakAccountV1Version,
1249
+ keycloakThemeAdditionalInfoExtensionVersion
1250
+ });
1251
+ await promises_.writeFile((0,external_path_.join)(keycloakifyBuildCacheDirPath, "pom.xml"), Buffer.from(pomFileCode, "utf8"));
1252
+ }
1253
+ await new Promise((resolve, reject) => external_child_process_default().exec(`mvn install -Dmaven.repo.local="${(0,external_path_.join)(keycloakifyBuildCacheDirPath, ".m2")}"`, { cwd: keycloakifyBuildCacheDirPath }, error => {
1254
+ if (error !== null) {
1255
+ console.error(`Build jar failed: ${JSON.stringify({
1256
+ jarFileBasename,
1257
+ keycloakAccountV1Version,
1258
+ keycloakThemeAdditionalInfoExtensionVersion
1259
+ }, null, 2)}`);
1260
+ reject(error);
1261
+ return;
1262
+ }
1263
+ resolve();
1264
+ }));
1265
+ await promises_.rename((0,external_path_.join)(keycloakifyBuildCacheDirPath, "target", `${buildContext.artifactId}-${buildContext.themeVersion}.jar`), (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, jarFileBasename));
1266
+ }
1267
+ //# sourceMappingURL=buildJar.js.map
1268
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/buildJars.js
1269
+
1270
+
1271
+
1272
+
1273
+ (0,assert.assert)();
1274
+ async function buildJars(params) {
1275
+ const { resourcesDirPath, buildContext } = params;
1276
+ const doesImplementAccountV1Theme = buildContext.implementedThemeTypes.account.isImplemented &&
1277
+ buildContext.implementedThemeTypes.account.type === "Multi-Page";
1278
+ await Promise.all(keycloakAccountV1Versions.map(keycloakAccountV1Version => keycloakThemeAdditionalInfoExtensionVersions.map(keycloakThemeAdditionalInfoExtensionVersion => {
1279
+ const keycloakVersionRange = getKeycloakVersionRangeForJar({
1280
+ doesImplementAccountV1Theme,
1281
+ keycloakAccountV1Version,
1282
+ keycloakThemeAdditionalInfoExtensionVersion
1283
+ });
1284
+ if (keycloakVersionRange === undefined) {
1285
+ return undefined;
1286
+ }
1287
+ const jarTarget = buildContext.jarTargets.find(jarTarget => jarTarget.keycloakVersionRange === keycloakVersionRange);
1288
+ if (jarTarget === undefined) {
1289
+ return undefined;
1290
+ }
1291
+ const { jarFileBasename } = jarTarget;
1292
+ return buildJar({
1293
+ jarFileBasename,
1294
+ keycloakAccountV1Version,
1295
+ keycloakThemeAdditionalInfoExtensionVersion,
1296
+ resourcesDirPath,
1297
+ doesImplementAccountV1Theme,
1298
+ buildContext
1299
+ });
1300
+ }))
1301
+ .flat());
1302
+ }
1303
+ //# sourceMappingURL=buildJars.js.map
1304
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/index.js
1305
+
1306
+ //# sourceMappingURL=index.js.map
1307
+ // EXTERNAL MODULE: ./node_modules/chalk/source/index.js
1308
+ var source = __webpack_require__(78818);
1309
+ var source_default = /*#__PURE__*/__webpack_require__.n(source);
1310
+ // EXTERNAL MODULE: external "os"
1311
+ var external_os_ = __webpack_require__(22037);
1312
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/keycloakify.js
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+
1322
+
1323
+
1324
+ async function command(params) {
1325
+ exit_if_maven_not_installed: {
1326
+ let commandOutput = undefined;
1327
+ try {
1328
+ commandOutput = external_child_process_.execSync("mvn --version", {
1329
+ stdio: ["ignore", "pipe", "ignore"]
1330
+ });
1331
+ }
1332
+ catch (_a) { }
1333
+ if (commandOutput === null || commandOutput === void 0 ? void 0 : commandOutput.toString("utf8").includes("Apache Maven")) {
1334
+ break exit_if_maven_not_installed;
1335
+ }
1336
+ const installationCommand = (() => {
1337
+ switch (external_os_.platform()) {
1338
+ case "darwin":
1339
+ return "brew install mvn";
1340
+ case "win32":
1341
+ return "choco install mvn";
1342
+ case "linux":
1343
+ default:
1344
+ return "sudo apt-get install mvn";
1345
+ }
1346
+ })();
1347
+ console.log(`${source_default().red("Apache Maven required.")} Install it with \`${source_default().bold(installationCommand)}\` (for example)`);
1348
+ process.exit(1);
1349
+ }
1350
+ const { cliCommandOptions } = params;
1351
+ const buildContext = (0,shared_buildContext/* getBuildContext */.s)({ cliCommandOptions });
1352
+ console.log([
1353
+ source_default().cyan(`keycloakify v${(0,readThisNpmPackageVersion/* readThisNpmPackageVersion */.K)()}`),
1354
+ source_default().green(`Building the keycloak theme in .${external_path_.sep}${(0,external_path_.relative)(process.cwd(), buildContext.keycloakifyBuildDirPath)} ...`)
1355
+ ].join(" "));
1356
+ const startTime = Date.now();
1357
+ {
1358
+ if (!external_fs_.existsSync(buildContext.keycloakifyBuildDirPath)) {
1359
+ external_fs_.mkdirSync(buildContext.keycloakifyBuildDirPath, {
1360
+ recursive: true
1361
+ });
1362
+ }
1363
+ external_fs_.writeFileSync((0,external_path_.join)(buildContext.keycloakifyBuildDirPath, ".gitignore"), Buffer.from("*", "utf8"));
1364
+ }
1365
+ const resourcesDirPath = (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, "resources");
1366
+ await generateResources({
1367
+ resourcesDirPath,
1368
+ buildContext
1369
+ });
1370
+ run_post_build_script: {
1371
+ if (buildContext.bundler !== "vite") {
1372
+ break run_post_build_script;
1373
+ }
1374
+ external_child_process_.execSync("npx vite", {
1375
+ cwd: buildContext.projectDirPath,
1376
+ env: Object.assign(Object.assign({}, process.env), { [constants/* VITE_PLUGIN_SUB_SCRIPTS_ENV_NAMES.RUN_POST_BUILD_SCRIPT */.TE.RUN_POST_BUILD_SCRIPT]: JSON.stringify({
1377
+ resourcesDirPath,
1378
+ buildContext
1379
+ }) })
1380
+ });
1381
+ }
1382
+ await buildJars({
1383
+ resourcesDirPath,
1384
+ buildContext
1385
+ });
1386
+ (0,fs_rmSync/* rmSync */.a)(resourcesDirPath, { recursive: true });
1387
+ console.log(source_default().green(`✓ keycloak theme built in ${((Date.now() - startTime) / 1000).toFixed(2)}s`));
1388
+ }
1389
+ //# sourceMappingURL=keycloakify.js.map
1390
+ ;// CONCATENATED MODULE: ./dist/bin/keycloakify/index.js
1391
+
1392
+ //# sourceMappingURL=index.js.map
1393
+
1394
+ /***/ }),
1395
+
1396
+ /***/ 62190:
1397
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1398
+
1399
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1400
+ /* harmony export */ "p": () => (/* binding */ downloadKeycloakStaticResources)
1401
+ /* harmony export */ });
1402
+ /* harmony import */ var _tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60332);
1403
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
1404
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
1405
+ /* harmony import */ var _downloadKeycloakDefaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60597);
1406
+ /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(173);
1407
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(88078);
1408
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(tsafe_assert__WEBPACK_IMPORTED_MODULE_4__);
1409
+ /* harmony import */ var _tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(43765);
1410
+
1411
+
1412
+
1413
+
1414
+
1415
+
1416
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_4__.assert)();
1417
+ async function downloadKeycloakStaticResources(params) {
1418
+ const { themeType, themeDirPath, keycloakVersion, buildContext } = params;
1419
+ const { defaultThemeDirPath } = await (0,_downloadKeycloakDefaultTheme__WEBPACK_IMPORTED_MODULE_2__/* .downloadKeycloakDefaultTheme */ .x)({
1420
+ keycloakVersion,
1421
+ buildContext
1422
+ });
1423
+ const resourcesDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(themeDirPath, themeType, "resources");
1424
+ repatriate_base_resources: {
1425
+ const srcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "base", themeType, "resources");
1426
+ if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(srcDirPath))) {
1427
+ break repatriate_base_resources;
1428
+ }
1429
+ (0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
1430
+ srcDirPath,
1431
+ destDirPath: resourcesDirPath
1432
+ });
1433
+ }
1434
+ (0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
1435
+ srcDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "keycloak", themeType, "resources"),
1436
+ destDirPath: resourcesDirPath
1437
+ });
1438
+ (0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
1439
+ srcDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "keycloak", "common", "resources"),
1440
+ destDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(resourcesDirPath, _constants__WEBPACK_IMPORTED_MODULE_3__/* .RESOURCES_COMMON */ .nX)
1441
+ });
1442
+ }
1443
+ //# sourceMappingURL=downloadKeycloakStaticResources.js.map
1444
+
1445
+ /***/ }),
1446
+
1447
+ /***/ 27190:
1448
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1449
+
1450
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1451
+ /* harmony export */ "y": () => (/* binding */ escapeStringForPropertiesFile)
1452
+ /* harmony export */ });
1453
+ // Convert a JavaScript string to UTF-16 encoding
1454
+ function toUTF16(codePoint) {
1455
+ if (codePoint <= 0xffff) {
1456
+ // BMP character
1457
+ return "\\u" + codePoint.toString(16).padStart(4, "0");
1458
+ }
1459
+ else {
1460
+ // Non-BMP character
1461
+ codePoint -= 0x10000;
1462
+ let highSurrogate = (codePoint >> 10) + 0xd800;
1463
+ let lowSurrogate = (codePoint % 0x400) + 0xdc00;
1464
+ return ("\\u" +
1465
+ highSurrogate.toString(16).padStart(4, "0") +
1466
+ "\\u" +
1467
+ lowSurrogate.toString(16).padStart(4, "0"));
1468
+ }
1469
+ }
1470
+ // Escapes special characters for use in a .properties file
1471
+ function escapeStringForPropertiesFile(str) {
1472
+ let escapedStr = "";
1473
+ for (const char of [...str]) {
1474
+ const codePoint = char.codePointAt(0);
1475
+ if (!codePoint)
1476
+ continue;
1477
+ switch (char) {
1478
+ case "\n":
1479
+ escapedStr += "\\n";
1480
+ break;
1481
+ case "\r":
1482
+ escapedStr += "\\r";
1483
+ break;
1484
+ case "\t":
1485
+ escapedStr += "\\t";
1486
+ break;
1487
+ case "\\":
1488
+ escapedStr += "\\\\";
1489
+ break;
1490
+ case ":":
1491
+ escapedStr += "\\:";
1492
+ break;
1493
+ case "=":
1494
+ escapedStr += "\\=";
1495
+ break;
1496
+ case "#":
1497
+ escapedStr += "\\#";
1498
+ break;
1499
+ case "!":
1500
+ escapedStr += "\\!";
1501
+ break;
1502
+ case "'":
1503
+ escapedStr += "''";
1504
+ break;
1505
+ default:
1506
+ if (codePoint > 0x7f) {
1507
+ escapedStr += toUTF16(codePoint); // Non-ASCII characters
1508
+ }
1509
+ else {
1510
+ escapedStr += char; // ASCII character needs no escape
1511
+ }
1512
+ }
1513
+ }
1514
+ return escapedStr;
1515
+ }
1516
+ //# sourceMappingURL=escapeStringForPropertiesFile.js.map
1517
+
1518
+ /***/ }),
1519
+
1520
+ /***/ 90665:
1521
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1522
+
1523
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1524
+ /* harmony export */ "V": () => (/* binding */ isInside)
1525
+ /* harmony export */ });
1526
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
1527
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
1528
+
1529
+ function isInside(params) {
1530
+ const { dirPath, filePath } = params;
1531
+ return !(0,path__WEBPACK_IMPORTED_MODULE_0__.relative)(dirPath, filePath).startsWith("..");
1532
+ }
1533
+ //# sourceMappingURL=isInside.js.map
1534
+
1535
+ /***/ })
1536
+
1537
+ };
1538
+ ;