@c15t/react 0.0.1-rc.10 → 0.0.1-rc.12

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 (106) hide show
  1. package/dist/components/consent-manager-dialog/__tests__/styles.spec.cjs +4 -10
  2. package/dist/components/consent-manager-dialog/__tests__/utils.cjs +7 -4
  3. package/dist/components/consent-manager-dialog/__tests__/utils.d.ts.map +1 -1
  4. package/dist/components/consent-manager-dialog/__tests__/utils.js +5 -0
  5. package/dist/components/consent-manager-dialog/atoms/dialog-card.cjs +12 -18
  6. package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts.map +1 -1
  7. package/dist/components/consent-manager-dialog/atoms/overlay.cjs +6 -12
  8. package/dist/components/consent-manager-dialog/consent-manager-dialog.cjs +4 -10
  9. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.cjs +2 -4
  10. package/dist/components/consent-manager-dialog/consent-manager-dialog_module.css +5 -5
  11. package/dist/components/consent-manager-dialog/index.cjs +11 -13
  12. package/dist/components/consent-manager-widget/__tests__/styles.spec.cjs +4 -10
  13. package/dist/components/consent-manager-widget/__tests__/utils.cjs +7 -4
  14. package/dist/components/consent-manager-widget/__tests__/utils.d.ts.map +1 -1
  15. package/dist/components/consent-manager-widget/__tests__/utils.js +5 -0
  16. package/dist/components/consent-manager-widget/atoms/accordion.cjs +14 -20
  17. package/dist/components/consent-manager-widget/atoms/accordion.d.ts.map +1 -1
  18. package/dist/components/consent-manager-widget/atoms/button.cjs +7 -9
  19. package/dist/components/consent-manager-widget/atoms/footer.cjs +7 -13
  20. package/dist/components/consent-manager-widget/atoms/logo.cjs +2 -4
  21. package/dist/components/consent-manager-widget/atoms/logo.d.ts.map +1 -1
  22. package/dist/components/consent-manager-widget/atoms/root.cjs +2 -4
  23. package/dist/components/consent-manager-widget/consent-manager-widget.cjs +2 -4
  24. package/dist/components/consent-manager-widget/consent-manager-widget.d.ts.map +1 -1
  25. package/dist/components/consent-manager-widget/consent-manager-widget.module.cjs +2 -4
  26. package/dist/components/consent-manager-widget/consent-manager-widget_module.css +13 -13
  27. package/dist/components/consent-manager-widget/index.cjs +23 -25
  28. package/dist/components/cookie-banner/__tests__/styles.spec.cjs +4 -10
  29. package/dist/components/cookie-banner/__tests__/utils.cjs +7 -4
  30. package/dist/components/cookie-banner/__tests__/utils.d.ts.map +1 -1
  31. package/dist/components/cookie-banner/__tests__/utils.js +5 -0
  32. package/dist/components/cookie-banner/atoms/overlay.cjs +4 -10
  33. package/dist/components/cookie-banner/atoms/root.cjs +4 -10
  34. package/dist/components/cookie-banner/components.cjs +15 -21
  35. package/dist/components/cookie-banner/cookie-banner.cjs +2 -4
  36. package/dist/components/cookie-banner/cookie-banner.module.cjs +2 -4
  37. package/dist/components/cookie-banner/cookie-banner_module.css +7 -7
  38. package/dist/components/cookie-banner/error-boundary.cjs +2 -4
  39. package/dist/components/cookie-banner/error-boundary.d.ts +1 -1
  40. package/dist/components/cookie-banner/index.cjs +17 -19
  41. package/dist/components/shared/libs/recursive-clone-children.cjs +2 -4
  42. package/dist/components/shared/primitives/box.cjs +3 -5
  43. package/dist/components/shared/primitives/box.d.ts.map +1 -1
  44. package/dist/components/shared/primitives/box.js +1 -1
  45. package/dist/components/shared/primitives/button.cjs +54 -6
  46. package/dist/components/shared/primitives/button.d.ts.map +1 -1
  47. package/dist/components/shared/primitives/button.js +52 -2
  48. package/dist/components/shared/ui/accordion/accordion.cjs +6 -12
  49. package/dist/components/shared/ui/accordion/accordion.d.ts.map +1 -1
  50. package/dist/components/shared/ui/accordion/accordion.module.cjs +2 -4
  51. package/dist/components/shared/ui/accordion/accordion_module.css +9 -9
  52. package/dist/components/shared/ui/accordion/index.cjs +4 -10
  53. package/dist/components/shared/ui/button/button.cjs +6 -12
  54. package/dist/components/shared/ui/button/button.module.cjs +2 -4
  55. package/dist/components/shared/ui/button/button_module.css +17 -17
  56. package/dist/components/shared/ui/button/index.cjs +4 -10
  57. package/dist/components/shared/ui/icon.cjs +2 -4
  58. package/dist/components/shared/ui/icon.d.ts.map +1 -1
  59. package/dist/components/shared/ui/logo.cjs +9 -53
  60. package/dist/components/shared/ui/logo.d.ts.map +1 -1
  61. package/dist/components/shared/ui/logo.js +7 -49
  62. package/dist/components/shared/ui/switch/index.cjs +4 -10
  63. package/dist/components/shared/ui/switch/switch.cjs +4 -10
  64. package/dist/components/shared/ui/switch/switch.module.cjs +2 -4
  65. package/dist/components/shared/ui/switch/switch_module.css +11 -11
  66. package/dist/context/consent-manager-context.cjs +3 -5
  67. package/dist/context/consent-manager-context.d.ts +29 -10
  68. package/dist/context/consent-manager-context.d.ts.map +1 -1
  69. package/dist/context/consent-manager-context.js +1 -1
  70. package/dist/context/theme-context.cjs +9 -5
  71. package/dist/context/theme-context.d.ts +1 -1
  72. package/dist/context/theme-context.d.ts.map +1 -1
  73. package/dist/context/theme-context.js +7 -1
  74. package/dist/hooks/index.cjs +4 -10
  75. package/dist/hooks/use-color-scheme.cjs +64 -0
  76. package/dist/hooks/use-color-scheme.d.ts +16 -0
  77. package/dist/hooks/use-color-scheme.d.ts.map +1 -0
  78. package/dist/hooks/use-color-scheme.js +32 -0
  79. package/dist/hooks/use-consent-client.cjs +41 -0
  80. package/dist/hooks/use-consent-client.d.ts +26 -0
  81. package/dist/hooks/use-consent-client.d.ts.map +1 -0
  82. package/dist/hooks/use-consent-client.js +9 -0
  83. package/dist/hooks/use-consent-manager.cjs +7 -5
  84. package/dist/hooks/use-consent-manager.d.ts +7 -1
  85. package/dist/hooks/use-consent-manager.d.ts.map +1 -1
  86. package/dist/hooks/use-consent-manager.js +5 -1
  87. package/dist/hooks/use-focus-trap.cjs +2 -4
  88. package/dist/hooks/use-scroll-lock.cjs +2 -4
  89. package/dist/hooks/use-theme.cjs +2 -4
  90. package/dist/hooks/use-translations.cjs +2 -4
  91. package/dist/index.cjs +44 -26
  92. package/dist/index.d.ts +8 -9
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +12 -4
  95. package/dist/providers/consent-manager-provider.cjs +14 -10
  96. package/dist/providers/consent-manager-provider.d.ts +6 -2
  97. package/dist/providers/consent-manager-provider.d.ts.map +1 -1
  98. package/dist/providers/consent-manager-provider.js +12 -6
  99. package/dist/types/consent-manager.d.ts +62 -83
  100. package/dist/types/consent-manager.d.ts.map +1 -1
  101. package/dist/types/theme/index.cjs +4 -10
  102. package/dist/utils/cn.cjs +4 -10
  103. package/dist/utils/merge-styles.cjs +2 -4
  104. package/dist/utils/translations.cjs +2 -4
  105. package/dist/utils/use-styles.cjs +2 -4
  106. package/package.json +4 -4
