@oussemasahbeni/keycloakify-login-shadcn 250004.0.2 → 250004.0.7

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 (174) hide show
  1. package/keycloak-theme/components/ui/alert.tsx +4 -4
  2. package/keycloak-theme/components/ui/dropdown-menu.tsx +5 -5
  3. package/keycloak-theme/components/ui/input.tsx +1 -1
  4. package/keycloak-theme/components/ui/select.tsx +4 -4
  5. package/keycloak-theme/components/ui/separator.tsx +1 -1
  6. package/keycloak-theme/login/KcContext.ts +23 -19
  7. package/keycloak-theme/login/KcPage.tsx +47 -60
  8. package/keycloak-theme/login/assets/img/auth-logo.svg +100 -100
  9. package/keycloak-theme/login/assets/img/shape.svg +71 -71
  10. package/keycloak-theme/login/components/LogoutOtherSessions.tsx +26 -26
  11. package/keycloak-theme/login/components/PasswordWrapper.tsx +35 -35
  12. package/keycloak-theme/login/components/Template/Template.tsx +227 -226
  13. package/keycloak-theme/login/components/Template/index.ts +1 -1
  14. package/keycloak-theme/login/components/Template/useInitializeTemplate.ts +61 -61
  15. package/keycloak-theme/login/components/UserProfileFormFields/AddRemoveButtonsMultiValuedAttribute.tsx +61 -61
  16. package/keycloak-theme/login/components/UserProfileFormFields/DO_MAKE_USER_CONFIRM_PASSWORD.ts +2 -2
  17. package/keycloak-theme/login/components/UserProfileFormFields/FieldErrors.tsx +28 -28
  18. package/keycloak-theme/login/components/UserProfileFormFields/GroupLabel.tsx +70 -70
  19. package/keycloak-theme/login/components/UserProfileFormFields/InputFieldByType.tsx +58 -58
  20. package/keycloak-theme/login/components/UserProfileFormFields/InputTag.tsx +116 -116
  21. package/keycloak-theme/login/components/UserProfileFormFields/InputTagSelects.tsx +135 -135
  22. package/keycloak-theme/login/components/UserProfileFormFields/SelectTag.tsx +114 -114
  23. package/keycloak-theme/login/components/UserProfileFormFields/TextareaTag.tsx +42 -42
  24. package/keycloak-theme/login/components/UserProfileFormFields/UserProfileFormFields.tsx +127 -127
  25. package/keycloak-theme/login/components/UserProfileFormFields/index.ts +1 -1
  26. package/keycloak-theme/login/i18n.ts +47 -51
  27. package/keycloak-theme/login/mocks/getKcContextMock.ts +22 -18
  28. package/keycloak-theme/login/pages/PageIndex.tsx +134 -134
  29. package/keycloak-theme/login/pages/code/Page.stories.tsx +62 -78
  30. package/keycloak-theme/login/pages/code/Page.tsx +89 -89
  31. package/keycloak-theme/login/pages/code/index.ts +3 -3
  32. package/keycloak-theme/login/pages/delete-account-confirm/Page.stories.tsx +39 -46
  33. package/keycloak-theme/login/pages/delete-account-confirm/Page.tsx +63 -63
  34. package/keycloak-theme/login/pages/delete-account-confirm/index.ts +3 -3
  35. package/keycloak-theme/login/pages/delete-credential/Page.stories.tsx +26 -30
  36. package/keycloak-theme/login/pages/delete-credential/Page.tsx +51 -51
  37. package/keycloak-theme/login/pages/delete-credential/index.ts +3 -3
  38. package/keycloak-theme/login/pages/error/Page.stories.tsx +47 -58
  39. package/keycloak-theme/login/pages/error/Page.tsx +42 -42
  40. package/keycloak-theme/login/pages/error/index.ts +3 -3
  41. package/keycloak-theme/login/pages/frontchannel-logout/Page.stories.tsx +25 -32
  42. package/keycloak-theme/login/pages/frontchannel-logout/Page.tsx +84 -84
  43. package/keycloak-theme/login/pages/frontchannel-logout/index.ts +3 -3
  44. package/keycloak-theme/login/pages/idp-review-user-profile/Page.stories.tsx +46 -58
  45. package/keycloak-theme/login/pages/idp-review-user-profile/Page.tsx +52 -52
  46. package/keycloak-theme/login/pages/idp-review-user-profile/index.ts +3 -3
  47. package/keycloak-theme/login/pages/info/Page.stories.tsx +50 -60
  48. package/keycloak-theme/login/pages/info/Page.tsx +92 -92
  49. package/keycloak-theme/login/pages/link-idp-action/Page.stories.tsx +32 -16
  50. package/keycloak-theme/login/pages/link-idp-action/Page.tsx +43 -43
  51. package/keycloak-theme/login/pages/link-idp-action/index.ts +3 -3
  52. package/keycloak-theme/login/pages/login/Form.tsx +242 -242
  53. package/keycloak-theme/login/pages/login/Info.tsx +29 -29
  54. package/keycloak-theme/login/pages/login/Page.stories.tsx +345 -365
  55. package/keycloak-theme/login/pages/login/Page.tsx +44 -44
  56. package/keycloak-theme/login/pages/login/SocialProviders.tsx +107 -107
  57. package/keycloak-theme/login/pages/login/index.ts +3 -3
  58. package/keycloak-theme/login/pages/login/providers/apple.svg +3 -3
  59. package/keycloak-theme/login/pages/login/providers/bitbucket.svg +11 -11
  60. package/keycloak-theme/login/pages/login/providers/discord.svg +4 -4
  61. package/keycloak-theme/login/pages/login/providers/facebook.svg +5 -5
  62. package/keycloak-theme/login/pages/login/providers/github.svg +3 -3
  63. package/keycloak-theme/login/pages/login/providers/gitlab.svg +7 -7
  64. package/keycloak-theme/login/pages/login/providers/google.svg +7 -7
  65. package/keycloak-theme/login/pages/login/providers/instagram.svg +31 -31
  66. package/keycloak-theme/login/pages/login/providers/linkedin.svg +3 -3
  67. package/keycloak-theme/login/pages/login/providers/microsoft.svg +6 -6
  68. package/keycloak-theme/login/pages/login/providers/oidc.svg +5 -5
  69. package/keycloak-theme/login/pages/login/providers/openshift.svg +7 -7
  70. package/keycloak-theme/login/pages/login/providers/paypal.svg +6 -6
  71. package/keycloak-theme/login/pages/login/providers/slack.svg +11 -11
  72. package/keycloak-theme/login/pages/login/providers/stackoverflow.svg +5 -5
  73. package/keycloak-theme/login/pages/login/providers/x.svg +3 -3
  74. package/keycloak-theme/login/pages/login/useProviderLogos.tsx +39 -39
  75. package/keycloak-theme/login/pages/login/useScript.tsx +62 -62
  76. package/keycloak-theme/login/pages/login-config-totp/Page.stories.tsx +45 -59
  77. package/keycloak-theme/login/pages/login-config-totp/Page.tsx +240 -240
  78. package/keycloak-theme/login/pages/login-config-totp/index.ts +3 -3
  79. package/keycloak-theme/login/pages/login-idp-link-confirm/Page.stories.tsx +30 -34
  80. package/keycloak-theme/login/pages/login-idp-link-confirm/Page.tsx +43 -43
  81. package/keycloak-theme/login/pages/login-idp-link-confirm/index.ts +3 -3
  82. package/keycloak-theme/login/pages/login-idp-link-confirm-override/Page.stories.tsx +16 -22
  83. package/keycloak-theme/login/pages/login-idp-link-confirm-override/Page.tsx +47 -47
  84. package/keycloak-theme/login/pages/login-idp-link-confirm-override/index.ts +3 -3
  85. package/keycloak-theme/login/pages/login-idp-link-email/Page.stories.tsx +54 -62
  86. package/keycloak-theme/login/pages/login-idp-link-email/Page.tsx +54 -54
  87. package/keycloak-theme/login/pages/login-idp-link-email/index.ts +3 -3
  88. package/keycloak-theme/login/pages/login-oauth-grant/Page.stories.tsx +39 -45
  89. package/keycloak-theme/login/pages/login-oauth-grant/Page.tsx +126 -126
  90. package/keycloak-theme/login/pages/login-oauth-grant/index.ts +3 -3
  91. package/keycloak-theme/login/pages/login-oauth2-device-verify-user-code/Page.stories.tsx +38 -48
  92. package/keycloak-theme/login/pages/login-oauth2-device-verify-user-code/Page.tsx +58 -58
  93. package/keycloak-theme/login/pages/login-oauth2-device-verify-user-code/index.ts +3 -3
  94. package/keycloak-theme/login/pages/login-otp/Page.stories.tsx +82 -96
  95. package/keycloak-theme/login/pages/login-otp/Page.tsx +108 -108
  96. package/keycloak-theme/login/pages/login-otp/index.ts +3 -3
  97. package/keycloak-theme/login/pages/login-page-expired/Page.stories.tsx +28 -36
  98. package/keycloak-theme/login/pages/login-page-expired/Page.tsx +47 -47
  99. package/keycloak-theme/login/pages/login-page-expired/index.ts +3 -3
  100. package/keycloak-theme/login/pages/login-passkeys-conditional-authenticate/Page.stories.tsx +20 -0
  101. package/keycloak-theme/login/pages/login-passkeys-conditional-authenticate/Page.tsx +233 -233
  102. package/keycloak-theme/login/pages/login-passkeys-conditional-authenticate/index.ts +3 -3
  103. package/keycloak-theme/login/pages/login-passkeys-conditional-authenticate/useScript.tsx +63 -63
  104. package/keycloak-theme/login/pages/login-password/Page.stories.tsx +55 -56
  105. package/keycloak-theme/login/pages/login-password/Page.tsx +149 -149
  106. package/keycloak-theme/login/pages/login-password/index.ts +3 -3
  107. package/keycloak-theme/login/pages/login-password/useScript.tsx +63 -63
  108. package/keycloak-theme/login/pages/login-recovery-authn-code-config/Page.stories.tsx +28 -36
  109. package/keycloak-theme/login/pages/login-recovery-authn-code-config/Page.tsx +181 -181
  110. package/keycloak-theme/login/pages/login-recovery-authn-code-config/index.ts +3 -3
  111. package/keycloak-theme/login/pages/login-recovery-authn-code-config/useScript.tsx +145 -145
  112. package/keycloak-theme/login/pages/login-recovery-authn-code-input/Page.stories.tsx +16 -22
  113. package/keycloak-theme/login/pages/login-recovery-authn-code-input/Page.tsx +70 -70
  114. package/keycloak-theme/login/pages/login-recovery-authn-code-input/index.ts +3 -3
  115. package/keycloak-theme/login/pages/login-reset-otp/Page.stories.tsx +62 -74
  116. package/keycloak-theme/login/pages/login-reset-otp/Page.tsx +86 -86
  117. package/keycloak-theme/login/pages/login-reset-otp/index.ts +3 -3
  118. package/keycloak-theme/login/pages/login-reset-password/Form.tsx +68 -68
  119. package/keycloak-theme/login/pages/login-reset-password/Page.stories.tsx +44 -54
  120. package/keycloak-theme/login/pages/login-reset-password/Page.tsx +27 -27
  121. package/keycloak-theme/login/pages/login-reset-password/index.ts +3 -3
  122. package/keycloak-theme/login/pages/login-update-password/Page.stories.tsx +40 -50
  123. package/keycloak-theme/login/pages/login-update-password/Page.tsx +111 -111
  124. package/keycloak-theme/login/pages/login-update-password/index.ts +3 -3
  125. package/keycloak-theme/login/pages/login-update-profile/Page.stories.tsx +28 -36
  126. package/keycloak-theme/login/pages/login-update-profile/Page.tsx +68 -68
  127. package/keycloak-theme/login/pages/login-update-profile/index.ts +3 -3
  128. package/keycloak-theme/login/pages/login-username/Page.stories.tsx +32 -42
  129. package/keycloak-theme/login/pages/login-username/Page.tsx +246 -246
  130. package/keycloak-theme/login/pages/login-username/index.ts +3 -3
  131. package/keycloak-theme/login/pages/login-username/useScript.tsx +62 -62
  132. package/keycloak-theme/login/pages/login-verify-email/Page.stories.tsx +68 -80
  133. package/keycloak-theme/login/pages/login-verify-email/Page.tsx +38 -38
  134. package/keycloak-theme/login/pages/login-verify-email/index.ts +3 -3
  135. package/keycloak-theme/login/pages/login-x509-info/Page.stories.tsx +29 -37
  136. package/keycloak-theme/login/pages/login-x509-info/Page.tsx +75 -75
  137. package/keycloak-theme/login/pages/login-x509-info/index.ts +3 -3
  138. package/keycloak-theme/login/pages/logout-confirm/Page.stories.tsx +34 -42
  139. package/keycloak-theme/login/pages/logout-confirm/Page.tsx +53 -53
  140. package/keycloak-theme/login/pages/logout-confirm/index.ts +3 -3
  141. package/keycloak-theme/login/pages/register/Form.tsx +106 -106
  142. package/keycloak-theme/login/pages/register/Page.stories.tsx +23 -6
  143. package/keycloak-theme/login/pages/register/Page.tsx +26 -26
  144. package/keycloak-theme/login/pages/register/TermsAcceptance.tsx +56 -56
  145. package/keycloak-theme/login/pages/register/index.ts +3 -3
  146. package/keycloak-theme/login/pages/saml-post-form/Page.stories.tsx +16 -22
  147. package/keycloak-theme/login/pages/saml-post-form/Page.tsx +66 -66
  148. package/keycloak-theme/login/pages/saml-post-form/index.ts +3 -3
  149. package/keycloak-theme/login/pages/select-authenticator/Page.stories.tsx +83 -95
  150. package/keycloak-theme/login/pages/select-authenticator/Page.tsx +100 -100
  151. package/keycloak-theme/login/pages/select-authenticator/index.ts +3 -3
  152. package/keycloak-theme/login/pages/select-organization/Page.stories.tsx +62 -49
  153. package/keycloak-theme/login/pages/select-organization/Page.tsx +126 -126
  154. package/keycloak-theme/login/pages/select-organization/index.ts +3 -3
  155. package/keycloak-theme/login/pages/terms/Page.stories.tsx +15 -0
  156. package/keycloak-theme/login/pages/terms/Page.tsx +51 -51
  157. package/keycloak-theme/login/pages/terms/index.ts +3 -3
  158. package/keycloak-theme/login/pages/update-email/Page.stories.tsx +27 -35
  159. package/keycloak-theme/login/pages/update-email/Page.tsx +62 -62
  160. package/keycloak-theme/login/pages/update-email/index.ts +3 -3
  161. package/keycloak-theme/login/pages/webauthn-authenticate/Page.stories.tsx +112 -126
  162. package/keycloak-theme/login/pages/webauthn-authenticate/Page.tsx +202 -202
  163. package/keycloak-theme/login/pages/webauthn-authenticate/index.ts +3 -3
  164. package/keycloak-theme/login/pages/webauthn-authenticate/useScript.tsx +55 -55
  165. package/keycloak-theme/login/pages/webauthn-error/Page.stories.tsx +54 -66
  166. package/keycloak-theme/login/pages/webauthn-error/Page.tsx +73 -73
  167. package/keycloak-theme/login/pages/webauthn-error/index.ts +3 -3
  168. package/keycloak-theme/login/pages/webauthn-register/Page.stories.tsx +39 -49
  169. package/keycloak-theme/login/pages/webauthn-register/Page.tsx +78 -78
  170. package/keycloak-theme/login/pages/webauthn-register/index.ts +3 -3
  171. package/keycloak-theme/login/pages/webauthn-register/useScript.tsx +62 -62
  172. package/keycloak-theme/login/shared/getColorScheme.ts +45 -0
  173. package/keycloak-theme/login/styleLevelCustomization.tsx +36 -17
  174. package/package.json +6 -5
