@c15t/react 1.0.5 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/dist/components/consent-manager-dialog/__tests__/styles.spec.cjs +1 -239
  2. package/dist/components/consent-manager-dialog/__tests__/styles.spec.js +1 -211
  3. package/dist/components/consent-manager-dialog/atoms/dialog-card.cjs +1 -188
  4. package/dist/components/consent-manager-dialog/atoms/dialog-card.js +1 -108
  5. package/dist/components/consent-manager-dialog/atoms/overlay.cjs +1 -84
  6. package/dist/components/consent-manager-dialog/atoms/overlay.d.ts +1 -1
  7. package/dist/components/consent-manager-dialog/atoms/overlay.d.ts.map +1 -1
  8. package/dist/components/consent-manager-dialog/atoms/overlay.js +1 -37
  9. package/dist/components/consent-manager-dialog/consent-manager-dialog.cjs +1 -143
  10. package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts +5 -0
  11. package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts.map +1 -1
  12. package/dist/components/consent-manager-dialog/consent-manager-dialog.js +1 -99
  13. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.cjs +1 -52
  14. package/dist/components/consent-manager-dialog/consent-manager-dialog.module.js +1 -18
  15. package/dist/components/consent-manager-dialog/consent-manager-dialog_module.css +1 -217
  16. package/dist/components/consent-manager-dialog/index.cjs +1 -76
  17. package/dist/components/consent-manager-dialog/index.js +1 -17
  18. package/dist/components/consent-manager-dialog/theme.cjs +1 -18
  19. package/dist/components/consent-manager-widget/__tests__/styles.spec.cjs +1 -249
  20. package/dist/components/consent-manager-widget/__tests__/styles.spec.js +1 -221
  21. package/dist/components/consent-manager-widget/atoms/accordion.cjs +1 -195
  22. package/dist/components/consent-manager-widget/atoms/accordion.js +1 -106
  23. package/dist/components/consent-manager-widget/atoms/button.cjs +1 -107
  24. package/dist/components/consent-manager-widget/atoms/button.js +1 -52
  25. package/dist/components/consent-manager-widget/atoms/footer.cjs +1 -76
  26. package/dist/components/consent-manager-widget/atoms/footer.js +1 -23
  27. package/dist/components/consent-manager-widget/atoms/root.cjs +1 -61
  28. package/dist/components/consent-manager-widget/atoms/root.js +1 -24
  29. package/dist/components/consent-manager-widget/consent-manager-widget.cjs +1 -84
  30. package/dist/components/consent-manager-widget/consent-manager-widget.js +1 -50
  31. package/dist/components/consent-manager-widget/consent-manager-widget.module.cjs +1 -60
  32. package/dist/components/consent-manager-widget/consent-manager-widget.module.js +1 -26
  33. package/dist/components/consent-manager-widget/consent-manager-widget_module.css +1 -332
  34. package/dist/components/consent-manager-widget/index.cjs +1 -126
  35. package/dist/components/consent-manager-widget/index.js +1 -35
  36. package/dist/components/consent-manager-widget/theme.cjs +1 -18
  37. package/dist/components/consent-manager-widget/types.cjs +1 -18
  38. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.cjs +1 -189
  39. package/dist/components/cookie-banner/__tests__/cookie-banner.e2e.test.js +1 -183
  40. package/dist/components/cookie-banner/__tests__/styles.spec.cjs +1 -251
  41. package/dist/components/cookie-banner/__tests__/styles.spec.js +1 -223
  42. package/dist/components/cookie-banner/atoms/overlay.cjs +1 -87
  43. package/dist/components/cookie-banner/atoms/overlay.d.ts.map +1 -1
  44. package/dist/components/cookie-banner/atoms/overlay.js +1 -40
  45. package/dist/components/cookie-banner/atoms/root.cjs +1 -129
  46. package/dist/components/cookie-banner/atoms/root.d.ts.map +1 -1
  47. package/dist/components/cookie-banner/atoms/root.js +1 -82
  48. package/dist/components/cookie-banner/components.cjs +1 -216
  49. package/dist/components/cookie-banner/components.js +1 -121
  50. package/dist/components/cookie-banner/cookie-banner.cjs +1 -99
  51. package/dist/components/cookie-banner/cookie-banner.js +1 -65
  52. package/dist/components/cookie-banner/cookie-banner.module.cjs +1 -55
  53. package/dist/components/cookie-banner/cookie-banner.module.js +1 -21
  54. package/dist/components/cookie-banner/cookie-banner_module.css +1 -224
  55. package/dist/components/cookie-banner/error-boundary.cjs +1 -66
  56. package/dist/components/cookie-banner/error-boundary.js +1 -32
  57. package/dist/components/cookie-banner/index.cjs +1 -101
  58. package/dist/components/cookie-banner/index.js +1 -26
  59. package/dist/components/cookie-banner/theme.cjs +1 -18
  60. package/dist/components/shared/libs/polymorphic.cjs +1 -18
  61. package/dist/components/shared/libs/recursive-clone-children.cjs +1 -49
  62. package/dist/components/shared/libs/recursive-clone-children.js +1 -15
  63. package/dist/components/shared/primitives/box.cjs +1 -53
  64. package/dist/components/shared/primitives/box.js +1 -19
  65. package/dist/components/shared/primitives/button.cjs +1 -96
  66. package/dist/components/shared/primitives/button.d.ts +2 -86
  67. package/dist/components/shared/primitives/button.d.ts.map +1 -1
  68. package/dist/components/shared/primitives/button.js +1 -62
  69. package/dist/components/shared/primitives/button.types.cjs +1 -18
  70. package/dist/components/shared/ui/accordion/accordion.cjs +1 -226
  71. package/dist/components/shared/ui/accordion/accordion.js +1 -164
  72. package/dist/components/shared/ui/accordion/accordion.module.cjs +1 -49
  73. package/dist/components/shared/ui/accordion/accordion.module.js +1 -15
  74. package/dist/components/shared/ui/accordion/accordion.types.cjs +1 -18
  75. package/dist/components/shared/ui/accordion/accordion_module.css +1 -216
  76. package/dist/components/shared/ui/accordion/index.cjs +1 -69
  77. package/dist/components/shared/ui/accordion/index.js +1 -2
  78. package/dist/components/shared/ui/button/button.cjs +1 -199
  79. package/dist/components/shared/ui/button/button.d.ts +36 -182
  80. package/dist/components/shared/ui/button/button.d.ts.map +1 -1
  81. package/dist/components/shared/ui/button/button.js +1 -149
  82. package/dist/components/shared/ui/button/button.module.cjs +1 -65
  83. package/dist/components/shared/ui/button/button.module.js +1 -31
  84. package/dist/components/shared/ui/button/button.types.cjs +1 -18
  85. package/dist/components/shared/ui/button/button.types.d.ts +2 -0
  86. package/dist/components/shared/ui/button/button.types.d.ts.map +1 -1
  87. package/dist/components/shared/ui/button/button_module.css +1 -268
  88. package/dist/components/shared/ui/button/index.cjs +1 -69
  89. package/dist/components/shared/ui/button/index.js +1 -2
  90. package/dist/components/shared/ui/icon.cjs +1 -57
  91. package/dist/components/shared/ui/icon.js +1 -23
  92. package/dist/components/shared/ui/logo.cjs +1 -90
  93. package/dist/components/shared/ui/logo.js +1 -53
  94. package/dist/components/shared/ui/switch/index.cjs +1 -69
  95. package/dist/components/shared/ui/switch/index.js +1 -2
  96. package/dist/components/shared/ui/switch/switch.cjs +1 -91
  97. package/dist/components/shared/ui/switch/switch.js +1 -47
  98. package/dist/components/shared/ui/switch/switch.module.cjs +1 -45
  99. package/dist/components/shared/ui/switch/switch.module.js +1 -11
  100. package/dist/components/shared/ui/switch/switch.types.cjs +1 -18
  101. package/dist/components/shared/ui/switch/switch_module.css +1 -197
  102. package/dist/context/consent-manager-context.cjs +1 -37
  103. package/dist/context/consent-manager-context.js +1 -3
  104. package/dist/context/theme-context.cjs +1 -47
  105. package/dist/context/theme-context.js +1 -10
  106. package/dist/hooks/__tests__/use-consent-manager.test.cjs +1 -76
  107. package/dist/hooks/__tests__/use-consent-manager.test.js +1 -70
  108. package/dist/hooks/__tests__/use-styles.test.cjs +1 -76
  109. package/dist/hooks/__tests__/use-styles.test.js +1 -70
  110. package/dist/hooks/__tests__/use-theme.test.cjs +1 -86
  111. package/dist/hooks/__tests__/use-theme.test.js +1 -80
  112. package/dist/hooks/index.cjs +1 -87
  113. package/dist/hooks/index.js +1 -20
  114. package/dist/hooks/use-color-scheme.cjs +1 -66
  115. package/dist/hooks/use-color-scheme.js +1 -32
  116. package/dist/hooks/use-consent-manager.cjs +1 -49
  117. package/dist/hooks/use-consent-manager.js +1 -15
  118. package/dist/hooks/use-focus-trap.cjs +1 -76
  119. package/dist/hooks/use-focus-trap.js +1 -42
  120. package/dist/hooks/use-scroll-lock.cjs +1 -55
  121. package/dist/hooks/use-scroll-lock.js +1 -21
  122. package/dist/hooks/use-styles.cjs +1 -94
  123. package/dist/hooks/use-styles.js +1 -60
  124. package/dist/hooks/use-theme.cjs +1 -53
  125. package/dist/hooks/use-theme.js +1 -19
  126. package/dist/hooks/use-translations.cjs +1 -57
  127. package/dist/hooks/use-translations.js +1 -23
  128. package/dist/index.cjs +1 -137
  129. package/dist/index.js +1 -20
  130. package/dist/providers/__tests__/provider-basic.test.cjs +1 -127
  131. package/dist/providers/__tests__/provider-basic.test.js +1 -121
  132. package/dist/providers/__tests__/provider-context.test.cjs +1 -139
  133. package/dist/providers/__tests__/provider-context.test.js +1 -133
  134. package/dist/providers/__tests__/provider-errors.test.cjs +1 -98
  135. package/dist/providers/__tests__/provider-errors.test.js +1 -92
  136. package/dist/providers/__tests__/test-helpers.cjs +1 -171
  137. package/dist/providers/__tests__/test-helpers.js +1 -134
  138. package/dist/providers/consent-manager-provider.cjs +1 -162
  139. package/dist/providers/consent-manager-provider.js +1 -128
  140. package/dist/types/consent-manager.cjs +1 -18
  141. package/dist/types/theme/index.cjs +1 -69
  142. package/dist/types/theme/index.js +1 -2
  143. package/dist/types/theme/style-keys.cjs +1 -18
  144. package/dist/types/theme/style-types.cjs +1 -18
  145. package/dist/utils/cn.cjs +1 -49
  146. package/dist/utils/cn.js +1 -5
  147. package/dist/utils/merge-styles.cjs +1 -62
  148. package/dist/utils/merge-styles.js +1 -28
  149. package/dist/utils/test-helpers.cjs +1 -70
  150. package/dist/utils/test-helpers.js +1 -33
  151. package/dist/utils/translations.cjs +1 -89
  152. package/dist/utils/translations.js +1 -49
  153. package/package.json +4 -6
