keycloakify 10.0.0-rc.36 → 10.0.0-rc.38

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 (272) hide show
  1. package/account/Fallback.d.ts +1 -2
  2. package/account/Fallback.js.map +1 -1
  3. package/account/KcContext/KcContext.d.ts +6 -6
  4. package/account/KcContext/getKcContextMock.d.ts +9 -9
  5. package/account/KcContext/getKcContextMock.js +3 -3
  6. package/account/KcContext/getKcContextMock.js.map +1 -1
  7. package/account/Template.d.ts +1 -2
  8. package/account/Template.js +7 -6
  9. package/account/Template.js.map +1 -1
  10. package/account/TemplateProps.d.ts +1 -3
  11. package/account/i18n/i18n.d.ts +9 -4
  12. package/account/i18n/i18n.js +132 -87
  13. package/account/i18n/i18n.js.map +1 -1
  14. package/account/i18n/index.d.ts +9 -2
  15. package/account/i18n/index.js +5 -1
  16. package/account/i18n/index.js.map +1 -1
  17. package/account/index.d.ts +1 -1
  18. package/account/lib/kcClsx.d.ts +9 -0
  19. package/account/lib/{useGetClassName.js → kcClsx.js} +3 -3
  20. package/account/lib/kcClsx.js.map +1 -0
  21. package/account/pages/Account.d.ts +1 -2
  22. package/account/pages/Account.js +9 -7
  23. package/account/pages/Account.js.map +1 -1
  24. package/account/pages/Applications.d.ts +1 -2
  25. package/account/pages/Applications.js +7 -7
  26. package/account/pages/Applications.js.map +1 -1
  27. package/account/pages/FederatedIdentity.d.ts +1 -2
  28. package/account/pages/FederatedIdentity.js +4 -3
  29. package/account/pages/FederatedIdentity.js.map +1 -1
  30. package/account/pages/Log.d.ts +1 -2
  31. package/account/pages/Log.js +6 -5
  32. package/account/pages/Log.js.map +1 -1
  33. package/account/pages/PageProps.d.ts +2 -4
  34. package/account/pages/Password.d.ts +1 -2
  35. package/account/pages/Password.js +10 -9
  36. package/account/pages/Password.js.map +1 -1
  37. package/account/pages/Sessions.d.ts +1 -2
  38. package/account/pages/Sessions.js +6 -6
  39. package/account/pages/Sessions.js.map +1 -1
  40. package/account/pages/Totp.d.ts +1 -2
  41. package/account/pages/Totp.js +6 -5
  42. package/account/pages/Totp.js.map +1 -1
  43. package/bin/{314.index.js → 21.index.js} +162 -4
  44. package/bin/{430.index.js → 214.index.js} +161 -2
  45. package/bin/3.index.js +81 -65
  46. package/bin/526.index.js +3 -2
  47. package/bin/538.index.js +552 -0
  48. package/bin/795.index.js +3 -2
  49. package/bin/{890.index.js → 941.index.js} +2 -159
  50. package/bin/main.js +19 -7
  51. package/lib/getKcClsx.d.ts +11 -0
  52. package/lib/getKcClsx.js +44 -0
  53. package/lib/getKcClsx.js.map +1 -0
  54. package/login/Fallback.d.ts +1 -2
  55. package/login/Fallback.js.map +1 -1
  56. package/login/KcContext/KcContext.d.ts +6 -6
  57. package/login/KcContext/getKcContextMock.d.ts +9 -9
  58. package/login/KcContext/getKcContextMock.js +3 -3
  59. package/login/KcContext/getKcContextMock.js.map +1 -1
  60. package/login/Template.d.ts +1 -2
  61. package/login/Template.js +10 -9
  62. package/login/Template.js.map +1 -1
  63. package/login/TemplateProps.d.ts +1 -3
  64. package/login/UserProfileFormFields.d.ts +5 -5
  65. package/login/UserProfileFormFields.js +35 -34
  66. package/login/UserProfileFormFields.js.map +1 -1
  67. package/login/i18n/i18n.d.ts +9 -4
  68. package/login/i18n/i18n.js +136 -91
  69. package/login/i18n/i18n.js.map +1 -1
  70. package/login/i18n/index.d.ts +9 -2
  71. package/login/i18n/index.js +5 -1
  72. package/login/i18n/index.js.map +1 -1
  73. package/login/index.d.ts +1 -1
  74. package/login/lib/kcClsx.d.ts +9 -0
  75. package/login/lib/{useGetClassName.js → kcClsx.js} +3 -3
  76. package/login/lib/kcClsx.js.map +1 -0
  77. package/login/lib/useUserProfileForm.d.ts +9 -6
  78. package/login/lib/useUserProfileForm.js +7 -5
  79. package/login/lib/useUserProfileForm.js.map +1 -1
  80. package/login/pages/Code.d.ts +1 -2
  81. package/login/pages/Code.js +6 -5
  82. package/login/pages/Code.js.map +1 -1
  83. package/login/pages/DeleteAccountConfirm.d.ts +1 -2
  84. package/login/pages/DeleteAccountConfirm.js +7 -7
  85. package/login/pages/DeleteAccountConfirm.js.map +1 -1
  86. package/login/pages/DeleteCredential.d.ts +1 -2
  87. package/login/pages/DeleteCredential.js +6 -6
  88. package/login/pages/DeleteCredential.js.map +1 -1
  89. package/login/pages/Error.d.ts +1 -2
  90. package/login/pages/Error.js +4 -3
  91. package/login/pages/Error.js.map +1 -1
  92. package/login/pages/FrontchannelLogout.d.ts +1 -2
  93. package/login/pages/FrontchannelLogout.js +4 -3
  94. package/login/pages/FrontchannelLogout.js.map +1 -1
  95. package/login/pages/IdpReviewUserProfile.d.ts +1 -2
  96. package/login/pages/IdpReviewUserProfile.js +6 -6
  97. package/login/pages/IdpReviewUserProfile.js.map +1 -1
  98. package/login/pages/Info.d.ts +1 -2
  99. package/login/pages/Info.js +4 -3
  100. package/login/pages/Info.js.map +1 -1
  101. package/login/pages/Login.d.ts +1 -2
  102. package/login/pages/Login.js +10 -8
  103. package/login/pages/Login.js.map +1 -1
  104. package/login/pages/LoginConfigTotp.d.ts +1 -2
  105. package/login/pages/LoginConfigTotp.js +8 -7
  106. package/login/pages/LoginConfigTotp.js.map +1 -1
  107. package/login/pages/LoginIdpLinkConfirm.d.ts +1 -2
  108. package/login/pages/LoginIdpLinkConfirm.js +6 -6
  109. package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
  110. package/login/pages/LoginIdpLinkEmail.d.ts +1 -2
  111. package/login/pages/LoginIdpLinkEmail.js +4 -3
  112. package/login/pages/LoginIdpLinkEmail.js.map +1 -1
  113. package/login/pages/LoginOauth2DeviceVerifyUserCode.d.ts +1 -2
  114. package/login/pages/LoginOauth2DeviceVerifyUserCode.js +6 -6
  115. package/login/pages/LoginOauth2DeviceVerifyUserCode.js.map +1 -1
  116. package/login/pages/LoginOauthGrant.d.ts +1 -2
  117. package/login/pages/LoginOauthGrant.js +7 -7
  118. package/login/pages/LoginOauthGrant.js.map +1 -1
  119. package/login/pages/LoginOtp.d.ts +1 -2
  120. package/login/pages/LoginOtp.js +6 -6
  121. package/login/pages/LoginOtp.js.map +1 -1
  122. package/login/pages/LoginPageExpired.d.ts +1 -2
  123. package/login/pages/LoginPageExpired.js +4 -3
  124. package/login/pages/LoginPageExpired.js.map +1 -1
  125. package/login/pages/LoginPassword.d.ts +1 -2
  126. package/login/pages/LoginPassword.js +9 -7
  127. package/login/pages/LoginPassword.js.map +1 -1
  128. package/login/pages/LoginRecoveryAuthnCodeConfig.d.ts +1 -2
  129. package/login/pages/LoginRecoveryAuthnCodeConfig.js +9 -7
  130. package/login/pages/LoginRecoveryAuthnCodeConfig.js.map +1 -1
  131. package/login/pages/LoginRecoveryAuthnCodeInput.d.ts +1 -2
  132. package/login/pages/LoginRecoveryAuthnCodeInput.js +6 -6
  133. package/login/pages/LoginRecoveryAuthnCodeInput.js.map +1 -1
  134. package/login/pages/LoginResetOtp.d.ts +1 -2
  135. package/login/pages/LoginResetOtp.js +6 -6
  136. package/login/pages/LoginResetOtp.js.map +1 -1
  137. package/login/pages/LoginResetPassword.d.ts +1 -2
  138. package/login/pages/LoginResetPassword.js +7 -7
  139. package/login/pages/LoginResetPassword.js.map +1 -1
  140. package/login/pages/LoginUpdatePassword.d.ts +1 -2
  141. package/login/pages/LoginUpdatePassword.js +10 -9
  142. package/login/pages/LoginUpdatePassword.js.map +1 -1
  143. package/login/pages/LoginUpdateProfile.d.ts +1 -2
  144. package/login/pages/LoginUpdateProfile.js +7 -12
  145. package/login/pages/LoginUpdateProfile.js.map +1 -1
  146. package/login/pages/LoginUsername.d.ts +1 -2
  147. package/login/pages/LoginUsername.js +8 -7
  148. package/login/pages/LoginUsername.js.map +1 -1
  149. package/login/pages/LoginVerifyEmail.d.ts +1 -2
  150. package/login/pages/LoginVerifyEmail.js +4 -3
  151. package/login/pages/LoginVerifyEmail.js.map +1 -1
  152. package/login/pages/LoginX509Info.d.ts +1 -2
  153. package/login/pages/LoginX509Info.js +6 -6
  154. package/login/pages/LoginX509Info.js.map +1 -1
  155. package/login/pages/LogoutConfirm.d.ts +1 -2
  156. package/login/pages/LogoutConfirm.js +6 -6
  157. package/login/pages/LogoutConfirm.js.map +1 -1
  158. package/login/pages/PageProps.d.ts +2 -4
  159. package/login/pages/Register.d.ts +1 -2
  160. package/login/pages/Register.js +8 -16
  161. package/login/pages/Register.js.map +1 -1
  162. package/login/pages/SamlPostForm.d.ts +1 -2
  163. package/login/pages/SamlPostForm.js +4 -3
  164. package/login/pages/SamlPostForm.js.map +1 -1
  165. package/login/pages/SelectAuthenticator.d.ts +1 -2
  166. package/login/pages/SelectAuthenticator.js +6 -9
  167. package/login/pages/SelectAuthenticator.js.map +1 -1
  168. package/login/pages/Terms.d.ts +1 -2
  169. package/login/pages/Terms.js +7 -7
  170. package/login/pages/Terms.js.map +1 -1
  171. package/login/pages/UpdateEmail.d.ts +1 -2
  172. package/login/pages/UpdateEmail.js +8 -12
  173. package/login/pages/UpdateEmail.js.map +1 -1
  174. package/login/pages/WebauthnAuthenticate.d.ts +1 -2
  175. package/login/pages/WebauthnAuthenticate.js +13 -12
  176. package/login/pages/WebauthnAuthenticate.js.map +1 -1
  177. package/login/pages/WebauthnError.d.ts +1 -2
  178. package/login/pages/WebauthnError.js +7 -7
  179. package/login/pages/WebauthnError.js.map +1 -1
  180. package/login/pages/WebauthnRegister.d.ts +1 -2
  181. package/login/pages/WebauthnRegister.js +9 -8
  182. package/login/pages/WebauthnRegister.js.map +1 -1
  183. package/package.json +24 -16
  184. package/src/account/Fallback.tsx +1 -2
  185. package/src/account/KcContext/KcContext.ts +7 -7
  186. package/src/account/KcContext/getKcContextMock.ts +13 -24
  187. package/src/account/Template.tsx +8 -8
  188. package/src/account/TemplateProps.ts +1 -6
  189. package/src/account/i18n/i18n.tsx +204 -125
  190. package/src/account/i18n/index.ts +10 -2
  191. package/src/account/index.ts +1 -1
  192. package/src/account/lib/{useGetClassName.ts → kcClsx.ts} +6 -2
  193. package/src/account/pages/Account.tsx +15 -21
  194. package/src/account/pages/Applications.tsx +8 -9
  195. package/src/account/pages/FederatedIdentity.tsx +5 -5
  196. package/src/account/pages/Log.tsx +8 -8
  197. package/src/account/pages/PageProps.ts +2 -4
  198. package/src/account/pages/Password.tsx +13 -16
  199. package/src/account/pages/Sessions.tsx +9 -10
  200. package/src/account/pages/Totp.tsx +19 -28
  201. package/src/bin/keycloakify/generateSrcMainResources/generateMessageProperties.ts +2 -66
  202. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForMainTheme.ts +7 -1
  203. package/src/bin/main.ts +15 -0
  204. package/src/bin/shared/buildOptions.ts +5 -2
  205. package/src/bin/shared/generateKcGenTs.ts +61 -0
  206. package/src/bin/tools/escapeStringForPropertiesFile.ts +64 -0
  207. package/src/bin/update-kc-gen.ts +13 -0
  208. package/src/lib/getKcClsx.ts +75 -0
  209. package/src/login/Fallback.tsx +1 -2
  210. package/src/login/KcContext/KcContext.ts +7 -7
  211. package/src/login/KcContext/getKcContextMock.ts +13 -24
  212. package/src/login/Template.tsx +36 -37
  213. package/src/login/TemplateProps.ts +1 -6
  214. package/src/login/UserProfileFormFields.tsx +66 -81
  215. package/src/login/i18n/i18n.tsx +208 -129
  216. package/src/login/i18n/index.ts +10 -2
  217. package/src/login/index.ts +1 -1
  218. package/src/login/lib/{useGetClassName.ts → kcClsx.ts} +6 -2
  219. package/src/login/lib/useUserProfileForm.tsx +29 -21
  220. package/src/login/pages/Code.tsx +10 -8
  221. package/src/login/pages/DeleteAccountConfirm.tsx +9 -10
  222. package/src/login/pages/DeleteCredential.tsx +11 -10
  223. package/src/login/pages/Error.tsx +5 -5
  224. package/src/login/pages/FrontchannelLogout.tsx +7 -5
  225. package/src/login/pages/IdpReviewUserProfile.tsx +16 -25
  226. package/src/login/pages/Info.tsx +7 -5
  227. package/src/login/pages/Login.tsx +34 -53
  228. package/src/login/pages/LoginConfigTotp.tsx +30 -38
  229. package/src/login/pages/LoginIdpLinkConfirm.tsx +10 -21
  230. package/src/login/pages/LoginIdpLinkEmail.tsx +5 -5
  231. package/src/login/pages/LoginOauth2DeviceVerifyUserCode.tsx +19 -24
  232. package/src/login/pages/LoginOauthGrant.tsx +14 -21
  233. package/src/login/pages/LoginOtp.tsx +29 -33
  234. package/src/login/pages/LoginPageExpired.tsx +5 -5
  235. package/src/login/pages/LoginPassword.tsx +23 -33
  236. package/src/login/pages/LoginRecoveryAuthnCodeConfig.tsx +21 -25
  237. package/src/login/pages/LoginRecoveryAuthnCodeInput.tsx +21 -25
  238. package/src/login/pages/LoginResetOtp.tsx +21 -25
  239. package/src/login/pages/LoginResetPassword.tsx +21 -25
  240. package/src/login/pages/LoginUpdatePassword.tsx +42 -52
  241. package/src/login/pages/LoginUpdateProfile.tsx +26 -33
  242. package/src/login/pages/LoginUsername.tsx +23 -35
  243. package/src/login/pages/LoginVerifyEmail.tsx +7 -5
  244. package/src/login/pages/LoginX509Info.tsx +27 -36
  245. package/src/login/pages/LogoutConfirm.tsx +11 -17
  246. package/src/login/pages/PageProps.ts +2 -4
  247. package/src/login/pages/Register.tsx +24 -49
  248. package/src/login/pages/SamlPostForm.tsx +5 -5
  249. package/src/login/pages/SelectAuthenticator.tsx +24 -26
  250. package/src/login/pages/Terms.tsx +11 -18
  251. package/src/login/pages/UpdateEmail.tsx +26 -36
  252. package/src/login/pages/WebauthnAuthenticate.tsx +26 -32
  253. package/src/login/pages/WebauthnError.tsx +11 -22
  254. package/src/login/pages/WebauthnRegister.tsx +20 -28
  255. package/src/tools/clsx.ts +6 -48
  256. package/src/tools/clsx_withTransform.ts +55 -0
  257. package/src/vite-plugin/vite-plugin.ts +14 -6
  258. package/tools/clsx.d.ts +3 -2
  259. package/tools/clsx.js +5 -41
  260. package/tools/clsx.js.map +1 -1
  261. package/tools/clsx_withTransform.d.ts +5 -0
  262. package/tools/clsx_withTransform.js +43 -0
  263. package/tools/clsx_withTransform.js.map +1 -0
  264. package/vite-plugin/index.js +167 -37
  265. package/account/lib/useGetClassName.d.ts +0 -7
  266. package/account/lib/useGetClassName.js.map +0 -1
  267. package/lib/useGetClassName.d.ts +0 -10
  268. package/lib/useGetClassName.js +0 -14
  269. package/lib/useGetClassName.js.map +0 -1
  270. package/login/lib/useGetClassName.d.ts +0 -7
  271. package/login/lib/useGetClassName.js.map +0 -1
  272. package/src/lib/useGetClassName.ts +0 -27