@@ -1,13 +1,32 @@
1
- import * as React from 'react';
2
- import type { ConsentManagerContextValue } from '../types/consent-manager';
3
1
  /**
4
- * React context for sharing consent management state.
5
- *
6
- * @remarks
7
- * This context provides access to both the current consent state and
8
- * the methods to modify it throughout the application.
9
- *
10
- * @internal
2
+ * @packageDocumentation
3
+ * Provides the context for sharing consent management state across components.
11
4
  */
12
- export declare const ConsentStateContext: React.Context<ConsentManagerContextValue | undefined>;
5
+ import type { PrivacyConsentState, c15tClient } from 'c15t';
6
+ /**
7
+ * The context value provided by ConsentManagerProvider.
8
+ */
9
+ export interface ConsentStateContextValue {
10
+ /**
11
+ * Current consent management state
12
+ */
13
+ state: PrivacyConsentState;
14
+ /**
15
+ * Reference to the consent manager store instance
16
+ * We use object type to avoid circular dependencies
17
+ */
18
+ store: {
19
+ getState: () => PrivacyConsentState;
20
+ subscribe: (listener: (state: PrivacyConsentState) => void) => () => void;
21
+ setState: (state: Partial<PrivacyConsentState>) => void;
22
+ };
23
+ /**
24
+ * Optional API client instance
25
+ */
26
+ client: c15tClient | null;
27
+ }
28
+ /**
29
+ * Context for sharing consent management state across components.
30
+ */
31
+ export declare const ConsentStateContext: import("react").Context<ConsentStateContextValue | undefined>;
13
32
  //# sourceMappingURL=consent-manager-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"consent-manager-context.d.ts","sourceRoot":"","sources":["../../src/context/consent-manager-context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAE3E;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,uDAEpB,CAAC"}
