keycloakify 10.0.0-rc.40 → 10.0.0-rc.41

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 (219) hide show
  1. package/account/DefaultPage.d.ts +5 -0
  2. package/account/{Fallback.js → DefaultPage.js} +2 -2
  3. package/account/DefaultPage.js.map +1 -0
  4. package/account/Template.d.ts +2 -1
  5. package/account/Template.js +2 -3
  6. package/account/Template.js.map +1 -1
  7. package/account/TemplateProps.d.ts +3 -3
  8. package/account/i18n/i18n.d.ts +3 -1
  9. package/account/i18n/i18n.js +2 -2
  10. package/account/i18n/i18n.js.map +1 -1
  11. package/account/i18n/index.d.ts +4 -8
  12. package/account/i18n/index.js +1 -4
  13. package/account/i18n/index.js.map +1 -1
  14. package/account/pages/Account.d.ts +2 -1
  15. package/account/pages/Account.js +3 -4
  16. package/account/pages/Account.js.map +1 -1
  17. package/account/pages/Applications.d.ts +2 -1
  18. package/account/pages/Applications.js +3 -4
  19. package/account/pages/Applications.js.map +1 -1
  20. package/account/pages/FederatedIdentity.d.ts +2 -1
  21. package/account/pages/FederatedIdentity.js +3 -4
  22. package/account/pages/FederatedIdentity.js.map +1 -1
  23. package/account/pages/Log.d.ts +2 -1
  24. package/account/pages/Log.js +3 -4
  25. package/account/pages/Log.js.map +1 -1
  26. package/account/pages/PageProps.d.ts +4 -4
  27. package/account/pages/Password.d.ts +2 -1
  28. package/account/pages/Password.js +3 -3
  29. package/account/pages/Password.js.map +1 -1
  30. package/account/pages/Sessions.d.ts +2 -1
  31. package/account/pages/Sessions.js +3 -4
  32. package/account/pages/Sessions.js.map +1 -1
  33. package/account/pages/Totp.d.ts +2 -1
  34. package/account/pages/Totp.js +3 -4
  35. package/account/pages/Totp.js.map +1 -1
  36. package/bin/538.index.js +37 -2
  37. package/login/{Fallback.d.ts → DefaultPage.d.ts} +4 -3
  38. package/login/{Fallback.js → DefaultPage.js} +2 -2
  39. package/login/DefaultPage.js.map +1 -0
  40. package/login/Template.d.ts +2 -1
  41. package/login/Template.js +2 -3
  42. package/login/Template.js.map +1 -1
  43. package/login/TemplateProps.d.ts +3 -3
  44. package/login/UserProfileFormFields.d.ts +2 -1
  45. package/login/UserProfileFormFields.js +3 -4
  46. package/login/UserProfileFormFields.js.map +1 -1
  47. package/login/i18n/i18n.d.ts +3 -1
  48. package/login/i18n/i18n.js +1 -1
  49. package/login/i18n/i18n.js.map +1 -1
  50. package/login/i18n/index.d.ts +4 -8
  51. package/login/i18n/index.js +1 -4
  52. package/login/i18n/index.js.map +1 -1
  53. package/login/lib/useUserProfileForm.d.ts +2 -0
  54. package/login/lib/useUserProfileForm.js +5 -5
  55. package/login/lib/useUserProfileForm.js.map +1 -1
  56. package/login/pages/Code.d.ts +2 -1
  57. package/login/pages/Code.js +3 -4
  58. package/login/pages/Code.js.map +1 -1
  59. package/login/pages/DeleteAccountConfirm.d.ts +2 -1
  60. package/login/pages/DeleteAccountConfirm.js +3 -4
  61. package/login/pages/DeleteAccountConfirm.js.map +1 -1
  62. package/login/pages/DeleteCredential.d.ts +2 -1
  63. package/login/pages/DeleteCredential.js +3 -4
  64. package/login/pages/DeleteCredential.js.map +1 -1
  65. package/login/pages/Error.d.ts +2 -1
  66. package/login/pages/Error.js +3 -4
  67. package/login/pages/Error.js.map +1 -1
  68. package/login/pages/FrontchannelLogout.d.ts +2 -1
  69. package/login/pages/FrontchannelLogout.js +3 -4
  70. package/login/pages/FrontchannelLogout.js.map +1 -1
  71. package/login/pages/IdpReviewUserProfile.d.ts +2 -1
  72. package/login/pages/IdpReviewUserProfile.js +3 -4
  73. package/login/pages/IdpReviewUserProfile.js.map +1 -1
  74. package/login/pages/Info.d.ts +2 -1
  75. package/login/pages/Info.js +3 -4
  76. package/login/pages/Info.js.map +1 -1
  77. package/login/pages/Login.d.ts +2 -1
  78. package/login/pages/Login.js +2 -4
  79. package/login/pages/Login.js.map +1 -1
  80. package/login/pages/LoginConfigTotp.d.ts +2 -1
  81. package/login/pages/LoginConfigTotp.js +2 -4
  82. package/login/pages/LoginConfigTotp.js.map +1 -1
  83. package/login/pages/LoginIdpLinkConfirm.d.ts +2 -1
  84. package/login/pages/LoginIdpLinkConfirm.js +3 -4
  85. package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
  86. package/login/pages/LoginIdpLinkEmail.d.ts +2 -1
  87. package/login/pages/LoginIdpLinkEmail.js +3 -4
  88. package/login/pages/LoginIdpLinkEmail.js.map +1 -1
  89. package/login/pages/LoginOauth2DeviceVerifyUserCode.d.ts +2 -1
  90. package/login/pages/LoginOauth2DeviceVerifyUserCode.js +3 -4
  91. package/login/pages/LoginOauth2DeviceVerifyUserCode.js.map +1 -1
  92. package/login/pages/LoginOauthGrant.d.ts +2 -1
  93. package/login/pages/LoginOauthGrant.js +3 -4
  94. package/login/pages/LoginOauthGrant.js.map +1 -1
  95. package/login/pages/LoginOtp.d.ts +2 -1
  96. package/login/pages/LoginOtp.js +3 -4
  97. package/login/pages/LoginOtp.js.map +1 -1
  98. package/login/pages/LoginPageExpired.d.ts +2 -1
  99. package/login/pages/LoginPageExpired.js +3 -4
  100. package/login/pages/LoginPageExpired.js.map +1 -1
  101. package/login/pages/LoginPassword.d.ts +2 -1
  102. package/login/pages/LoginPassword.js +2 -4
  103. package/login/pages/LoginPassword.js.map +1 -1
  104. package/login/pages/LoginRecoveryAuthnCodeConfig.d.ts +2 -1
  105. package/login/pages/LoginRecoveryAuthnCodeConfig.js +2 -4
  106. package/login/pages/LoginRecoveryAuthnCodeConfig.js.map +1 -1
  107. package/login/pages/LoginRecoveryAuthnCodeInput.d.ts +2 -1
  108. package/login/pages/LoginRecoveryAuthnCodeInput.js +3 -4
  109. package/login/pages/LoginRecoveryAuthnCodeInput.js.map +1 -1
  110. package/login/pages/LoginResetOtp.d.ts +2 -1
  111. package/login/pages/LoginResetOtp.js +3 -4
  112. package/login/pages/LoginResetOtp.js.map +1 -1
  113. package/login/pages/LoginResetPassword.d.ts +2 -1
  114. package/login/pages/LoginResetPassword.js +3 -4
  115. package/login/pages/LoginResetPassword.js.map +1 -1
  116. package/login/pages/LoginUpdatePassword.d.ts +2 -1
  117. package/login/pages/LoginUpdatePassword.js +2 -4
  118. package/login/pages/LoginUpdatePassword.js.map +1 -1
  119. package/login/pages/LoginUpdateProfile.d.ts +2 -1
  120. package/login/pages/LoginUpdateProfile.js +3 -4
  121. package/login/pages/LoginUpdateProfile.js.map +1 -1
  122. package/login/pages/LoginUsername.d.ts +2 -1
  123. package/login/pages/LoginUsername.js +3 -4
  124. package/login/pages/LoginUsername.js.map +1 -1
  125. package/login/pages/LoginVerifyEmail.d.ts +2 -1
  126. package/login/pages/LoginVerifyEmail.js +3 -4
  127. package/login/pages/LoginVerifyEmail.js.map +1 -1
  128. package/login/pages/LoginX509Info.d.ts +2 -1
  129. package/login/pages/LoginX509Info.js +3 -4
  130. package/login/pages/LoginX509Info.js.map +1 -1
  131. package/login/pages/LogoutConfirm.d.ts +2 -1
  132. package/login/pages/LogoutConfirm.js +3 -4
  133. package/login/pages/LogoutConfirm.js.map +1 -1
  134. package/login/pages/PageProps.d.ts +4 -4
  135. package/login/pages/Register.d.ts +2 -1
  136. package/login/pages/Register.js +2 -4
  137. package/login/pages/Register.js.map +1 -1
  138. package/login/pages/SamlPostForm.d.ts +2 -1
  139. package/login/pages/SamlPostForm.js +3 -4
  140. package/login/pages/SamlPostForm.js.map +1 -1
  141. package/login/pages/SelectAuthenticator.d.ts +2 -1
  142. package/login/pages/SelectAuthenticator.js +3 -4
  143. package/login/pages/SelectAuthenticator.js.map +1 -1
  144. package/login/pages/Terms.d.ts +2 -1
  145. package/login/pages/Terms.js +3 -4
  146. package/login/pages/Terms.js.map +1 -1
  147. package/login/pages/UpdateEmail.d.ts +2 -1
  148. package/login/pages/UpdateEmail.js +2 -4
  149. package/login/pages/UpdateEmail.js.map +1 -1
  150. package/login/pages/WebauthnAuthenticate.d.ts +2 -1
  151. package/login/pages/WebauthnAuthenticate.js +3 -4
  152. package/login/pages/WebauthnAuthenticate.js.map +1 -1
  153. package/login/pages/WebauthnError.d.ts +2 -1
  154. package/login/pages/WebauthnError.js +3 -4
  155. package/login/pages/WebauthnError.js.map +1 -1
  156. package/login/pages/WebauthnRegister.d.ts +2 -1
  157. package/login/pages/WebauthnRegister.js +2 -4
  158. package/login/pages/WebauthnRegister.js.map +1 -1
  159. package/package.json +9 -9
  160. package/src/account/{Fallback.tsx → DefaultPage.tsx} +3 -2
  161. package/src/account/Template.tsx +4 -4
  162. package/src/account/TemplateProps.ts +4 -3
  163. package/src/account/i18n/i18n.tsx +3 -3
  164. package/src/account/i18n/index.ts +4 -9
  165. package/src/account/pages/Account.tsx +5 -5
  166. package/src/account/pages/Applications.tsx +5 -5
  167. package/src/account/pages/FederatedIdentity.tsx +5 -5
  168. package/src/account/pages/Log.tsx +5 -5
  169. package/src/account/pages/PageProps.ts +4 -4
  170. package/src/account/pages/Password.tsx +5 -4
  171. package/src/account/pages/Sessions.tsx +5 -5
  172. package/src/account/pages/Totp.tsx +5 -5
  173. package/src/bin/shared/generateKcGenTs.ts +46 -36
  174. package/src/login/{Fallback.tsx → DefaultPage.tsx} +4 -3
  175. package/src/login/Template.tsx +4 -3
  176. package/src/login/TemplateProps.ts +3 -4
  177. package/src/login/UserProfileFormFields.tsx +5 -5
  178. package/src/login/i18n/i18n.tsx +2 -2
  179. package/src/login/i18n/index.ts +4 -9
  180. package/src/login/lib/useUserProfileForm.tsx +8 -6
  181. package/src/login/pages/Code.tsx +5 -4
  182. package/src/login/pages/DeleteAccountConfirm.tsx +5 -5
  183. package/src/login/pages/DeleteCredential.tsx +5 -4
  184. package/src/login/pages/Error.tsx +12 -5
  185. package/src/login/pages/FrontchannelLogout.tsx +5 -4
  186. package/src/login/pages/IdpReviewUserProfile.tsx +6 -4
  187. package/src/login/pages/Info.tsx +5 -4
  188. package/src/login/pages/Login.tsx +4 -4
  189. package/src/login/pages/LoginConfigTotp.tsx +4 -6
  190. package/src/login/pages/LoginIdpLinkConfirm.tsx +5 -5
  191. package/src/login/pages/LoginIdpLinkEmail.tsx +11 -5
  192. package/src/login/pages/LoginOauth2DeviceVerifyUserCode.tsx +11 -5
  193. package/src/login/pages/LoginOauthGrant.tsx +5 -4
  194. package/src/login/pages/LoginOtp.tsx +5 -4
  195. package/src/login/pages/LoginPageExpired.tsx +5 -5
  196. package/src/login/pages/LoginPassword.tsx +4 -4
  197. package/src/login/pages/LoginRecoveryAuthnCodeConfig.tsx +10 -5
  198. package/src/login/pages/LoginRecoveryAuthnCodeInput.tsx +5 -4
  199. package/src/login/pages/LoginResetOtp.tsx +5 -4
  200. package/src/login/pages/LoginResetPassword.tsx +5 -4
  201. package/src/login/pages/LoginUpdatePassword.tsx +4 -4
  202. package/src/login/pages/LoginUpdateProfile.tsx +6 -4
  203. package/src/login/pages/LoginUsername.tsx +5 -4
  204. package/src/login/pages/LoginVerifyEmail.tsx +5 -4
  205. package/src/login/pages/LoginX509Info.tsx +5 -5
  206. package/src/login/pages/LogoutConfirm.tsx +5 -5
  207. package/src/login/pages/PageProps.ts +4 -4
  208. package/src/login/pages/Register.tsx +12 -5
  209. package/src/login/pages/SamlPostForm.tsx +5 -5
  210. package/src/login/pages/SelectAuthenticator.tsx +5 -4
  211. package/src/login/pages/Terms.tsx +12 -5
  212. package/src/login/pages/UpdateEmail.tsx +5 -4
  213. package/src/login/pages/WebauthnAuthenticate.tsx +5 -4
  214. package/src/login/pages/WebauthnError.tsx +12 -5
  215. package/src/login/pages/WebauthnRegister.tsx +4 -4
  216. package/vite-plugin/index.js +48 -24
  217. package/account/Fallback.d.ts +0 -4
  218. package/account/Fallback.js.map +0 -1
  219. package/login/Fallback.js.map +0 -1
