keycloakify 7.0.0-rc.7 → 7.0.0

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 (143) hide show
  1. package/README.md +6 -0
  2. package/account/Template.js +4 -2
  3. package/account/Template.js.map +1 -1
  4. package/account/TemplateProps.d.ts +2 -1
  5. package/account/kcContext/KcContext.d.ts +6 -4
  6. package/account/kcContext/KcContext.js.map +1 -1
  7. package/account/kcContext/getKcContext.js +4 -1
  8. package/account/kcContext/getKcContext.js.map +1 -1
  9. package/account/kcContext/getKcContextFromWindow.d.ts +1 -1
  10. package/account/kcContext/getKcContextFromWindow.js.map +1 -1
  11. package/account/kcContext/kcContextMocks.js +8 -5
  12. package/account/kcContext/kcContextMocks.js.map +1 -1
  13. package/account/lib/useGetClassName.d.ts +7 -0
  14. package/account/lib/useGetClassName.js +11 -0
  15. package/account/lib/useGetClassName.js.map +1 -0
  16. package/account/pages/Account.d.ts +1 -1
  17. package/account/pages/Account.js +5 -6
  18. package/account/pages/Account.js.map +1 -1
  19. package/account/pages/PageProps.d.ts +1 -3
  20. package/account/pages/PageProps.js +1 -7
  21. package/account/pages/PageProps.js.map +1 -1
  22. package/account/pages/Password.d.ts +1 -1
  23. package/account/pages/Password.js +6 -6
  24. package/account/pages/Password.js.map +1 -1
  25. package/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +9 -7
  26. package/bin/keycloakify/keycloakify.js +16 -7
  27. package/bin/keycloakify/keycloakify.js.map +1 -1
  28. package/lib/useGetClassName.d.ts +8 -4
  29. package/lib/useGetClassName.js +10 -6
  30. package/lib/useGetClassName.js.map +1 -1
  31. package/lib/usePrepareTemplate.js +2 -2
  32. package/lib/usePrepareTemplate.js.map +1 -1
  33. package/login/Template.js +2 -6
  34. package/login/Template.js.map +1 -1
  35. package/login/TemplateProps.d.ts +2 -3
  36. package/login/TemplateProps.js +1 -22
  37. package/login/TemplateProps.js.map +1 -1
  38. package/login/kcContext/getKcContext.js +3 -0
  39. package/login/kcContext/getKcContext.js.map +1 -1
  40. package/login/lib/useGetClassName.d.ts +7 -0
  41. package/login/lib/useGetClassName.js +88 -0
  42. package/login/lib/useGetClassName.js.map +1 -0
  43. package/login/pages/Error.d.ts +1 -1
  44. package/login/pages/IdpReviewUserProfile.d.ts +1 -1
  45. package/login/pages/IdpReviewUserProfile.js +2 -3
  46. package/login/pages/IdpReviewUserProfile.js.map +1 -1
  47. package/login/pages/Info.d.ts +1 -1
  48. package/login/pages/Login.d.ts +1 -1
  49. package/login/pages/Login.js +2 -3
  50. package/login/pages/Login.js.map +1 -1
  51. package/login/pages/LoginConfigTotp.d.ts +1 -1
  52. package/login/pages/LoginConfigTotp.js +2 -3
  53. package/login/pages/LoginConfigTotp.js.map +1 -1
  54. package/login/pages/LoginIdpLinkConfirm.d.ts +1 -1
  55. package/login/pages/LoginIdpLinkConfirm.js +2 -3
  56. package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
  57. package/login/pages/LoginIdpLinkEmail.d.ts +1 -1
  58. package/login/pages/LoginOtp.d.ts +1 -1
  59. package/login/pages/LoginOtp.js +2 -3
  60. package/login/pages/LoginOtp.js.map +1 -1
  61. package/login/pages/LoginPageExpired.d.ts +1 -1
  62. package/login/pages/LoginPassword.d.ts +1 -1
  63. package/login/pages/LoginPassword.js +2 -3
  64. package/login/pages/LoginPassword.js.map +1 -1
  65. package/login/pages/LoginResetPassword.d.ts +1 -1
  66. package/login/pages/LoginResetPassword.js +2 -3
  67. package/login/pages/LoginResetPassword.js.map +1 -1
  68. package/login/pages/LoginUpdatePassword.d.ts +1 -1
  69. package/login/pages/LoginUpdatePassword.js +2 -3
  70. package/login/pages/LoginUpdatePassword.js.map +1 -1
  71. package/login/pages/LoginUpdateProfile.d.ts +1 -1
  72. package/login/pages/LoginUpdateProfile.js +2 -3
  73. package/login/pages/LoginUpdateProfile.js.map +1 -1
  74. package/login/pages/LoginUsername.d.ts +1 -1
  75. package/login/pages/LoginUsername.js +2 -3
  76. package/login/pages/LoginUsername.js.map +1 -1
  77. package/login/pages/LoginVerifyEmail.d.ts +1 -1
  78. package/login/pages/LogoutConfirm.d.ts +1 -1
  79. package/login/pages/LogoutConfirm.js +2 -3
  80. package/login/pages/LogoutConfirm.js.map +1 -1
  81. package/login/pages/PageProps.d.ts +2 -4
  82. package/login/pages/PageProps.js +1 -20
  83. package/login/pages/PageProps.js.map +1 -1
  84. package/login/pages/Register.d.ts +1 -1
  85. package/login/pages/Register.js +2 -3
  86. package/login/pages/Register.js.map +1 -1
  87. package/login/pages/RegisterUserProfile.d.ts +1 -1
  88. package/login/pages/RegisterUserProfile.js +2 -3
  89. package/login/pages/RegisterUserProfile.js.map +1 -1
  90. package/login/pages/Terms.d.ts +1 -1
  91. package/login/pages/Terms.js +2 -3
  92. package/login/pages/Terms.js.map +1 -1
  93. package/login/pages/UpdateUserProfile.d.ts +1 -1
  94. package/login/pages/UpdateUserProfile.js +2 -3
  95. package/login/pages/UpdateUserProfile.js.map +1 -1
  96. package/login/pages/WebauthnAuthenticate.d.ts +1 -1
  97. package/login/pages/WebauthnAuthenticate.js +2 -6
  98. package/login/pages/WebauthnAuthenticate.js.map +1 -1
  99. package/login/pages/shared/UserProfileCommons.d.ts +1 -1
  100. package/package.json +9 -1
  101. package/src/account/Template.tsx +5 -2
  102. package/src/account/TemplateProps.ts +3 -1
  103. package/src/account/kcContext/KcContext.ts +6 -4
  104. package/src/account/kcContext/getKcContext.ts +5 -1
  105. package/src/account/kcContext/getKcContextFromWindow.ts +1 -1
  106. package/src/account/kcContext/kcContextMocks.ts +9 -7
  107. package/src/account/lib/useGetClassName.ts +12 -0
  108. package/src/account/pages/Account.tsx +12 -9
  109. package/src/account/pages/PageProps.ts +1 -11
  110. package/src/account/pages/Password.tsx +11 -8
  111. package/src/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +9 -7
  112. package/src/bin/keycloakify/keycloakify.ts +25 -13
  113. package/src/lib/useGetClassName.ts +12 -9
  114. package/src/lib/usePrepareTemplate.ts +2 -2
  115. package/src/login/Template.tsx +3 -6
  116. package/src/login/TemplateProps.ts +56 -26
  117. package/src/login/kcContext/getKcContext.ts +4 -0
  118. package/src/login/lib/useGetClassName.ts +100 -0
  119. package/src/login/pages/Error.tsx +1 -1
  120. package/src/login/pages/IdpReviewUserProfile.tsx +3 -3
  121. package/src/login/pages/Info.tsx +1 -1
  122. package/src/login/pages/Login.tsx +3 -3
  123. package/src/login/pages/LoginConfigTotp.tsx +3 -3
  124. package/src/login/pages/LoginIdpLinkConfirm.tsx +3 -3
  125. package/src/login/pages/LoginIdpLinkEmail.tsx +1 -1
  126. package/src/login/pages/LoginOtp.tsx +3 -3
  127. package/src/login/pages/LoginPageExpired.tsx +1 -1
  128. package/src/login/pages/LoginPassword.tsx +3 -3
  129. package/src/login/pages/LoginResetPassword.tsx +3 -3
  130. package/src/login/pages/LoginUpdatePassword.tsx +3 -3
  131. package/src/login/pages/LoginUpdateProfile.tsx +3 -3
  132. package/src/login/pages/LoginUsername.tsx +3 -3
  133. package/src/login/pages/LoginVerifyEmail.tsx +1 -1
  134. package/src/login/pages/LogoutConfirm.tsx +3 -3
  135. package/src/login/pages/PageProps.ts +2 -135
  136. package/src/login/pages/Register.tsx +3 -3
  137. package/src/login/pages/RegisterUserProfile.tsx +3 -3
  138. package/src/login/pages/Terms.tsx +3 -3
  139. package/src/login/pages/UpdateUserProfile.tsx +3 -3
  140. package/src/login/pages/WebauthnAuthenticate.tsx +3 -6
  141. package/src/login/pages/shared/UserProfileCommons.tsx +1 -1
  142. package/src/tools/AndByDiscriminatingKey.ts +5 -1
  143. package/tools/AndByDiscriminatingKey.d.ts +1 -1
