@c15t/react 0.0.1-rc.19 → 0.0.1-rc.21

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 (128) hide show
  1. package/dist/components/consent-manager-dialog/__tests__/styles.spec.cjs +2 -3
  2. package/dist/components/consent-manager-dialog/atoms/dialog-card.cjs +57 -16
  3. package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts +9 -3
  4. package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts.map +1 -1
  5. package/dist/components/consent-manager-dialog/atoms/dialog-card.js +26 -12
  6. package/dist/components/consent-manager-dialog/atoms/overlay.cjs +9 -5
  7. package/dist/components/consent-manager-dialog/atoms/overlay.d.ts.map +1 -1
  8. package/dist/components/consent-manager-dialog/atoms/overlay.js +2 -2
  9. package/dist/components/consent-manager-dialog/consent-manager-dialog.cjs +6 -4
  10. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.cjs +10 -6
  11. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.js +4 -2
  12. package/dist/components/consent-manager-dialog/consent-manager-dialog_module.css +20 -5
  13. package/dist/components/consent-manager-dialog/index.cjs +32 -4
  14. package/dist/components/consent-manager-dialog/theme.cjs +3 -4
  15. package/dist/components/consent-manager-widget/__tests__/styles.spec.cjs +2 -3
  16. package/dist/components/consent-manager-widget/atoms/accordion.cjs +36 -4
  17. package/dist/components/consent-manager-widget/atoms/button.cjs +20 -4
  18. package/dist/components/consent-manager-widget/atoms/footer.cjs +12 -4
  19. package/dist/components/consent-manager-widget/atoms/root.cjs +8 -4
  20. package/dist/components/consent-manager-widget/consent-manager-widget.cjs +10 -18
  21. package/dist/components/consent-manager-widget/consent-manager-widget.d.ts.map +1 -1
  22. package/dist/components/consent-manager-widget/consent-manager-widget.js +4 -14
  23. package/dist/components/consent-manager-widget/consent-manager-widget.module.cjs +10 -9
  24. package/dist/components/consent-manager-widget/consent-manager-widget.module.js +4 -5
  25. package/dist/components/consent-manager-widget/consent-manager-widget_module.css +11 -16
  26. package/dist/components/consent-manager-widget/index.cjs +64 -4
  27. package/dist/components/consent-manager-widget/theme.cjs +3 -4
  28. package/dist/components/consent-manager-widget/types.cjs +3 -4
  29. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.cjs +189 -0
  30. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.d.ts +2 -0
  31. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.d.ts.map +1 -0
  32. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.js +183 -0
  33. package/dist/components/cookie-banner/__tests__/styles.spec.cjs +2 -3
  34. package/dist/components/cookie-banner/atoms/overlay.cjs +11 -7
  35. package/dist/components/cookie-banner/atoms/overlay.js +4 -4
  36. package/dist/components/cookie-banner/atoms/root.cjs +9 -5
  37. package/dist/components/cookie-banner/atoms/root.js +2 -2
  38. package/dist/components/cookie-banner/components.cjs +40 -4
  39. package/dist/components/cookie-banner/cookie-banner.cjs +6 -4
  40. package/dist/components/cookie-banner/cookie-banner.module.cjs +8 -6
  41. package/dist/components/cookie-banner/cookie-banner.module.js +2 -2
  42. package/dist/components/cookie-banner/error-boundary.cjs +6 -4
  43. package/dist/components/cookie-banner/index.cjs +48 -4
  44. package/dist/components/cookie-banner/theme.cjs +3 -4
  45. package/dist/components/shared/libs/polymorphic.cjs +3 -4
  46. package/dist/components/shared/libs/recursive-clone-children.cjs +6 -4
  47. package/dist/components/shared/primitives/box.cjs +7 -5
  48. package/dist/components/shared/primitives/box.d.ts.map +1 -1
  49. package/dist/components/shared/primitives/box.js +2 -2
  50. package/dist/components/shared/primitives/button.cjs +7 -5
  51. package/dist/components/shared/primitives/button.d.ts +2 -102
  52. package/dist/components/shared/primitives/button.d.ts.map +1 -1
  53. package/dist/components/shared/primitives/button.js +2 -2
  54. package/dist/components/shared/primitives/button.types.cjs +3 -4
  55. package/dist/components/shared/ui/accordion/accordion.cjs +19 -5
  56. package/dist/components/shared/ui/accordion/accordion.d.ts.map +1 -1
  57. package/dist/components/shared/ui/accordion/accordion.js +8 -8
  58. package/dist/components/shared/ui/accordion/accordion.module.cjs +9 -7
  59. package/dist/components/shared/ui/accordion/accordion.module.js +3 -3
  60. package/dist/components/shared/ui/accordion/accordion.types.cjs +3 -4
  61. package/dist/components/shared/ui/accordion/accordion_module.css +30 -11
  62. package/dist/components/shared/ui/accordion/index.cjs +3 -4
  63. package/dist/components/shared/ui/button/button.cjs +10 -4
  64. package/dist/components/shared/ui/button/button.d.ts +4 -204
  65. package/dist/components/shared/ui/button/button.d.ts.map +1 -1
  66. package/dist/components/shared/ui/button/button.module.cjs +8 -6
  67. package/dist/components/shared/ui/button/button.module.js +2 -2
  68. package/dist/components/shared/ui/button/button.types.cjs +3 -4
  69. package/dist/components/shared/ui/button/button_module.css +23 -2
  70. package/dist/components/shared/ui/button/index.cjs +3 -4
  71. package/dist/components/shared/ui/icon.cjs +6 -4
  72. package/dist/components/shared/ui/logo.cjs +40 -6
  73. package/dist/components/shared/ui/logo.d.ts +3 -2
  74. package/dist/components/shared/ui/logo.d.ts.map +1 -1
  75. package/dist/components/shared/ui/logo.js +31 -2
  76. package/dist/components/shared/ui/switch/index.cjs +3 -4
  77. package/dist/components/shared/ui/switch/switch.cjs +7 -5
  78. package/dist/components/shared/ui/switch/switch.d.ts.map +1 -1
  79. package/dist/components/shared/ui/switch/switch.js +3 -3
  80. package/dist/components/shared/ui/switch/switch.module.cjs +8 -6
  81. package/dist/components/shared/ui/switch/switch.module.js +2 -2
  82. package/dist/components/shared/ui/switch/switch.types.cjs +3 -4
  83. package/dist/components/shared/ui/switch/switch_module.css +16 -2
  84. package/dist/context/consent-manager-context.cjs +6 -4
  85. package/dist/context/theme-context.cjs +8 -4
  86. package/dist/hooks/__tests__/use-consent-manager.test.cjs +42 -0
  87. package/dist/hooks/__tests__/use-consent-manager.test.d.ts +2 -0
  88. package/dist/hooks/__tests__/use-consent-manager.test.d.ts.map +1 -0
  89. package/dist/hooks/__tests__/use-consent-manager.test.js +36 -0
  90. package/dist/hooks/__tests__/use-styles.test.cjs +76 -0
  91. package/dist/hooks/__tests__/use-styles.test.d.ts +2 -0
  92. package/dist/hooks/__tests__/use-styles.test.d.ts.map +1 -0
  93. package/dist/hooks/__tests__/use-styles.test.js +70 -0
  94. package/dist/hooks/__tests__/use-theme.test.cjs +86 -0
  95. package/dist/hooks/__tests__/use-theme.test.d.ts +2 -0
  96. package/dist/hooks/__tests__/use-theme.test.d.ts.map +1 -0
  97. package/dist/hooks/__tests__/use-theme.test.js +80 -0
  98. package/dist/hooks/index.cjs +5 -6
  99. package/dist/hooks/use-color-scheme.cjs +6 -4
  100. package/dist/hooks/use-consent-manager.cjs +6 -4
  101. package/dist/hooks/use-consent-manager.d.ts +1 -0
  102. package/dist/hooks/use-consent-manager.d.ts.map +1 -1
  103. package/dist/hooks/use-focus-trap.cjs +6 -4
  104. package/dist/hooks/use-scroll-lock.cjs +6 -4
  105. package/dist/{utils → hooks}/use-styles.cjs +11 -9
  106. package/dist/{utils → hooks}/use-styles.d.ts.map +1 -1
  107. package/dist/{utils → hooks}/use-styles.js +5 -5
  108. package/dist/hooks/use-theme.cjs +8 -8
  109. package/dist/hooks/use-theme.js +2 -4
  110. package/dist/hooks/use-translations.cjs +6 -4
  111. package/dist/index.cjs +33 -9
  112. package/dist/index.d.ts +1 -0
  113. package/dist/index.d.ts.map +1 -1
  114. package/dist/index.js +3 -1
  115. package/dist/providers/consent-manager-provider.cjs +17 -6
  116. package/dist/providers/consent-manager-provider.d.ts.map +1 -1
  117. package/dist/providers/consent-manager-provider.js +11 -2
  118. package/dist/types/consent-manager.cjs +3 -4
  119. package/dist/types/theme/index.cjs +3 -4
  120. package/dist/types/theme/style-keys.cjs +3 -4
  121. package/dist/types/theme/style-types.cjs +3 -4
  122. package/dist/utils/cn.cjs +6 -4
  123. package/dist/utils/merge-styles.cjs +6 -4
  124. package/dist/utils/test-helpers.cjs +14 -13
  125. package/dist/utils/test-helpers.js +6 -9
  126. package/dist/utils/translations.cjs +10 -4
  127. package/package.json +7 -7
  128. /package/dist/{utils → hooks}/use-styles.d.ts +0 -0