@@ -1,62 +1,62 @@
1
- import { useInsertScriptTags } from "@keycloakify/login-ui/tools/useInsertScriptTags";
2
- import { waitForElementMountedOnDom } from "@keycloakify/login-ui/tools/waitForElementMountedOnDom";
3
- import { useEffect } from "react";
4
- import { assert } from "tsafe/assert";
5
- import { useKcContext } from "../../KcContext";
6
- import { useI18n } from "../../i18n";
7
-
8
- export function useScript(params: { webAuthnButtonId: string }) {
9
- const { webAuthnButtonId } = params;
10
-
11
- const { kcContext } = useKcContext();
12
- assert(kcContext.pageId === "webauthn-register.ftl");
13
-
14
- const { msgStr, isFetchingTranslations } = useI18n();
15
-
16
- const { insertScriptTags } = useInsertScriptTags({
17
- effectId: "LoginRecoveryAuthnCodeConfig",
18
- scriptTags: [
19
- {
20
- type: "module",
21
- textContent: () => `
22
- import { registerByWebAuthn } from "${import.meta.env.BASE_URL}keycloak-theme/login/js/webauthnRegister.js";
23
- const registerButton = document.getElementById('${webAuthnButtonId}');
24
- registerButton.addEventListener("click", function() {
25
- const input = {
26
- challenge : '${kcContext.challenge}',
27
- userid : '${kcContext.userid}',
28
- username : '${kcContext.username}',
29
- signatureAlgorithms : ${JSON.stringify(kcContext.signatureAlgorithms)},
30
- rpEntityName : ${JSON.stringify(kcContext.rpEntityName)},
31
- rpId : ${JSON.stringify(kcContext.rpId)},
32
- attestationConveyancePreference : ${JSON.stringify(kcContext.attestationConveyancePreference)},
33
- authenticatorAttachment : ${JSON.stringify(kcContext.authenticatorAttachment)},
34
- requireResidentKey : ${JSON.stringify(kcContext.requireResidentKey)},
35
- userVerificationRequirement : ${JSON.stringify(kcContext.userVerificationRequirement)},
36
- createTimeout : ${kcContext.createTimeout},
37
- excludeCredentialIds : ${JSON.stringify(kcContext.excludeCredentialIds)},
38
- initLabel : ${JSON.stringify(msgStr("webauthn-registration-init-label"))},
39
- initLabelPrompt : ${JSON.stringify(msgStr("webauthn-registration-init-label-prompt"))},
40
- errmsg : ${JSON.stringify(msgStr("webauthn-unsupported-browser-text"))}
41
- };
42
- registerByWebAuthn(input);
43
- });
44
- `
45
- }
46
- ]
47
- });
48
-
49
- useEffect(() => {
50
- if (isFetchingTranslations) {
51
- return;
52
- }
53
-
54
- (async () => {
55
- await waitForElementMountedOnDom({
56
- elementId: webAuthnButtonId
57
- });
58
-
59
- insertScriptTags();
60
- })();
61
- }, [isFetchingTranslations]);
62
- }
1
+ import { useInsertScriptTags } from "@keycloakify/login-ui/tools/useInsertScriptTags";
2
+ import { waitForElementMountedOnDom } from "@keycloakify/login-ui/tools/waitForElementMountedOnDom";
3
+ import { useEffect } from "react";
4
+ import { assert } from "tsafe/assert";
5
+ import { useKcContext } from "../../KcContext";
6
+ import { useI18n } from "../../i18n";
7
+
8
+ export function useScript(params: { webAuthnButtonId: string }) {
9
+ const { webAuthnButtonId } = params;
10
+
11
+ const { kcContext } = useKcContext();
12
+ assert(kcContext.pageId === "webauthn-register.ftl");
13
+
14
+ const { msgStr, isFetchingTranslations } = useI18n();
15
+
16
+ const { insertScriptTags } = useInsertScriptTags({
17
+ effectId: "LoginRecoveryAuthnCodeConfig",
18
+ scriptTags: [
19
+ {
20
+ type: "module",
21
+ textContent: () => `
22
+ import { registerByWebAuthn } from "${import.meta.env.BASE_URL}keycloak-theme/login/js/webauthnRegister.js";
23
+ const registerButton = document.getElementById('${webAuthnButtonId}');
24
+ registerButton.addEventListener("click", function() {
25
+ const input = {
26
+ challenge : '${kcContext.challenge}',
27
+ userid : '${kcContext.userid}',
28
+ username : '${kcContext.username}',
29
+ signatureAlgorithms : ${JSON.stringify(kcContext.signatureAlgorithms)},
30
+ rpEntityName : ${JSON.stringify(kcContext.rpEntityName)},
31
+ rpId : ${JSON.stringify(kcContext.rpId)},
32
+ attestationConveyancePreference : ${JSON.stringify(kcContext.attestationConveyancePreference)},
33
+ authenticatorAttachment : ${JSON.stringify(kcContext.authenticatorAttachment)},
34
+ requireResidentKey : ${JSON.stringify(kcContext.requireResidentKey)},
35
+ userVerificationRequirement : ${JSON.stringify(kcContext.userVerificationRequirement)},
36
+ createTimeout : ${kcContext.createTimeout},
37
+ excludeCredentialIds : ${JSON.stringify(kcContext.excludeCredentialIds)},
38
+ initLabel : ${JSON.stringify(msgStr("webauthn-registration-init-label"))},
39
+ initLabelPrompt : ${JSON.stringify(msgStr("webauthn-registration-init-label-prompt"))},
40
+ errmsg : ${JSON.stringify(msgStr("webauthn-unsupported-browser-text"))}
41
+ };
42
+ registerByWebAuthn(input);
43
+ });
44
+ `
45
+ }
46
+ ]
47
+ });
48
+
49
+ useEffect(() => {
50
+ if (isFetchingTranslations) {
51
+ return;
52
+ }
53
+
54
+ (async () => {
55
+ await waitForElementMountedOnDom({
56
+ elementId: webAuthnButtonId
57
+ });
58
+
59
+ insertScriptTags();
60
+ })();
61
+ }, [isFetchingTranslations]);
62
+ }
@@ -0,0 +1,45 @@
1
+ const SESSION_STORAGE_KEY = "kc-color-scheme";
2
+
3
+ export function getTheme(
4
+ kcContextDarkMode: boolean | undefined
5
+ ): "dark" | "light" | "system" {
6
+ from_admin_policy: {
7
+ if (kcContextDarkMode === undefined || kcContextDarkMode === true) {
8
+ break from_admin_policy;
9
+ }
10
+ return "light";
11
+ }
12
+
13
+ from_url: {
14
+ const url = new URL(window.location.href);
15
+
16
+ const value = url.searchParams.get("dark");
17
+
18
+ if (value === null) {
19
+ break from_url;
20
+ }
21
+
22
+ {
23
+ url.searchParams.delete("dark");
24
+ window.history.replaceState({}, "", url.toString());
25
+ }
26
+
27
+ const isDark = value === "true";
28
+
29
+ sessionStorage.setItem(SESSION_STORAGE_KEY, `${isDark}`);
30
+
31
+ return isDark ? "dark" : "light";
32
+ }
33
+
34
+ from_session_storage: {
35
+ const value = sessionStorage.getItem(SESSION_STORAGE_KEY);
36
+
37
+ if (value === null) {
38
+ break from_session_storage;
39
+ }
40
+
41
+ return value === "true" ? "dark" : "light";
42
+ }
43
+
44
+ return "system";
45
+ }
@@ -1,17 +1,36 @@
1
- import type { ClassKey } from "@keycloakify/login-ui/useKcClsx";
2
- import type { ReactNode } from "react";
3
-
4
- type Classes = { [key in ClassKey]?: string };
5
-
6
- type StyleLevelCustomization = {
7
- doUseDefaultCss: boolean;
8
- classes?: Classes;
9
- loadCustomStylesheet?: () => void;
10
- Provider?: (props: { children: ReactNode }) => ReactNode;
11
- };
12
-
13
- export function useStyleLevelCustomization(): StyleLevelCustomization {
14
- return {
15
- doUseDefaultCss: false
16
- };
17
- }
1
+ import { ThemeProvider } from '@/components/theme-provider';
2
+ import type { ClassKey } from "@keycloakify/login-ui/useKcClsx";
3
+ import type { ReactNode } from "react";
4
+ import { useKcContext } from './KcContext';
5
+ import { getTheme } from './shared/getColorScheme';
6
+
7
+ type Classes = { [key in ClassKey]?: string };
8
+
9
+ type StyleLevelCustomization = {
10
+ doUseDefaultCss: boolean;
11
+ classes?: Classes;
12
+ loadCustomStylesheet?: () => void;
13
+ Provider?: (props: { children: ReactNode }) => ReactNode;
14
+ };
15
+
16
+ // eslint-disable-next-line react-refresh/only-export-components
17
+ function Provider(props: { children: ReactNode }) {
18
+ const { children } = props;
19
+
20
+ const { kcContext } = useKcContext();
21
+
22
+
23
+ return (
24
+ <ThemeProvider defaultTheme={getTheme(kcContext.darkMode)}>
25
+ {children}
26
+ </ThemeProvider>
27
+ );
28
+ }
29
+
30
+
31
+ export function useStyleLevelCustomization(): StyleLevelCustomization {
32
+ return {
33
+ doUseDefaultCss: false,
34
+ Provider
35
+ };
36
+ }
package/package.json CHANGED
@@ -1,16 +1,17 @@
1
1
  {
2
2
  "name": "@oussemasahbeni/keycloakify-login-shadcn",
3
- "version": "250004.0.2",
3
+ "version": "250004.0.7",
4
4
  "description": "Keycloakify Shadcn Theme extensions",
5
5
  "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/Oussemasahbeni/keycloakify-shadcn-starter.git"
9
+ },
6
10
  "type": "module",
7
11
  "main": "keycloak-theme/login/index.js",
8
12
  "files": [
9
13
  "keycloak-theme"
10
14
  ],
11
- "dependencies": {
12
- "@keycloakify/login-ui": "~250004.6.5"
13
- },
14
15
  "peerDependencies": {
15
16
  "@radix-ui/react-checkbox": "^1.3.3",
16
17
  "@radix-ui/react-dialog": "^1.1.15",
@@ -22,12 +23,12 @@
22
23
  "@radix-ui/react-separator": "^1.1.8",
23
24
  "@radix-ui/react-slot": "^1.2.4",
24
25
  "@radix-ui/react-tooltip": "^1.2.8",
25
- "@tailwindcss/postcss": "^4.1.18",
26
26
  "@tailwindcss/vite": "^4.1.18",
27
27
  "class-variance-authority": "^0.7.1",
28
28
  "clsx": "^2.1.1",
29
29
  "cmdk": "^1.1.1",
30
30
  "input-otp": "^1.4.2",
31
+ "@keycloakify/login-ui": "~250004.6.5",
31
32
  "lucide-react": "^0.473.0",
32
33
  "react-icons": "^5.5.0",
33
34
  "tailwind-merge": "^2.6.0",