@@ -2,8 +2,8 @@ import { useState } from "react";
2
2
  import { clsx } from "keycloakify/tools/clsx";
3
3
  import { useConstCallback } from "keycloakify/tools/useConstCallback";
4
4
  import type { FormEventHandler } from "react";
5
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
6
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
5
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
6
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
7
7
  import type { KcContext } from "../kcContext";
8
8
  import type { I18n } from "../i18n";
9
9
 
@@ -11,7 +11,7 @@ export default function LoginPassword(props: PageProps<Extract<KcContext, { "pag
11
11
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
12
12
 
13
13
  const { getClassName } = useGetClassName({
14
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
14
+ doUseDefaultCss,
15
15
  classes
16
16
  });
17
17
 
@@ -1,6 +1,6 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
3
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
2
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
3
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
4
4
  import type { KcContext } from "../kcContext";
5
5
  import type { I18n } from "../i18n";
6
6
 
@@ -8,7 +8,7 @@ export default function LoginResetPassword(props: PageProps<Extract<KcContext, {
8
8
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
9
9
 
10
10
  const { getClassName } = useGetClassName({
11
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
11
+ doUseDefaultCss,
12
12
  classes
13
13
  });
14
14
 
@@ -1,6 +1,6 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
3
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
2
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
3
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
4
4
  import type { KcContext } from "../kcContext";
5
5
  import type { I18n } from "../i18n";
6
6
 
@@ -8,7 +8,7 @@ export default function LoginUpdatePassword(props: PageProps<Extract<KcContext,
8
8
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
9
9
 
10
10
  const { getClassName } = useGetClassName({
11
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
11
+ doUseDefaultCss,
12
12
  classes
13
13
  });
14
14
 
@@ -1,6 +1,6 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
3
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
2
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
3
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
4
4
  import type { KcContext } from "../kcContext";
5
5
  import type { I18n } from "../i18n";
6
6
 
@@ -8,7 +8,7 @@ export default function LoginUpdateProfile(props: PageProps<Extract<KcContext, {
8
8
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
9
9
 
10
10
  const { getClassName } = useGetClassName({
11
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
11
+ doUseDefaultCss,
12
12
  classes
13
13
  });
14
14
 
@@ -2,8 +2,8 @@ import type { FormEventHandler } from "react";
2
2
  import { useState } from "react";
3
3
  import { clsx } from "keycloakify/tools/clsx";
4
4
  import { useConstCallback } from "keycloakify/tools/useConstCallback";
5
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
6
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
5
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
6
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
7
7
  import type { KcContext } from "../kcContext";
8
8
  import type { I18n } from "../i18n";
9
9
 
@@ -11,7 +11,7 @@ export default function LoginUsername(props: PageProps<Extract<KcContext, { page
11
11
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
12
12
 
13
13
  const { getClassName } = useGetClassName({
14
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
14
+ doUseDefaultCss,
15
15
  classes
16
16
  });
17
17
 
@@ -1,4 +1,4 @@
1
- import { type PageProps } from "keycloakify/login/pages/PageProps";
1
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
2
2
  import type { KcContext } from "../kcContext";
3
3
  import type { I18n } from "../i18n";
4
4
 
@@ -1,6 +1,6 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
3
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
2
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
3
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
4
4
  import type { KcContext } from "../kcContext";
5
5
  import type { I18n } from "../i18n";
6
6
 
@@ -8,7 +8,7 @@ export default function LogoutConfirm(props: PageProps<Extract<KcContext, { page
8
8
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
9
9
 
10
10
  const { getClassName } = useGetClassName({
11
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
11
+ doUseDefaultCss,
12
12
  classes
13
13
  });
14
14
 
@@ -1,144 +1,11 @@
1
1
  import type { LazyExoticComponent } from "react";
2
2
  import type { I18n } from "keycloakify/login/i18n";
3
- import { type TemplateProps, type TemplateClassKey, defaultTemplateClasses } from "keycloakify/login/TemplateProps";
3
+ import { type TemplateProps, type ClassKey } from "keycloakify/login/TemplateProps";
4
4
 
5
5
  export type PageProps<KcContext, I18nExtended extends I18n> = {
6
6
  Template: LazyExoticComponent<(props: TemplateProps<any, any>) => JSX.Element | null>;
7
7
  kcContext: KcContext;
8
8
  i18n: I18nExtended;
9
9
  doUseDefaultCss: boolean;
10
- classes?: Partial<Record<TemplateClassKey | ClassKey, string>>;
11
- };
12
-
13
- export type ClassKey =
14
- | TemplateClassKey
15
- | "kcLogoClass"
16
- | "kcContainerClass"
17
- | "kcContentClass"
18
- | "kcFeedbackAreaClass"
19
- | "kcLocaleClass"
20
- | "kcAlertIconClasserror"
21
- | "kcFormAreaClass"
22
- | "kcFormSocialAccountListClass"
23
- | "kcFormSocialAccountDoubleListClass"
24
- | "kcFormSocialAccountListLinkClass"
25
- | "kcWebAuthnKeyIcon"
26
- | "kcWebAuthnDefaultIcon"
27
- | "kcFormClass"
28
- | "kcFormGroupErrorClass"
29
- | "kcLabelClass"
30
- | "kcInputClass"
31
- | "kcInputErrorMessageClass"
32
- | "kcInputWrapperClass"
33
- | "kcFormOptionsClass"
34
- | "kcFormButtonsClass"
35
- | "kcFormSettingClass"
36
- | "kcTextareaClass"
37
- | "kcInfoAreaClass"
38
- | "kcFormGroupHeader"
39
- | "kcButtonClass"
40
- | "kcButtonPrimaryClass"
41
- | "kcButtonDefaultClass"
42
- | "kcButtonLargeClass"
43
- | "kcButtonBlockClass"
44
- | "kcInputLargeClass"
45
- | "kcSrOnlyClass"
46
- | "kcSelectAuthListClass"
47
- | "kcSelectAuthListItemClass"
48
- | "kcSelectAuthListItemFillClass"
49
- | "kcSelectAuthListItemInfoClass"
50
- | "kcSelectAuthListItemLeftClass"
51
- | "kcSelectAuthListItemBodyClass"
52
- | "kcSelectAuthListItemDescriptionClass"
53
- | "kcSelectAuthListItemHeadingClass"
54
- | "kcSelectAuthListItemHelpTextClass"
55
- | "kcSelectAuthListItemIconPropertyClass"
56
- | "kcSelectAuthListItemIconClass"
57
- | "kcSelectAuthListItemTitle"
58
- | "kcAuthenticatorDefaultClass"
59
- | "kcAuthenticatorPasswordClass"
60
- | "kcAuthenticatorOTPClass"
61
- | "kcAuthenticatorWebAuthnClass"
62
- | "kcAuthenticatorWebAuthnPasswordlessClass"
63
- | "kcSelectOTPListClass"
64
- | "kcSelectOTPListItemClass"
65
- | "kcAuthenticatorOtpCircleClass"
66
- | "kcSelectOTPItemHeadingClass"
67
- | "kcFormOptionsWrapperClass";
68
-
69
- export const defaultClasses: Record<ClassKey, string | undefined> = {
70
- ...defaultTemplateClasses,
71
-
72
- "kcLogoClass": "login-pf-brand",
73
- "kcContainerClass": "container-fluid",
74
- "kcContentClass": "col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3 col-lg-6 col-lg-offset-3",
75
- "kcFeedbackAreaClass": "col-md-12",
76
- "kcLocaleClass": "col-xs-12 col-sm-1",
77
- "kcAlertIconClasserror": "pficon pficon-error-circle-o",
78
-
79
- "kcFormAreaClass": "col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-8 col-lg-offset-2",
80
- "kcFormSocialAccountListClass": "login-pf-social list-unstyled login-pf-social-all",
81
- "kcFormSocialAccountDoubleListClass": "login-pf-social-double-col",
82
- "kcFormSocialAccountListLinkClass": "login-pf-social-link",
83
- "kcWebAuthnKeyIcon": "pficon pficon-key",
84
- "kcWebAuthnDefaultIcon": "pficon pficon-key",
85
-
86
- "kcFormClass": "form-horizontal",
87
- "kcFormGroupErrorClass": "has-error",
88
- "kcLabelClass": "control-label",
89
- "kcInputClass": "form-control",
90
- "kcInputErrorMessageClass": "pf-c-form__helper-text pf-m-error required kc-feedback-text",
91
- "kcInputWrapperClass": "col-xs-12 col-sm-12 col-md-12 col-lg-12",
92
- "kcFormOptionsClass": "col-xs-12 col-sm-12 col-md-12 col-lg-12",
93
- "kcFormButtonsClass": "col-xs-12 col-sm-12 col-md-12 col-lg-12",
94
- "kcFormSettingClass": "login-pf-settings",
95
- "kcTextareaClass": "form-control",
96
-
97
- "kcInfoAreaClass": "col-xs-12 col-sm-4 col-md-4 col-lg-5 details",
98
-
99
- // user-profile grouping
100
- "kcFormGroupHeader": "pf-c-form__group",
101
-
102
- // css classes for form buttons main class used for all buttons
103
- "kcButtonClass": "btn",
104
- // classes defining priority of the button - primary or default (there is typically only one priority button for the form)
105
- "kcButtonPrimaryClass": "btn-primary",
106
- "kcButtonDefaultClass": "btn-default",
107
- // classes defining size of the button
108
- "kcButtonLargeClass": "btn-lg",
109
- "kcButtonBlockClass": "btn-block",
110
-
111
- // css classes for input
112
- "kcInputLargeClass": "input-lg",
113
-
114
- // css classes for form accessability
115
- "kcSrOnlyClass": "sr-only",
116
-
117
- // css classes for select-authenticator form
118
- "kcSelectAuthListClass": "list-group list-view-pf",
119
- "kcSelectAuthListItemClass": "list-group-item list-view-pf-stacked",
120
- "kcSelectAuthListItemFillClass": "pf-l-split__item pf-m-fill",
121
- "kcSelectAuthListItemIconPropertyClass": "fa-2x select-auth-box-icon-properties",
122
- "kcSelectAuthListItemIconClass": "pf-l-split__item select-auth-box-icon",
123
- "kcSelectAuthListItemTitle": "select-auth-box-paragraph",
124
- "kcSelectAuthListItemInfoClass": "list-view-pf-main-info",
125
- "kcSelectAuthListItemLeftClass": "list-view-pf-left",
126
- "kcSelectAuthListItemBodyClass": "list-view-pf-body",
127
- "kcSelectAuthListItemDescriptionClass": "list-view-pf-description",
128
- "kcSelectAuthListItemHeadingClass": "list-group-item-heading",
129
- "kcSelectAuthListItemHelpTextClass": "list-group-item-text",
130
-
131
- // css classes for the authenticators
132
- "kcAuthenticatorDefaultClass": "fa list-view-pf-icon-lg",
133
- "kcAuthenticatorPasswordClass": "fa fa-unlock list-view-pf-icon-lg",
134
- "kcAuthenticatorOTPClass": "fa fa-mobile list-view-pf-icon-lg",
135
- "kcAuthenticatorWebAuthnClass": "fa fa-key list-view-pf-icon-lg",
136
- "kcAuthenticatorWebAuthnPasswordlessClass": "fa fa-key list-view-pf-icon-lg",
137
-
138
- //css classes for the OTP Login Form
139
- "kcSelectOTPListClass": "card-pf card-pf-view card-pf-view-select card-pf-view-single-select",
140
- "kcSelectOTPListItemClass": "card-pf-body card-pf-top-element",
141
- "kcAuthenticatorOtpCircleClass": "fa fa-mobile card-pf-icon-circle",
142
- "kcSelectOTPItemHeadingClass": "card-pf-title text-center",
143
- "kcFormOptionsWrapperClass": undefined
10
+ classes?: Partial<Record<ClassKey, string>>;
144
11
  };
@@ -1,6 +1,6 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
3
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
2
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
3
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
4
4
  import type { KcContext } from "../kcContext";
5
5
  import type { I18n } from "../i18n";
6
6
 
@@ -8,7 +8,7 @@ export default function Register(props: PageProps<Extract<KcContext, { pageId: "
8
8
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
9
9
 
10
10
  const { getClassName } = useGetClassName({
11
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
11
+ doUseDefaultCss,
12
12
  classes
13
13
  });
14
14
 
@@ -1,8 +1,8 @@
1
1
  import { useState } from "react";
2
2
  import { clsx } from "keycloakify/tools/clsx";
3
3
  import { UserProfileFormFields } from "./shared/UserProfileCommons";
4
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
5
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
4
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
5
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
6
6
  import type { KcContext } from "../kcContext";
7
7
  import type { I18n } from "../i18n";
8
8
 
@@ -10,7 +10,7 @@ export default function RegisterUserProfile(props: PageProps<Extract<KcContext,
10
10
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
11
11
 
12
12
  const { getClassName } = useGetClassName({
13
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
13
+ doUseDefaultCss,
14
14
  classes
15
15
  });
16
16
 
@@ -1,8 +1,8 @@
1
1
  import { clsx } from "keycloakify/tools/clsx";
2
2
  import { useRerenderOnStateChange } from "evt/hooks";
3
3
  import { Markdown } from "keycloakify/tools/Markdown";
4
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
5
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
4
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
5
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
6
6
  import { evtTermMarkdown } from "keycloakify/login/lib/useDownloadTerms";
7
7
  import type { KcContext } from "../kcContext";
8
8
  import type { I18n } from "../i18n";
@@ -11,7 +11,7 @@ export default function Terms(props: PageProps<Extract<KcContext, { pageId: "ter
11
11
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
12
12
 
13
13
  const { getClassName } = useGetClassName({
14
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
14
+ doUseDefaultCss,
15
15
  classes
16
16
  });
17
17
 
@@ -1,8 +1,8 @@
1
1
  import { useState } from "react";
2
2
  import { clsx } from "keycloakify/tools/clsx";
3
3
  import { UserProfileFormFields } from "keycloakify/login/pages/shared/UserProfileCommons";
4
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
5
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
4
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
5
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
6
6
  import type { KcContext } from "../kcContext";
7
7
  import type { I18n } from "../i18n";
8
8
 
@@ -10,7 +10,7 @@ export default function UpdateUserProfile(props: PageProps<Extract<KcContext, {
10
10
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
11
11
 
12
12
  const { getClassName } = useGetClassName({
13
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
13
+ doUseDefaultCss,
14
14
  classes
15
15
  });
16
16
 
@@ -3,18 +3,15 @@ import { clsx } from "keycloakify/tools/clsx";
3
3
  import type { MessageKey } from "keycloakify/login/i18n/i18n";
4
4
  import { base64url } from "rfc4648";
5
5
  import { useConstCallback } from "keycloakify/tools/useConstCallback";
6
- import { type PageProps, defaultClasses } from "keycloakify/login/pages/PageProps";
7
- import { useGetClassName } from "keycloakify/lib/useGetClassName";
6
+ import type { PageProps } from "keycloakify/login/pages/PageProps";
7
+ import { useGetClassName } from "keycloakify/login/lib/useGetClassName";
8
8
  import type { KcContext } from "../kcContext";
9
9
  import type { I18n } from "../i18n";
10
10
 
11
11
  export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext, { pageId: "webauthn-authenticate.ftl" }>, I18n>) {
12
12
  const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
13
13
 
14
- const { getClassName } = useGetClassName({
15
- "defaultClasses": !doUseDefaultCss ? undefined : defaultClasses,
16
- classes
17
- });
14
+ const { getClassName } = useGetClassName({ doUseDefaultCss, classes });
18
15
 
19
16
  const { url } = kcContext;
20
17
 
@@ -1,5 +1,5 @@
1
1
  import { useEffect, Fragment } from "react";
2
- import type { ClassKey } from "keycloakify/login/pages/PageProps";
2
+ import type { ClassKey } from "keycloakify/login/TemplateProps";
3
3
  import { clsx } from "keycloakify/tools/clsx";
4
4
  import { useFormValidation } from "keycloakify/login/lib/useFormValidation";
5
5
  import type { Attribute } from "keycloakify/login/kcContext/KcContext";
@@ -10,7 +10,11 @@ export declare namespace AndByDiscriminatingKey {
10
10
  U1,
11
11
  U1Again extends Record<DiscriminatingKey, string>,
12
12
  U2 extends Record<DiscriminatingKey, string>
13
- > = U1 extends Pick<U2, DiscriminatingKey> ? Tf2<DiscriminatingKey, U1, U2, U1Again> : U1;
13
+ > = U1 extends Pick<U2, DiscriminatingKey>
14
+ ? Tf2<DiscriminatingKey, U1, U2, U1Again>
15
+ : U1Again[DiscriminatingKey] & U2[DiscriminatingKey] extends never
16
+ ? U1 | U2
17
+ : U1;
14
18
 
15
19
  export type Tf2<
16
20
  DiscriminatingKey extends string,
@@ -1,5 +1,5 @@
1
1
  export type AndByDiscriminatingKey<DiscriminatingKey extends string, U1 extends Record<DiscriminatingKey, string>, U2 extends Record<DiscriminatingKey, string>> = AndByDiscriminatingKey.Tf1<DiscriminatingKey, U1, U1, U2>;
2
2
  export declare namespace AndByDiscriminatingKey {
3
- type Tf1<DiscriminatingKey extends string, U1, U1Again extends Record<DiscriminatingKey, string>, U2 extends Record<DiscriminatingKey, string>> = U1 extends Pick<U2, DiscriminatingKey> ? Tf2<DiscriminatingKey, U1, U2, U1Again> : U1;
3
+ type Tf1<DiscriminatingKey extends string, U1, U1Again extends Record<DiscriminatingKey, string>, U2 extends Record<DiscriminatingKey, string>> = U1 extends Pick<U2, DiscriminatingKey> ? Tf2<DiscriminatingKey, U1, U2, U1Again> : U1Again[DiscriminatingKey] & U2[DiscriminatingKey] extends never ? U1 | U2 : U1;
4
4
  type Tf2<DiscriminatingKey extends string, SingletonU1 extends Record<DiscriminatingKey, string>, U2, U1 extends Record<DiscriminatingKey, string>> = U2 extends Pick<SingletonU1, DiscriminatingKey> ? U2 & SingletonU1 : U2 extends Pick<U1, DiscriminatingKey> ? never : U2;
5
5
  }