@@ -3,10 +3,10 @@ import { clsx } from "keycloakify/tools/clsx";
3
3
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
4
4
  import type { PageProps } from "keycloakify/login/pages/PageProps";
5
5
  import type { KcContext } from "../KcContext";
6
- import { useI18n } from "../i18n";
6
+ import type { I18n } from "../i18n";
7
7
 
8
- export default function LoginUsername(props: PageProps<Extract<KcContext, { pageId: "login-username.ftl" }>>) {
9
- const { kcContext, doUseDefaultCss, Template, classes } = props;
8
+ export default function LoginUsername(props: PageProps<Extract<KcContext, { pageId: "login-username.ftl" }>, I18n>) {
9
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
10
10
 
11
11
  const { kcClsx } = getKcClsx({
12
12
  doUseDefaultCss,
@@ -15,13 +15,14 @@ export default function LoginUsername(props: PageProps<Extract<KcContext, { page
15
15
 
16
16
  const { social, realm, url, usernameHidden, login, registrationDisabled, messagesPerField } = kcContext;
17
17
 
18
- const { msg, msgStr } = useI18n({ kcContext });
18
+ const { msg, msgStr } = i18n;
19
19
 
20
20
  const [isLoginButtonDisabled, setIsLoginButtonDisabled] = useState(false);
21
21
 
22
22
  return (
23
23
  <Template
24
24
  kcContext={kcContext}
25
+ i18n={i18n}
25
26
  doUseDefaultCss={doUseDefaultCss}
26
27
  classes={classes}
27
28
  displayMessage={!messagesPerField.existsError("username")}
@@ -1,17 +1,18 @@
1
1
  import type { PageProps } from "keycloakify/login/pages/PageProps";
2
2
  import type { KcContext } from "../KcContext";
3
- import { useI18n } from "../i18n";
3
+ import type { I18n } from "../i18n";
4
4
 
5
- export default function LoginVerifyEmail(props: PageProps<Extract<KcContext, { pageId: "login-verify-email.ftl" }>>) {
6
- const { kcContext, doUseDefaultCss, Template, classes } = props;
5
+ export default function LoginVerifyEmail(props: PageProps<Extract<KcContext, { pageId: "login-verify-email.ftl" }>, I18n>) {
6
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
7
7
 
8
- const { msg } = useI18n({ kcContext });
8
+ const { msg } = i18n;
9
9
 
10
10
  const { url, user } = kcContext;
11
11
 
12
12
  return (
13
13
  <Template
14
14
  kcContext={kcContext}
15
+ i18n={i18n}
15
16
  doUseDefaultCss={doUseDefaultCss}
16
17
  classes={classes}
17
18
  displayInfo
@@ -1,10 +1,10 @@
1
1
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
2
2
  import type { PageProps } from "keycloakify/login/pages/PageProps";
3
3
  import type { KcContext } from "../KcContext";
4
- import { useI18n } from "../i18n";
4
+ import type { I18n } from "../i18n";
5
5
 
6
- export default function LoginX509Info(props: PageProps<Extract<KcContext, { pageId: "login-x509-info.ftl" }>>) {
7
- const { kcContext, doUseDefaultCss, Template, classes } = props;
6
+ export default function LoginX509Info(props: PageProps<Extract<KcContext, { pageId: "login-x509-info.ftl" }>, I18n>) {
7
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
8
8
 
9
9
  const { kcClsx } = getKcClsx({
10
10
  doUseDefaultCss,
@@ -13,10 +13,10 @@ export default function LoginX509Info(props: PageProps<Extract<KcContext, { page
13
13
 
14
14
  const { url, x509 } = kcContext;
15
15
 
16
- const { msg, msgStr } = useI18n({ kcContext });
16
+ const { msg, msgStr } = i18n;
17
17
 
18
18
  return (
19
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("doLogIn")}>
19
+ <Template kcContext={kcContext} i18n={i18n} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("doLogIn")}>
20
20
  <form id="kc-x509-login-info" className={kcClsx("kcFormClass")} action={url.loginAction} method="post">
21
21
  <div className={kcClsx("kcFormGroupClass")}>
22
22
  <div className={kcClsx("kcLabelWrapperClass")}>
@@ -1,10 +1,10 @@
1
1
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
2
2
  import type { PageProps } from "keycloakify/login/pages/PageProps";
3
3
  import type { KcContext } from "../KcContext";
4
- import { useI18n } from "../i18n";
4
+ import type { I18n } from "../i18n";
5
5
 
6
- export default function LogoutConfirm(props: PageProps<Extract<KcContext, { pageId: "logout-confirm.ftl" }>>) {
7
- const { kcContext, doUseDefaultCss, Template, classes } = props;
6
+ export default function LogoutConfirm(props: PageProps<Extract<KcContext, { pageId: "logout-confirm.ftl" }>, I18n>) {
7
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
8
8
 
9
9
  const { kcClsx } = getKcClsx({
10
10
  doUseDefaultCss,
@@ -13,10 +13,10 @@ export default function LogoutConfirm(props: PageProps<Extract<KcContext, { page
13
13
 
14
14
  const { url, client, logoutConfirm } = kcContext;
15
15
 
16
- const { msg, msgStr } = useI18n({ kcContext });
16
+ const { msg, msgStr } = i18n;
17
17
 
18
18
  return (
19
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("logoutConfirmTitle")}>
19
+ <Template kcContext={kcContext} i18n={i18n} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("logoutConfirmTitle")}>
20
20
  <div id="kc-logout-confirm" className="content-area">
21
21
  <p className="instruction">{msg("logoutConfirmHeader")}</p>
22
22
  <form className="form-actions" action={url.logoutConfirmAction} method="POST">
@@ -1,10 +1,10 @@
1
1
  import { type TemplateProps, type ClassKey } from "keycloakify/login/TemplateProps";
2
2
  import type { LazyOrNot } from "keycloakify/tools/LazyOrNot";
3
- import type { KcContext } from "keycloakify/account/KcContext";
4
3
 
5
- export type PageProps<NarowedKcContext = KcContext> = {
6
- Template: LazyOrNot<(props: TemplateProps<any>) => JSX.Element | null>;
7
- kcContext: NarowedKcContext;
4
+ export type PageProps<NarrowedKcContext, I18n> = {
5
+ Template: LazyOrNot<(props: TemplateProps<any, any>) => JSX.Element | null>;
6
+ kcContext: NarrowedKcContext;
7
+ i18n: I18n;
8
8
  doUseDefaultCss: boolean;
9
9
  classes?: Partial<Record<ClassKey, string>>;
10
10
  };
@@ -6,15 +6,15 @@ import { getKcClsx, type KcClsx } from "keycloakify/login/lib/kcClsx";
6
6
  import type { UserProfileFormFieldsProps } from "keycloakify/login/UserProfileFormFields";
7
7
  import type { PageProps } from "keycloakify/login/pages/PageProps";
8
8
  import type { KcContext } from "../KcContext";
9
- import { useI18n, type I18n } from "../i18n";
9
+ import type { I18n } from "../i18n";
10
10
 
11
- type RegisterProps = PageProps<Extract<KcContext, { pageId: "register.ftl" }>> & {
11
+ type RegisterProps = PageProps<Extract<KcContext, { pageId: "register.ftl" }>, I18n> & {
12
12
  UserProfileFormFields: LazyOrNot<(props: UserProfileFormFieldsProps) => JSX.Element>;
13
13
  doMakeUserConfirmPassword: boolean;
14
14
  };
15
15
 
16
16
  export default function Register(props: RegisterProps) {
17
- const { kcContext, doUseDefaultCss, Template, classes, UserProfileFormFields, doMakeUserConfirmPassword } = props;
17
+ const { kcContext, i18n, doUseDefaultCss, Template, classes, UserProfileFormFields, doMakeUserConfirmPassword } = props;
18
18
 
19
19
  const { kcClsx } = getKcClsx({
20
20
  doUseDefaultCss,
@@ -23,16 +23,23 @@ export default function Register(props: RegisterProps) {
23
23
 
24
24
  const { url, messagesPerField, recaptchaRequired, recaptchaSiteKey, termsAcceptanceRequired } = kcContext;
25
25
 
26
- const i18n = useI18n({ kcContext });
27
26
  const { msg, msgStr } = i18n;
28
27
 
29
28
  const [isFormSubmittable, setIsFormSubmittable] = useState(false);
30
29
 
31
30
  return (
32
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("registerTitle")} displayRequiredFields>
31
+ <Template
32
+ kcContext={kcContext}
33
+ i18n={i18n}
34
+ doUseDefaultCss={doUseDefaultCss}
35
+ classes={classes}
36
+ headerNode={msg("registerTitle")}
37
+ displayRequiredFields
38
+ >
33
39
  <form id="kc-register-form" className={kcClsx("kcFormClass")} action={url.registrationAction} method="post">
34
40
  <UserProfileFormFields
35
41
  kcContext={kcContext}
42
+ i18n={i18n}
36
43
  kcClsx={kcClsx}
37
44
  onIsFormSubmittableValueChange={setIsFormSubmittable}
38
45
  doMakeUserConfirmPassword={doMakeUserConfirmPassword}
@@ -1,12 +1,12 @@
1
1
  import { useEffect, useState } from "react";
2
2
  import type { PageProps } from "keycloakify/login/pages/PageProps";
3
3
  import type { KcContext } from "../KcContext";
4
- import { useI18n } from "../i18n";
4
+ import type { I18n } from "../i18n";
5
5
 
6
- export default function SamlPostForm(props: PageProps<Extract<KcContext, { pageId: "saml-post-form.ftl" }>>) {
7
- const { kcContext, doUseDefaultCss, Template, classes } = props;
6
+ export default function SamlPostForm(props: PageProps<Extract<KcContext, { pageId: "saml-post-form.ftl" }>, I18n>) {
7
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
8
8
 
9
- const { msgStr, msg } = useI18n({ kcContext });
9
+ const { msgStr, msg } = i18n;
10
10
 
11
11
  const { samlPost } = kcContext;
12
12
 
@@ -26,7 +26,7 @@ export default function SamlPostForm(props: PageProps<Extract<KcContext, { pageI
26
26
  htmlFormElement.submit();
27
27
  }, [htmlFormElement]);
28
28
  return (
29
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("saml.post-form.title")}>
29
+ <Template kcContext={kcContext} i18n={i18n} doUseDefaultCss={doUseDefaultCss} classes={classes} headerNode={msg("saml.post-form.title")}>
30
30
  <p>{msg("saml.post-form.message")}</p>
31
31
  <form name="saml-post-binding" method="post" action={samlPost.url} ref={setHtmlFormElement}>
32
32
  {samlPost.SAMLRequest && <input type="hidden" name="SAMLRequest" value={samlPost.SAMLRequest} />}
@@ -1,18 +1,19 @@
1
1
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
2
2
  import type { PageProps } from "keycloakify/login/pages/PageProps";
3
3
  import type { KcContext } from "../KcContext";
4
- import { useI18n } from "../i18n";
4
+ import type { I18n } from "../i18n";
5
5
 
6
- export default function SelectAuthenticator(props: PageProps<Extract<KcContext, { pageId: "select-authenticator.ftl" }>>) {
7
- const { kcContext, doUseDefaultCss, Template, classes } = props;
6
+ export default function SelectAuthenticator(props: PageProps<Extract<KcContext, { pageId: "select-authenticator.ftl" }>, I18n>) {
7
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
8
8
  const { url, auth } = kcContext;
9
9
 
10
10
  const { kcClsx } = getKcClsx({ doUseDefaultCss, classes });
11
- const { msg } = useI18n({ kcContext });
11
+ const { msg } = i18n;
12
12
 
13
13
  return (
14
14
  <Template
15
15
  kcContext={kcContext}
16
+ i18n={i18n}
16
17
  doUseDefaultCss={doUseDefaultCss}
17
18
  classes={classes}
18
19
  displayInfo={false}
@@ -3,17 +3,17 @@ import { getKcClsx } from "keycloakify/login/lib/kcClsx";
3
3
  import { useTermsMarkdown } from "keycloakify/login/lib/useDownloadTerms";
4
4
  import type { PageProps } from "keycloakify/login/pages/PageProps";
5
5
  import type { KcContext } from "../KcContext";
6
- import { useI18n } from "../i18n";
6
+ import type { I18n } from "../i18n";
7
7
 
8
- export default function Terms(props: PageProps<Extract<KcContext, { pageId: "terms.ftl" }>>) {
9
- const { kcContext, doUseDefaultCss, Template, classes } = props;
8
+ export default function Terms(props: PageProps<Extract<KcContext, { pageId: "terms.ftl" }>, I18n>) {
9
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
10
10
 
11
11
  const { kcClsx } = getKcClsx({
12
12
  doUseDefaultCss,
13
13
  classes
14
14
  });
15
15
 
16
- const { msg, msgStr } = useI18n({ kcContext });
16
+ const { msg, msgStr } = i18n;
17
17
 
18
18
  const { locale, url } = kcContext;
19
19
 
@@ -24,7 +24,14 @@ export default function Terms(props: PageProps<Extract<KcContext, { pageId: "ter
24
24
  }
25
25
 
26
26
  return (
27
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} displayMessage={false} headerNode={msg("termsTitle")}>
27
+ <Template
28
+ kcContext={kcContext}
29
+ i18n={i18n}
30
+ doUseDefaultCss={doUseDefaultCss}
31
+ classes={classes}
32
+ displayMessage={false}
33
+ headerNode={msg("termsTitle")}
34
+ >
28
35
  <div id="kc-terms-text" lang={termsLanguageTag !== locale?.currentLanguageTag ? termsLanguageTag : undefined}>
29
36
  <Markdown>{termsMarkdown}</Markdown>
30
37
  </div>
@@ -4,22 +4,21 @@ import { getKcClsx, type KcClsx } from "keycloakify/login/lib/kcClsx";
4
4
  import type { UserProfileFormFieldsProps } from "keycloakify/login/UserProfileFormFields";
5
5
  import type { PageProps } from "keycloakify/login/pages/PageProps";
6
6
  import type { KcContext } from "../KcContext";
7
- import { useI18n, type I18n } from "../i18n";
7
+ import type { I18n } from "../i18n";
8
8
 
9
- type UpdateEmailProps = PageProps<Extract<KcContext, { pageId: "update-email.ftl" }>> & {
9
+ type UpdateEmailProps = PageProps<Extract<KcContext, { pageId: "update-email.ftl" }>, I18n> & {
10
10
  UserProfileFormFields: LazyOrNot<(props: UserProfileFormFieldsProps) => JSX.Element>;
11
11
  doMakeUserConfirmPassword: boolean;
12
12
  };
13
13
 
14
14
  export default function UpdateEmail(props: UpdateEmailProps) {
15
- const { kcContext, doUseDefaultCss, Template, classes, UserProfileFormFields, doMakeUserConfirmPassword } = props;
15
+ const { kcContext, i18n, doUseDefaultCss, Template, classes, UserProfileFormFields, doMakeUserConfirmPassword } = props;
16
16
 
17
17
  const { kcClsx } = getKcClsx({
18
18
  doUseDefaultCss,
19
19
  classes
20
20
  });
21
21
 
22
- const i18n = useI18n({ kcContext });
23
22
  const { msg, msgStr } = i18n;
24
23
 
25
24
  const [isFormSubmittable, setIsFormSubmittable] = useState(false);
@@ -29,6 +28,7 @@ export default function UpdateEmail(props: UpdateEmailProps) {
29
28
  return (
30
29
  <Template
31
30
  kcContext={kcContext}
31
+ i18n={i18n}
32
32
  doUseDefaultCss={doUseDefaultCss}
33
33
  classes={classes}
34
34
  displayMessage={messagesPerField.exists("global")}
@@ -38,6 +38,7 @@ export default function UpdateEmail(props: UpdateEmailProps) {
38
38
  <form id="kc-update-email-form" className={kcClsx("kcFormClass")} action={url.loginAction} method="post">
39
39
  <UserProfileFormFields
40
40
  kcContext={kcContext}
41
+ i18n={i18n}
41
42
  kcClsx={kcClsx}
42
43
  onIsFormSubmittableValueChange={setIsFormSubmittable}
43
44
  doMakeUserConfirmPassword={doMakeUserConfirmPassword}
@@ -5,10 +5,10 @@ import { useInsertScriptTags } from "keycloakify/tools/useInsertScriptTags";
5
5
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
6
6
  import type { PageProps } from "keycloakify/login/pages/PageProps";
7
7
  import type { KcContext } from "../KcContext";
8
- import { useI18n } from "../i18n";
8
+ import type { I18n } from "../i18n";
9
9
 
10
- export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext, { pageId: "webauthn-authenticate.ftl" }>>) {
11
- const { kcContext, doUseDefaultCss, Template, classes } = props;
10
+ export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext, { pageId: "webauthn-authenticate.ftl" }>, I18n>) {
11
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
12
12
 
13
13
  const { kcClsx } = getKcClsx({ doUseDefaultCss, classes });
14
14
 
@@ -26,7 +26,7 @@ export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext,
26
26
  shouldDisplayAuthenticators
27
27
  } = kcContext;
28
28
 
29
- const { msg, msgStr, advancedMsg } = useI18n({ kcContext });
29
+ const { msg, msgStr, advancedMsg } = i18n;
30
30
 
31
31
  const { insertScriptTags } = useInsertScriptTags({
32
32
  componentOrHookName: "WebauthnAuthenticate",
@@ -137,6 +137,7 @@ export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext,
137
137
  return (
138
138
  <Template
139
139
  kcContext={kcContext}
140
+ i18n={i18n}
140
141
  doUseDefaultCss={doUseDefaultCss}
141
142
  classes={classes}
142
143
  displayMessage={!messagesPerField.existsError("username")}
@@ -1,14 +1,14 @@
1
1
  import { getKcClsx } from "keycloakify/login/lib/kcClsx";
2
2
  import type { PageProps } from "keycloakify/login/pages/PageProps";
3
3
  import type { KcContext } from "../KcContext";
4
- import { useI18n } from "../i18n";
4
+ import type { I18n } from "../i18n";
5
5
 
6
- export default function WebauthnError(props: PageProps<Extract<KcContext, { pageId: "webauthn-error.ftl" }>>) {
7
- const { kcContext, doUseDefaultCss, Template, classes } = props;
6
+ export default function WebauthnError(props: PageProps<Extract<KcContext, { pageId: "webauthn-error.ftl" }>, I18n>) {
7
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
8
8
 
9
9
  const { url, isAppInitiatedAction } = kcContext;
10
10
 
11
- const { msg, msgStr } = useI18n({ kcContext });
11
+ const { msg, msgStr } = i18n;
12
12
 
13
13
  const { kcClsx } = getKcClsx({
14
14
  doUseDefaultCss,
@@ -16,7 +16,14 @@ export default function WebauthnError(props: PageProps<Extract<KcContext, { page
16
16
  });
17
17
 
18
18
  return (
19
- <Template kcContext={kcContext} doUseDefaultCss={doUseDefaultCss} classes={classes} displayMessage headerNode={msg("webauthn-error-title")}>
19
+ <Template
20
+ kcContext={kcContext}
21
+ i18n={i18n}
22
+ doUseDefaultCss={doUseDefaultCss}
23
+ classes={classes}
24
+ displayMessage
25
+ headerNode={msg("webauthn-error-title")}
26
+ >
20
27
  <form id="kc-error-credential-form" className={kcClsx("kcFormClass")} action={url.loginAction} method="post">
21
28
  <input type="hidden" id="executionValue" name="authenticationExecution" />
22
29
  <input type="hidden" id="isSetRetry" name="isSetRetry" />
@@ -4,10 +4,10 @@ import { getKcClsx, type KcClsx } from "keycloakify/login/lib/kcClsx";
4
4
  import { useInsertScriptTags } from "keycloakify/tools/useInsertScriptTags";
5
5
  import type { PageProps } from "keycloakify/login/pages/PageProps";
6
6
  import type { KcContext } from "../KcContext";
7
- import { useI18n, type I18n } from "../i18n";
7
+ import type { I18n } from "../i18n";
8
8
 
9
- export default function WebauthnRegister(props: PageProps<Extract<KcContext, { pageId: "webauthn-register.ftl" }>>) {
10
- const { kcContext, doUseDefaultCss, Template, classes } = props;
9
+ export default function WebauthnRegister(props: PageProps<Extract<KcContext, { pageId: "webauthn-register.ftl" }>, I18n>) {
10
+ const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
11
11
 
12
12
  const { kcClsx } = getKcClsx({ doUseDefaultCss, classes });
13
13
 
@@ -29,7 +29,6 @@ export default function WebauthnRegister(props: PageProps<Extract<KcContext, { p
29
29
  isAppInitiatedAction
30
30
  } = kcContext;
31
31
 
32
- const i18n = useI18n({ kcContext });
33
32
  const { msg, msgStr } = i18n;
34
33
 
35
34
  const { insertScriptTags } = useInsertScriptTags({
@@ -207,6 +206,7 @@ export default function WebauthnRegister(props: PageProps<Extract<KcContext, { p
207
206
  return (
208
207
  <Template
209
208
  kcContext={kcContext}
209
+ i18n={i18n}
210
210
  doUseDefaultCss={doUseDefaultCss}
211
211
  classes={classes}
212
212
  headerNode={
@@ -4336,7 +4336,7 @@ const containerName = "keycloak-keycloakify";
4336
4336
 
4337
4337
  /***/ }),
4338
4338
 
4339
- /***/ 8047:
4339
+ /***/ 8272:
4340
4340
  /***/ ((__unused_webpack_module, __webpack_exports__, __nccwpck_require__) => {
4341
4341
 
4342
4342
  "use strict";
@@ -4458,20 +4458,8 @@ var external_stream_ = __nccwpck_require__(2781);
4458
4458
  var external_stream_default = /*#__PURE__*/__nccwpck_require__.n(external_stream_);
4459
4459
  // EXTERNAL MODULE: ./node_modules/evt/tools/Deferred.js
4460
4460
  var Deferred = __nccwpck_require__(689);
4461
- ;// CONCATENATED MODULE: ./dist/bin/tools/fs.existsAsync.js
4462
-
4463
- async function existsAsync(path) {
4464
- try {
4465
- await promises_.stat(path);
4466
- return true;
4467
- }
4468
- catch (error) {
4469
- if (error.code === "ENOENT")
4470
- return false;
4471
- throw error;
4472
- }
4473
- }
4474
- //# sourceMappingURL=fs.existsAsync.js.map
4461
+ // EXTERNAL MODULE: ./dist/bin/tools/fs.existsAsync.js
4462
+ var fs_existsAsync = __nccwpck_require__(3765);
4475
4463
  ;// CONCATENATED MODULE: ./dist/bin/tools/extractArchive.js
4476
4464
 
4477
4465
 
@@ -4500,7 +4488,7 @@ async function extractArchive(params) {
4500
4488
  const { filePath, modifiedData } = params;
4501
4489
  {
4502
4490
  const dirPath = (0,external_path_.dirname)(filePath);
4503
- if (!(await existsAsync(dirPath))) {
4491
+ if (!(await (0,fs_existsAsync/* existsAsync */.o)(dirPath))) {
4504
4492
  await promises_default().mkdir(dirPath, { recursive: true });
4505
4493
  }
4506
4494
  }
@@ -4661,7 +4649,7 @@ async function downloadAndExtractArchive(params) {
4661
4649
  const archiveFileBasename = url.split("?")[0].split("/").reverse()[0];
4662
4650
  const archiveFilePath = (0,external_path_.join)(cacheDirPath, archiveFileBasename);
4663
4651
  download: {
4664
- if (await existsAsync(archiveFilePath)) {
4652
+ if (await (0,fs_existsAsync/* existsAsync */.o)(archiveFilePath)) {
4665
4653
  const isDownloaded = await SuccessTracker.getIsDownloaded({
4666
4654
  cacheDirPath,
4667
4655
  archiveFileBasename
@@ -4708,7 +4696,7 @@ async function downloadAndExtractArchive(params) {
4708
4696
  }));
4709
4697
  const extractedDirPath = (0,external_path_.join)(cacheDirPath, extractDirBasename);
4710
4698
  extract_and_transform: {
4711
- if (await existsAsync(extractedDirPath)) {
4699
+ if (await (0,fs_existsAsync/* existsAsync */.o)(extractedDirPath)) {
4712
4700
  const isExtracted = await SuccessTracker.getIsExtracted({
4713
4701
  cacheDirPath,
4714
4702
  extractDirBasename
@@ -4745,7 +4733,7 @@ var SuccessTracker;
4745
4733
  async function read(params) {
4746
4734
  const { cacheDirPath } = params;
4747
4735
  const filePath = (0,external_path_.join)(cacheDirPath, "downloadAndExtractArchive.json");
4748
- if (!(await existsAsync(filePath))) {
4736
+ if (!(await (0,fs_existsAsync/* existsAsync */.o)(filePath))) {
4749
4737
  return { archiveFileBasenames: [], extractDirBasenames: [] };
4750
4738
  }
4751
4739
  return JSON.parse((await (0,promises_.readFile)(filePath)).toString("utf8"));
@@ -4755,7 +4743,7 @@ var SuccessTracker;
4755
4743
  const filePath = (0,external_path_.join)(cacheDirPath, "downloadAndExtractArchive.json");
4756
4744
  {
4757
4745
  const dirPath = (0,external_path_.dirname)(filePath);
4758
- if (!(await existsAsync(dirPath))) {
4746
+ if (!(await (0,fs_existsAsync/* existsAsync */.o)(dirPath))) {
4759
4747
  await (0,promises_.mkdir)(dirPath, { recursive: true });
4760
4748
  }
4761
4749
  }
@@ -4948,7 +4936,7 @@ async function downloadKeycloakStaticResources(params) {
4948
4936
  const resourcesDirPath = (0,external_path_.join)(themeDirPath, themeType, "resources");
4949
4937
  repatriate_base_resources: {
4950
4938
  const srcDirPath = (0,external_path_.join)(defaultThemeDirPath, "base", themeType, "resources");
4951
- if (!(await existsAsync(srcDirPath))) {
4939
+ if (!(await (0,fs_existsAsync/* existsAsync */.o)(srcDirPath))) {
4952
4940
  break repatriate_base_resources;
4953
4941
  }
4954
4942
  transformCodebase({
@@ -5127,18 +5115,25 @@ function getThemeSrcDirPath(params) {
5127
5115
  //# sourceMappingURL=getThemeSrcDirPath.js.map
5128
5116
  // EXTERNAL MODULE: external "fs/promises"
5129
5117
  var promises_ = __nccwpck_require__(3292);
5118
+ // EXTERNAL MODULE: ./dist/bin/tools/fs.existsAsync.js
5119
+ var fs_existsAsync = __nccwpck_require__(3765);
5130
5120
  ;// CONCATENATED MODULE: ./dist/bin/shared/generateKcGenTs.js
5131
5121
 
5132
5122
 
5133
5123
 
5134
5124
 
5125
+
5135
5126
  (0,assert.assert)();
5136
5127
  async function generateKcGenTs(params) {
5137
5128
  const { buildContext } = params;
5138
5129
  const { themeSrcDirPath } = getThemeSrcDirPath({
5139
5130
  projectDirPath: buildContext.projectDirPath
5140
5131
  });
5141
- await promises_.writeFile((0,external_path_.join)(themeSrcDirPath, "kc.gen.ts"), Buffer.from([
5132
+ const filePath = (0,external_path_.join)(themeSrcDirPath, "kc.gen.ts");
5133
+ const currentContent = (await (0,fs_existsAsync/* existsAsync */.o)(filePath))
5134
+ ? await promises_.readFile(filePath)
5135
+ : undefined;
5136
+ const newContent = Buffer.from([
5142
5137
  `/* prettier-ignore-start */`,
5143
5138
  ``,
5144
5139
  `/* eslint-disable */`,
@@ -5160,7 +5155,11 @@ async function generateKcGenTs(params) {
5160
5155
  `export const kcEnvDefaults: Record<KcEnvName, string> = ${JSON.stringify(Object.fromEntries(buildContext.environmentVariables.map(({ name, default: defaultValue }) => [name, defaultValue])), null, 2)};`,
5161
5156
  ``,
5162
5157
  `/* prettier-ignore-end */`
5163
- ].join("\n"), "utf8"));
5158
+ ].join("\n"), "utf8");
5159
+ if (currentContent !== undefined && currentContent.equals(newContent)) {
5160
+ return;
5161
+ }
5162
+ await promises_.writeFile(filePath, newContent);
5164
5163
  }
5165
5164
  //# sourceMappingURL=generateKcGenTs.js.map
5166
5165
 
@@ -5291,6 +5290,31 @@ function crawl(params) {
5291
5290
 
5292
5291
  /***/ }),
5293
5292
 
5293
+ /***/ 3765:
5294
+ /***/ ((__unused_webpack_module, __webpack_exports__, __nccwpck_require__) => {
5295
+
5296
+ "use strict";
5297
+ /* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
5298
+ /* harmony export */ "o": () => (/* binding */ existsAsync)
5299
+ /* harmony export */ });
5300
+ /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(3292);
5301
+ /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_0__);
5302
+
5303
+ async function existsAsync(path) {
5304
+ try {
5305
+ await fs_promises__WEBPACK_IMPORTED_MODULE_0__.stat(path);
5306
+ return true;
5307
+ }
5308
+ catch (error) {
5309
+ if (error.code === "ENOENT")
5310
+ return false;
5311
+ throw error;
5312
+ }
5313
+ }
5314
+ //# sourceMappingURL=fs.existsAsync.js.map
5315
+
5316
+ /***/ }),
5317
+
5294
5318
  /***/ 8699:
5295
5319
  /***/ ((__unused_webpack_module, __webpack_exports__, __nccwpck_require__) => {
5296
5320
 
@@ -5382,7 +5406,7 @@ const path_1 = __nccwpck_require__(1017);
5382
5406
  const constants_1 = __nccwpck_require__(173);
5383
5407
  const id_1 = __nccwpck_require__(3047);
5384
5408
  const fs_rm_1 = __nccwpck_require__(8699);
5385
- const copyKeycloakResourcesToPublic_1 = __nccwpck_require__(8047);
5409
+ const copyKeycloakResourcesToPublic_1 = __nccwpck_require__(8272);
5386
5410
  const assert_1 = __nccwpck_require__(8078);
5387
5411
  const buildContext_1 = __nccwpck_require__(8355);
5388
5412
  const magic_string_1 = __importDefault(__nccwpck_require__(5734));
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- import type { PageProps } from "../account/pages/PageProps";
3
- import type { KcContext } from "./KcContext";
4
- export default function Fallback(props: PageProps<KcContext>): JSX.Element;
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fallback.js","sourceRoot":"","sources":["../src/account/Fallback.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,MAAM,EAAe,MAAM,cAAc,CAAC;AAInD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;AAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;AACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;AAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC;AAClE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC;AAClF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC;AAChE,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAAC,CAAC;AAE5F,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAA2B;IACxD,MAAM,EAAE,SAAS,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA9B,aAAsB,CAAQ,CAAC;IAErC,OAAO,CACH,KAAC,QAAQ,cACJ,CAAC,GAAG,EAAE;YACH,QAAQ,SAAS,CAAC,MAAM,EAAE;gBACtB,KAAK,cAAc;oBACf,OAAO,KAAC,QAAQ,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACxD,KAAK,cAAc;oBACf,OAAO,KAAC,QAAQ,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACxD,KAAK,aAAa;oBACd,OAAO,KAAC,OAAO,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACvD,KAAK,UAAU;oBACX,OAAO,KAAC,IAAI,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACpD,KAAK,kBAAkB;oBACnB,OAAO,KAAC,YAAY,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBAC5D,KAAK,SAAS;oBACV,OAAO,KAAC,GAAG,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACnD,KAAK,uBAAuB;oBACxB,OAAO,KAAC,iBAAiB,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;aACpE;YACD,MAAM,CAAkC,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,EAAE,GACG,CACd,CAAC;AACN,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fallback.js","sourceRoot":"","sources":["../src/login/Fallback.tsx"],"names":[],"mappings":"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"}