@@ -1,117 +1,162 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import "../../tools/Object.fromEntries";
3
- import { useEffect, useState, useRef } from "react";
3
+ import { useEffect, useState } from "react";
4
4
  import { assert } from "tsafe/assert";
5
- import fallbackMessages from "./baseMessages/en";
5
+ import messages_fallbackLanguage from "./baseMessages/en";
6
6
  import { getMessages } from "./baseMessages";
7
7
  import { Reflect } from "tsafe/Reflect";
8
8
  export const fallbackLanguageTag = "en";
9
9
  assert();
10
+ function createGetI18n(extraMessages) {
11
+ const cachedResultByKcContext = new WeakMap();
12
+ function getI18n(params) {
13
+ var _a, _b, _c, _d;
14
+ const { kcContext } = params;
15
+ use_cache: {
16
+ const cachedResult = cachedResultByKcContext.get(kcContext);
17
+ if (cachedResult === undefined) {
18
+ break use_cache;
19
+ }
20
+ return cachedResult;
21
+ }
22
+ const partialI18n = {
23
+ currentLanguageTag: (_b = (_a = kcContext.locale) === null || _a === void 0 ? void 0 : _a.currentLanguageTag) !== null && _b !== void 0 ? _b : fallbackLanguageTag,
24
+ getChangeLocalUrl: newLanguageTag => {
25
+ const { locale } = kcContext;
26
+ assert(locale !== undefined, "Internationalization not enabled");
27
+ const targetSupportedLocale = locale.supported.find(({ languageTag }) => languageTag === newLanguageTag);
28
+ assert(targetSupportedLocale !== undefined, `${newLanguageTag} need to be enabled in Keycloak admin`);
29
+ return targetSupportedLocale.url;
30
+ },
31
+ labelBySupportedLanguageTag: Object.fromEntries(((_d = (_c = kcContext.locale) === null || _c === void 0 ? void 0 : _c.supported) !== null && _d !== void 0 ? _d : []).map(({ languageTag, label }) => [languageTag, label]))
32
+ };
33
+ const { createI18nTranslationFunctions } = createI18nTranslationFunctionsFactory({
34
+ messages_fallbackLanguage,
35
+ extraMessages_fallbackLanguage: extraMessages[fallbackLanguageTag],
36
+ extraMessages: extraMessages[partialI18n.currentLanguageTag],
37
+ __localizationRealmOverridesUserProfile: kcContext.__localizationRealmOverridesUserProfile
38
+ });
39
+ const isCurrentLanguageFallbackLanguage = partialI18n.currentLanguageTag !== fallbackLanguageTag;
40
+ const result = {
41
+ i18n: Object.assign(Object.assign(Object.assign({}, partialI18n), createI18nTranslationFunctions({ messages: undefined })), { isFetchingTranslations: !isCurrentLanguageFallbackLanguage }),
42
+ prI18n_currentLanguage: isCurrentLanguageFallbackLanguage
43
+ ? undefined
44
+ : (async () => {
45
+ const messages = await getMessages(partialI18n.currentLanguageTag);
46
+ const i18n_currentLanguage = Object.assign(Object.assign(Object.assign({}, partialI18n), createI18nTranslationFunctions({ messages })), { isFetchingTranslations: false });
47
+ // NOTE: This promise.resolve is just because without it we TypeScript
48
+ // gives a Variable 'result' is used before being assigned. error
49
+ await Promise.resolve().then(() => {
50
+ result.i18n = i18n_currentLanguage;
51
+ result.prI18n_currentLanguage = undefined;
52
+ });
53
+ return i18n_currentLanguage;
54
+ })()
55
+ };
56
+ cachedResultByKcContext.set(kcContext, result);
57
+ return result;
58
+ }
59
+ return { getI18n };
60
+ }
10
61
  export function createUseI18n(extraMessages) {
62
+ const { getI18n } = createGetI18n(extraMessages);
11
63
  function useI18n(params) {
12
64
  const { kcContext } = params;
13
- const [i18n, setI18n] = useState(undefined);
14
- const refHasStartedFetching = useRef(false);
65
+ const { i18n, prI18n_currentLanguage } = getI18n({ kcContext });
66
+ const [i18n_toReturn, setI18n_toReturn] = useState(i18n);
15
67
  useEffect(() => {
16
- if (refHasStartedFetching.current) {
17
- return;
18
- }
19
- refHasStartedFetching.current = true;
20
- (async () => {
21
- var _a, _b, _c, _d, _e;
22
- const { currentLanguageTag = fallbackLanguageTag } = (_a = kcContext.locale) !== null && _a !== void 0 ? _a : {};
23
- setI18n(Object.assign(Object.assign({}, createI18nTranslationFunctions({
24
- fallbackMessages: Object.assign(Object.assign({}, fallbackMessages), ((_b = extraMessages[fallbackLanguageTag]) !== null && _b !== void 0 ? _b : {})),
25
- messages: Object.assign(Object.assign({}, (await getMessages(currentLanguageTag))), ((_c = extraMessages[currentLanguageTag]) !== null && _c !== void 0 ? _c : {})),
26
- __localizationRealmOverridesUserProfile: kcContext.__localizationRealmOverridesUserProfile
27
- })), { currentLanguageTag, getChangeLocalUrl: newLanguageTag => {
28
- const { locale } = kcContext;
29
- assert(locale !== undefined, "Internationalization not enabled");
30
- const targetSupportedLocale = locale.supported.find(({ languageTag }) => languageTag === newLanguageTag);
31
- assert(targetSupportedLocale !== undefined, `${newLanguageTag} need to be enabled in Keycloak admin`);
32
- return targetSupportedLocale.url;
33
- }, labelBySupportedLanguageTag: Object.fromEntries(((_e = (_d = kcContext.locale) === null || _d === void 0 ? void 0 : _d.supported) !== null && _e !== void 0 ? _e : []).map(({ languageTag, label }) => [languageTag, label])) }));
34
- })();
68
+ let isActive = true;
69
+ prI18n_currentLanguage === null || prI18n_currentLanguage === void 0 ? void 0 : prI18n_currentLanguage.then(i18n => {
70
+ if (!isActive) {
71
+ return;
72
+ }
73
+ setI18n_toReturn(i18n);
74
+ });
75
+ return () => {
76
+ isActive = false;
77
+ };
35
78
  }, []);
36
- return i18n !== null && i18n !== void 0 ? i18n : null;
79
+ return i18n_toReturn;
37
80
  }
38
- return {
39
- useI18n,
40
- ofTypeI18n: Reflect()
41
- };
81
+ return { useI18n, ofTypeI18n: Reflect() };
42
82
  }