@@ -1,58 +1,2 @@
1
1
  'use client';
2
- "use strict";
3
- var __webpack_require__ = {};
4
- (()=>{
5
- __webpack_require__.d = (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 = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
14
- })();
15
- (()=>{
16
- __webpack_require__.r = (exports1)=>{
17
- if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
18
- value: 'Module'
19
- });
20
- Object.defineProperty(exports1, '__esModule', {
21
- value: true
22
- });
23
- };
24
- })();
25
- var __webpack_exports__ = {};
26
- __webpack_require__.r(__webpack_exports__);
27
- __webpack_require__.d(__webpack_exports__, {
28
- useTranslations: ()=>useTranslations
29
- });
30
- const external_c15t_namespaceObject = require("c15t");
31
- const external_react_namespaceObject = require("react");
32
- const external_use_consent_manager_cjs_namespaceObject = require("./use-consent-manager.cjs");
33
- function useTranslations() {
34
- const { translationConfig } = (0, external_use_consent_manager_cjs_namespaceObject.useConsentManager)();
35
- return (0, external_react_namespaceObject.useMemo)(()=>{
36
- const { translations = {}, defaultLanguage = 'en' } = translationConfig;
37
- const selectedTranslations = translations[defaultLanguage];
38
- if (isTranslations(selectedTranslations)) return selectedTranslations;
39
- const englishTranslations = translations.en;
40
- if (isTranslations(englishTranslations)) return englishTranslations;
41
- return external_c15t_namespaceObject.defaultTranslationConfig.translations.en;
42
- }, [
43
- translationConfig
44
- ]);
45
- }
46
- function isTranslations(value) {
47
- if (!value || 'object' != typeof value) return false;
48
- const obj = value;
49
- const hasRequiredKeys = 'cookieBanner' in obj && 'consentManagerDialog' in obj && 'consentManagerWidget' in obj && 'consentTypes' in obj;
50
- return hasRequiredKeys;
51
- }
52
- exports.useTranslations = __webpack_exports__.useTranslations;
53
- for(var __webpack_i__ in __webpack_exports__)if (-1 === [
54
- "useTranslations"
55
- ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
56
- Object.defineProperty(exports, '__esModule', {
57
- value: true
58
- });
2
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,_)=>{for(var r in _)__webpack_require__.o(_,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:_[r]})},__webpack_require__.o=(e,_)=>Object.prototype.hasOwnProperty.call(e,_),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{useTranslations:()=>useTranslations});let external_c15t_namespaceObject=require("c15t"),external_react_namespaceObject=require("react"),external_use_consent_manager_cjs_namespaceObject=require("./use-consent-manager.cjs");function useTranslations(){let{translationConfig:e}=(0,external_use_consent_manager_cjs_namespaceObject.useConsentManager)();return(0,external_react_namespaceObject.useMemo)(()=>{let{translations:_={},defaultLanguage:r="en"}=e,n=_[r];if(isTranslations(n))return n;let a=_.en;return isTranslations(a)?a:external_c15t_namespaceObject.defaultTranslationConfig.translations.en},[e])}function isTranslations(e){return!!e&&"object"==typeof e&&"cookieBanner"in e&&"consentManagerDialog"in e&&"consentManagerWidget"in e&&"consentTypes"in e}for(var __webpack_i__ in exports.useTranslations=__webpack_exports__.useTranslations,__webpack_exports__)-1===["useTranslations"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,24 +1,2 @@
1
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 };
2
+ import*as n from"c15t";import*as e from"react";import*as t from"./use-consent-manager.js";function o(){let{translationConfig:o}=(0,t.useConsentManager)();return(0,e.useMemo)(()=>{let{translations:e={},defaultLanguage:t="en"}=o,a=e[t];if(r(a))return a;let s=e.en;return r(s)?s:n.defaultTranslationConfig.translations.en},[o])}function r(n){return!!n&&"object"==typeof n&&"cookieBanner"in n&&"consentManagerDialog"in n&&"consentManagerWidget"in n&&"consentTypes"in n}export{o as useTranslations};
package/dist/index.cjs CHANGED
@@ -1,137 +1 @@
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/use-color-scheme": function(module) {
13
- module.exports = require("./hooks/use-color-scheme.cjs");
14
- },
15
- "./hooks/use-consent-manager": function(module) {
16
- module.exports = require("./hooks/use-consent-manager.cjs");
17
- },
18
- "./hooks/use-focus-trap": function(module) {
19
- module.exports = require("./hooks/use-focus-trap.cjs");
20
- },
21
- "./hooks/use-translations": function(module) {
22
- module.exports = require("./hooks/use-translations.cjs");
23
- },
24
- "./providers/consent-manager-provider": function(module) {
25
- module.exports = require("./providers/consent-manager-provider.cjs");
26
- },
27
- "./utils/translations": function(module) {
28
- module.exports = require("./utils/translations.cjs");
29
- },
30
- c15t: function(module) {
31
- module.exports = require("c15t");
32
- }
33
- };
34
- var __webpack_module_cache__ = {};
35
- function __webpack_require__(moduleId) {
36
- var cachedModule = __webpack_module_cache__[moduleId];
37
- if (void 0 !== cachedModule) return cachedModule.exports;
38
- var module = __webpack_module_cache__[moduleId] = {
39
- exports: {}
40
- };
41
- __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
42
- return module.exports;
43
- }
44
- (()=>{
45
- __webpack_require__.n = (module)=>{
46
- var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
47
- __webpack_require__.d(getter, {
48
- a: getter
49
- });
50
- return getter;
51
- };
52
- })();
53
- (()=>{
54
- __webpack_require__.d = (exports1, definition)=>{
55
- for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
56
- enumerable: true,
57
- get: definition[key]
58
- });
59
- };
60
- })();
61
- (()=>{
62
- __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
63
- })();
64
- (()=>{
65
- __webpack_require__.r = (exports1)=>{
66
- if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
67
- value: 'Module'
68
- });
69
- Object.defineProperty(exports1, '__esModule', {
70
- value: true
71
- });
72
- };
73
- })();
74
- var __webpack_exports__ = {};
75
- (()=>{
76
- __webpack_require__.r(__webpack_exports__);
77
- __webpack_require__.d(__webpack_exports__, {
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,
81
- CookieBanner: ()=>_components_cookie_banner_cookie_banner__WEBPACK_IMPORTED_MODULE_0__.CookieBanner,
82
- configureConsentManager: ()=>c15t__WEBPACK_IMPORTED_MODULE_8__.configureConsentManager,
83
- useColorScheme: ()=>_hooks_use_color_scheme__WEBPACK_IMPORTED_MODULE_6__.useColorScheme,
84
- useConsentManager: ()=>_hooks_use_consent_manager__WEBPACK_IMPORTED_MODULE_4__.useConsentManager,
85
- useFocusTrap: ()=>_hooks_use_focus_trap__WEBPACK_IMPORTED_MODULE_7__.useFocusTrap,
86
- useTranslations: ()=>_hooks_use_translations__WEBPACK_IMPORTED_MODULE_5__.useTranslations
87
- });
88
- var _components_cookie_banner_cookie_banner__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("./components/cookie-banner/cookie-banner");
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_focus_trap__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("./hooks/use-focus-trap");
96
- var c15t__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("c15t");
97
- var _utils_translations__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("./utils/translations");
98
- var __WEBPACK_REEXPORT_OBJECT__ = {};
99
- for(var __WEBPACK_IMPORT_KEY__ in _utils_translations__WEBPACK_IMPORTED_MODULE_9__)if ([
100
- "useColorScheme",
101
- "useFocusTrap",
102
- "useTranslations",
103
- "ConsentManagerWidget",
104
- "configureConsentManager",
105
- "CookieBanner",
106
- "useConsentManager",
107
- "default",
108
- "ConsentManagerProvider",
109
- "ConsentManagerDialog"
110
- ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
111
- return _utils_translations__WEBPACK_IMPORTED_MODULE_9__[key];
112
- }).bind(0, __WEBPACK_IMPORT_KEY__);
113
- __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
114
- })();
115
- exports.ConsentManagerDialog = __webpack_exports__.ConsentManagerDialog;
116
- exports.ConsentManagerProvider = __webpack_exports__.ConsentManagerProvider;
117
- exports.ConsentManagerWidget = __webpack_exports__.ConsentManagerWidget;
118
- exports.CookieBanner = __webpack_exports__.CookieBanner;
119
- exports.configureConsentManager = __webpack_exports__.configureConsentManager;
120
- exports.useColorScheme = __webpack_exports__.useColorScheme;
121
- exports.useConsentManager = __webpack_exports__.useConsentManager;
122
- exports.useFocusTrap = __webpack_exports__.useFocusTrap;
123
- exports.useTranslations = __webpack_exports__.useTranslations;
124
- for(var __webpack_i__ in __webpack_exports__)if (-1 === [
125
- "ConsentManagerDialog",
126
- "ConsentManagerProvider",
127
- "ConsentManagerWidget",
128
- "CookieBanner",
129
- "configureConsentManager",
130
- "useColorScheme",
131
- "useConsentManager",
132
- "useFocusTrap",
133
- "useTranslations"
134
- ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
135
- Object.defineProperty(exports, '__esModule', {
136
- value: true
137
- });
1
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./components/consent-manager-dialog/consent-manager-dialog":function(e){e.exports=require("./components/consent-manager-dialog/consent-manager-dialog.cjs")},"./components/consent-manager-widget/consent-manager-widget":function(e){e.exports=require("./components/consent-manager-widget/consent-manager-widget.cjs")},"./components/cookie-banner/cookie-banner":function(e){e.exports=require("./components/cookie-banner/cookie-banner.cjs")},"./hooks/use-color-scheme":function(e){e.exports=require("./hooks/use-color-scheme.cjs")},"./hooks/use-consent-manager":function(e){e.exports=require("./hooks/use-consent-manager.cjs")},"./hooks/use-focus-trap":function(e){e.exports=require("./hooks/use-focus-trap.cjs")},"./hooks/use-translations":function(e){e.exports=require("./hooks/use-translations.cjs")},"./providers/consent-manager-provider":function(e){e.exports=require("./providers/consent-manager-provider.cjs")},"./utils/translations":function(e){e.exports=require("./utils/translations.cjs")},c15t:function(e){e.exports=require("c15t")}},__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var n=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](n,n.exports,__webpack_require__),n.exports}__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r)=>{for(var n in r)__webpack_require__.o(r,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __webpack_i__ in(()=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{ConsentManagerDialog:()=>n.ConsentManagerDialog,ConsentManagerProvider:()=>o.ConsentManagerProvider,ConsentManagerWidget:()=>r.ConsentManagerWidget,CookieBanner:()=>e.CookieBanner,configureConsentManager:()=>c.configureConsentManager,useColorScheme:()=>s.useColorScheme,useConsentManager:()=>_.useConsentManager,useFocusTrap:()=>t.useFocusTrap,useTranslations:()=>a.useTranslations});var e=__webpack_require__("./components/cookie-banner/cookie-banner"),r=__webpack_require__("./components/consent-manager-widget/consent-manager-widget"),n=__webpack_require__("./components/consent-manager-dialog/consent-manager-dialog"),o=__webpack_require__("./providers/consent-manager-provider"),_=__webpack_require__("./hooks/use-consent-manager"),a=__webpack_require__("./hooks/use-translations"),s=__webpack_require__("./hooks/use-color-scheme"),t=__webpack_require__("./hooks/use-focus-trap"),c=__webpack_require__("c15t"),i=__webpack_require__("./utils/translations"),u={};for(var p in i)0>["useColorScheme","useFocusTrap","useTranslations","ConsentManagerWidget","configureConsentManager","CookieBanner","useConsentManager","default","ConsentManagerProvider","ConsentManagerDialog"].indexOf(p)&&(u[p]=(function(e){return i[e]}).bind(0,p));__webpack_require__.d(__webpack_exports__,u)})(),exports.ConsentManagerDialog=__webpack_exports__.ConsentManagerDialog,exports.ConsentManagerProvider=__webpack_exports__.ConsentManagerProvider,exports.ConsentManagerWidget=__webpack_exports__.ConsentManagerWidget,exports.CookieBanner=__webpack_exports__.CookieBanner,exports.configureConsentManager=__webpack_exports__.configureConsentManager,exports.useColorScheme=__webpack_exports__.useColorScheme,exports.useConsentManager=__webpack_exports__.useConsentManager,exports.useFocusTrap=__webpack_exports__.useFocusTrap,exports.useTranslations=__webpack_exports__.useTranslations,__webpack_exports__)-1===["ConsentManagerDialog","ConsentManagerProvider","ConsentManagerWidget","CookieBanner","configureConsentManager","useColorScheme","useConsentManager","useFocusTrap","useTranslations"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
package/dist/index.js CHANGED
@@ -1,20 +1 @@
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_widget_consent_manager_widget_js_080fb908__ from "./components/consent-manager-widget/consent-manager-widget.js";
3
- import * as __WEBPACK_EXTERNAL_MODULE__components_consent_manager_dialog_consent_manager_dialog_js_d74113dd__ from "./components/consent-manager-dialog/consent-manager-dialog.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__hooks_use_consent_manager_js_2b895421__ from "./hooks/use-consent-manager.js";
6
- import * as __WEBPACK_EXTERNAL_MODULE__hooks_use_translations_js_78932b91__ from "./hooks/use-translations.js";
7
- import * as __WEBPACK_EXTERNAL_MODULE__hooks_use_color_scheme_js_41dc75de__ from "./hooks/use-color-scheme.js";
8
- import * as __WEBPACK_EXTERNAL_MODULE__hooks_use_focus_trap_js_7fdb46fa__ from "./hooks/use-focus-trap.js";
9
- import * as __WEBPACK_EXTERNAL_MODULE_c15t__ from "c15t";
10
- export * from "./utils/translations.js";
11
- var __webpack_exports__ConsentManagerDialog = __WEBPACK_EXTERNAL_MODULE__components_consent_manager_dialog_consent_manager_dialog_js_d74113dd__.ConsentManagerDialog;
12
- var __webpack_exports__ConsentManagerProvider = __WEBPACK_EXTERNAL_MODULE__providers_consent_manager_provider_js_7459f585__.ConsentManagerProvider;
13
- var __webpack_exports__ConsentManagerWidget = __WEBPACK_EXTERNAL_MODULE__components_consent_manager_widget_consent_manager_widget_js_080fb908__.ConsentManagerWidget;
14
- var __webpack_exports__CookieBanner = __WEBPACK_EXTERNAL_MODULE__components_cookie_banner_cookie_banner_js_aba0c776__.CookieBanner;
15
- var __webpack_exports__configureConsentManager = __WEBPACK_EXTERNAL_MODULE_c15t__.configureConsentManager;
16
- var __webpack_exports__useColorScheme = __WEBPACK_EXTERNAL_MODULE__hooks_use_color_scheme_js_41dc75de__.useColorScheme;
17
- var __webpack_exports__useConsentManager = __WEBPACK_EXTERNAL_MODULE__hooks_use_consent_manager_js_2b895421__.useConsentManager;
18
- var __webpack_exports__useFocusTrap = __WEBPACK_EXTERNAL_MODULE__hooks_use_focus_trap_js_7fdb46fa__.useFocusTrap;
19
- var __webpack_exports__useTranslations = __WEBPACK_EXTERNAL_MODULE__hooks_use_translations_js_78932b91__.useTranslations;
20
- export { __webpack_exports__ConsentManagerDialog as ConsentManagerDialog, __webpack_exports__ConsentManagerProvider as ConsentManagerProvider, __webpack_exports__ConsentManagerWidget as ConsentManagerWidget, __webpack_exports__CookieBanner as CookieBanner, __webpack_exports__configureConsentManager as configureConsentManager, __webpack_exports__useColorScheme as useColorScheme, __webpack_exports__useConsentManager as useConsentManager, __webpack_exports__useFocusTrap as useFocusTrap, __webpack_exports__useTranslations as useTranslations };
1
+ import*as e from"./components/cookie-banner/cookie-banner.js";import*as o from"./components/consent-manager-widget/consent-manager-widget.js";import*as s from"./components/consent-manager-dialog/consent-manager-dialog.js";import*as a from"./providers/consent-manager-provider.js";import*as n from"./hooks/use-consent-manager.js";import*as r from"./hooks/use-translations.js";import*as t from"./hooks/use-color-scheme.js";import*as _ from"./hooks/use-focus-trap.js";import*as i from"c15t";export*from"./utils/translations.js";var p=s.ConsentManagerDialog,g=a.ConsentManagerProvider,c=o.ConsentManagerWidget,m=e.CookieBanner,u=i.configureConsentManager,C=t.useColorScheme,k=n.useConsentManager,l=_.useFocusTrap,M=r.useTranslations;export{p as ConsentManagerDialog,g as ConsentManagerProvider,c as ConsentManagerWidget,m as CookieBanner,u as configureConsentManager,C as useColorScheme,k as useConsentManager,l as useFocusTrap,M as useTranslations};
@@ -1,127 +1 @@
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 external_index_cjs_namespaceObject = require("../../index.cjs");
7
- const mockFetch = external_vitest_namespaceObject.vi.fn();
8
- window.fetch = mockFetch;
9
- (0, external_vitest_namespaceObject.describe)('ConsentManagerProvider Basic Request Behavior', ()=>{
10
- (0, external_vitest_namespaceObject.beforeEach)(()=>{
11
- external_vitest_namespaceObject.vi.resetAllMocks();
12
- external_vitest_namespaceObject.vi.useFakeTimers();
13
- mockFetch.mockResolvedValue(new Response(JSON.stringify({
14
- showConsentBanner: true
15
- }), {
16
- status: 200,
17
- headers: {
18
- 'Content-Type': 'application/json'
19
- }
20
- }));
21
- });
22
- (0, external_vitest_namespaceObject.afterEach)(()=>{
23
- external_vitest_namespaceObject.vi.clearAllMocks();
24
- external_vitest_namespaceObject.vi.useRealTimers();
25
- });
26
- (0, external_vitest_namespaceObject.it)('should only make one initial request for consent banner status', async ()=>{
27
- (0, external_vitest_browser_react_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
28
- options: {
29
- mode: 'c15t',
30
- backendURL: '/api/c15t'
31
- },
32
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
33
- children: "Test Component"
34
- })
35
- }));
36
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
37
- (0, external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1);
38
- (0, external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining('/api/c15t/show-consent-banner'), external_vitest_namespaceObject.expect.any(Object));
39
- });
40
- (0, external_vitest_namespaceObject.it)('should not make additional requests when props change but core options remain same', async ()=>{
41
- mockFetch.mockClear();
42
- const { rerender } = (0, external_vitest_browser_react_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
43
- options: {
44
- mode: 'offline',
45
- react: {
46
- theme: 'light'
47
- }
48
- },
49
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
50
- children: "Light theme"
51
- })
52
- }));
53
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
54
- (0, external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();
55
- rerender(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
56
- options: {
57
- mode: 'offline',
58
- react: {
59
- theme: 'dark'
60
- }
61
- },
62
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
63
- children: "Dark theme"
64
- })
65
- }));
66
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
67
- (0, external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();
68
- });
69
- (0, external_vitest_namespaceObject.it)('should make a new request when core options change', async ()=>{
70
- const { rerender } = (0, external_vitest_browser_react_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
71
- options: {
72
- mode: 'c15t',
73
- backendURL: '/api/c15t-1'
74
- },
75
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
76
- children: "First URL"
77
- })
78
- }));
79
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
80
- (0, external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1);
81
- (0, external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining('/api/c15t-1/show-consent-banner'), external_vitest_namespaceObject.expect.any(Object));
82
- mockFetch.mockClear();
83
- rerender(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
84
- options: {
85
- mode: 'c15t',
86
- backendURL: '/api/c15t-2'
87
- },
88
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
89
- children: "Second URL"
90
- })
91
- }));
92
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
93
- (0, external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining('/api/c15t-2/show-consent-banner'), external_vitest_namespaceObject.expect.any(Object));
94
- });
95
- (0, external_vitest_namespaceObject.it)('should handle rapid re-renders without making duplicate requests', async ()=>{
96
- mockFetch.mockClear();
97
- const { rerender } = (0, external_vitest_browser_react_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
98
- options: {
99
- mode: 'offline'
100
- },
101
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
102
- children: "Counter: 0"
103
- })
104
- }));
105
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
106
- (0, external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();
107
- for(let i = 1; i <= 5; i++){
108
- rerender(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider, {
109
- options: {
110
- mode: 'offline'
111
- },
112
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
113
- children: [
114
- "Counter: ",
115
- i
116
- ]
117
- })
118
- }));
119
- await external_vitest_namespaceObject.vi.runAllTimersAsync();
120
- }
121
- (0, external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();
122
- });
123
- });
124
- for(var __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
125
- Object.defineProperty(exports, '__esModule', {
126
- value: true
127
- });
1
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};let jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),external_index_cjs_namespaceObject=require("../../index.cjs"),mockFetch=external_vitest_namespaceObject.vi.fn();for(var __webpack_i__ in window.fetch=mockFetch,(0,external_vitest_namespaceObject.describe)("ConsentManagerProvider Basic Request Behavior",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{external_vitest_namespaceObject.vi.resetAllMocks(),external_vitest_namespaceObject.vi.useFakeTimers(),mockFetch.mockResolvedValue(new Response(JSON.stringify({showConsentBanner:!0}),{status:200,headers:{"Content-Type":"application/json"}}))}),(0,external_vitest_namespaceObject.afterEach)(()=>{external_vitest_namespaceObject.vi.clearAllMocks(),external_vitest_namespaceObject.vi.useRealTimers()}),(0,external_vitest_namespaceObject.it)("should only make one initial request for consent banner status",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Test Component"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t/show-consent-banner"),external_vitest_namespaceObject.expect.any(Object))}),(0,external_vitest_namespaceObject.it)("should not make additional requests when props change but core options remain same",async()=>{mockFetch.mockClear();let{rerender:e}=(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",react:{theme:"light"}},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Light theme"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled(),e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",react:{theme:"dark"}},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Dark theme"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled()}),(0,external_vitest_namespaceObject.it)("should make a new request when core options change",async()=>{let{rerender:e}=(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-1"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"First URL"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t-1/show-consent-banner"),external_vitest_namespaceObject.expect.any(Object)),mockFetch.mockClear(),e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-2"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Second URL"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t-2/show-consent-banner"),external_vitest_namespaceObject.expect.any(Object))}),(0,external_vitest_namespaceObject.it)("should handle rapid re-renders without making duplicate requests",async()=>{mockFetch.mockClear();let{rerender:e}=(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Counter: 0"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();for(let t=1;t<=5;t++)e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline"},children:(0,jsx_runtime_namespaceObject.jsxs)("div",{children:["Counter: ",t]})})),await external_vitest_namespaceObject.vi.runAllTimersAsync();(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled()})}),__webpack_exports__)exports[__webpack_i__]=__webpack_exports__[__webpack_i__];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,121 +1 @@
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__index_js_cbfda0f6__ from "../../index.js";
5
- const mockFetch = __WEBPACK_EXTERNAL_MODULE_vitest__.vi.fn();
6
- window.fetch = mockFetch;
7
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.describe)('ConsentManagerProvider Basic Request Behavior', ()=>{
8
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.beforeEach)(()=>{
9
- __WEBPACK_EXTERNAL_MODULE_vitest__.vi.resetAllMocks();
10
- __WEBPACK_EXTERNAL_MODULE_vitest__.vi.useFakeTimers();
11
- mockFetch.mockResolvedValue(new Response(JSON.stringify({
12
- showConsentBanner: true
13
- }), {
14
- status: 200,
15
- headers: {
16
- 'Content-Type': 'application/json'
17
- }
18
- }));
19
- });
20
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.afterEach)(()=>{
21
- __WEBPACK_EXTERNAL_MODULE_vitest__.vi.clearAllMocks();
22
- __WEBPACK_EXTERNAL_MODULE_vitest__.vi.useRealTimers();
23
- });
24
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.it)('should only make one initial request for consent banner status', async ()=>{
25
- (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.render)(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
26
- options: {
27
- mode: 'c15t',
28
- backendURL: '/api/c15t'
29
- },
30
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
31
- children: "Test Component"
32
- })
33
- }));
34
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
35
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).toHaveBeenCalledTimes(1);
36
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).toHaveBeenCalledWith(__WEBPACK_EXTERNAL_MODULE_vitest__.expect.stringContaining('/api/c15t/show-consent-banner'), __WEBPACK_EXTERNAL_MODULE_vitest__.expect.any(Object));
37
- });
38
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.it)('should not make additional requests when props change but core options remain same', async ()=>{
39
- mockFetch.mockClear();
40
- const { rerender } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.render)(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
41
- options: {
42
- mode: 'offline',
43
- react: {
44
- theme: 'light'
45
- }
46
- },
47
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
48
- children: "Light theme"
49
- })
50
- }));
51
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
52
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).not.toHaveBeenCalled();
53
- rerender(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
54
- options: {
55
- mode: 'offline',
56
- react: {
57
- theme: 'dark'
58
- }
59
- },
60
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
61
- children: "Dark theme"
62
- })
63
- }));
64
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
65
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).not.toHaveBeenCalled();
66
- });
67
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.it)('should make a new request when core options change', async ()=>{
68
- const { rerender } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.render)(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
69
- options: {
70
- mode: 'c15t',
71
- backendURL: '/api/c15t-1'
72
- },
73
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
74
- children: "First URL"
75
- })
76
- }));
77
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
78
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).toHaveBeenCalledTimes(1);
79
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).toHaveBeenCalledWith(__WEBPACK_EXTERNAL_MODULE_vitest__.expect.stringContaining('/api/c15t-1/show-consent-banner'), __WEBPACK_EXTERNAL_MODULE_vitest__.expect.any(Object));
80
- mockFetch.mockClear();
81
- rerender(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
82
- options: {
83
- mode: 'c15t',
84
- backendURL: '/api/c15t-2'
85
- },
86
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
87
- children: "Second URL"
88
- })
89
- }));
90
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
91
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).toHaveBeenCalledWith(__WEBPACK_EXTERNAL_MODULE_vitest__.expect.stringContaining('/api/c15t-2/show-consent-banner'), __WEBPACK_EXTERNAL_MODULE_vitest__.expect.any(Object));
92
- });
93
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.it)('should handle rapid re-renders without making duplicate requests', async ()=>{
94
- mockFetch.mockClear();
95
- const { rerender } = (0, __WEBPACK_EXTERNAL_MODULE_vitest_browser_react_6a851916__.render)(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
96
- options: {
97
- mode: 'offline'
98
- },
99
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
100
- children: "Counter: 0"
101
- })
102
- }));
103
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
104
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).not.toHaveBeenCalled();
105
- for(let i = 1; i <= 5; i++){
106
- rerender(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_js_cbfda0f6__.ConsentManagerProvider, {
107
- options: {
108
- mode: 'offline'
109
- },
110
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)("div", {
111
- children: [
112
- "Counter: ",
113
- i
114
- ]
115
- })
116
- }));
117
- await __WEBPACK_EXTERNAL_MODULE_vitest__.vi.runAllTimersAsync();
118
- }
119
- (0, __WEBPACK_EXTERNAL_MODULE_vitest__.expect)(mockFetch).not.toHaveBeenCalled();
120
- });
121
- });
1
+ import*as e from"react/jsx-runtime";import*as n from"vitest";import*as t from"vitest-browser-react";import*as i from"../../index.js";let r=n.vi.fn();window.fetch=r,(0,n.describe)("ConsentManagerProvider Basic Request Behavior",()=>{(0,n.beforeEach)(()=>{n.vi.resetAllMocks(),n.vi.useFakeTimers(),r.mockResolvedValue(new Response(JSON.stringify({showConsentBanner:!0}),{status:200,headers:{"Content-Type":"application/json"}}))}),(0,n.afterEach)(()=>{n.vi.clearAllMocks(),n.vi.useRealTimers()}),(0,n.it)("should only make one initial request for consent banner status",async()=>{(0,t.render)((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t"},children:(0,e.jsx)("div",{children:"Test Component"})})),await n.vi.runAllTimersAsync(),(0,n.expect)(r).toHaveBeenCalledTimes(1),(0,n.expect)(r).toHaveBeenCalledWith(n.expect.stringContaining("/api/c15t/show-consent-banner"),n.expect.any(Object))}),(0,n.it)("should not make additional requests when props change but core options remain same",async()=>{r.mockClear();let{rerender:a}=(0,t.render)((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"offline",react:{theme:"light"}},children:(0,e.jsx)("div",{children:"Light theme"})}));await n.vi.runAllTimersAsync(),(0,n.expect)(r).not.toHaveBeenCalled(),a((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"offline",react:{theme:"dark"}},children:(0,e.jsx)("div",{children:"Dark theme"})})),await n.vi.runAllTimersAsync(),(0,n.expect)(r).not.toHaveBeenCalled()}),(0,n.it)("should make a new request when core options change",async()=>{let{rerender:a}=(0,t.render)((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-1"},children:(0,e.jsx)("div",{children:"First URL"})}));await n.vi.runAllTimersAsync(),(0,n.expect)(r).toHaveBeenCalledTimes(1),(0,n.expect)(r).toHaveBeenCalledWith(n.expect.stringContaining("/api/c15t-1/show-consent-banner"),n.expect.any(Object)),r.mockClear(),a((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-2"},children:(0,e.jsx)("div",{children:"Second URL"})})),await n.vi.runAllTimersAsync(),(0,n.expect)(r).toHaveBeenCalledWith(n.expect.stringContaining("/api/c15t-2/show-consent-banner"),n.expect.any(Object))}),(0,n.it)("should handle rapid re-renders without making duplicate requests",async()=>{r.mockClear();let{rerender:a}=(0,t.render)((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"offline"},children:(0,e.jsx)("div",{children:"Counter: 0"})}));await n.vi.runAllTimersAsync(),(0,n.expect)(r).not.toHaveBeenCalled();for(let t=1;t<=5;t++)a((0,e.jsx)(i.ConsentManagerProvider,{options:{mode:"offline"},children:(0,e.jsxs)("div",{children:["Counter: ",t]})})),await n.vi.runAllTimersAsync();(0,n.expect)(r).not.toHaveBeenCalled()})});