@@ -12,7 +12,7 @@ var __webpack_require__ = {};
12
12
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
13
  })();
14
14
  (()=>{
15
- __webpack_require__.r = function(exports1) {
15
+ __webpack_require__.r = (exports1)=>{
16
16
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
17
  value: 'Module'
18
18
  });
@@ -24,10 +24,10 @@ var __webpack_require__ = {};
24
24
  var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
- default: ()=>switch_module_rslib_entry_
27
+ default: ()=>switch_module
28
28
  });
29
29
  require("./switch_module.css");
30
- const switch_module_rslib_entry_ = {
30
+ const switch_module = {
31
31
  root: "c15t-root-qh0zR",
32
32
  track: "c15t-track-OlfR7",
33
33
  "track-disabled": "c15t-track-disabled-reR3p",
@@ -36,8 +36,10 @@ const switch_module_rslib_entry_ = {
36
36
  "thumb-disabled": "c15t-thumb-disabled-s9gXH",
37
37
  thumbDisabled: "c15t-thumb-disabled-s9gXH"
38
38
  };
39
- var __webpack_export_target__ = exports;
40
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
41
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
39
+ exports["default"] = __webpack_exports__["default"];
40
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
41
+ "default"
42
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
43
+ Object.defineProperty(exports, '__esModule', {
42
44
  value: true
43
45
  });
@@ -1,5 +1,5 @@
1
1
  import "./switch_module.css";
2
- const switch_module_rslib_entry_ = {
2
+ const switch_module = {
3
3
  root: "c15t-root-qh0zR",
4
4
  track: "c15t-track-OlfR7",
5
5
  "track-disabled": "c15t-track-disabled-reR3p",
@@ -8,4 +8,4 @@ const switch_module_rslib_entry_ = {
8
8
  "thumb-disabled": "c15t-thumb-disabled-s9gXH",
9
9
  thumbDisabled: "c15t-thumb-disabled-s9gXH"
10
10
  };
11
- export { switch_module_rslib_entry_ as default };
11
+ export { switch_module as default };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var __webpack_require__ = {};
3
3
  (()=>{
4
- __webpack_require__.r = function(exports1) {
4
+ __webpack_require__.r = (exports1)=>{
5
5
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
6
  value: 'Module'
7
7
  });
@@ -12,8 +12,7 @@ var __webpack_require__ = {};
12
12
  })();
13
13
  var __webpack_exports__ = {};
14
14
  __webpack_require__.r(__webpack_exports__);
15
- var __webpack_export_target__ = exports;
16
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
17
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
15
+ for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
16
+ Object.defineProperty(exports, '__esModule', {
18
17
  value: true
19
18
  });
@@ -21,6 +21,10 @@
21
21
  --switch-thumb-background-color-disabled-dark: #333;
22
22
  --switch-shadow-thumb: 0 0 0 1px #ebebeb;
23
23
  --switch-shadow-thumb-dark: 0 0 0 1px #333;
24
+ --switch-focus-ring: #335cff;
25
+ --switch-focus-ring-dark: #2547d0;
26
+ --switch-focus-shadow: 0 0 0 2px var(--switch-focus-ring);
27
+ --switch-focus-shadow-dark: 0 0 0 2px var(--switch-focus-ring-dark);
24
28
  }
25
29
 
26
30
  .c15t-root-qh0zR {
@@ -30,6 +34,7 @@
30
34
  white-space: nowrap;
31
35
  background: none;
32
36
  border: 0;
37
+ border-radius: 9999px;
33
38
  outline: none;
34
39
  flex-shrink: 0;
35
40
  margin: 0;
@@ -99,11 +104,11 @@
99
104
  }
100
105
 
101
106
  .c15t-root-qh0zR:focus {
102
- outline: 2px solid var(--accordion-focus-ring);
107
+ outline: none;
103
108
  }
104
109
 
105
110
  .c15t-dark .c15t-root-qh0zR:focus {
106
- outline: 2px solid var(--accordion-focus-ring-dark);
111
+ outline: none;
107
112
  }
108
113
 
109
114
  .c15t-track-disabled-reR3p {
@@ -181,3 +186,12 @@
181
186
  transform: translateX(var(--switch-thumb-translate));
182
187
  }
183
188
 
189
+ .c15t-root-qh0zR:focus-visible {
190
+ box-shadow: var(--switch-focus-shadow);
191
+ outline: none;
192
+ }
193
+
194
+ .c15t-dark .c15t-root-qh0zR:focus-visible {
195
+ box-shadow: var(--switch-focus-shadow-dark);
196
+ }
197
+
@@ -13,7 +13,7 @@ var __webpack_require__ = {};
13
13
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
14
14
  })();
15
15
  (()=>{
16
- __webpack_require__.r = function(exports1) {
16
+ __webpack_require__.r = (exports1)=>{
17
17
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
18
18
  value: 'Module'
19
19
  });
@@ -29,8 +29,10 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  });
30
30
  const external_react_namespaceObject = require("react");
31
31
  const ConsentStateContext = (0, external_react_namespaceObject.createContext)(void 0);
32
- var __webpack_export_target__ = exports;
33
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
34
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
32
+ exports.ConsentStateContext = __webpack_exports__.ConsentStateContext;
33
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
34
+ "ConsentStateContext"
35
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
36
+ Object.defineProperty(exports, '__esModule', {
35
37
  value: true
36
38
  });
@@ -13,7 +13,7 @@ var __webpack_require__ = {};
13
13
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
14
14
  })();