43
- function createI18nTranslationFunctions(params) {
44
- const { fallbackMessages, messages, __localizationRealmOverridesUserProfile } = params;
45
- function resolveMsg(props) {
46
- var _a;
47
- const { key, args, doRenderAsHtml } = props;
48
- const messageOrUndefined = (_a = messages[key]) !== null && _a !== void 0 ? _a : fallbackMessages[key];
49
- if (messageOrUndefined === undefined) {
50
- return undefined;
51
- }
52
- const message = messageOrUndefined;
53
- const messageWithArgsInjectedIfAny = (() => {
83
+ function createI18nTranslationFunctionsFactory(params) {
84
+ const { __localizationRealmOverridesUserProfile, extraMessages } = params;
85
+ const messages_fallbackLanguage = Object.assign(Object.assign({}, params.messages_fallbackLanguage), params.extraMessages_fallbackLanguage);
86
+ function createI18nTranslationFunctions(params) {
87
+ const messages = Object.assign(Object.assign({}, params.messages), extraMessages);
88
+ function resolveMsg(props) {
54
89
  var _a;
55
- const startIndex = (_a = message
56
- .match(/{[0-9]+}/g)) === null || _a === void 0 ? void 0 : _a.map(g => g.match(/{([0-9]+)}/)[1]).map(indexStr => parseInt(indexStr)).sort((a, b) => a - b)[0];
57
- if (startIndex === undefined) {
58
- // No {0} in message (no arguments expected)
59
- return message;
90
+ const { key, args, doRenderAsHtml } = props;
91
+ const messageOrUndefined = (_a = messages[key]) !== null && _a !== void 0 ? _a : messages_fallbackLanguage[key];
92
+ if (messageOrUndefined === undefined) {
93
+ return undefined;
60
94
  }
61
- let messageWithArgsInjected = message;
62
- args.forEach((arg, i) => {
63
- if (arg === undefined) {
64
- return;
95
+ const message = messageOrUndefined;
96
+ const messageWithArgsInjectedIfAny = (() => {
97
+ var _a;
98
+ const startIndex = (_a = message
99
+ .match(/{[0-9]+}/g)) === null || _a === void 0 ? void 0 : _a.map(g => g.match(/{([0-9]+)}/)[1]).map(indexStr => parseInt(indexStr)).sort((a, b) => a - b)[0];
100
+ if (startIndex === undefined) {
101
+ // No {0} in message (no arguments expected)
102
+ return message;
65
103
  }
66
- messageWithArgsInjected = messageWithArgsInjected.replace(new RegExp(`\\{${i + startIndex}\\}`, "g"), arg.replace(/</g, "&lt;").replace(/>/g, "&gt;"));
67
- });
68
- return messageWithArgsInjected;
69
- })();
70
- return doRenderAsHtml ? (_jsx("span", {
71
- // NOTE: The message is trusted. The arguments are not but are escaped.
72
- dangerouslySetInnerHTML: {
73
- __html: messageWithArgsInjectedIfAny
74
- } })) : (messageWithArgsInjectedIfAny);
75
- }
76
- function resolveMsgAdvanced(props) {
77
- const { key, args, doRenderAsHtml } = props;
78
- if (__localizationRealmOverridesUserProfile !== undefined && key in __localizationRealmOverridesUserProfile) {
79
- const resolvedMessage = __localizationRealmOverridesUserProfile[key];
104
+ let messageWithArgsInjected = message;
105
+ args.forEach((arg, i) => {
106
+ if (arg === undefined) {
107
+ return;
108
+ }
109
+ messageWithArgsInjected = messageWithArgsInjected.replace(new RegExp(`\\{${i + startIndex}\\}`, "g"), arg.replace(/</g, "&lt;").replace(/>/g, "&gt;"));
110
+ });
111
+ return messageWithArgsInjected;
112
+ })();
80
113
  return doRenderAsHtml ? (_jsx("span", {
81
114
  // NOTE: The message is trusted. The arguments are not but are escaped.
82
115
  dangerouslySetInnerHTML: {
83
- __html: resolvedMessage
84
- } })) : (resolvedMessage);
116
+ __html: messageWithArgsInjectedIfAny
117
+ } })) : (messageWithArgsInjectedIfAny);
85
118
  }
86
- if (!/\$\{[^}]+\}/.test(key)) {
87
- const resolvedMessage = resolveMsg({ key, args, doRenderAsHtml });
88
- if (resolvedMessage === undefined) {
89
- return doRenderAsHtml ? _jsx("span", { dangerouslySetInnerHTML: { __html: key } }) : key;
119
+ function resolveMsgAdvanced(props) {
120
+ const { key, args, doRenderAsHtml } = props;
121
+ if (__localizationRealmOverridesUserProfile !== undefined && key in __localizationRealmOverridesUserProfile) {
122
+ const resolvedMessage = __localizationRealmOverridesUserProfile[key];
123
+ return doRenderAsHtml ? (_jsx("span", {
124
+ // NOTE: The message is trusted. The arguments are not but are escaped.
125
+ dangerouslySetInnerHTML: {
126
+ __html: resolvedMessage
127
+ } })) : (resolvedMessage);
90
128
  }
91
- return resolvedMessage;
129
+ if (!/\$\{[^}]+\}/.test(key)) {
130
+ const resolvedMessage = resolveMsg({ key, args, doRenderAsHtml });
131
+ if (resolvedMessage === undefined) {
132
+ return doRenderAsHtml ? _jsx("span", { dangerouslySetInnerHTML: { __html: key } }) : key;
133
+ }
134
+ return resolvedMessage;
135
+ }
136
+ let isFirstMatch = true;
137
+ const resolvedComplexMessage = key.replace(/\$\{([^}]+)\}/g, (...[, key_i]) => {
138
+ var _a;
139
+ const replaceBy = (_a = resolveMsg({ key: key_i, args: isFirstMatch ? args : [], doRenderAsHtml: false })) !== null && _a !== void 0 ? _a : key_i;
140
+ isFirstMatch = false;
141
+ return replaceBy;
142
+ });
143
+ return doRenderAsHtml ? _jsx("span", { dangerouslySetInnerHTML: { __html: resolvedComplexMessage } }) : resolvedComplexMessage;
92
144
  }
93
- let isFirstMatch = true;
94
- const resolvedComplexMessage = key.replace(/\$\{([^}]+)\}/g, (...[, key_i]) => {
95
- var _a;
96
- const replaceBy = (_a = resolveMsg({ key: key_i, args: isFirstMatch ? args : [], doRenderAsHtml: false })) !== null && _a !== void 0 ? _a : key_i;
97
- isFirstMatch = false;
98
- return replaceBy;
99
- });
100
- return doRenderAsHtml ? _jsx("span", { dangerouslySetInnerHTML: { __html: resolvedComplexMessage } }) : resolvedComplexMessage;
145
+ return {
146
+ msgStr: (key, ...args) => resolveMsg({ key, args, doRenderAsHtml: false }),
147
+ msg: (key, ...args) => resolveMsg({ key, args, doRenderAsHtml: true }),
148
+ advancedMsg: (key, ...args) => resolveMsgAdvanced({
149
+ key,
150
+ args,
151
+ doRenderAsHtml: true
152
+ }),
153
+ advancedMsgStr: (key, ...args) => resolveMsgAdvanced({
154
+ key,
155
+ args,
156
+ doRenderAsHtml: false
157
+ })
158
+ };
101
159
  }
