@c15t/react 0.0.1-rc.10

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 (265) hide show
  1. package/LICENSE.md +595 -0
  2. package/README.md +55 -0
  3. package/dist/components/consent-manager-dialog/__tests__/styles.spec.cjs +223 -0
  4. package/dist/components/consent-manager-dialog/__tests__/styles.spec.d.ts +2 -0
  5. package/dist/components/consent-manager-dialog/__tests__/styles.spec.d.ts.map +1 -0
  6. package/dist/components/consent-manager-dialog/__tests__/styles.spec.js +188 -0
  7. package/dist/components/consent-manager-dialog/__tests__/utils.cjs +68 -0
  8. package/dist/components/consent-manager-dialog/__tests__/utils.d.ts +13 -0
  9. package/dist/components/consent-manager-dialog/__tests__/utils.d.ts.map +1 -0
  10. package/dist/components/consent-manager-dialog/__tests__/utils.js +34 -0
  11. package/dist/components/consent-manager-dialog/atoms/dialog-card.cjs +154 -0
  12. package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts +90 -0
  13. package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts.map +1 -0
  14. package/dist/components/consent-manager-dialog/atoms/dialog-card.js +95 -0
  15. package/dist/components/consent-manager-dialog/atoms/overlay.cjs +86 -0
  16. package/dist/components/consent-manager-dialog/atoms/overlay.d.ts +71 -0
  17. package/dist/components/consent-manager-dialog/atoms/overlay.d.ts.map +1 -0
  18. package/dist/components/consent-manager-dialog/atoms/overlay.js +37 -0
  19. package/dist/components/consent-manager-dialog/consent-manager-dialog.cjs +148 -0
  20. package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts +40 -0
  21. package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts.map +1 -0
  22. package/dist/components/consent-manager-dialog/consent-manager-dialog.js +100 -0
  23. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.cjs +50 -0
  24. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.js +16 -0
  25. package/dist/components/consent-manager-dialog/consent-manager-dialog_module.css +202 -0
  26. package/dist/components/consent-manager-dialog/index.cjs +51 -0
  27. package/dist/components/consent-manager-dialog/index.d.ts +4 -0
  28. package/dist/components/consent-manager-dialog/index.d.ts.map +1 -0
  29. package/dist/components/consent-manager-dialog/index.js +18 -0
  30. package/dist/components/consent-manager-dialog/theme.cjs +19 -0
  31. package/dist/components/consent-manager-dialog/theme.d.ts +19 -0
  32. package/dist/components/consent-manager-dialog/theme.d.ts.map +1 -0
  33. package/dist/components/consent-manager-dialog/theme.js +0 -0
  34. package/dist/components/consent-manager-widget/__tests__/styles.spec.cjs +228 -0
  35. package/dist/components/consent-manager-widget/__tests__/styles.spec.d.ts +2 -0
  36. package/dist/components/consent-manager-widget/__tests__/styles.spec.d.ts.map +1 -0
  37. package/dist/components/consent-manager-widget/__tests__/styles.spec.js +193 -0
  38. package/dist/components/consent-manager-widget/__tests__/utils.cjs +68 -0
  39. package/dist/components/consent-manager-widget/__tests__/utils.d.ts +13 -0
  40. package/dist/components/consent-manager-widget/__tests__/utils.d.ts.map +1 -0
  41. package/dist/components/consent-manager-widget/__tests__/utils.js +34 -0
  42. package/dist/components/consent-manager-widget/atoms/accordion.cjs +169 -0
  43. package/dist/components/consent-manager-widget/atoms/accordion.d.ts +57 -0
  44. package/dist/components/consent-manager-widget/atoms/accordion.d.ts.map +1 -0
  45. package/dist/components/consent-manager-widget/atoms/accordion.js +106 -0
  46. package/dist/components/consent-manager-widget/atoms/button.cjs +93 -0
  47. package/dist/components/consent-manager-widget/atoms/button.d.ts +27 -0
  48. package/dist/components/consent-manager-widget/atoms/button.d.ts.map +1 -0
  49. package/dist/components/consent-manager-widget/atoms/button.js +52 -0
  50. package/dist/components/consent-manager-widget/atoms/footer.cjs +74 -0
  51. package/dist/components/consent-manager-widget/atoms/footer.d.ts +15 -0
  52. package/dist/components/consent-manager-widget/atoms/footer.d.ts.map +1 -0
  53. package/dist/components/consent-manager-widget/atoms/footer.js +23 -0
  54. package/dist/components/consent-manager-widget/atoms/logo.cjs +101 -0
  55. package/dist/components/consent-manager-widget/atoms/logo.d.ts +8 -0
  56. package/dist/components/consent-manager-widget/atoms/logo.d.ts.map +1 -0
  57. package/dist/components/consent-manager-widget/atoms/logo.js +67 -0
  58. package/dist/components/consent-manager-widget/atoms/root.cjs +60 -0
  59. package/dist/components/consent-manager-widget/atoms/root.d.ts +82 -0
  60. package/dist/components/consent-manager-widget/atoms/root.d.ts.map +1 -0
  61. package/dist/components/consent-manager-widget/atoms/root.js +25 -0
  62. package/dist/components/consent-manager-widget/consent-manager-widget.cjs +96 -0
  63. package/dist/components/consent-manager-widget/consent-manager-widget.d.ts +44 -0
  64. package/dist/components/consent-manager-widget/consent-manager-widget.d.ts.map +1 -0
  65. package/dist/components/consent-manager-widget/consent-manager-widget.js +62 -0
  66. package/dist/components/consent-manager-widget/consent-manager-widget.module.cjs +61 -0
  67. package/dist/components/consent-manager-widget/consent-manager-widget.module.js +27 -0
  68. package/dist/components/consent-manager-widget/consent-manager-widget_module.css +337 -0
  69. package/dist/components/consent-manager-widget/index.cjs +69 -0
  70. package/dist/components/consent-manager-widget/index.d.ts +11 -0
  71. package/dist/components/consent-manager-widget/index.d.ts.map +1 -0
  72. package/dist/components/consent-manager-widget/index.js +36 -0
  73. package/dist/components/consent-manager-widget/theme.cjs +19 -0
  74. package/dist/components/consent-manager-widget/theme.d.ts +50 -0
  75. package/dist/components/consent-manager-widget/theme.d.ts.map +1 -0
  76. package/dist/components/consent-manager-widget/theme.js +0 -0
  77. package/dist/components/consent-manager-widget/types.cjs +19 -0
  78. package/dist/components/consent-manager-widget/types.d.ts +18 -0
  79. package/dist/components/consent-manager-widget/types.d.ts.map +1 -0
  80. package/dist/components/consent-manager-widget/types.js +0 -0
  81. package/dist/components/cookie-banner/__tests__/styles.spec.cjs +241 -0
  82. package/dist/components/cookie-banner/__tests__/styles.spec.d.ts +2 -0
  83. package/dist/components/cookie-banner/__tests__/styles.spec.d.ts.map +1 -0
  84. package/dist/components/cookie-banner/__tests__/styles.spec.js +206 -0
  85. package/dist/components/cookie-banner/__tests__/utils.cjs +67 -0
  86. package/dist/components/cookie-banner/__tests__/utils.d.ts +13 -0
  87. package/dist/components/cookie-banner/__tests__/utils.d.ts.map +1 -0
  88. package/dist/components/cookie-banner/__tests__/utils.js +33 -0
  89. package/dist/components/cookie-banner/atoms/overlay.cjs +89 -0
  90. package/dist/components/cookie-banner/atoms/overlay.d.ts +46 -0
  91. package/dist/components/cookie-banner/atoms/overlay.d.ts.map +1 -0
  92. package/dist/components/cookie-banner/atoms/overlay.js +40 -0
  93. package/dist/components/cookie-banner/atoms/root.cjs +132 -0
  94. package/dist/components/cookie-banner/atoms/root.d.ts +93 -0
  95. package/dist/components/cookie-banner/atoms/root.d.ts.map +1 -0
  96. package/dist/components/cookie-banner/atoms/root.js +83 -0
  97. package/dist/components/cookie-banner/components.cjs +186 -0
  98. package/dist/components/cookie-banner/components.d.ts +136 -0
  99. package/dist/components/cookie-banner/components.d.ts.map +1 -0
  100. package/dist/components/cookie-banner/components.js +121 -0
  101. package/dist/components/cookie-banner/cookie-banner.cjs +100 -0
  102. package/dist/components/cookie-banner/cookie-banner.d.ts +144 -0
  103. package/dist/components/cookie-banner/cookie-banner.d.ts.map +1 -0
  104. package/dist/components/cookie-banner/cookie-banner.js +66 -0
  105. package/dist/components/cookie-banner/cookie-banner.module.cjs +55 -0
  106. package/dist/components/cookie-banner/cookie-banner.module.js +21 -0
  107. package/dist/components/cookie-banner/cookie-banner_module.css +224 -0
  108. package/dist/components/cookie-banner/error-boundary.cjs +68 -0
  109. package/dist/components/cookie-banner/error-boundary.d.ts +56 -0
  110. package/dist/components/cookie-banner/error-boundary.d.ts.map +1 -0
  111. package/dist/components/cookie-banner/error-boundary.js +34 -0
  112. package/dist/components/cookie-banner/index.cjs +59 -0
  113. package/dist/components/cookie-banner/index.d.ts +52 -0
  114. package/dist/components/cookie-banner/index.d.ts.map +1 -0
  115. package/dist/components/cookie-banner/index.js +26 -0
  116. package/dist/components/cookie-banner/theme.cjs +19 -0
  117. package/dist/components/cookie-banner/theme.d.ts +71 -0
  118. package/dist/components/cookie-banner/theme.d.ts.map +1 -0
  119. package/dist/components/cookie-banner/theme.js +0 -0
  120. package/dist/components/shared/libs/polymorphic.cjs +19 -0
  121. package/dist/components/shared/libs/polymorphic.d.ts +15 -0
  122. package/dist/components/shared/libs/polymorphic.d.ts.map +1 -0
  123. package/dist/components/shared/libs/polymorphic.js +0 -0
  124. package/dist/components/shared/libs/recursive-clone-children.cjs +49 -0
  125. package/dist/components/shared/libs/recursive-clone-children.d.ts +14 -0
  126. package/dist/components/shared/libs/recursive-clone-children.d.ts.map +1 -0
  127. package/dist/components/shared/libs/recursive-clone-children.js +15 -0
  128. package/dist/components/shared/primitives/box.cjs +54 -0
  129. package/dist/components/shared/primitives/box.d.ts +47 -0
  130. package/dist/components/shared/primitives/box.d.ts.map +1 -0
  131. package/dist/components/shared/primitives/box.js +20 -0
  132. package/dist/components/shared/primitives/button.cjs +96 -0
  133. package/dist/components/shared/primitives/button.d.ts +207 -0
  134. package/dist/components/shared/primitives/button.d.ts.map +1 -0
  135. package/dist/components/shared/primitives/button.js +62 -0
  136. package/dist/components/shared/primitives/button.types.cjs +19 -0
  137. package/dist/components/shared/primitives/button.types.d.ts +35 -0
  138. package/dist/components/shared/primitives/button.types.d.ts.map +1 -0
  139. package/dist/components/shared/primitives/button.types.js +0 -0
  140. package/dist/components/shared/ui/accordion/accordion.cjs +219 -0
  141. package/dist/components/shared/ui/accordion/accordion.d.ts +44 -0
  142. package/dist/components/shared/ui/accordion/accordion.d.ts.map +1 -0
  143. package/dist/components/shared/ui/accordion/accordion.js +165 -0
  144. package/dist/components/shared/ui/accordion/accordion.module.cjs +49 -0
  145. package/dist/components/shared/ui/accordion/accordion.module.js +15 -0
  146. package/dist/components/shared/ui/accordion/accordion.types.cjs +19 -0
  147. package/dist/components/shared/ui/accordion/accordion.types.d.ts +74 -0
  148. package/dist/components/shared/ui/accordion/accordion.types.d.ts.map +1 -0
  149. package/dist/components/shared/ui/accordion/accordion.types.js +0 -0
  150. package/dist/components/shared/ui/accordion/accordion_module.css +197 -0
  151. package/dist/components/shared/ui/accordion/index.cjs +76 -0
  152. package/dist/components/shared/ui/accordion/index.d.ts +3 -0
  153. package/dist/components/shared/ui/accordion/index.d.ts.map +1 -0
  154. package/dist/components/shared/ui/accordion/index.js +2 -0
  155. package/dist/components/shared/ui/button/button.cjs +199 -0
  156. package/dist/components/shared/ui/button/button.d.ts +444 -0
  157. package/dist/components/shared/ui/button/button.d.ts.map +1 -0
  158. package/dist/components/shared/ui/button/button.js +149 -0
  159. package/dist/components/shared/ui/button/button.module.cjs +65 -0
  160. package/dist/components/shared/ui/button/button.module.js +31 -0
  161. package/dist/components/shared/ui/button/button.types.cjs +19 -0
  162. package/dist/components/shared/ui/button/button.types.d.ts +45 -0
  163. package/dist/components/shared/ui/button/button.types.d.ts.map +1 -0
  164. package/dist/components/shared/ui/button/button.types.js +0 -0
  165. package/dist/components/shared/ui/button/button_module.css +247 -0
  166. package/dist/components/shared/ui/button/index.cjs +76 -0
  167. package/dist/components/shared/ui/button/index.d.ts +3 -0
  168. package/dist/components/shared/ui/button/index.d.ts.map +1 -0
  169. package/dist/components/shared/ui/button/index.js +2 -0
  170. package/dist/components/shared/ui/icon.cjs +57 -0
  171. package/dist/components/shared/ui/icon.d.ts +8 -0
  172. package/dist/components/shared/ui/icon.d.ts.map +1 -0
  173. package/dist/components/shared/ui/icon.js +23 -0
  174. package/dist/components/shared/ui/logo.cjs +101 -0
  175. package/dist/components/shared/ui/logo.d.ts +8 -0
  176. package/dist/components/shared/ui/logo.d.ts.map +1 -0
  177. package/dist/components/shared/ui/logo.js +67 -0
  178. package/dist/components/shared/ui/switch/index.cjs +76 -0
  179. package/dist/components/shared/ui/switch/index.d.ts +3 -0
  180. package/dist/components/shared/ui/switch/index.d.ts.map +1 -0
  181. package/dist/components/shared/ui/switch/index.js +2 -0
  182. package/dist/components/shared/ui/switch/switch.cjs +95 -0
  183. package/dist/components/shared/ui/switch/switch.d.ts +24 -0
  184. package/dist/components/shared/ui/switch/switch.d.ts.map +1 -0
  185. package/dist/components/shared/ui/switch/switch.js +47 -0
  186. package/dist/components/shared/ui/switch/switch.module.cjs +45 -0
  187. package/dist/components/shared/ui/switch/switch.module.js +11 -0
  188. package/dist/components/shared/ui/switch/switch.types.cjs +19 -0
  189. package/dist/components/shared/ui/switch/switch.types.d.ts +34 -0
  190. package/dist/components/shared/ui/switch/switch.types.d.ts.map +1 -0
  191. package/dist/components/shared/ui/switch/switch.types.js +0 -0
  192. package/dist/components/shared/ui/switch/switch_module.css +183 -0
  193. package/dist/context/consent-manager-context.cjs +38 -0
  194. package/dist/context/consent-manager-context.d.ts +13 -0
  195. package/dist/context/consent-manager-context.d.ts.map +1 -0
  196. package/dist/context/consent-manager-context.js +4 -0
  197. package/dist/context/theme-context.cjs +40 -0
  198. package/dist/context/theme-context.d.ts +102 -0
  199. package/dist/context/theme-context.d.ts.map +1 -0
  200. package/dist/context/theme-context.js +5 -0
  201. package/dist/hooks/index.cjs +94 -0
  202. package/dist/hooks/index.d.ts +5 -0
  203. package/dist/hooks/index.d.ts.map +1 -0
  204. package/dist/hooks/index.js +4 -0
  205. package/dist/hooks/use-consent-manager.cjs +45 -0
  206. package/dist/hooks/use-consent-manager.d.ts +61 -0
  207. package/dist/hooks/use-consent-manager.d.ts.map +1 -0
  208. package/dist/hooks/use-consent-manager.js +11 -0
  209. package/dist/hooks/use-focus-trap.cjs +76 -0
  210. package/dist/hooks/use-focus-trap.d.ts +15 -0
  211. package/dist/hooks/use-focus-trap.d.ts.map +1 -0
  212. package/dist/hooks/use-focus-trap.js +42 -0
  213. package/dist/hooks/use-scroll-lock.cjs +55 -0
  214. package/dist/hooks/use-scroll-lock.d.ts +26 -0
  215. package/dist/hooks/use-scroll-lock.d.ts.map +1 -0
  216. package/dist/hooks/use-scroll-lock.js +21 -0
  217. package/dist/hooks/use-theme.cjs +56 -0
  218. package/dist/hooks/use-theme.d.ts +2 -0
  219. package/dist/hooks/use-theme.d.ts.map +1 -0
  220. package/dist/hooks/use-theme.js +22 -0
  221. package/dist/hooks/use-translations.cjs +58 -0
  222. package/dist/hooks/use-translations.d.ts +29 -0
  223. package/dist/hooks/use-translations.d.ts.map +1 -0
  224. package/dist/hooks/use-translations.js +24 -0
  225. package/dist/index.cjs +101 -0
  226. package/dist/index.d.ts +16 -0
  227. package/dist/index.d.ts.map +1 -0
  228. package/dist/index.js +12 -0
  229. package/dist/providers/consent-manager-provider.cjs +110 -0
  230. package/dist/providers/consent-manager-provider.d.ts +16 -0
  231. package/dist/providers/consent-manager-provider.d.ts.map +1 -0
  232. package/dist/providers/consent-manager-provider.js +76 -0
  233. package/dist/types/consent-manager.cjs +19 -0
  234. package/dist/types/consent-manager.d.ts +120 -0
  235. package/dist/types/consent-manager.d.ts.map +1 -0
  236. package/dist/types/consent-manager.js +0 -0
  237. package/dist/types/theme/index.cjs +76 -0
  238. package/dist/types/theme/index.d.ts +3 -0
  239. package/dist/types/theme/index.d.ts.map +1 -0
  240. package/dist/types/theme/index.js +2 -0
  241. package/dist/types/theme/style-keys.cjs +19 -0
  242. package/dist/types/theme/style-keys.d.ts +14 -0
  243. package/dist/types/theme/style-keys.d.ts.map +1 -0
  244. package/dist/types/theme/style-keys.js +0 -0
  245. package/dist/types/theme/style-types.cjs +19 -0
  246. package/dist/types/theme/style-types.d.ts +34 -0
  247. package/dist/types/theme/style-types.d.ts.map +1 -0
  248. package/dist/types/theme/style-types.js +0 -0
  249. package/dist/utils/cn.cjs +55 -0
  250. package/dist/utils/cn.d.ts +11 -0
  251. package/dist/utils/cn.d.ts.map +1 -0
  252. package/dist/utils/cn.js +6 -0
  253. package/dist/utils/merge-styles.cjs +62 -0
  254. package/dist/utils/merge-styles.d.ts +11 -0
  255. package/dist/utils/merge-styles.d.ts.map +1 -0
  256. package/dist/utils/merge-styles.js +28 -0
  257. package/dist/utils/translations.cjs +86 -0
  258. package/dist/utils/translations.d.ts +14 -0
  259. package/dist/utils/translations.d.ts.map +1 -0
  260. package/dist/utils/translations.js +50 -0
  261. package/dist/utils/use-styles.cjs +95 -0
  262. package/dist/utils/use-styles.d.ts +32 -0
  263. package/dist/utils/use-styles.d.ts.map +1 -0
  264. package/dist/utils/use-styles.js +61 -0
  265. package/package.json +90 -0
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * Provides a reusable hook for managing document scroll locking.
4
+ */
5
+ /**
6
+ * Hook to manage document scroll locking.
7
+ *
8
+ * @remarks
9
+ * This hook provides a way to lock/unlock document scrolling.
10
+ * It automatically handles cleanup when the component unmounts
11
+ * and preserves the original scroll state.
12
+ *
13
+ * @param shouldLock - Boolean indicating whether scrolling should be locked
14
+ *
15
+ * @example
16
+ * ```tsx
17
+ * function Modal({ isOpen }) {
18
+ * useScrollLock(isOpen);
19
+ * return <div>Modal Content</div>;
20
+ * }
21
+ * ```
22
+ *
23
+ * @public
24
+ */
25
+ export declare function useScrollLock(shouldLock: boolean): void;
26
+ //# sourceMappingURL=use-scroll-lock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-scroll-lock.d.ts","sourceRoot":"","sources":["../../src/hooks/use-scroll-lock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CA0BvD"}
@@ -0,0 +1,21 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
2
+ function useScrollLock(shouldLock) {
3
+ (0, __WEBPACK_EXTERNAL_MODULE_react__.useEffect)(()=>{
4
+ if (shouldLock) {
5
+ const originalStyles = {
6
+ overflow: document.body.style.overflow,
7
+ paddingRight: document.body.style.paddingRight
8
+ };
9
+ const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
10
+ document.body.style.overflow = 'hidden';
11
+ if (scrollbarWidth > 0) document.body.style.paddingRight = `${scrollbarWidth}px`;
12
+ return ()=>{
13
+ document.body.style.overflow = originalStyles.overflow;
14
+ document.body.style.paddingRight = originalStyles.paddingRight;
15
+ };
16
+ }
17
+ }, [
18
+ shouldLock
19
+ ]);
20
+ }
21
+ export { useScrollLock };
@@ -0,0 +1,56 @@
1
+ 'use client';
2
+ "use strict";
3
+ var __webpack_require__ = {};
4
+ (()=>{
5
+ __webpack_require__.d = function(exports1, definition) {
6
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ get: definition[key]
9
+ });
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.o = function(obj, prop) {
14
+ return Object.prototype.hasOwnProperty.call(obj, prop);
15
+ };
16
+ })();
17
+ (()=>{
18
+ __webpack_require__.r = function(exports1) {
19
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
20
+ value: 'Module'
21
+ });
22
+ Object.defineProperty(exports1, '__esModule', {
23
+ value: true
24
+ });
25
+ };
26
+ })();
27
+ var __webpack_exports__ = {};
28
+ __webpack_require__.r(__webpack_exports__);
29
+ __webpack_require__.d(__webpack_exports__, {
30
+ useTheme: ()=>useTheme
31
+ });
32
+ const external_react_namespaceObject = require("react");
33
+ const theme_context_cjs_namespaceObject = require("../context/theme-context.cjs");
34
+ function deepMerge(target, source) {
35
+ if (!source) return target;
36
+ const result = {
37
+ ...target
38
+ };
39
+ for(const key in source)if (void 0 !== source[key]) {
40
+ if (source[key] && 'object' == typeof source[key] && !Array.isArray(source[key]) && target[key] && 'object' == typeof target[key]) result[key] = deepMerge(target[key], source[key]);
41
+ else result[key] = source[key];
42
+ }
43
+ return result;
44
+ }
45
+ const useTheme = ()=>{
46
+ const globalContext = (0, external_react_namespaceObject.useContext)(theme_context_cjs_namespaceObject.GlobalThemeContext);
47
+ const localContext = (0, external_react_namespaceObject.useContext)(theme_context_cjs_namespaceObject.LocalThemeContext);
48
+ if (!globalContext) throw new Error('Theme components must be used within Theme.Root');
49
+ const context = deepMerge(globalContext, localContext || null);
50
+ return context;
51
+ };
52
+ var __webpack_export_target__ = exports;
53
+ for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
54
+ if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
55
+ value: true
56
+ });
@@ -0,0 +1,2 @@
1
+ export declare const useTheme: () => import("../context/theme-context").ThemeContextValue<unknown>;
2
+ //# sourceMappingURL=use-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-theme.d.ts","sourceRoot":"","sources":["../../src/hooks/use-theme.ts"],"names":[],"mappings":"AAiEA,eAAO,MAAM,QAAQ,oEAYpB,CAAC"}
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__context_theme_context_js_fbb05439__ from "../context/theme-context.js";
4
+ function deepMerge(target, source) {
5
+ if (!source) return target;
6
+ const result = {
7
+ ...target
8
+ };
9
+ for(const key in source)if (void 0 !== source[key]) {
10
+ if (source[key] && 'object' == typeof source[key] && !Array.isArray(source[key]) && target[key] && 'object' == typeof target[key]) result[key] = deepMerge(target[key], source[key]);
11
+ else result[key] = source[key];
12
+ }
13
+ return result;
14
+ }
15
+ const useTheme = ()=>{
16
+ const globalContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_fbb05439__.GlobalThemeContext);
17
+ const localContext = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_fbb05439__.LocalThemeContext);
18
+ if (!globalContext) throw new Error('Theme components must be used within Theme.Root');
19
+ const context = deepMerge(globalContext, localContext || null);
20
+ return context;
21
+ };
22
+ export { useTheme };
@@ -0,0 +1,58 @@
1
+ 'use client';
2
+ "use strict";
3
+ var __webpack_require__ = {};
4
+ (()=>{
5
+ __webpack_require__.d = function(exports1, definition) {
6
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ get: definition[key]
9
+ });
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.o = function(obj, prop) {
14
+ return Object.prototype.hasOwnProperty.call(obj, prop);
15
+ };
16
+ })();
17
+ (()=>{
18
+ __webpack_require__.r = function(exports1) {
19
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
20
+ value: 'Module'
21
+ });
22
+ Object.defineProperty(exports1, '__esModule', {
23
+ value: true
24
+ });
25
+ };
26
+ })();
27
+ var __webpack_exports__ = {};
28
+ __webpack_require__.r(__webpack_exports__);
29
+ __webpack_require__.d(__webpack_exports__, {
30
+ useTranslations: ()=>useTranslations
31
+ });
32
+ const external_c15t_namespaceObject = require("c15t");
33
+ const external_react_namespaceObject = require("react");
34
+ const external_use_consent_manager_cjs_namespaceObject = require("./use-consent-manager.cjs");
35
+ function useTranslations() {
36
+ const { translationConfig } = (0, external_use_consent_manager_cjs_namespaceObject.useConsentManager)();
37
+ return (0, external_react_namespaceObject.useMemo)(()=>{
38
+ const { translations = {}, defaultLanguage = 'en' } = translationConfig;
39
+ const selectedTranslations = translations[defaultLanguage];
40
+ if (isTranslations(selectedTranslations)) return selectedTranslations;
41
+ const englishTranslations = translations.en;
42
+ if (isTranslations(englishTranslations)) return englishTranslations;
43
+ return external_c15t_namespaceObject.defaultTranslationConfig.translations.en;
44
+ }, [
45
+ translationConfig
46
+ ]);
47
+ }
48
+ function isTranslations(value) {
49
+ if (!value || 'object' != typeof value) return false;
50
+ const obj = value;
51
+ const hasRequiredKeys = 'cookieBanner' in obj && 'consentManagerDialog' in obj && 'consentManagerWidget' in obj && 'consentTypes' in obj;
52
+ return hasRequiredKeys;
53
+ }
54
+ var __webpack_export_target__ = exports;
55
+ for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
56
+ if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
57
+ value: true
58
+ });
@@ -0,0 +1,29 @@
1
+ import type { Translations } from 'c15t';
2
+ /**
3
+ * Hook for accessing translations in the current language.
4
+ *
5
+ * @remarks
6
+ * This hook provides access to the translations for the currently selected language.
7
+ * It automatically handles language selection based on the translation configuration.
8
+ * Falls back to English if the selected language is not available.
9
+ *
10
+ * @returns The translations for the current language
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * function CookieBanner() {
15
+ * const translations = useTranslations();
16
+ *
17
+ * return (
18
+ * <div>
19
+ * <h2>{translations.cookieBanner.title}</h2>
20
+ * <p>{translations.cookieBanner.description}</p>
21
+ * </div>
22
+ * );
23
+ * }
24
+ * ```
25
+ *
26
+ * @public
27
+ */
28
+ export declare function useTranslations(): Translations;
29
+ //# sourceMappingURL=use-translations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-translations.d.ts","sourceRoot":"","sources":["../../src/hooks/use-translations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAIzC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAoB9C"}
@@ -0,0 +1,24 @@
1
+ 'use client';
2
+ import * as __WEBPACK_EXTERNAL_MODULE_c15t__ from "c15t";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__use_consent_manager_js_06584a12__ from "./use-consent-manager.js";
5
+ function useTranslations() {
6
+ const { translationConfig } = (0, __WEBPACK_EXTERNAL_MODULE__use_consent_manager_js_06584a12__.useConsentManager)();
7
+ return (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>{
8
+ const { translations = {}, defaultLanguage = 'en' } = translationConfig;
9
+ const selectedTranslations = translations[defaultLanguage];
10
+ if (isTranslations(selectedTranslations)) return selectedTranslations;
11
+ const englishTranslations = translations.en;
12
+ if (isTranslations(englishTranslations)) return englishTranslations;
13
+ return __WEBPACK_EXTERNAL_MODULE_c15t__.defaultTranslationConfig.translations.en;
14
+ }, [
15
+ translationConfig
16
+ ]);
17
+ }
18
+ function isTranslations(value) {
19
+ if (!value || 'object' != typeof value) return false;
20
+ const obj = value;
21
+ const hasRequiredKeys = 'cookieBanner' in obj && 'consentManagerDialog' in obj && 'consentManagerWidget' in obj && 'consentTypes' in obj;
22
+ return hasRequiredKeys;
23
+ }
24
+ export { useTranslations };
package/dist/index.cjs ADDED
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __webpack_modules__ = {
3
+ "./components/consent-manager-dialog/consent-manager-dialog": function(module) {
4
+ module.exports = require("./components/consent-manager-dialog/consent-manager-dialog.cjs");
5
+ },
6
+ "./components/consent-manager-widget/consent-manager-widget": function(module) {
7
+ module.exports = require("./components/consent-manager-widget/consent-manager-widget.cjs");
8
+ },
9
+ "./components/cookie-banner/cookie-banner": function(module) {
10
+ module.exports = require("./components/cookie-banner/cookie-banner.cjs");
11
+ },
12
+ "~/hooks": function(module) {
13
+ module.exports = require("./hooks/index.cjs");
14
+ },
15
+ "./providers/consent-manager-provider": function(module) {
16
+ module.exports = require("./providers/consent-manager-provider.cjs");
17
+ },
18
+ c15t: function(module) {
19
+ module.exports = require("c15t");
20
+ }
21
+ };
22
+ var __webpack_module_cache__ = {};
23
+ function __webpack_require__(moduleId) {
24
+ var cachedModule = __webpack_module_cache__[moduleId];
25
+ if (void 0 !== cachedModule) return cachedModule.exports;
26
+ var module = __webpack_module_cache__[moduleId] = {
27
+ exports: {}
28
+ };
29
+ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
30
+ return module.exports;
31
+ }
32
+ (()=>{
33
+ __webpack_require__.n = function(module) {
34
+ var getter = module && module.__esModule ? function() {
35
+ return module['default'];
36
+ } : function() {
37
+ return module;
38
+ };
39
+ __webpack_require__.d(getter, {
40
+ a: getter
41
+ });
42
+ return getter;
43
+ };
44
+ })();
45
+ (()=>{
46
+ __webpack_require__.d = function(exports1, definition) {
47
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
48
+ enumerable: true,
49
+ get: definition[key]
50
+ });
51
+ };
52
+ })();
53
+ (()=>{
54
+ __webpack_require__.o = function(obj, prop) {
55
+ return Object.prototype.hasOwnProperty.call(obj, prop);
56
+ };
57
+ })();
58
+ (()=>{
59
+ __webpack_require__.r = function(exports1) {
60
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
61
+ value: 'Module'
62
+ });
63
+ Object.defineProperty(exports1, '__esModule', {
64
+ value: true
65
+ });
66
+ };
67
+ })();
68
+ var __webpack_exports__ = {};
69
+ (()=>{
70
+ __webpack_require__.r(__webpack_exports__);
71
+ __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,
75
+ CookieBanner: ()=>_components_cookie_banner_cookie_banner__WEBPACK_IMPORTED_MODULE_0__.CookieBanner,
76
+ consentTypes: ()=>c15t__WEBPACK_IMPORTED_MODULE_5__.consentTypes
77
+ });
78
+ 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");
82
+ var __WEBPACK_REEXPORT_OBJECT__ = {};
83
+ for(var __WEBPACK_IMPORT_KEY__ in _hooks__WEBPACK_IMPORTED_MODULE_3__)if ([
84
+ "consentTypes",
85
+ "ConsentManagerProvider",
86
+ "default",
87
+ "ConsentManagerWidget",
88
+ "CookieBanner",
89
+ "ConsentManagerDialog"
90
+ ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
91
+ return _hooks__WEBPACK_IMPORTED_MODULE_3__[key];
92
+ }).bind(0, __WEBPACK_IMPORT_KEY__);
93
+ __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
+ })();
97
+ var __webpack_export_target__ = exports;
98
+ for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
99
+ if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
100
+ value: true
101
+ });
@@ -0,0 +1,16 @@
1
+ export { CookieBanner } from './components/cookie-banner/cookie-banner';
2
+ export type { CookieBannerProps } from './components/cookie-banner/cookie-banner';
3
+ export type { CookieBannerTheme } from './components/cookie-banner/theme';
4
+ export { ConsentManagerDialog } from './components/consent-manager-dialog/consent-manager-dialog';
5
+ export type { ConsentManagerDialogProps } from './components/consent-manager-dialog/consent-manager-dialog';
6
+ export type { ConsentManagerDialogTheme } from './components/consent-manager-dialog/theme';
7
+ export { ConsentManagerWidget } from './components/consent-manager-widget/consent-manager-widget';
8
+ export type { ConsentManagerWidgetProps } from './components/consent-manager-widget/types';
9
+ export type { ConsentManagerWidgetTheme } from './components/consent-manager-widget/theme';
10
+ export * from './hooks';
11
+ export { ConsentManagerProvider } from './providers/consent-manager-provider';
12
+ export type { ThemeValue, ClassNameStyle } from './types/theme';
13
+ export type { ConsentManagerProviderProps } from './types/consent-manager';
14
+ export { consentTypes } from 'c15t';
15
+ export type { CallbackFunction, Callbacks, AllConsentNames, ConsentType, ConsentState, ComplianceRegion, ComplianceSettings, PrivacySettings, HasConsentedProps, } from 'c15t';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,YAAY,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,YAAY,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAC;AAClG,YAAY,EAAE,yBAAyB,EAAE,MAAM,4DAA4D,CAAC;AAC5G,YAAY,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAG3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAC;AAClG,YAAY,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAC3F,YAAY,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAG3F,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAG9E,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAChE,YAAY,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,YAAY,EACX,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GACjB,MAAM,MAAM,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE__components_cookie_banner_cookie_banner_js_aba0c776__ from "./components/cookie-banner/cookie-banner.js";
2
+ import * as __WEBPACK_EXTERNAL_MODULE__components_consent_manager_dialog_consent_manager_dialog_js_d74113dd__ from "./components/consent-manager-dialog/consent-manager-dialog.js";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__components_consent_manager_widget_consent_manager_widget_js_080fb908__ from "./components/consent-manager-widget/consent-manager-widget.js";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_7459f585__ from "./providers/consent-manager-provider.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE_c15t__ from "c15t";
6
+ export * from "./hooks/index.js";
7
+ var __webpack_exports__ConsentManagerDialog = __WEBPACK_EXTERNAL_MODULE__components_consent_manager_dialog_consent_manager_dialog_js_d74113dd__.ConsentManagerDialog;
8
+ var __webpack_exports__ConsentManagerProvider = __WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_7459f585__.ConsentManagerProvider;
9
+ var __webpack_exports__ConsentManagerWidget = __WEBPACK_EXTERNAL_MODULE__components_consent_manager_widget_consent_manager_widget_js_080fb908__.ConsentManagerWidget;
10
+ var __webpack_exports__CookieBanner = __WEBPACK_EXTERNAL_MODULE__components_cookie_banner_cookie_banner_js_aba0c776__.CookieBanner;
11
+ var __webpack_exports__consentTypes = __WEBPACK_EXTERNAL_MODULE_c15t__.consentTypes;
12
+ export { __webpack_exports__ConsentManagerDialog as ConsentManagerDialog, __webpack_exports__ConsentManagerProvider as ConsentManagerProvider, __webpack_exports__ConsentManagerWidget as ConsentManagerWidget, __webpack_exports__CookieBanner as CookieBanner, __webpack_exports__consentTypes as consentTypes };
@@ -0,0 +1,110 @@
1
+ 'use client';
2
+ "use strict";
3
+ var __webpack_require__ = {};
4
+ (()=>{
5
+ __webpack_require__.d = function(exports1, definition) {
6
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ get: definition[key]
9
+ });
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.o = function(obj, prop) {
14
+ return Object.prototype.hasOwnProperty.call(obj, prop);
15
+ };
16
+ })();
17
+ (()=>{
18
+ __webpack_require__.r = function(exports1) {
19
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
20
+ value: 'Module'
21
+ });
22
+ Object.defineProperty(exports1, '__esModule', {
23
+ value: true
24
+ });
25
+ };
26
+ })();
27
+ var __webpack_exports__ = {};
28
+ __webpack_require__.r(__webpack_exports__);
29
+ __webpack_require__.d(__webpack_exports__, {
30
+ ConsentManagerProvider: ()=>ConsentManagerProvider
31
+ });
32
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
33
+ const external_c15t_namespaceObject = require("c15t");
34
+ const external_react_namespaceObject = require("react");
35
+ const consent_manager_context_cjs_namespaceObject = require("../context/consent-manager-context.cjs");
36
+ const translations_cjs_namespaceObject = require("../utils/translations.cjs");
37
+ const theme_context_cjs_namespaceObject = require("../context/theme-context.cjs");
38
+ function ConsentManagerProvider({ children, initialGdprTypes, initialComplianceSettings, namespace = 'c15tStore', noStyle = false, translationConfig, trackingBlockerConfig, theme, disableAnimation = false, scrollLock = false, trapFocus = true }) {
39
+ const preparedTranslationConfig = (0, external_react_namespaceObject.useMemo)(()=>{
40
+ const mergedConfig = (0, translations_cjs_namespaceObject.mergeTranslationConfigs)(external_c15t_namespaceObject.defaultTranslationConfig, translationConfig);
41
+ const defaultLanguage = (0, translations_cjs_namespaceObject.detectBrowserLanguage)(mergedConfig.translations, mergedConfig.defaultLanguage, mergedConfig.disableAutoLanguageSwitch);
42
+ return {
43
+ ...mergedConfig,
44
+ defaultLanguage
45
+ };
46
+ }, [
47
+ translationConfig
48
+ ]);
49
+ const store = (0, external_react_namespaceObject.useMemo)(()=>{
50
+ const store = (0, external_c15t_namespaceObject.createConsentManagerStore)(namespace, {
51
+ trackingBlockerConfig
52
+ });
53
+ store.getState().setTranslationConfig(preparedTranslationConfig);
54
+ return store;
55
+ }, [
56
+ namespace,
57
+ preparedTranslationConfig,
58
+ trackingBlockerConfig
59
+ ]);
60
+ const [state, setState] = (0, external_react_namespaceObject.useState)(store.getState());
61
+ (0, external_react_namespaceObject.useEffect)(()=>{
62
+ const { setGdprTypes, setComplianceSetting, setDetectedCountry } = store.getState();
63
+ if (initialGdprTypes) setGdprTypes(initialGdprTypes);
64
+ if (initialComplianceSettings) for (const [region, settings] of Object.entries(initialComplianceSettings))setComplianceSetting(region, settings);
65
+ const country = document.querySelector('meta[name="user-country"]')?.getAttribute('content') || 'US';
66
+ setDetectedCountry(country);
67
+ const unsubscribe = store.subscribe((newState)=>{
68
+ setState(newState);
69
+ });
70
+ return ()=>{
71
+ unsubscribe();
72
+ };
73
+ }, [
74
+ store,
75
+ initialGdprTypes,
76
+ initialComplianceSettings
77
+ ]);
78
+ const contextValue = (0, external_react_namespaceObject.useMemo)(()=>({
79
+ state,
80
+ store
81
+ }), [
82
+ state,
83
+ store
84
+ ]);
85
+ const themeContextValue = (0, external_react_namespaceObject.useMemo)(()=>({
86
+ theme,
87
+ noStyle,
88
+ disableAnimation,
89
+ scrollLock,
90
+ trapFocus
91
+ }), [
92
+ theme,
93
+ noStyle,
94
+ disableAnimation,
95
+ scrollLock,
96
+ trapFocus
97
+ ]);
98
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(consent_manager_context_cjs_namespaceObject.ConsentStateContext.Provider, {
99
+ value: contextValue,
100
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider, {
101
+ value: themeContextValue,
102
+ children: children
103
+ })
104
+ });
105
+ }
106
+ var __webpack_export_target__ = exports;
107
+ for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
108
+ if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
109
+ value: true
110
+ });
@@ -0,0 +1,16 @@
1
+ import type { ConsentManagerProviderProps } from '../types/consent-manager';
2
+ /**
3
+ * Provider component for consent management functionality.
4
+ *
5
+ * @remarks
6
+ * This component initializes and manages the consent management system, including:
7
+ * - Setting up the consent store with initial configuration
8
+ * - Detecting user's region for compliance
9
+ * - Managing consent state updates
10
+ * - Providing access to consent management throughout the app
11
+ * - Injecting default styles (unless noStyle is true)
12
+ *
13
+ * @public
14
+ */
15
+ export declare function ConsentManagerProvider({ children, initialGdprTypes, initialComplianceSettings, namespace, noStyle, translationConfig, trackingBlockerConfig, theme, disableAnimation, scrollLock, trapFocus, }: ConsentManagerProviderProps): import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=consent-manager-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-manager-provider.d.ts","sourceRoot":"","sources":["../../src/providers/consent-manager-provider.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAQ5E;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,EACtC,QAAQ,EACR,gBAAgB,EAChB,yBAAyB,EACzB,SAAuB,EACvB,OAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,EACL,gBAAwB,EACxB,UAAkB,EAClB,SAAgB,GAChB,EAAE,2BAA2B,2CA2F7B"}
@@ -0,0 +1,76 @@
1
+ 'use client';
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_c15t__ from "c15t";
4
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06d2__ from "../context/consent-manager-context.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__utils_translations_js_c2629c1f__ from "../utils/translations.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__context_theme_context_js_fbb05439__ from "../context/theme-context.js";
8
+ function ConsentManagerProvider({ children, initialGdprTypes, initialComplianceSettings, namespace = 'c15tStore', noStyle = false, translationConfig, trackingBlockerConfig, theme, disableAnimation = false, scrollLock = false, trapFocus = true }) {
9
+ const preparedTranslationConfig = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>{
10
+ const mergedConfig = (0, __WEBPACK_EXTERNAL_MODULE__utils_translations_js_c2629c1f__.mergeTranslationConfigs)(__WEBPACK_EXTERNAL_MODULE_c15t__.defaultTranslationConfig, translationConfig);
11
+ const defaultLanguage = (0, __WEBPACK_EXTERNAL_MODULE__utils_translations_js_c2629c1f__.detectBrowserLanguage)(mergedConfig.translations, mergedConfig.defaultLanguage, mergedConfig.disableAutoLanguageSwitch);
12
+ return {
13
+ ...mergedConfig,
14
+ defaultLanguage
15
+ };
16
+ }, [
17
+ translationConfig
18
+ ]);
19
+ const store = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>{
20
+ const store = (0, __WEBPACK_EXTERNAL_MODULE_c15t__.createConsentManagerStore)(namespace, {
21
+ trackingBlockerConfig
22
+ });
23
+ store.getState().setTranslationConfig(preparedTranslationConfig);
24
+ return store;
25
+ }, [
26
+ namespace,
27
+ preparedTranslationConfig,
28
+ trackingBlockerConfig
29
+ ]);
30
+ const [state, setState] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(store.getState());
31
+ (0, __WEBPACK_EXTERNAL_MODULE_react__.useEffect)(()=>{
32
+ const { setGdprTypes, setComplianceSetting, setDetectedCountry } = store.getState();
33
+ if (initialGdprTypes) setGdprTypes(initialGdprTypes);
34
+ if (initialComplianceSettings) for (const [region, settings] of Object.entries(initialComplianceSettings))setComplianceSetting(region, settings);
35
+ const country = document.querySelector('meta[name="user-country"]')?.getAttribute('content') || 'US';
36
+ setDetectedCountry(country);
37
+ const unsubscribe = store.subscribe((newState)=>{
38
+ setState(newState);
39
+ });
40
+ return ()=>{
41
+ unsubscribe();
42
+ };
43
+ }, [
44
+ store,
45
+ initialGdprTypes,
46
+ initialComplianceSettings
47
+ ]);
48
+ const contextValue = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>({
49
+ state,
50
+ store
51
+ }), [
52
+ state,
53
+ store
54
+ ]);
55
+ const themeContextValue = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>({
56
+ theme,
57
+ noStyle,
58
+ disableAnimation,
59
+ scrollLock,
60
+ trapFocus
61
+ }), [
62
+ theme,
63
+ noStyle,
64
+ disableAnimation,
65
+ scrollLock,
66
+ trapFocus
67
+ ]);
68
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_consent_manager_context_js_ee8f06d2__.ConsentStateContext.Provider, {
69
+ value: contextValue,
70
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__context_theme_context_js_fbb05439__.GlobalThemeContext.Provider, {
71
+ value: themeContextValue,
72
+ children: children
73
+ })
74
+ });
75
+ }
76
+ export { ConsentManagerProvider };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.r = function(exports1) {
5
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
+ value: 'Module'
7
+ });
8
+ Object.defineProperty(exports1, '__esModule', {
9
+ value: true
10
+ });
11
+ };
12
+ })();
13
+ var __webpack_exports__ = {};
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', {
18
+ value: true
19
+ });