15
15
  (()=>{
16
- __webpack_require__.r = function(exports1) {
16
+ __webpack_require__.r = (exports1)=>{
17
17
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
18
18
  value: 'Module'
19
19
  });
@@ -37,8 +37,12 @@ const GlobalThemeContext = (0, external_react_namespaceObject.createContext)({
37
37
  trapFocus: true
38
38
  });
39
39
  const LocalThemeContext = (0, external_react_namespaceObject.createContext)(null);
40
- var __webpack_export_target__ = exports;
41
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
42
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
40
+ exports.GlobalThemeContext = __webpack_exports__.GlobalThemeContext;
41
+ exports.LocalThemeContext = __webpack_exports__.LocalThemeContext;
42
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
43
+ "GlobalThemeContext",
44
+ "LocalThemeContext"
45
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
46
+ Object.defineProperty(exports, '__esModule', {
43
47
  value: true
44
48
  });
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __webpack_exports__ = {};
3
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
4
+ const external_vitest_namespaceObject = require("vitest");
5
+ const external_vitest_browser_react_namespaceObject = require("vitest-browser-react");
6
+ const consent_manager_provider_cjs_namespaceObject = require("../../providers/consent-manager-provider.cjs");
7
+ const external_use_consent_manager_cjs_namespaceObject = require("../use-consent-manager.cjs");
8
+ (0, external_vitest_namespaceObject.describe)('useConsentManager', ()=>{
9
+ (0, external_vitest_namespaceObject.test)('returns consent state and methods when used within provider', ()=>{
10
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_consent_manager_cjs_namespaceObject.useConsentManager)(), {
11
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider, {
12
+ options: {
13
+ mode: 'offline',
14
+ react: {
15
+ noStyle: false
16
+ }
17
+ },
18
+ children: children
19
+ })
20
+ });
21
+ (0, external_vitest_namespaceObject.expect)(result.current).toBeDefined();
22
+ (0, external_vitest_namespaceObject.expect)(typeof result.current.showPopup).toBe('boolean');
23
+ });
24
+ (0, external_vitest_namespaceObject.test)('provides manager object when configured', ()=>{
25
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_consent_manager_cjs_namespaceObject.useConsentManager)(), {
26
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider, {
27
+ options: {
28
+ mode: 'offline',
29
+ react: {
30
+ noStyle: false
31
+ }
32
+ },
33
+ children: children
34
+ })
35
+ });
36
+ (0, external_vitest_namespaceObject.expect)(result.current.manager).toBeDefined();
37
+ });
38
+ });
39
+ for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
40
+ Object.defineProperty(exports, '__esModule', {
41
+ value: true
42
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-consent-manager.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-consent-manager.test.d.ts","sourceRoot":"","sources":["../../../src/hooks/__tests__/use-consent-manager.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest__ from "vitest";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__ from "vitest-browser-react";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_f2c81711__ from "../../providers/consent-manager-provider.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__use_consent_manager_js_56ece2ee__ from "../use-consent-manager.js";
6
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.describe)('useConsentManager', ()=>{
7
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('returns consent state and methods when used within provider', ()=>{
8
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_consent_manager_js_56ece2ee__.useConsentManager)(), {
9
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_f2c81711__.ConsentManagerProvider, {
10
+ options: {
11
+ mode: 'offline',
12
+ react: {
13
+ noStyle: false
14
+ }
15
+ },
16
+ children: children
17
+ })
18
+ });
19
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current).toBeDefined();
20
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(typeof result.current.showPopup).toBe('boolean');
21
+ });
22
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('provides manager object when configured', ()=>{
23
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_consent_manager_js_56ece2ee__.useConsentManager)(), {
24
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_f2c81711__.ConsentManagerProvider, {
25
+ options: {
26
+ mode: 'offline',
27
+ react: {
28
+ noStyle: false
29
+ }
30
+ },
31
+ children: children
32
+ })
33
+ });
34
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.manager).toBeDefined();
35
+ });
36
+ });
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __webpack_exports__ = {};
3
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
4
+ const external_vitest_namespaceObject = require("vitest");
5
+ const external_vitest_browser_react_namespaceObject = require("vitest-browser-react");
6
+ const theme_context_cjs_namespaceObject = require("../../context/theme-context.cjs");
7
+ const external_use_styles_cjs_namespaceObject = require("../use-styles.cjs");
8
+ (0, external_vitest_namespaceObject.describe)('useStyles', ()=>{
9
+ const mockTheme = {
10
+ noStyle: false,
11
+ theme: {
12
+ 'dialog.root': {
13
+ className: 'theme-class',
14
+ style: {
15
+ color: 'blue'
16
+ }
17
+ }
18
+ }
19
+ };
20
+ (0, external_vitest_namespaceObject.test)('returns component styles when no theme is provided', ()=>{
21
+ const componentStyle = {
22
+ className: 'component-class',
23
+ style: {
24
+ backgroundColor: 'red'
25
+ }
26
+ };
27
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_styles_cjs_namespaceObject.useStyles)('dialog.root', componentStyle), {
28
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
29
+ value: {
30
+ noStyle: false,
31
+ theme: {}
32
+ },
33
+ children: children
34
+ })
35
+ });
36
+ (0, external_vitest_namespaceObject.expect)(result.current.className).toContain('component-class');
37
+ (0, external_vitest_namespaceObject.expect)(result.current.style).toEqual({
38
+ backgroundColor: 'red'
39
+ });
40
+ });
41
+ (0, external_vitest_namespaceObject.test)('merges theme and component styles correctly', ()=>{
42
+ const componentStyle = {
43
+ className: 'component-class',
44
+ style: {
45
+ backgroundColor: 'red'
46
+ }
47
+ };
48
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_styles_cjs_namespaceObject.useStyles)('dialog.root', componentStyle), {
49
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
50
+ value: mockTheme,
51
+ children: children
52
+ })
53
+ });
54
+ (0, external_vitest_namespaceObject.expect)(result.current.className).toContain('theme-class');
55
+ (0, external_vitest_namespaceObject.expect)(result.current.className).toContain('component-class');
56
+ (0, external_vitest_namespaceObject.expect)(result.current.style).toEqual({
57
+ color: 'blue',
58
+ backgroundColor: 'red'
59
+ });
60
+ });
61
+ (0, external_vitest_namespaceObject.test)('handles string className correctly', ()=>{
62
+ const componentStyle = 'component-class';
63
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_styles_cjs_namespaceObject.useStyles)('dialog.root', componentStyle), {
64
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
65
+ value: mockTheme,
66
+ children: children
67
+ })
68
+ });
69
+ (0, external_vitest_namespaceObject.expect)(result.current.className).toContain('theme-class');
70
+ (0, external_vitest_namespaceObject.expect)(result.current.className).toContain('component-class');
71
+ });
72
+ });
73
+ for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
74
+ Object.defineProperty(exports, '__esModule', {
75
+ value: true
76
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-styles.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-styles.test.d.ts","sourceRoot":"","sources":["../../../src/hooks/__tests__/use-styles.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,70 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest__ from "vitest";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__ from "vitest-browser-react";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__ from "../../context/theme-context.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__use_styles_js_020efb58__ from "../use-styles.js";
6
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.describe)('useStyles', ()=>{
7
+ const mockTheme = {
8
+ noStyle: false,
9
+ theme: {
10
+ 'dialog.root': {
11
+ className: 'theme-class',
12
+ style: {
13
+ color: 'blue'
14
+ }
15
+ }
16
+ }
17
+ };
18
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('returns component styles when no theme is provided', ()=>{
19
+ const componentStyle = {
20
+ className: 'component-class',
21
+ style: {
22
+ backgroundColor: 'red'
23
+ }
24
+ };
25
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_styles_js_020efb58__.useStyles)('dialog.root', componentStyle), {
26
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
27
+ value: {
28
+ noStyle: false,
29
+ theme: {}
30
+ },
31
+ children: children
32
+ })
33
+ });
34
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.className).toContain('component-class');
35
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.style).toEqual({
36
+ backgroundColor: 'red'
37
+ });
38
+ });
39
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('merges theme and component styles correctly', ()=>{
40
+ const componentStyle = {
41
+ className: 'component-class',
42
+ style: {
43
+ backgroundColor: 'red'
44
+ }
45
+ };
46
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_styles_js_020efb58__.useStyles)('dialog.root', componentStyle), {
47
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
48
+ value: mockTheme,
49
+ children: children
50
+ })
51
+ });
52
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.className).toContain('theme-class');
53
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.className).toContain('component-class');
54
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.style).toEqual({
55
+ color: 'blue',
56
+ backgroundColor: 'red'
57
+ });
58
+ });
59
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('handles string className correctly', ()=>{
60
+ const componentStyle = 'component-class';
61
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_styles_js_020efb58__.useStyles)('dialog.root', componentStyle), {
62
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
63
+ value: mockTheme,
64
+ children: children
65
+ })
66
+ });
67
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.className).toContain('theme-class');
68
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current.className).toContain('component-class');
69
+ });
70
+ });
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __webpack_exports__ = {};
3
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
4
+ const external_vitest_namespaceObject = require("vitest");
5
+ const external_vitest_browser_react_namespaceObject = require("vitest-browser-react");
6
+ const theme_context_cjs_namespaceObject = require("../../context/theme-context.cjs");
7
+ const external_use_theme_cjs_namespaceObject = require("../use-theme.cjs");
8
+ (0, external_vitest_namespaceObject.describe)('useTheme', ()=>{
9
+ (0, external_vitest_namespaceObject.test)('returns global theme when no local theme is provided', ()=>{
10
+ const globalTheme = {
11
+ noStyle: false,
12
+ theme: {
13
+ 'dialog.root': 'global-style'
14
+ }
15
+ };
16
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_theme_cjs_namespaceObject.useTheme)(), {
17
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
18
+ value: globalTheme,
19
+ children: children
20
+ })
21
+ });
22
+ (0, external_vitest_namespaceObject.expect)(result.current).toEqual(globalTheme);
23
+ });
24
+ (0, external_vitest_namespaceObject.test)('merges global and local themes correctly', ()=>{
25
+ const globalTheme = {
26
+ noStyle: false,
27
+ theme: {
28
+ 'dialog.root': 'global-style',
29
+ 'dialog.title': 'global-title'
30
+ }
31
+ };
32
+ const localTheme = {
33
+ theme: {
34
+ 'dialog.root': 'local-style',
35
+ 'dialog.content': 'local-content'
36
+ }
37
+ };
38
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_theme_cjs_namespaceObject.useTheme)(), {
39
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
40
+ value: globalTheme,
41
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.LocalThemeContext.Provider, {
42
+ value: localTheme,
43
+ children: children
44
+ })
45
+ })
46
+ });
47
+ (0, external_vitest_namespaceObject.expect)(result.current).toEqual({
48
+ noStyle: false,
49
+ theme: {
50
+ 'dialog.root': 'local-style',
51
+ 'dialog.title': 'global-title',
52
+ 'dialog.content': 'local-content'
53
+ }
54
+ });
55
+ });
56
+ (0, external_vitest_namespaceObject.test)('local theme takes precedence over global theme', ()=>{
57
+ const globalTheme = {
58
+ noStyle: false,
59
+ theme: {
60
+ 'dialog.root': 'global-style'
61
+ }
62
+ };
63
+ const localTheme = {
64
+ noStyle: true,
65
+ theme: {
66
+ 'dialog.root': 'local-style'
67
+ }
68
+ };
69
+ const { result } = (0, external_vitest_browser_react_namespaceObject.renderHook)(()=>(0, external_use_theme_cjs_namespaceObject.useTheme)(), {
70
+ wrapper: ({ children })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
71
+ value: globalTheme,
72
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.LocalThemeContext.Provider, {
73
+ value: localTheme,
74
+ children: children
75
+ })
76
+ })
77
+ });
78
+ const theme = result.current;
79
+ (0, external_vitest_namespaceObject.expect)(theme.theme['dialog.root']).toBe('local-style');
80
+ (0, external_vitest_namespaceObject.expect)(theme.noStyle).toBe(true);
81
+ });
82
+ });
83
+ for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
84
+ Object.defineProperty(exports, '__esModule', {
85
+ value: true
86
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=use-theme.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-theme.test.d.ts","sourceRoot":"","sources":["../../../src/hooks/__tests__/use-theme.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,80 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest__ from "vitest";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__ from "vitest-browser-react";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__ from "../../context/theme-context.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__use_theme_js_0009fd1b__ from "../use-theme.js";
6
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.describe)('useTheme', ()=>{
7
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('returns global theme when no local theme is provided', ()=>{
8
+ const globalTheme = {
9
+ noStyle: false,
10
+ theme: {
11
+ 'dialog.root': 'global-style'
12
+ }
13
+ };
14
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_theme_js_0009fd1b__.useTheme)(), {
15
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
16
+ value: globalTheme,
17
+ children: children
18
+ })
19
+ });
20
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current).toEqual(globalTheme);
21
+ });
22
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('merges global and local themes correctly', ()=>{
23
+ const globalTheme = {
24
+ noStyle: false,
25
+ theme: {
26
+ 'dialog.root': 'global-style',
27
+ 'dialog.title': 'global-title'
28
+ }
29
+ };
30
+ const localTheme = {
31
+ theme: {
32
+ 'dialog.root': 'local-style',
33
+ 'dialog.content': 'local-content'
34
+ }
35
+ };
36
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_theme_js_0009fd1b__.useTheme)(), {
37
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
38
+ value: globalTheme,
39
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.LocalThemeContext.Provider, {
40
+ value: localTheme,
41
+ children: children
42
+ })
43
+ })
44
+ });
45
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(result.current).toEqual({
46
+ noStyle: false,
47
+ theme: {
48
+ 'dialog.root': 'local-style',
49
+ 'dialog.title': 'global-title',
50
+ 'dialog.content': 'local-content'
51
+ }
52
+ });
53
+ });
54
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.test)('local theme takes precedence over global theme', ()=>{
55
+ const globalTheme = {
56
+ noStyle: false,
57
+ theme: {
58
+ 'dialog.root': 'global-style'
59
+ }
60
+ };
61
+ const localTheme = {
62
+ noStyle: true,
63
+ theme: {
64
+ 'dialog.root': 'local-style'
65
+ }
66
+ };
67
+ const { result } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.renderHook)(()=>(0, __WEBPACK_EXTERNAL_MODULE__use_theme_js_0009fd1b__.useTheme)(), {
68
+ wrapper: ({ children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.GlobalThemeContext.Provider, {
69
+ value: globalTheme,
70
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_ba151654__.LocalThemeContext.Provider, {
71
+ value: localTheme,
72
+ children: children
73
+ })
74
+ })
75
+ });
76
+ const theme = result.current;
77
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(theme.theme['dialog.root']).toBe('local-style');
78
+ (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(theme.noStyle).toBe(true);
79
+ });
80
+ });
@@ -6,7 +6,7 @@ var __webpack_modules__ = {
6
6
  "./use-focus-trap": function(module) {
7
7
  module.exports = require("./use-focus-trap.cjs");
8
8
  },
9
- "./use-theme": function(module) {
9
+ "~/hooks/use-theme": function(module) {
10
10
  module.exports = require("./use-theme.cjs");
11
11
  },
12
12
  "./use-translations": function(module) {
@@ -44,7 +44,7 @@ function __webpack_require__(moduleId) {
44
44
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
45
45
  })();
46
46
  (()=>{
47
- __webpack_require__.r = function(exports1) {
47
+ __webpack_require__.r = (exports1)=>{
48
48
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
49
49
  value: 'Module'
50
50
  });
@@ -68,7 +68,7 @@ var __webpack_exports__ = {};
68
68
  return _use_focus_trap__WEBPACK_IMPORTED_MODULE_1__[key];
69
69
  }).bind(0, __WEBPACK_IMPORT_KEY__);
70
70
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
71
- var _use_theme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./use-theme");
71
+ var _use_theme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("~/hooks/use-theme");
72
72
  var __WEBPACK_REEXPORT_OBJECT__ = {};
73
73
  for(var __WEBPACK_IMPORT_KEY__ in _use_theme__WEBPACK_IMPORTED_MODULE_2__)if ("default" !== __WEBPACK_IMPORT_KEY__) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
74
74
  return _use_theme__WEBPACK_IMPORTED_MODULE_2__[key];
@@ -81,8 +81,7 @@ var __webpack_exports__ = {};
81
81
  }).bind(0, __WEBPACK_IMPORT_KEY__);
82
82
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
83
83
  })();
84
- var __webpack_export_target__ = exports;
85
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
86
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
84
+ for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
85
+ Object.defineProperty(exports, '__esModule', {
87
86
  value: true
88
87
  });
@@ -12,7 +12,7 @@ var __webpack_require__ = {};
12
12
  __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
13
  })();
14
14
  (()=>{
15
- __webpack_require__.r = function(exports1) {
15
+ __webpack_require__.r = (exports1)=>{
16
16
  if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
17
  value: 'Module'
18
18
  });
@@ -57,8 +57,10 @@ function useColorScheme(colorScheme) {
57
57
  colorScheme
58
58
  ]);
59
59
  }
60
- var __webpack_export_target__ = exports;
61
- for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
62
- if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
60
+ exports.useColorScheme = __webpack_exports__.useColorScheme;
61
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
62
+ "useColorScheme"
63
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
64
+ Object.defineProperty(exports, '__esModule', {
63
65
  value: true
64
66
  });