102
- return {
103
- msgStr: (key, ...args) => resolveMsg({ key, args, doRenderAsHtml: false }),
104
- msg: (key, ...args) => resolveMsg({ key, args, doRenderAsHtml: true }),
105
- advancedMsg: (key, ...args) => resolveMsgAdvanced({
106
- key,
107
- args,
108
- doRenderAsHtml: true
109
- }),
110
- advancedMsgStr: (key, ...args) => resolveMsgAdvanced({
111
- key,
112
- args,
113
- doRenderAsHtml: false
114
- })
115
- };
160
+ return { createI18nTranslationFunctions };
116
161
  }
117
162
  //# sourceMappingURL=i18n.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/login/i18n/i18n.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/login/i18n/i18n.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,9 @@
1
- export type { I18n, MessageKey } from "./i18n";
2
- export { createUseI18n, fallbackLanguageTag } from "./i18n";
1
+ export type { MessageKey, KcContextLike } from "./i18n";
2
+ import { createUseI18n } from "./i18n";
3
+ export { createUseI18n };
4
+ export { fallbackLanguageTag } from "./i18n";
5
+ declare const useI18n: (params: {
6
+ kcContext: import("./i18n").KcContextLike;
7
+ }) => import("./i18n").GenericI18n<"region" | "address" | "email" | "password" | "totpAppFreeOTPName" | "totpAppMicrosoftAuthenticatorName" | "totpAppGoogleName" | "doCancel" | "doLogIn" | "noAccessMessage" | "updatePasswordTitle" | "updatePasswordMessage" | "authenticatorCode" | "firstName" | "givenName" | "fullName" | "lastName" | "familyName" | "passwordConfirm" | "passwordNew" | "username" | "street" | "locality" | "postal_code" | "country" | "emailVerified" | "website" | "phoneNumber" | "phoneNumberVerified" | "gender" | "birthday" | "zoneinfo" | "gssDelegationCredential" | "profileScopeConsentText" | "emailScopeConsentText" | "addressScopeConsentText" | "phoneScopeConsentText" | "offlineAccessScopeConsentText" | "samlRoleListScopeConsentText" | "rolesScopeConsentText" | "role_admin" | "role_realm-admin" | "role_create-realm" | "role_view-realm" | "role_view-users" | "role_view-applications" | "role_view-clients" | "role_view-events" | "role_view-identity-providers" | "role_manage-realm" | "role_manage-users" | "role_manage-applications" | "role_manage-identity-providers" | "role_manage-clients" | "role_manage-events" | "role_view-profile" | "role_manage-account" | "role_manage-account-links" | "role_read-token" | "role_offline-access" | "client_account" | "client_account-console" | "client_security-admin-console" | "client_admin-cli" | "client_realm-management" | "client_broker" | "requiredFields" | "backToApplication" | "inResource" | "irreversibleAction" | "deletingImplies" | "errasingData" | "loggingOutImmediately" | "accountUnusable" | "missingUsernameMessage" | "missingFirstNameMessage" | "invalidEmailMessage" | "missingLastNameMessage" | "missingEmailMessage" | "missingPasswordMessage" | "notMatchPasswordMessage" | "invalidUserMessage" | "missingTotpMessage" | "missingTotpDeviceNameMessage" | "invalidPasswordExistingMessage" | "invalidPasswordConfirmMessage" | "invalidTotpMessage" | "usernameExistsMessage" | "emailExistsMessage" | "readOnlyUsernameMessage" | "accountUpdatedMessage" | "accountPasswordUpdatedMessage" | "identityProviderNotFoundMessage" | "identityProviderAlreadyLinkedMessage" | "consentDenied" | "access-denied-when-idp-auth" | "accountDisabledMessage" | "accountTemporarilyDisabledMessage" | "invalidPasswordMinLengthMessage" | "invalidPasswordMaxLengthMessage" | "invalidPasswordMinLowerCaseCharsMessage" | "invalidPasswordMinDigitsMessage" | "invalidPasswordMinUpperCaseCharsMessage" | "invalidPasswordMinSpecialCharsMessage" | "invalidPasswordNotUsernameMessage" | "invalidPasswordNotEmailMessage" | "invalidPasswordRegexPatternMessage" | "invalidPasswordHistoryMessage" | "invalidPasswordBlacklistedMessage" | "invalidPasswordGenericMessage" | "locale_ar" | "locale_ca" | "locale_cs" | "locale_de" | "locale_en" | "locale_es" | "locale_fr" | "locale_hu" | "locale_it" | "locale_ja" | "locale_lt" | "locale_nl" | "locale_no" | "locale_pl" | "locale_pt-BR" | "locale_ru" | "locale_sk" | "locale_sv" | "locale_th" | "locale_tr" | "locale_uk" | "locale_zh-CN" | "locale_fi" | "clientNotFoundMessage" | "openshift.scope.user_info" | "openshift.scope.user_check-access" | "openshift.scope.user_full" | "openshift.scope.list-projects" | "error-invalid-value" | "error-invalid-blank" | "error-empty" | "error-invalid-length" | "error-invalid-length-too-short" | "error-invalid-length-too-long" | "error-invalid-email" | "error-invalid-number" | "error-number-out-of-range" | "error-number-out-of-range-too-small" | "error-number-out-of-range-too-big" | "error-pattern-no-match" | "error-invalid-uri" | "error-invalid-uri-scheme" | "error-invalid-uri-fragment" | "error-user-attribute-required" | "error-invalid-date" | "error-user-attribute-read-only" | "error-username-invalid-character" | "error-person-name-invalid-character" | "remove" | "usb" | "nfc" | "bluetooth" | "doRegister" | "doRegisterSecurityKey" | "doSubmit" | "doBack" | "doYes" | "doNo" | "doContinue" | "doIgnore" | "doAccept" | "doDecline" | "doForgotPassword" | "doClickHere" | "doImpersonate" | "doTryAgain" | "doTryAnotherWay" | "doConfirmDelete" | "errorDeletingAccount" | "deletingAccountForbidden" | "kerberosNotConfigured" | "kerberosNotConfiguredTitle" | "bypassKerberosDetail" | "kerberosNotSetUp" | "registerTitle" | "loginAccountTitle" | "loginTitle" | "loginTitleHtml" | "impersonateTitle" | "impersonateTitleHtml" | "realmChoice" | "unknownUser" | "loginTotpTitle" | "loginProfileTitle" | "loginIdpReviewProfileTitle" | "loginTimeout" | "reauthenticate" | "authenticateStrong" | "oauthGrantTitle" | "oauthGrantTitleHtml" | "oauthGrantInformation" | "oauthGrantReview" | "oauthGrantTos" | "oauthGrantPolicy" | "errorTitle" | "errorTitleHtml" | "emailVerifyTitle" | "emailForgotTitle" | "updateEmailTitle" | "emailUpdateConfirmationSentTitle" | "emailUpdateConfirmationSent" | "emailUpdatedTitle" | "emailUpdated" | "codeSuccessTitle" | "codeErrorTitle" | "displayUnsupported" | "browserRequired" | "browserContinue" | "browserContinuePrompt" | "browserContinueAnswer" | "internal" | "unknown" | "termsTitle" | "termsText" | "termsPlainText" | "termsAcceptanceRequired" | "acceptTerms" | "deleteCredentialTitle" | "deleteCredentialMessage" | "recaptchaFailed" | "recaptchaNotConfigured" | "noAccount" | "usernameOrEmail" | "passwordNewConfirm" | "hidePassword" | "showPassword" | "rememberMe" | "logoutOtherSessions" | "restartLoginTooltip" | "loginTotpIntro" | "loginTotpStep1" | "loginTotpStep2" | "loginTotpStep3" | "loginTotpStep3DeviceName" | "loginTotpManualStep2" | "loginTotpManualStep3" | "loginTotpUnableToScan" | "loginTotpScanBarcode" | "loginCredential" | "loginOtpOneTime" | "loginTotpType" | "loginTotpAlgorithm" | "loginTotpDigits" | "loginTotpInterval" | "loginTotpCounter" | "loginTotpDeviceName" | "loginTotp.totp" | "loginTotp.hotp" | "loginChooseAuthenticator" | "oauthGrantRequest" | "oauth2DeviceVerificationTitle" | "verifyOAuth2DeviceUserCode" | "oauth2DeviceInvalidUserCodeMessage" | "oauth2DeviceExpiredUserCodeMessage" | "oauth2DeviceVerificationCompleteHeader" | "oauth2DeviceVerificationCompleteMessage" | "oauth2DeviceVerificationFailedHeader" | "oauth2DeviceVerificationFailedMessage" | "oauth2DeviceConsentDeniedMessage" | "oauth2DeviceAuthorizationGrantDisabledMessage" | "emailVerifyInstruction1" | "emailVerifyInstruction2" | "emailVerifyInstruction3" | "emailLinkIdpTitle" | "emailLinkIdp1" | "emailLinkIdp2" | "emailLinkIdp3" | "emailLinkIdp4" | "emailLinkIdp5" | "backToLogin" | "emailInstruction" | "emailInstructionUsername" | "copyCodeInstruction" | "pageExpiredTitle" | "pageExpiredMsg1" | "pageExpiredMsg2" | "personalInfo" | "role_create-client" | "invalidUsernameMessage" | "invalidUsernameOrEmailMessage" | "invalidPasswordMessage" | "expiredCodeMessage" | "expiredActionMessage" | "expiredActionTokenNoSessionMessage" | "expiredActionTokenSessionExistsMessage" | "sessionLimitExceeded" | "error-reset-otp-missing-id" | "federatedIdentityExistsMessage" | "federatedIdentityUnavailableMessage" | "federatedIdentityUnmatchedEssentialClaimMessage" | "confirmLinkIdpTitle" | "federatedIdentityConfirmLinkMessage" | "federatedIdentityConfirmReauthenticateMessage" | "nestedFirstBrokerFlowMessage" | "confirmLinkIdpReviewProfile" | "confirmLinkIdpContinue" | "configureTotpMessage" | "configureBackupCodesMessage" | "updateProfileMessage" | "updateEmailMessage" | "resetPasswordMessage" | "verifyEmailMessage" | "linkIdpMessage" | "emailSentMessage" | "emailSendErrorMessage" | "delegationCompleteHeader" | "delegationCompleteMessage" | "delegationFailedHeader" | "delegationFailedMessage" | "failedToProcessResponseMessage" | "httpsRequiredMessage" | "realmNotEnabledMessage" | "invalidRequestMessage" | "successLogout" | "failedLogout" | "unknownLoginRequesterMessage" | "loginRequesterNotEnabledMessage" | "bearerOnlyMessage" | "standardFlowDisabledMessage" | "implicitFlowDisabledMessage" | "invalidRedirectUriMessage" | "unsupportedNameIdFormatMessage" | "invalidRequesterMessage" | "registrationNotAllowedMessage" | "resetCredentialNotAllowedMessage" | "permissionNotApprovedMessage" | "noRelayStateInResponseMessage" | "insufficientPermissionMessage" | "couldNotProceedWithAuthenticationRequestMessage" | "couldNotObtainTokenMessage" | "unexpectedErrorRetrievingTokenMessage" | "unexpectedErrorHandlingResponseMessage" | "identityProviderAuthenticationFailedMessage" | "couldNotSendAuthenticationRequestMessage" | "unexpectedErrorHandlingRequestMessage" | "invalidAccessCodeMessage" | "sessionNotActiveMessage" | "invalidCodeMessage" | "cookieNotFoundMessage" | "insufficientLevelOfAuthentication" | "identityProviderUnexpectedErrorMessage" | "identityProviderMissingStateMessage" | "identityProviderMissingCodeOrErrorMessage" | "identityProviderInvalidResponseMessage" | "identityProviderInvalidSignatureMessage" | "identityProviderLinkSuccess" | "staleCodeMessage" | "realmSupportsNoCredentialsMessage" | "credentialSetupRequired" | "identityProviderNotUniqueMessage" | "emailVerifiedMessage" | "emailVerifiedAlreadyMessage" | "staleEmailVerificationLink" | "confirmAccountLinking" | "confirmEmailAddressVerification" | "confirmExecutionOfActions" | "locale_da" | "locale_lv" | "missingParameterMessage" | "clientDisabledMessage" | "invalidParameterMessage" | "alreadyLoggedIn" | "differentUserAuthenticated" | "brokerLinkingSessionExpired" | "proceedWithAction" | "acrNotFulfilled" | "requiredAction.CONFIGURE_TOTP" | "requiredAction.TERMS_AND_CONDITIONS" | "requiredAction.UPDATE_PASSWORD" | "requiredAction.UPDATE_PROFILE" | "requiredAction.VERIFY_EMAIL" | "requiredAction.CONFIGURE_RECOVERY_AUTHN_CODES" | "requiredAction.webauthn-register-passwordless" | "invalidTokenRequiredActions" | "doX509Login" | "clientCertificate" | "noCertificate" | "pageNotFound" | "internalServerError" | "console-username" | "console-password" | "console-otp" | "console-new-password" | "console-confirm-password" | "console-update-password" | "console-verify-email" | "console-email-code" | "console-accept-terms" | "console-accept" | "saml.post-form.title" | "saml.post-form.message" | "saml.post-form.js-disabled" | "saml.artifactResolutionServiceInvalidResponse" | "otp-display-name" | "otp-help-text" | "otp-reset-description" | "password-display-name" | "password-help-text" | "auth-username-form-display-name" | "auth-username-form-help-text" | "auth-username-password-form-display-name" | "auth-username-password-form-help-text" | "auth-recovery-authn-code-form-display-name" | "auth-recovery-authn-code-form-help-text" | "auth-recovery-code-info-message" | "auth-recovery-code-prompt" | "auth-recovery-code-header" | "recovery-codes-error-invalid" | "recovery-code-config-header" | "recovery-code-config-warning-title" | "recovery-code-config-warning-message" | "recovery-codes-print" | "recovery-codes-download" | "recovery-codes-copy" | "recovery-codes-copied" | "recovery-codes-confirmation-message" | "recovery-codes-action-complete" | "recovery-codes-action-cancel" | "recovery-codes-download-file-header" | "recovery-codes-download-file-description" | "recovery-codes-download-file-date" | "recovery-codes-label-default" | "webauthn-display-name" | "webauthn-help-text" | "webauthn-passwordless-display-name" | "webauthn-passwordless-help-text" | "webauthn-login-title" | "webauthn-registration-title" | "webauthn-available-authenticators" | "webauthn-unsupported-browser-text" | "webauthn-doAuthenticate" | "webauthn-createdAt-label" | "webauthn-error-title" | "webauthn-error-registration" | "webauthn-error-api-get" | "webauthn-error-different-user" | "webauthn-error-auth-verification" | "webauthn-error-register-verification" | "webauthn-error-user-not-found" | "identity-provider-redirector" | "identity-provider-login-label" | "idp-email-verification-display-name" | "idp-email-verification-help-text" | "idp-username-password-form-display-name" | "idp-username-password-form-help-text" | "finalDeletionConfirmation" | "deleteAccountConfirm" | "userDeletedSuccessfully" | "access-denied" | "frontchannel-logout.title" | "frontchannel-logout.message" | "logoutConfirmTitle" | "logoutConfirmHeader" | "doLogout" | "error-invalid-multivalued-size" | "shouldBeEqual" | "shouldBeDifferent" | "shouldMatchPattern" | "mustBeAnInteger" | "notAValidOption" | "selectAnOption" | "addValue" | "languages">, ofTypeI18n: import("./i18n").GenericI18n<"region" | "address" | "email" | "password" | "totpAppFreeOTPName" | "totpAppMicrosoftAuthenticatorName" | "totpAppGoogleName" | "doCancel" | "doLogIn" | "noAccessMessage" | "updatePasswordTitle" | "updatePasswordMessage" | "authenticatorCode" | "firstName" | "givenName" | "fullName" | "lastName" | "familyName" | "passwordConfirm" | "passwordNew" | "username" | "street" | "locality" | "postal_code" | "country" | "emailVerified" | "website" | "phoneNumber" | "phoneNumberVerified" | "gender" | "birthday" | "zoneinfo" | "gssDelegationCredential" | "profileScopeConsentText" | "emailScopeConsentText" | "addressScopeConsentText" | "phoneScopeConsentText" | "offlineAccessScopeConsentText" | "samlRoleListScopeConsentText" | "rolesScopeConsentText" | "role_admin" | "role_realm-admin" | "role_create-realm" | "role_view-realm" | "role_view-users" | "role_view-applications" | "role_view-clients" | "role_view-events" | "role_view-identity-providers" | "role_manage-realm" | "role_manage-users" | "role_manage-applications" | "role_manage-identity-providers" | "role_manage-clients" | "role_manage-events" | "role_view-profile" | "role_manage-account" | "role_manage-account-links" | "role_read-token" | "role_offline-access" | "client_account" | "client_account-console" | "client_security-admin-console" | "client_admin-cli" | "client_realm-management" | "client_broker" | "requiredFields" | "backToApplication" | "inResource" | "irreversibleAction" | "deletingImplies" | "errasingData" | "loggingOutImmediately" | "accountUnusable" | "missingUsernameMessage" | "missingFirstNameMessage" | "invalidEmailMessage" | "missingLastNameMessage" | "missingEmailMessage" | "missingPasswordMessage" | "notMatchPasswordMessage" | "invalidUserMessage" | "missingTotpMessage" | "missingTotpDeviceNameMessage" | "invalidPasswordExistingMessage" | "invalidPasswordConfirmMessage" | "invalidTotpMessage" | "usernameExistsMessage" | "emailExistsMessage" | "readOnlyUsernameMessage" | "accountUpdatedMessage" | "accountPasswordUpdatedMessage" | "identityProviderNotFoundMessage" | "identityProviderAlreadyLinkedMessage" | "consentDenied" | "access-denied-when-idp-auth" | "accountDisabledMessage" | "accountTemporarilyDisabledMessage" | "invalidPasswordMinLengthMessage" | "invalidPasswordMaxLengthMessage" | "invalidPasswordMinLowerCaseCharsMessage" | "invalidPasswordMinDigitsMessage" | "invalidPasswordMinUpperCaseCharsMessage" | "invalidPasswordMinSpecialCharsMessage" | "invalidPasswordNotUsernameMessage" | "invalidPasswordNotEmailMessage" | "invalidPasswordRegexPatternMessage" | "invalidPasswordHistoryMessage" | "invalidPasswordBlacklistedMessage" | "invalidPasswordGenericMessage" | "locale_ar" | "locale_ca" | "locale_cs" | "locale_de" | "locale_en" | "locale_es" | "locale_fr" | "locale_hu" | "locale_it" | "locale_ja" | "locale_lt" | "locale_nl" | "locale_no" | "locale_pl" | "locale_pt-BR" | "locale_ru" | "locale_sk" | "locale_sv" | "locale_th" | "locale_tr" | "locale_uk" | "locale_zh-CN" | "locale_fi" | "clientNotFoundMessage" | "openshift.scope.user_info" | "openshift.scope.user_check-access" | "openshift.scope.user_full" | "openshift.scope.list-projects" | "error-invalid-value" | "error-invalid-blank" | "error-empty" | "error-invalid-length" | "error-invalid-length-too-short" | "error-invalid-length-too-long" | "error-invalid-email" | "error-invalid-number" | "error-number-out-of-range" | "error-number-out-of-range-too-small" | "error-number-out-of-range-too-big" | "error-pattern-no-match" | "error-invalid-uri" | "error-invalid-uri-scheme" | "error-invalid-uri-fragment" | "error-user-attribute-required" | "error-invalid-date" | "error-user-attribute-read-only" | "error-username-invalid-character" | "error-person-name-invalid-character" | "remove" | "usb" | "nfc" | "bluetooth" | "doRegister" | "doRegisterSecurityKey" | "doSubmit" | "doBack" | "doYes" | "doNo" | "doContinue" | "doIgnore" | "doAccept" | "doDecline" | "doForgotPassword" | "doClickHere" | "doImpersonate" | "doTryAgain" | "doTryAnotherWay" | "doConfirmDelete" | "errorDeletingAccount" | "deletingAccountForbidden" | "kerberosNotConfigured" | "kerberosNotConfiguredTitle" | "bypassKerberosDetail" | "kerberosNotSetUp" | "registerTitle" | "loginAccountTitle" | "loginTitle" | "loginTitleHtml" | "impersonateTitle" | "impersonateTitleHtml" | "realmChoice" | "unknownUser" | "loginTotpTitle" | "loginProfileTitle" | "loginIdpReviewProfileTitle" | "loginTimeout" | "reauthenticate" | "authenticateStrong" | "oauthGrantTitle" | "oauthGrantTitleHtml" | "oauthGrantInformation" | "oauthGrantReview" | "oauthGrantTos" | "oauthGrantPolicy" | "errorTitle" | "errorTitleHtml" | "emailVerifyTitle" | "emailForgotTitle" | "updateEmailTitle" | "emailUpdateConfirmationSentTitle" | "emailUpdateConfirmationSent" | "emailUpdatedTitle" | "emailUpdated" | "codeSuccessTitle" | "codeErrorTitle" | "displayUnsupported" | "browserRequired" | "browserContinue" | "browserContinuePrompt" | "browserContinueAnswer" | "internal" | "unknown" | "termsTitle" | "termsText" | "termsPlainText" | "termsAcceptanceRequired" | "acceptTerms" | "deleteCredentialTitle" | "deleteCredentialMessage" | "recaptchaFailed" | "recaptchaNotConfigured" | "noAccount" | "usernameOrEmail" | "passwordNewConfirm" | "hidePassword" | "showPassword" | "rememberMe" | "logoutOtherSessions" | "restartLoginTooltip" | "loginTotpIntro" | "loginTotpStep1" | "loginTotpStep2" | "loginTotpStep3" | "loginTotpStep3DeviceName" | "loginTotpManualStep2" | "loginTotpManualStep3" | "loginTotpUnableToScan" | "loginTotpScanBarcode" | "loginCredential" | "loginOtpOneTime" | "loginTotpType" | "loginTotpAlgorithm" | "loginTotpDigits" | "loginTotpInterval" | "loginTotpCounter" | "loginTotpDeviceName" | "loginTotp.totp" | "loginTotp.hotp" | "loginChooseAuthenticator" | "oauthGrantRequest" | "oauth2DeviceVerificationTitle" | "verifyOAuth2DeviceUserCode" | "oauth2DeviceInvalidUserCodeMessage" | "oauth2DeviceExpiredUserCodeMessage" | "oauth2DeviceVerificationCompleteHeader" | "oauth2DeviceVerificationCompleteMessage" | "oauth2DeviceVerificationFailedHeader" | "oauth2DeviceVerificationFailedMessage" | "oauth2DeviceConsentDeniedMessage" | "oauth2DeviceAuthorizationGrantDisabledMessage" | "emailVerifyInstruction1" | "emailVerifyInstruction2" | "emailVerifyInstruction3" | "emailLinkIdpTitle" | "emailLinkIdp1" | "emailLinkIdp2" | "emailLinkIdp3" | "emailLinkIdp4" | "emailLinkIdp5" | "backToLogin" | "emailInstruction" | "emailInstructionUsername" | "copyCodeInstruction" | "pageExpiredTitle" | "pageExpiredMsg1" | "pageExpiredMsg2" | "personalInfo" | "role_create-client" | "invalidUsernameMessage" | "invalidUsernameOrEmailMessage" | "invalidPasswordMessage" | "expiredCodeMessage" | "expiredActionMessage" | "expiredActionTokenNoSessionMessage" | "expiredActionTokenSessionExistsMessage" | "sessionLimitExceeded" | "error-reset-otp-missing-id" | "federatedIdentityExistsMessage" | "federatedIdentityUnavailableMessage" | "federatedIdentityUnmatchedEssentialClaimMessage" | "confirmLinkIdpTitle" | "federatedIdentityConfirmLinkMessage" | "federatedIdentityConfirmReauthenticateMessage" | "nestedFirstBrokerFlowMessage" | "confirmLinkIdpReviewProfile" | "confirmLinkIdpContinue" | "configureTotpMessage" | "configureBackupCodesMessage" | "updateProfileMessage" | "updateEmailMessage" | "resetPasswordMessage" | "verifyEmailMessage" | "linkIdpMessage" | "emailSentMessage" | "emailSendErrorMessage" | "delegationCompleteHeader" | "delegationCompleteMessage" | "delegationFailedHeader" | "delegationFailedMessage" | "failedToProcessResponseMessage" | "httpsRequiredMessage" | "realmNotEnabledMessage" | "invalidRequestMessage" | "successLogout" | "failedLogout" | "unknownLoginRequesterMessage" | "loginRequesterNotEnabledMessage" | "bearerOnlyMessage" | "standardFlowDisabledMessage" | "implicitFlowDisabledMessage" | "invalidRedirectUriMessage" | "unsupportedNameIdFormatMessage" | "invalidRequesterMessage" | "registrationNotAllowedMessage" | "resetCredentialNotAllowedMessage" | "permissionNotApprovedMessage" | "noRelayStateInResponseMessage" | "insufficientPermissionMessage" | "couldNotProceedWithAuthenticationRequestMessage" | "couldNotObtainTokenMessage" | "unexpectedErrorRetrievingTokenMessage" | "unexpectedErrorHandlingResponseMessage" | "identityProviderAuthenticationFailedMessage" | "couldNotSendAuthenticationRequestMessage" | "unexpectedErrorHandlingRequestMessage" | "invalidAccessCodeMessage" | "sessionNotActiveMessage" | "invalidCodeMessage" | "cookieNotFoundMessage" | "insufficientLevelOfAuthentication" | "identityProviderUnexpectedErrorMessage" | "identityProviderMissingStateMessage" | "identityProviderMissingCodeOrErrorMessage" | "identityProviderInvalidResponseMessage" | "identityProviderInvalidSignatureMessage" | "identityProviderLinkSuccess" | "staleCodeMessage" | "realmSupportsNoCredentialsMessage" | "credentialSetupRequired" | "identityProviderNotUniqueMessage" | "emailVerifiedMessage" | "emailVerifiedAlreadyMessage" | "staleEmailVerificationLink" | "confirmAccountLinking" | "confirmEmailAddressVerification" | "confirmExecutionOfActions" | "locale_da" | "locale_lv" | "missingParameterMessage" | "clientDisabledMessage" | "invalidParameterMessage" | "alreadyLoggedIn" | "differentUserAuthenticated" | "brokerLinkingSessionExpired" | "proceedWithAction" | "acrNotFulfilled" | "requiredAction.CONFIGURE_TOTP" | "requiredAction.TERMS_AND_CONDITIONS" | "requiredAction.UPDATE_PASSWORD" | "requiredAction.UPDATE_PROFILE" | "requiredAction.VERIFY_EMAIL" | "requiredAction.CONFIGURE_RECOVERY_AUTHN_CODES" | "requiredAction.webauthn-register-passwordless" | "invalidTokenRequiredActions" | "doX509Login" | "clientCertificate" | "noCertificate" | "pageNotFound" | "internalServerError" | "console-username" | "console-password" | "console-otp" | "console-new-password" | "console-confirm-password" | "console-update-password" | "console-verify-email" | "console-email-code" | "console-accept-terms" | "console-accept" | "saml.post-form.title" | "saml.post-form.message" | "saml.post-form.js-disabled" | "saml.artifactResolutionServiceInvalidResponse" | "otp-display-name" | "otp-help-text" | "otp-reset-description" | "password-display-name" | "password-help-text" | "auth-username-form-display-name" | "auth-username-form-help-text" | "auth-username-password-form-display-name" | "auth-username-password-form-help-text" | "auth-recovery-authn-code-form-display-name" | "auth-recovery-authn-code-form-help-text" | "auth-recovery-code-info-message" | "auth-recovery-code-prompt" | "auth-recovery-code-header" | "recovery-codes-error-invalid" | "recovery-code-config-header" | "recovery-code-config-warning-title" | "recovery-code-config-warning-message" | "recovery-codes-print" | "recovery-codes-download" | "recovery-codes-copy" | "recovery-codes-copied" | "recovery-codes-confirmation-message" | "recovery-codes-action-complete" | "recovery-codes-action-cancel" | "recovery-codes-download-file-header" | "recovery-codes-download-file-description" | "recovery-codes-download-file-date" | "recovery-codes-label-default" | "webauthn-display-name" | "webauthn-help-text" | "webauthn-passwordless-display-name" | "webauthn-passwordless-help-text" | "webauthn-login-title" | "webauthn-registration-title" | "webauthn-available-authenticators" | "webauthn-unsupported-browser-text" | "webauthn-doAuthenticate" | "webauthn-createdAt-label" | "webauthn-error-title" | "webauthn-error-registration" | "webauthn-error-api-get" | "webauthn-error-different-user" | "webauthn-error-auth-verification" | "webauthn-error-register-verification" | "webauthn-error-user-not-found" | "identity-provider-redirector" | "identity-provider-login-label" | "idp-email-verification-display-name" | "idp-email-verification-help-text" | "idp-username-password-form-display-name" | "idp-username-password-form-help-text" | "finalDeletionConfirmation" | "deleteAccountConfirm" | "userDeletedSuccessfully" | "access-denied" | "frontchannel-logout.title" | "frontchannel-logout.message" | "logoutConfirmTitle" | "logoutConfirmHeader" | "doLogout" | "error-invalid-multivalued-size" | "shouldBeEqual" | "shouldBeDifferent" | "shouldMatchPattern" | "mustBeAnInteger" | "notAValidOption" | "selectAnOption" | "addValue" | "languages">;
8
+ export type I18n = typeof ofTypeI18n;
9
+ export { useI18n };
@@ -1,2 +1,6 @@
1
- export { createUseI18n, fallbackLanguageTag } from "./i18n";
1
+ import { createUseI18n } from "./i18n";
2
+ export { createUseI18n };
3
+ export { fallbackLanguageTag } from "./i18n";
4
+ const { useI18n, ofTypeI18n } = createUseI18n({});
5
+ export { useI18n };
2
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/login/i18n/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/login/i18n/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;AAIlD,OAAO,EAAE,OAAO,EAAE,CAAC"}
package/login/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export type { ExtendKcContext, Attribute } from "../login/KcContext";
2
- export type { PageProps } from "../login/pages/PageProps";
2
+ export type { ClassKey } from "../login/TemplateProps";
3
3
  export { useDownloadTerms } from "../login/lib/useDownloadTerms";