1
+ {"version":3,"file":"consent-manager-context.d.ts","sourceRoot":"","sources":["../../src/context/consent-manager-context.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAG5D;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC;;OAEG;IACH,KAAK,EAAE,mBAAmB,CAAC;IAE3B;;;OAGG;IACH,KAAK,EAAE;QACN,QAAQ,EAAE,MAAM,mBAAmB,CAAC;QACpC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;QAC1E,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC;KACxD,CAAC;IAEF;;OAEG;IACH,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,+DAEpB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  'use client';
2
2
  import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
- const ConsentStateContext = __WEBPACK_EXTERNAL_MODULE_react__.createContext(void 0);
3
+ const ConsentStateContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.createContext)(void 0);
4
4
  export { ConsentStateContext };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  var __webpack_require__ = {};
4
4
  (()=>{
5
- __webpack_require__.d = function(exports1, definition) {
5
+ __webpack_require__.d = (exports1, definition)=>{
6
6
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
7
  enumerable: true,
8
8
  get: definition[key]
@@ -10,9 +10,7 @@ var __webpack_require__ = {};
10
10
  };
11
11
  })();
12
12
  (()=>{
13
- __webpack_require__.o = function(obj, prop) {
14
- return Object.prototype.hasOwnProperty.call(obj, prop);
15
- };
13
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
16
14
  })();
17
15
  (()=>{
18
16
  __webpack_require__.r = function(exports1) {
@@ -31,7 +29,13 @@ __webpack_require__.d(__webpack_exports__, {
31
29
  GlobalThemeContext: ()=>GlobalThemeContext
32
30
  });
33
31
  const external_react_namespaceObject = require("react");
34
- const GlobalThemeContext = (0, external_react_namespaceObject.createContext)(null);
32
+ const GlobalThemeContext = (0, external_react_namespaceObject.createContext)({
33
+ theme: void 0,
34
+ noStyle: false,
35
+ disableAnimation: false,
36
+ scrollLock: false,
37
+ trapFocus: true
38
+ });
35
39
  const LocalThemeContext = (0, external_react_namespaceObject.createContext)(null);
36
40
  var __webpack_export_target__ = exports;
37
41
  for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
@@ -80,7 +80,7 @@ export type ThemeContextValue<Theme = unknown> = {
80
80
  *
81
81
  * @public
82
82
  */
83
- export declare const GlobalThemeContext: import("react").Context<ThemeContextValue<unknown> | null>;
83
+ export declare const GlobalThemeContext: import("react").Context<ThemeContextValue<unknown>>;
84
84
  /**
85
85
  * Context for providing theme values to components.
86
86
  *
@@ -1 +1 @@
1
- {"version":3,"file":"theme-context.d.ts","sourceRoot":"","sources":["../../src/context/theme-context.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,IAAI;IAChD;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAEvB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,kBAAkB,4DACwB,CAAC;AAExD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,4DACyB,CAAC"}
1
+ {"version":3,"file":"theme-context.d.ts","sourceRoot":"","sources":["../../src/context/theme-context.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,IAAI;IAChD;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAEvB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,kBAAkB,qDAM7B,CAAC;AACH;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,4DACyB,CAAC"}
@@ -1,5 +1,11 @@
1
1
  'use client';
2
2
  import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
- const GlobalThemeContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.createContext)(null);
3
+ const GlobalThemeContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.createContext)({
4
+ theme: void 0,
5
+ noStyle: false,
6
+ disableAnimation: false,
7
+ scrollLock: false,
8
+ trapFocus: true
9
+ });
4
10
  const LocalThemeContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.createContext)(null);
5
11
  export { GlobalThemeContext, LocalThemeContext };
@@ -24,12 +24,8 @@ function __webpack_require__(moduleId) {
24
24
  return module.exports;
25
25
  }
26
26
  (()=>{
27
- __webpack_require__.n = function(module) {
28
- var getter = module && module.__esModule ? function() {
29
- return module['default'];
30
- } : function() {
31
- return module;
32
- };
27
+ __webpack_require__.n = (module)=>{
28
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
33
29
  __webpack_require__.d(getter, {
34
30
  a: getter
35
31
  });
@@ -37,7 +33,7 @@ function __webpack_require__(moduleId) {
37
33
  };
38
34
  })();
39
35
  (()=>{
40
- __webpack_require__.d = function(exports1, definition) {
36
+ __webpack_require__.d = (exports1, definition)=>{
41
37
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
42
38
  enumerable: true,
43
39
  get: definition[key]
@@ -45,9 +41,7 @@ function __webpack_require__(moduleId) {
45
41
  };
46
42
  })();
47
43
  (()=>{
48
- __webpack_require__.o = function(obj, prop) {
49
- return Object.prototype.hasOwnProperty.call(obj, prop);
50
- };
44
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
51
45
  })();
52
46
  (()=>{
53
47
  __webpack_require__.r = function(exports1) {
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = function(exports1) {
16
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ useColorScheme: ()=>useColorScheme
28
+ });
29
+ const external_react_namespaceObject = require("react");
30
+ function useColorScheme(colorScheme) {
31
+ (0, external_react_namespaceObject.useEffect)(()=>{
32
+ const updateSystemTheme = ()=>{
33
+ const isDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
34
+ document.documentElement.classList.toggle('c15t-dark', isDark);
35
+ };
36
+ switch(colorScheme){
37
+ case 'light':
38
+ localStorage.setItem('c15tTheme', 'light');
39
+ document.documentElement.classList.remove('c15t-dark');
40
+ break;
41
+ case 'dark':
42
+ localStorage.setItem('c15tTheme', 'dark');
43
+ document.documentElement.classList.add('c15t-dark');
44
+ break;
45
+ default:
46
+ localStorage.removeItem('c15tTheme');
47
+ updateSystemTheme();
48
+ break;
49
+ }
50
+ const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
51
+ const handleChange = ()=>{
52
+ if ('system' === colorScheme) updateSystemTheme();
53
+ };
54
+ mediaQuery.addEventListener('change', handleChange);
55
+ return ()=>mediaQuery.removeEventListener('change', handleChange);
56
+ }, [
57
+ colorScheme
58
+ ]);
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', {
63
+ value: true
64
+ });
@@ -0,0 +1,16 @@
1
+ export type ColorScheme = 'light' | 'dark' | 'system';
2
+ /**
3
+ * Manage color scheme preferences for components
4
+ *
5
+ * @param colorScheme - 'light' | 'dark' | 'system'
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * function App() {
10
+ * useColorScheme('system');
11
+ * return <div>Content</div>;
12
+ * }
13
+ * ```
14
+ */
15
+ export declare function useColorScheme(colorScheme: ColorScheme): void;
16
+ //# sourceMappingURL=use-color-scheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-color-scheme.d.ts","sourceRoot":"","sources":["../../src/hooks/use-color-scheme.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEtD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,WAAW,QAsCtD"}
@@ -0,0 +1,32 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
2
+ function useColorScheme(colorScheme) {
3
+ (0, __WEBPACK_EXTERNAL_MODULE_react__.useEffect)(()=>{
4
+ const updateSystemTheme = ()=>{
5
+ const isDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
6
+ document.documentElement.classList.toggle('c15t-dark', isDark);
7
+ };
8
+ switch(colorScheme){
9
+ case 'light':
10
+ localStorage.setItem('c15tTheme', 'light');
11
+ document.documentElement.classList.remove('c15t-dark');
12
+ break;
13
+ case 'dark':
14
+ localStorage.setItem('c15tTheme', 'dark');
15
+ document.documentElement.classList.add('c15t-dark');
16
+ break;
17
+ default:
18
+ localStorage.removeItem('c15tTheme');
19
+ updateSystemTheme();
20
+ break;
21
+ }
22
+ const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
23
+ const handleChange = ()=>{
24
+ if ('system' === colorScheme) updateSystemTheme();
25
+ };
26
+ mediaQuery.addEventListener('change', handleChange);
27
+ return ()=>mediaQuery.removeEventListener('change', handleChange);
28
+ }, [
29
+ colorScheme
30
+ ]);
31
+ }
32
+ export { useColorScheme };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = function(exports1) {
16
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ useConsentClient: ()=>useConsentClient
28
+ });
29
+ const external_react_namespaceObject = require("react");
30
+ const consent_manager_context_cjs_namespaceObject = require("../context/consent-manager-context.cjs");
31
+ function useConsentClient() {
32
+ const context = (0, external_react_namespaceObject.useContext)(consent_manager_context_cjs_namespaceObject.ConsentStateContext);
33
+ if (void 0 === context) throw new Error('useConsentClient must be used within a ConsentManagerProvider');
34
+ if (null === context.client) throw new Error('No API client available. Make sure to provide clientOptions to ConsentManagerProvider.');
35
+ return context.client;
36
+ }
37
+ var __webpack_export_target__ = exports;
38
+ for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
39
+ if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
40
+ value: true
41
+ });
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * Hook for accessing the c15t API client instance.
4
+ */
5
+ /**
6
+ * Hook for accessing the c15t API client instance.
7
+ *
8
+ * @remarks
9
+ * This hook provides access to the c15t API client, allowing components
10
+ * to interact with the consent management API for operations like:
11
+ * - Fetching consent purposes
12
+ * - Updating consent preferences on the server
13
+ * - Retrieving consent history
14
+ *
15
+ * The hook must be used within a ConsentManagerProvider component
16
+ * that has been initialized with clientOptions.
17
+ *
18
+ * @throws {Error}
19
+ * Throws if used outside of a ConsentManagerProvider context or if
20
+ * no client was initialized (missing clientOptions).
21
+ *
22
+ * @returns The c15t API client instance
23
+ * @public
24
+ */
25
+ export declare function useConsentClient(): import("c15t").c15tClient;
26
+ //# sourceMappingURL=use-consent-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-consent-client.d.ts","sourceRoot":"","sources":["../../src/hooks/use-consent-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,8BAgB/B"}
@@ -0,0 +1,9 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
2
+ import * as __WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06d2__ from "../context/consent-manager-context.js";
3
+ function useConsentClient() {
4
+ const context = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06d2__.ConsentStateContext);
5
+ if (void 0 === context) throw new Error('useConsentClient must be used within a ConsentManagerProvider');
6
+ if (null === context.client) throw new Error('No API client available. Make sure to provide clientOptions to ConsentManagerProvider.');
7
+ return context.client;
8
+ }
9
+ export { useConsentClient };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var __webpack_require__ = {};
3
3
  (()=>{
4
- __webpack_require__.d = function(exports1, definition) {
4
+ __webpack_require__.d = (exports1, definition)=>{
5
5
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
6
  enumerable: true,
7
7
  get: definition[key]
@@ -9,9 +9,7 @@ var __webpack_require__ = {};
9
9
  };
10
10
  })();
11
11
  (()=>{
12
- __webpack_require__.o = function(obj, prop) {
13
- return Object.prototype.hasOwnProperty.call(obj, prop);
14
- };
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
15
13
  })();
16
14
  (()=>{
17
15
  __webpack_require__.r = function(exports1) {
@@ -33,9 +31,13 @@ const consent_manager_context_cjs_namespaceObject = require("../context/consent-
33
31
  function useConsentManager() {
34
32
  const context = (0, external_react_namespaceObject.useContext)(consent_manager_context_cjs_namespaceObject.ConsentStateContext);
35
33
  if (void 0 === context) throw new Error('useConsentManager must be used within a ConsentManagerProvider');
34
+ const storeState = context.store.getState();
36
35
  return {
37
36
  ...context.state,
38
- ...context.store.getState()
37
+ ...storeState,
38
+ ...context.client ? {
39
+ client: context.client
40
+ } : {}
39
41
  };
40
42
  }
41
43
  var __webpack_export_target__ = exports;
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * Hook for accessing and managing consent state.
4
+ */
1
5
  /**
2
6
  * Hook for accessing and managing consent state.
3
7
  *
@@ -7,6 +11,7 @@
7
11
  * - Methods to update consents
8
12
  * - Compliance settings and region detection
9
13
  * - State persistence and retrieval
14
+ * - The API client (if configured)
10
15
  *
11
16
  * The hook must be used within a ConsentManagerProvider component.
12
17
  *
@@ -17,6 +22,7 @@
17
22
  * @public
18
23
  */
19
24
  export declare function useConsentManager(): {
25
+ client?: import("c15t").c15tClient | undefined;
20
26
  consents: import("c15t").ConsentState;
21
27
  consentInfo: {
22
28
  time: number;
@@ -48,7 +54,7 @@ export declare function useConsentManager(): {
48
54
  setDetectedCountry: (country: string) => void;
49
55
  setLocationInfo: (location: import("c15t").LocationInfo | null) => void;
50
56
  setJurisdictionInfo: (jurisdiction: import("c15t").JurisdictionInfo | null) => void;
51
- fetchConsentBannerInfo: (url?: string) => Promise<import("c15t").ConsentBannerResponse | undefined>;
57
+ fetchConsentBannerInfo: () => Promise<import("c15t").ConsentBannerResponse | undefined>;
52
58
  getDisplayedConsents: () => typeof import("c15t").consentTypes;
53
59
  hasConsented: () => boolean;
54
60
  clearAllData: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"use-consent-manager.d.ts","sourceRoot":"","sources":["../../src/hooks/use-consent-manager.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;uCAc21E,CAAC;;;;;;;;;;;gCAA+kE,CAAC;;;;;;;;;EAD58I"}
1
+ {"version":3,"file":"use-consent-manager.d.ts","sourceRoot":"","sources":["../../src/hooks/use-consent-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;uCAmBqiE,CAAC;;;;;;;;;;;;;;;;;;;;EADtkE"}
@@ -3,9 +3,13 @@ import * as __WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06
3
3
  function useConsentManager() {
4
4
  const context = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06d2__.ConsentStateContext);
5
5
  if (void 0 === context) throw new Error('useConsentManager must be used within a ConsentManagerProvider');
6
+ const storeState = context.store.getState();
6
7
  return {
7
8
  ...context.state,
8
- ...context.store.getState()
9
+ ...storeState,
10
+ ...context.client ? {
11
+ client: context.client
12
+ } : {}
9
13
  };
10
14
  }
11
15
  export { useConsentManager };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var __webpack_require__ = {};
3
3
  (()=>{
4
- __webpack_require__.d = function(exports1, definition) {
4
+ __webpack_require__.d = (exports1, definition)=>{
5
5
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
6
  enumerable: true,
7
7
  get: definition[key]
@@ -9,9 +9,7 @@ var __webpack_require__ = {};
9
9
  };
10
10
  })();
11
11
  (()=>{
12
- __webpack_require__.o = function(obj, prop) {
13
- return Object.prototype.hasOwnProperty.call(obj, prop);
14
- };
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
15
13
  })();
16
14
  (()=>{
17
15
  __webpack_require__.r = function(exports1) {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var __webpack_require__ = {};
3
3
  (()=>{
4
- __webpack_require__.d = function(exports1, definition) {
4
+ __webpack_require__.d = (exports1, definition)=>{
5
5
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
6
  enumerable: true,
7
7
  get: definition[key]
@@ -9,9 +9,7 @@ var __webpack_require__ = {};
9
9
  };
10
10
  })();
11
11
  (()=>{
12
- __webpack_require__.o = function(obj, prop) {
13
- return Object.prototype.hasOwnProperty.call(obj, prop);
14
- };
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
15
13
  })();
16
14
  (()=>{
17
15
  __webpack_require__.r = function(exports1) {
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  var __webpack_require__ = {};
4
4
  (()=>{
5
- __webpack_require__.d = function(exports1, definition) {
5
+ __webpack_require__.d = (exports1, definition)=>{
6
6
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
7
  enumerable: true,
8
8
  get: definition[key]
@@ -10,9 +10,7 @@ var __webpack_require__ = {};
10
10
  };
11
11
  })();
12
12
  (()=>{
13
- __webpack_require__.o = function(obj, prop) {
14
- return Object.prototype.hasOwnProperty.call(obj, prop);
15
- };
13
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
16
14
  })();
17
15
  (()=>{
18
16
  __webpack_require__.r = function(exports1) {
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  var __webpack_require__ = {};
4
4
  (()=>{
5
- __webpack_require__.d = function(exports1, definition) {
5
+ __webpack_require__.d = (exports1, definition)=>{
6
6
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
7
  enumerable: true,
8
8
  get: definition[key]
@@ -10,9 +10,7 @@ var __webpack_require__ = {};
10
10
  };
11
11
  })();
12
12
  (()=>{
13
- __webpack_require__.o = function(obj, prop) {
14
- return Object.prototype.hasOwnProperty.call(obj, prop);
15
- };
13
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
16
14
  })();
17
15
  (()=>{
18
16
  __webpack_require__.r = function(exports1) {
package/dist/index.cjs CHANGED
@@ -9,12 +9,24 @@ var __webpack_modules__ = {
9
9
  "./components/cookie-banner/cookie-banner": function(module) {
10
10
  module.exports = require("./components/cookie-banner/cookie-banner.cjs");
11
11
  },
12
- "~/hooks": function(module) {
13
- module.exports = require("./hooks/index.cjs");
12
+ "./hooks/use-color-scheme": function(module) {
13
+ module.exports = require("./hooks/use-color-scheme.cjs");
14
+ },
15
+ "./hooks/use-consent-client": function(module) {
16
+ module.exports = require("./hooks/use-consent-client.cjs");
17
+ },
18
+ "./hooks/use-consent-manager": function(module) {
19
+ module.exports = require("./hooks/use-consent-manager.cjs");
20
+ },
21
+ "./hooks/use-translations": function(module) {
22
+ module.exports = require("./hooks/use-translations.cjs");
14
23
  },
15
24
  "./providers/consent-manager-provider": function(module) {
16
25
  module.exports = require("./providers/consent-manager-provider.cjs");
17
26
  },
27
+ "./utils/translations": function(module) {
28
+ module.exports = require("./utils/translations.cjs");
29
+ },
18
30
  c15t: function(module) {
19
31
  module.exports = require("c15t");
20
32
  }
@@ -30,12 +42,8 @@ function __webpack_require__(moduleId) {
30
42
  return module.exports;
31
43
  }
32
44
  (()=>{
33
- __webpack_require__.n = function(module) {
34
- var getter = module && module.__esModule ? function() {
35
- return module['default'];
36
- } : function() {
37
- return module;
38
- };
45
+ __webpack_require__.n = (module)=>{
46
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
39
47
  __webpack_require__.d(getter, {
40
48
  a: getter
41
49
  });
@@ -43,7 +51,7 @@ function __webpack_require__(moduleId) {
43
51
  };
44
52
  })();
45
53
  (()=>{
46
- __webpack_require__.d = function(exports1, definition) {
54
+ __webpack_require__.d = (exports1, definition)=>{
47
55
  for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
48
56
  enumerable: true,
49
57
  get: definition[key]
@@ -51,9 +59,7 @@ function __webpack_require__(moduleId) {
51
59
  };
52
60
  })();
53
61
  (()=>{
54
- __webpack_require__.o = function(obj, prop) {
55
- return Object.prototype.hasOwnProperty.call(obj, prop);
56
- };
62
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
57
63
  })();
58
64
  (()=>{
59
65
  __webpack_require__.r = function(exports1) {
@@ -69,30 +75,42 @@ var __webpack_exports__ = {};
69
75
  (()=>{
70
76
  __webpack_require__.r(__webpack_exports__);
71
77
  __webpack_require__.d(__webpack_exports__, {
72
- ConsentManagerDialog: ()=>_components_consent_manager_dialog_consent_manager_dialog__WEBPACK_IMPORTED_MODULE_1__.ConsentManagerDialog,
73
- ConsentManagerProvider: ()=>_providers_consent_manager_provider__WEBPACK_IMPORTED_MODULE_4__.ConsentManagerProvider,
74
- ConsentManagerWidget: ()=>_components_consent_manager_widget_consent_manager_widget__WEBPACK_IMPORTED_MODULE_2__.ConsentManagerWidget,
78
+ ConsentManagerDialog: ()=>_components_consent_manager_dialog_consent_manager_dialog__WEBPACK_IMPORTED_MODULE_2__.ConsentManagerDialog,
79
+ ConsentManagerProvider: ()=>_providers_consent_manager_provider__WEBPACK_IMPORTED_MODULE_3__.ConsentManagerProvider,
80
+ ConsentManagerWidget: ()=>_components_consent_manager_widget_consent_manager_widget__WEBPACK_IMPORTED_MODULE_1__.ConsentManagerWidget,
75
81
  CookieBanner: ()=>_components_cookie_banner_cookie_banner__WEBPACK_IMPORTED_MODULE_0__.CookieBanner,
76
- consentTypes: ()=>c15t__WEBPACK_IMPORTED_MODULE_5__.consentTypes
82
+ createConsentClient: ()=>c15t__WEBPACK_IMPORTED_MODULE_8__.createConsentClient,
83
+ useColorScheme: ()=>_hooks_use_color_scheme__WEBPACK_IMPORTED_MODULE_6__.useColorScheme,
84
+ useConsentClient: ()=>_hooks_use_consent_client__WEBPACK_IMPORTED_MODULE_7__.useConsentClient,
85
+ useConsentManager: ()=>_hooks_use_consent_manager__WEBPACK_IMPORTED_MODULE_4__.useConsentManager,
86
+ useTranslations: ()=>_hooks_use_translations__WEBPACK_IMPORTED_MODULE_5__.useTranslations
77
87
  });
78
88
  var _components_cookie_banner_cookie_banner__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("./components/cookie-banner/cookie-banner");
79
- var _components_consent_manager_dialog_consent_manager_dialog__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./components/consent-manager-dialog/consent-manager-dialog");
80
- var _components_consent_manager_widget_consent_manager_widget__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./components/consent-manager-widget/consent-manager-widget");
81
- var _hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("~/hooks");
89
+ var _components_consent_manager_widget_consent_manager_widget__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./components/consent-manager-widget/consent-manager-widget");
90
+ var _components_consent_manager_dialog_consent_manager_dialog__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./components/consent-manager-dialog/consent-manager-dialog");
91
+ var _providers_consent_manager_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./providers/consent-manager-provider");
92
+ var _hooks_use_consent_manager__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("./hooks/use-consent-manager");
93
+ var _hooks_use_translations__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("./hooks/use-translations");
94
+ var _hooks_use_color_scheme__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("./hooks/use-color-scheme");
95
+ var _hooks_use_consent_client__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("./hooks/use-consent-client");
96
+ var c15t__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("c15t");
97
+ var _utils_translations__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("./utils/translations");
82
98
  var __WEBPACK_REEXPORT_OBJECT__ = {};
83
- for(var __WEBPACK_IMPORT_KEY__ in _hooks__WEBPACK_IMPORTED_MODULE_3__)if ([
84
- "consentTypes",
85
- "ConsentManagerProvider",
86
- "default",
99
+ for(var __WEBPACK_IMPORT_KEY__ in _utils_translations__WEBPACK_IMPORTED_MODULE_9__)if ([
100
+ "useColorScheme",
101
+ "useTranslations",
87
102
  "ConsentManagerWidget",
103
+ "createConsentClient",
88
104
  "CookieBanner",
105
+ "useConsentManager",
106
+ "default",
107
+ "ConsentManagerProvider",
108
+ "useConsentClient",
89
109
  "ConsentManagerDialog"
90
110
  ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
91
- return _hooks__WEBPACK_IMPORTED_MODULE_3__[key];
111
+ return _utils_translations__WEBPACK_IMPORTED_MODULE_9__[key];
92
112
  }).bind(0, __WEBPACK_IMPORT_KEY__);
93
113
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
94
- var _providers_consent_manager_provider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("./providers/consent-manager-provider");
95
- var c15t__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("c15t");
96
114
  })();
97
115
  var __webpack_export_target__ = exports;
98
116
  for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];