4
4
  export { createUseI18n } from "../login/i18n";
@@ -0,0 +1,9 @@
1
+ import type { ClassKey } from "../../login/TemplateProps";
2
+ export declare const getKcClsx: (params: {
3
+ doUseDefaultCss: boolean;
4
+ classes: Partial<Record<ClassKey, string>> | undefined;
5
+ }) => {
6
+ kcClsx: (...args: import("../../tools/clsx_withTransform").CxArg<ClassKey>[]) => string;
7
+ };
8
+ export type { ClassKey };
9
+ export type KcClsx = ReturnType<typeof getKcClsx>["kcClsx"];
@@ -1,5 +1,5 @@
1
- import { createUseClassName } from "../../lib/useGetClassName";
2
- export const { useGetClassName } = createUseClassName({
1
+ import { createGetKcClsx } from "../../lib/getKcClsx";
2
+ export const { getKcClsx } = createGetKcClsx({
3
3
  defaultClasses: {
4
4
  kcHtmlClass: "login-pf",
5
5
  kcBodyClass: undefined,
@@ -127,4 +127,4 @@ export const { useGetClassName } = createUseClassName({
127
127
  kcLabelClass: "pf-c-form__label pf-c-form__label-text"
128
128
  }
129
129
  });
130
- //# sourceMappingURL=useGetClassName.js.map
130
+ //# sourceMappingURL=kcClsx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kcClsx.js","sourceRoot":"","sources":["../../src/login/lib/kcClsx.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import "../../tools/Array.prototype.every";
2
2
  import { type Dispatch } from "react";
3
- import type { KcContext, PasswordPolicies, Attribute, Validators } from "../../login/KcContext";
4
- import type { I18n } from "../i18n";
3
+ import type { PasswordPolicies, Attribute, Validators } from "../../login/KcContext";
4
+ import type { KcContext } from "../KcContext";
5
+ import { KcContextLike as KcContextLike_i18n } from "../../login/i18n";
5
6
  export type FormFieldError = {
6
7
  errorMessage: JSX.Element;
7
8
  errorMessageStr: string;
@@ -46,8 +47,7 @@ export type FormAction = {
46
47
  name: string;
47
48
  fieldIndex: number | undefined;
48
49
  };
49
- export type KcContextLike = {
50
- messagesPerField: Pick<KcContext.Common["messagesPerField"], "existsError" | "get">;
50
+ export type KcContextLike = KcContextLike_i18n & KcContextLike_useGetErrors & {
51
51
  profile: {
52
52
  attributesByName: Record<string, Attribute>;
53
53
  html5DataAnnotations?: Record<string, string>;
@@ -56,14 +56,12 @@ export type KcContextLike = {
56
56
  realm: {
57
57
  registrationEmailAsUsername: boolean;
58
58
  };
59
- passwordPolicies?: PasswordPolicies;
60
59
  url: {
61
60
  resourcesPath: string;
62
61
  };
63
62
  };
64
63
  export type ParamsOfUseUserProfileForm = {
65
64
  kcContext: KcContextLike;
66
- i18n: I18n;
67
65
  doMakeUserConfirmPassword: boolean;
68
66
  };
69
67
  export type ReturnTypeOfUseUserProfileForm = {
@@ -71,6 +69,10 @@ export type ReturnTypeOfUseUserProfileForm = {
71
69
  dispatchFormAction: Dispatch<FormAction>;
72
70
  };
73
71
  export declare function useUserProfileForm(params: ParamsOfUseUserProfileForm): ReturnTypeOfUseUserProfileForm;
72
+ type KcContextLike_useGetErrors = KcContextLike_i18n & {
73
+ messagesPerField: Pick<KcContext["messagesPerField"], "existsError" | "get">;
74
+ passwordPolicies?: PasswordPolicies;
75
+ };
74
76
  export declare function getButtonToDisplayForMultivaluedAttributeField(params: {
75
77
  attribute: Attribute;
76
78
  values: string[];
@@ -79,3 +81,4 @@ export declare function getButtonToDisplayForMultivaluedAttributeField(params: {
79
81
  hasRemove: boolean;
80
82
  hasAdd: boolean;
81
83
  };
84
+ export {};
@@ -19,9 +19,11 @@ import { useConstCallback } from "../../tools/useConstCallback";
19
19
  import { emailRegexp } from "../../tools/emailRegExp";
20
20
  import { formatNumber } from "../../tools/formatNumber";
21
21
  import { useInsertScriptTags } from "../../tools/useInsertScriptTags";
22
+ import { useI18n } from "../i18n";
23
+ assert();
22
24
  export function useUserProfileForm(params) {
23
25
  var _a, _b;
24
- const { kcContext, i18n, doMakeUserConfirmPassword } = params;
26
+ const { kcContext, doMakeUserConfirmPassword } = params;
25
27
  const { insertScriptTags } = useInsertScriptTags({
26
28
  componentOrHookName: "useUserProfileForm",
27
29
  scriptTags: Object.keys((_b = (_a = kcContext.profile) === null || _a === void 0 ? void 0 : _a.html5DataAnnotations) !== null && _b !== void 0 ? _b : {})
@@ -35,8 +37,7 @@ export function useUserProfileForm(params) {
35
37
  insertScriptTags();
36
38
  }, []);
37
39
  const { getErrors } = useGetErrors({
38
- kcContext,
39
- i18n
40
+ kcContext
40
41
  });
41
42
  const initialState = useMemo(() => {
42
43
  // NOTE: We don't use te kcContext.profile.attributes directly because
@@ -341,10 +342,11 @@ export function useUserProfileForm(params) {
341
342
  dispatchFormAction
342
343
  };
343
344
  }
345
+ assert();
344
346
  function useGetErrors(params) {
345
- const { kcContext, i18n } = params;
347
+ const { kcContext } = params;
346
348
  const { messagesPerField, passwordPolicies } = kcContext;
347
- const { msg, msgStr, advancedMsg, advancedMsgStr } = i18n;
349
+ const { msg, msgStr, advancedMsg, advancedMsgStr } = useI18n({ kcContext });
348
350
  const getErrors = useConstCallback((params) => {
349
351
  var _a, _b;
350
352
  const { attributeName, formFieldStates } = params;