@c15t/react 2.2.1 → 3.0.0-alpha.1

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 (705) hide show
  1. package/AGENTS.md +89 -141
  2. package/README.md +2 -2
  3. package/dist/aggregate-components.js +2 -0
  4. package/dist/chunk-warming.js +1 -0
  5. package/dist/component-hooks/use-headless-consent-ui.js +2 -0
  6. package/dist/component-hooks/use-headless-iab-consent-ui.js +2 -0
  7. package/dist/component-hooks/use-manager.js +2 -0
  8. package/dist/component-hooks/use-panel-trigger.js +2 -0
  9. package/dist/component-hooks/use-translations.js +2 -0
  10. package/dist/components/consent-preferences-link/consent-preferences-link.js +2 -1
  11. package/dist/components/consent-preferences-link/index.js +1 -0
  12. package/dist/components/frame/atoms.js +1 -1
  13. package/dist/components/frame/frame.js +2 -1
  14. package/dist/components/frame/index.js +2 -1
  15. package/dist/components/iab-panel/atoms/card.js +2 -0
  16. package/dist/components/iab-panel/atoms/content.js +2 -0
  17. package/dist/components/iab-panel/atoms/footer.js +2 -0
  18. package/dist/components/iab-panel/atoms/header.js +2 -0
  19. package/dist/components/iab-panel/atoms/overlay.js +2 -0
  20. package/dist/components/iab-panel/atoms/purpose-item.js +2 -0
  21. package/dist/components/iab-panel/atoms/root.js +2 -0
  22. package/dist/components/iab-panel/atoms/stack-item.js +2 -0
  23. package/dist/components/iab-panel/atoms/tabs.js +2 -0
  24. package/dist/components/iab-panel/atoms/vendor-list.js +2 -0
  25. package/dist/components/iab-panel/hooks/use-display-model.js +2 -0
  26. package/dist/components/iab-panel/hooks/use-gvl-data.js +2 -0
  27. package/dist/components/iab-panel/iab-panel.js +2 -0
  28. package/dist/components/iab-panel/index.js +2 -0
  29. package/dist/components/iab-panel/use-iab-translations.js +1 -0
  30. package/dist/components/iab-prompt/atoms/button-group.js +2 -0
  31. package/dist/components/iab-prompt/atoms/card.js +2 -0
  32. package/dist/components/iab-prompt/atoms/description.js +2 -0
  33. package/dist/components/iab-prompt/atoms/footer.js +2 -0
  34. package/dist/components/iab-prompt/atoms/header.js +2 -0
  35. package/dist/components/iab-prompt/atoms/overlay.js +2 -0
  36. package/dist/components/iab-prompt/atoms/root.js +2 -0
  37. package/dist/components/iab-prompt/atoms/title.js +2 -0
  38. package/dist/components/iab-prompt/iab-prompt.js +2 -0
  39. package/dist/components/iab-prompt/index.js +2 -0
  40. package/dist/components/panel/atoms/card.js +2 -0
  41. package/dist/components/panel/atoms/overlay.js +1 -0
  42. package/dist/components/panel/atoms/root.js +2 -0
  43. package/dist/components/panel/index.js +2 -0
  44. package/dist/components/panel/panel.js +2 -0
  45. package/dist/components/{consent-dialog-link → panel-link}/index.js +1 -0
  46. package/dist/components/panel-trigger/atoms/button.js +2 -0
  47. package/dist/components/panel-trigger/atoms/icon.js +2 -0
  48. package/dist/components/panel-trigger/atoms/root.js +2 -0
  49. package/dist/components/panel-trigger/atoms/text.js +2 -0
  50. package/dist/components/panel-trigger/atoms/toolbar.js +2 -0
  51. package/dist/components/panel-trigger/index.js +2 -0
  52. package/dist/components/panel-trigger/panel-trigger-toolbar.js +2 -0
  53. package/dist/components/panel-trigger/panel-trigger.js +2 -0
  54. package/dist/components/panel-trigger/use-draggable.js +2 -0
  55. package/dist/components/preferences/atoms/accordion.js +1 -0
  56. package/dist/components/preferences/atoms/button.js +1 -0
  57. package/dist/components/preferences/atoms/footer.js +1 -0
  58. package/dist/components/preferences/atoms/root.js +2 -0
  59. package/dist/components/preferences/index.js +2 -0
  60. package/dist/components/preferences/policy-actions.js +2 -0
  61. package/dist/components/preferences/preferences.js +2 -0
  62. package/dist/components/prompt/atoms/overlay.js +1 -0
  63. package/dist/components/prompt/atoms/root.js +2 -0
  64. package/dist/components/prompt/components.js +1 -0
  65. package/dist/components/prompt/error-boundary.js +2 -0
  66. package/dist/components/prompt/index.js +2 -0
  67. package/dist/components/prompt/policy-actions.js +2 -0
  68. package/dist/components/prompt/prompt.js +2 -0
  69. package/dist/components/prompt/resolve-banner-primary-actions.js +1 -0
  70. package/dist/components/prompt/surface-context.js +2 -0
  71. package/dist/components/prompt/use-banner-copy.js +2 -0
  72. package/dist/components/shared/libs/recursive-clone-children.js +1 -1
  73. package/dist/components/shared/libs/slot.js +1 -1
  74. package/dist/components/shared/libs/use-controllable-state.js +1 -1
  75. package/dist/components/shared/policy-actions.js +2 -1
  76. package/dist/components/shared/primitives/box.js +2 -1
  77. package/dist/components/shared/primitives/button.js +1 -1
  78. package/dist/components/shared/primitives/legal-links/index.js +1 -1
  79. package/dist/components/shared/ui/accordion/accordion.js +2 -1
  80. package/dist/components/shared/ui/animated-collapse/animated-collapse.js +2 -1
  81. package/dist/components/shared/ui/branding.js +1 -1
  82. package/dist/components/shared/ui/button/button.js +1 -1
  83. package/dist/components/shared/ui/collapsible/collapsible.js +2 -1
  84. package/dist/components/shared/ui/dialog/dialog.js +2 -1
  85. package/dist/components/shared/ui/icon.js +1 -1
  86. package/dist/components/shared/ui/logo.js +1 -1
  87. package/dist/components/shared/ui/preference-item/preference-item.js +2 -1
  88. package/dist/components/shared/ui/switch/switch.js +1 -1
  89. package/dist/components/shared/ui/tabs/tabs.js +2 -1
  90. package/dist/context/consent-tracking-context.js +1 -0
  91. package/dist/context/iab-context-value.js +1 -0
  92. package/dist/context/index.js +1 -0
  93. package/dist/context/theme-context.js +2 -1
  94. package/dist/context.js +1 -0
  95. package/dist/devtools.js +2 -0
  96. package/dist/draft.js +2 -0
  97. package/dist/external-iab-context.js +2 -0
  98. package/dist/frame.js +2 -0
  99. package/dist/headless.js +1 -1
  100. package/dist/hooks/use-color-scheme.js +2 -1
  101. package/dist/hooks/use-component-config.js +2 -1
  102. package/dist/hooks/use-focus-trap.js +2 -1
  103. package/dist/hooks/use-headless-iab-consent-ui.js +2 -1
  104. package/dist/hooks/use-iab-manager.js +2 -0
  105. package/dist/hooks/use-is-hydrated.js +2 -0
  106. package/dist/hooks/use-reduced-motion.js +2 -1
  107. package/dist/hooks/use-scroll-lock.js +2 -1
  108. package/dist/hooks/use-text-direction.js +2 -1
  109. package/dist/hooks/use-theme.js +2 -1
  110. package/dist/hooks.js +1 -0
  111. package/dist/iab/styles.css +1 -1
  112. package/dist/iab/styles.tw3.css +27 -19
  113. package/dist/iab-context.js +2 -0
  114. package/dist/iab.js +1 -1
  115. package/dist/index.js +1 -1
  116. package/dist/module-hooks/iframe-blocker.js +2 -0
  117. package/dist/module-hooks/network-blocker.js +2 -0
  118. package/dist/module-hooks/persistence.js +2 -0
  119. package/dist/module-hooks/script-loader.js +2 -0
  120. package/dist/module-hooks/shared.js +2 -0
  121. package/dist/module-hooks.js +2 -0
  122. package/dist/panel-link.js +2 -0
  123. package/dist/panel-trigger.js +2 -0
  124. package/dist/panel.js +2 -0
  125. package/dist/preferences.js +2 -0
  126. package/dist/primitives.js +1 -1
  127. package/dist/prompt.js +2 -0
  128. package/dist/provider.js +2 -0
  129. package/dist/server/fetch-ssr-data.js +1 -1
  130. package/dist/server/headers.js +1 -1
  131. package/dist/server/init-cache-key.js +1 -1
  132. package/dist/server/normalize-url.js +1 -1
  133. package/dist/styles.css +1 -1
  134. package/dist/styles.tw3.css +67 -29
  135. package/dist/theme-provider.js +2 -0
  136. package/dist/transports/offline.js +1 -0
  137. package/dist/types/index.js +1 -0
  138. package/dist/types/theme/index.js +1 -1
  139. package/dist/types/theme/style-types.js +1 -1
  140. package/dist/ui-config-context.js +2 -0
  141. package/dist/ui-save.js +1 -0
  142. package/dist/utils/cn.js +1 -1
  143. package/dist/utils/default-translation-config.js +1 -0
  144. package/dist/utils/index.js +1 -0
  145. package/dist/utils/merge-slot-props.js +1 -0
  146. package/dist/utils/merge-styles.js +1 -1
  147. package/dist/utils/theme-utils.js +1 -1
  148. package/dist/version.js +1 -1
  149. package/dist-types/aggregate-components.d.ts +4 -0
  150. package/dist-types/chunk-warming.d.ts +19 -0
  151. package/dist-types/component-hooks/use-headless-consent-ui.d.ts +68 -0
  152. package/dist-types/component-hooks/use-headless-iab-consent-ui.d.ts +22 -0
  153. package/dist-types/component-hooks/use-manager.d.ts +40 -0
  154. package/dist-types/component-hooks/use-panel-trigger.d.ts +20 -0
  155. package/dist-types/component-hooks/use-translations.d.ts +2 -0
  156. package/dist-types/components/consent-preferences-link/consent-preferences-link.d.ts +1 -1
  157. package/dist-types/components/frame/atoms.d.ts +5 -5
  158. package/dist-types/components/frame/types.d.ts +3 -2
  159. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/card.d.ts +2 -1
  160. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/content.d.ts +1 -1
  161. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/footer.d.ts +1 -1
  162. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/header.d.ts +1 -1
  163. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/overlay.d.ts +1 -1
  164. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/purpose-item.d.ts +7 -1
  165. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/root.d.ts +3 -2
  166. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/stack-item.d.ts +1 -1
  167. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/tabs.d.ts +1 -1
  168. package/dist-types/components/{iab-consent-dialog → iab-panel}/atoms/vendor-list.d.ts +2 -3
  169. package/dist-types/components/iab-panel/hooks/use-display-model.d.ts +18 -0
  170. package/dist-types/components/iab-panel/hooks/use-gvl-data.d.ts +17 -0
  171. package/dist-types/components/{iab-consent-dialog/iab-consent-dialog.d.ts → iab-panel/iab-panel.d.ts} +10 -3
  172. package/dist-types/components/{iab-consent-dialog → iab-panel}/index.d.ts +3 -2
  173. package/dist-types/components/iab-panel/types.d.ts +1 -0
  174. package/dist-types/components/{iab-consent-dialog → iab-panel}/use-iab-translations.d.ts +3 -1
  175. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/button-group.d.ts +1 -1
  176. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/card.d.ts +2 -1
  177. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/description.d.ts +1 -1
  178. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/footer.d.ts +2 -1
  179. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/header.d.ts +2 -1
  180. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/overlay.d.ts +1 -1
  181. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/root.d.ts +3 -2
  182. package/dist-types/components/{iab-consent-banner → iab-prompt}/atoms/title.d.ts +1 -1
  183. package/dist-types/components/{iab-consent-banner/iab-consent-banner.d.ts → iab-prompt/iab-prompt.d.ts} +10 -4
  184. package/dist-types/components/{iab-consent-banner → iab-prompt}/index.d.ts +1 -1
  185. package/dist-types/components/{consent-dialog → panel}/atoms/card.d.ts +15 -15
  186. package/dist-types/components/{consent-dialog → panel}/atoms/overlay.d.ts +24 -8
  187. package/dist-types/components/{consent-dialog → panel}/atoms/root.d.ts +4 -3
  188. package/dist-types/components/{consent-dialog → panel}/index.d.ts +13 -8
  189. package/dist-types/components/{consent-dialog/consent-dialog.d.ts → panel/panel.d.ts} +6 -5
  190. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/atoms/button.d.ts +2 -1
  191. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/atoms/icon.d.ts +1 -16
  192. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/atoms/root.d.ts +11 -23
  193. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/atoms/text.d.ts +0 -11
  194. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/atoms/toolbar.d.ts +15 -4
  195. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/index.d.ts +2 -2
  196. package/dist-types/components/{consent-dialog-trigger/consent-dialog-trigger-toolbar.d.ts → panel-trigger/panel-trigger-toolbar.d.ts} +0 -23
  197. package/dist-types/components/{consent-dialog-trigger/consent-dialog-trigger.d.ts → panel-trigger/panel-trigger.d.ts} +8 -4
  198. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/types.d.ts +16 -7
  199. package/dist-types/components/{consent-dialog-trigger → panel-trigger}/use-draggable.d.ts +2 -9
  200. package/dist-types/components/{consent-widget → preferences}/atoms/accordion.d.ts +5 -5
  201. package/dist-types/components/{consent-widget → preferences}/atoms/footer.d.ts +3 -3
  202. package/dist-types/components/{consent-widget → preferences}/atoms/root.d.ts +1 -1
  203. package/dist-types/components/{consent-widget → preferences}/index.d.ts +11 -9
  204. package/dist-types/components/preferences/policy-actions.d.ts +10 -0
  205. package/dist-types/components/{consent-banner → prompt}/atoms/overlay.d.ts +1 -1
  206. package/dist-types/components/prompt/atoms/root.d.ts +78 -0
  207. package/dist-types/components/{consent-banner → prompt}/components.d.ts +99 -14
  208. package/dist-types/components/{consent-banner → prompt}/error-boundary.d.ts +3 -1
  209. package/dist-types/components/{consent-banner → prompt}/index.d.ts +18 -10
  210. package/dist-types/components/prompt/policy-actions.d.ts +12 -0
  211. package/dist-types/components/{consent-banner/consent-banner.d.ts → prompt/prompt.d.ts} +36 -10
  212. package/dist-types/components/prompt/resolve-banner-primary-actions.d.ts +14 -0
  213. package/dist-types/components/prompt/surface-context.d.ts +45 -0
  214. package/dist-types/components/prompt/use-banner-copy.d.ts +16 -0
  215. package/dist-types/components/shared/libs/polymorphic.d.ts +2 -2
  216. package/dist-types/components/shared/libs/recursive-clone-children.d.ts +2 -2
  217. package/dist-types/components/shared/libs/slot.d.ts +1 -1
  218. package/dist-types/components/shared/libs/use-controllable-state.d.ts +1 -1
  219. package/dist-types/components/shared/policy-actions.d.ts +8 -3
  220. package/dist-types/components/shared/primitives/box.d.ts +3 -1
  221. package/dist-types/components/shared/primitives/button.d.ts +4 -37
  222. package/dist-types/components/shared/primitives/button.types.d.ts +3 -1
  223. package/dist-types/components/shared/primitives/legal-links/index.d.ts +7 -11
  224. package/dist-types/components/shared/ui/accordion/accordion.d.ts +45 -12
  225. package/dist-types/components/shared/ui/accordion/accordion.types.d.ts +1 -1
  226. package/dist-types/components/shared/ui/animated-collapse/animated-collapse.d.ts +1 -1
  227. package/dist-types/components/shared/ui/branding.d.ts +12 -12
  228. package/dist-types/components/shared/ui/button/button.d.ts +19 -25
  229. package/dist-types/components/shared/ui/button/button.types.d.ts +2 -2
  230. package/dist-types/components/shared/ui/collapsible/collapsible.d.ts +18 -1
  231. package/dist-types/components/shared/ui/dialog/dialog.d.ts +6 -6
  232. package/dist-types/components/shared/ui/icon.d.ts +1 -1
  233. package/dist-types/components/shared/ui/logo.d.ts +0 -21
  234. package/dist-types/components/shared/ui/preference-item/preference-item.d.ts +46 -2
  235. package/dist-types/components/shared/ui/switch/switch.d.ts +19 -8
  236. package/dist-types/components/shared/ui/tabs/tabs.d.ts +19 -2
  237. package/dist-types/context/iab-context-value.d.ts +37 -0
  238. package/dist-types/context/index.d.ts +3 -0
  239. package/dist-types/context/theme-context.d.ts +2 -2
  240. package/dist-types/context.d.ts +17 -0
  241. package/dist-types/devtools.d.ts +54 -0
  242. package/dist-types/draft.d.ts +31 -0
  243. package/dist-types/external-iab-context.d.ts +29 -0
  244. package/dist-types/frame.d.ts +1 -0
  245. package/dist-types/headless.d.ts +12 -8
  246. package/dist-types/hooks/use-color-scheme.d.ts +1 -1
  247. package/dist-types/hooks/use-component-config.d.ts +2 -2
  248. package/dist-types/hooks/use-focus-trap.d.ts +2 -2
  249. package/dist-types/hooks/use-headless-iab-consent-ui.d.ts +7 -8
  250. package/dist-types/hooks/use-iab-manager.d.ts +52 -0
  251. package/dist-types/hooks/use-is-hydrated.d.ts +8 -0
  252. package/dist-types/hooks/use-reduced-motion.d.ts +1 -1
  253. package/dist-types/hooks/use-scroll-lock.d.ts +1 -1
  254. package/dist-types/hooks/use-text-direction.d.ts +1 -1
  255. package/dist-types/hooks/use-theme.d.ts +2 -1
  256. package/dist-types/hooks.d.ts +148 -0
  257. package/dist-types/iab-context.d.ts +28 -0
  258. package/dist-types/iab.d.ts +14 -8
  259. package/dist-types/index.d.ts +61 -22
  260. package/dist-types/module-hooks/iframe-blocker.d.ts +6 -0
  261. package/dist-types/module-hooks/network-blocker.d.ts +9 -0
  262. package/dist-types/module-hooks/persistence.d.ts +4 -0
  263. package/dist-types/module-hooks/script-loader.d.ts +6 -0
  264. package/dist-types/module-hooks/shared.d.ts +2 -0
  265. package/dist-types/module-hooks.d.ts +4 -0
  266. package/dist-types/panel-link.d.ts +1 -0
  267. package/dist-types/panel-trigger.d.ts +1 -0
  268. package/dist-types/panel.d.ts +1 -0
  269. package/dist-types/preferences.d.ts +1 -0
  270. package/dist-types/prompt.d.ts +1 -0
  271. package/dist-types/provider.d.ts +149 -0
  272. package/dist-types/server/fetch-ssr-data.d.ts +2 -2
  273. package/dist-types/server/headers.d.ts +3 -3
  274. package/dist-types/server/init-cache-key.d.ts +3 -3
  275. package/dist-types/server/normalize-url.d.ts +2 -2
  276. package/dist-types/server/types.d.ts +1 -1
  277. package/dist-types/theme-provider.d.ts +10 -0
  278. package/dist-types/transports/offline.d.ts +18 -0
  279. package/dist-types/types/index.d.ts +3 -0
  280. package/dist-types/types/manager.d.ts +15 -0
  281. package/dist-types/types/slots.d.ts +5 -0
  282. package/dist-types/types/theme/index.d.ts +0 -1
  283. package/dist-types/types/theme/style-types.d.ts +3 -9
  284. package/dist-types/ui-config-context.d.ts +9 -0
  285. package/dist-types/ui-save.d.ts +5 -0
  286. package/dist-types/utils/cn.d.ts +1 -1
  287. package/dist-types/utils/default-translation-config.d.ts +6 -0
  288. package/dist-types/utils/index.d.ts +4 -0
  289. package/dist-types/utils/merge-slot-props.d.ts +14 -0
  290. package/dist-types/utils/merge-styles.d.ts +1 -1
  291. package/dist-types/utils/theme-utils.d.ts +2 -2
  292. package/dist-types/version.d.ts +1 -1
  293. package/docs/README.md +89 -141
  294. package/docs/assets/v3/brand-bar.png +0 -0
  295. package/docs/assets/v3/brand-card.png +0 -0
  296. package/docs/assets/v3/choice-wall.png +0 -0
  297. package/docs/assets/v3/mobile-card.png +0 -0
  298. package/docs/assets/v3/preferences.png +0 -0
  299. package/docs/customization/overview.md +45 -0
  300. package/docs/customization/recipes.md +79 -0
  301. package/docs/customization/slots.md +55 -0
  302. package/docs/customization/tokens.md +76 -0
  303. package/docs/customization/translations.md +49 -0
  304. package/docs/frameworks/react/components/consent-banner.md +219 -202
  305. package/docs/frameworks/react/components/consent-dialog-link.md +88 -35
  306. package/docs/frameworks/react/components/consent-dialog-trigger.md +74 -134
  307. package/docs/frameworks/react/components/consent-dialog.md +170 -135
  308. package/docs/frameworks/react/components/consent-manager-provider.md +57 -256
  309. package/docs/frameworks/react/components/consent-widget.md +154 -118
  310. package/docs/frameworks/react/components/dev-tools.md +198 -33
  311. package/docs/frameworks/react/components/frame.md +120 -42
  312. package/docs/frameworks/react/concepts/consent-categories.md +24 -89
  313. package/docs/frameworks/react/concepts/policy-presets.md +123 -0
  314. package/docs/frameworks/react/headless.md +91 -185
  315. package/docs/frameworks/react/hooks/use-consent-manager/overview.md +39 -153
  316. package/docs/frameworks/react/iab/overview.md +33 -108
  317. package/docs/frameworks/react/quickstart.md +116 -112
  318. package/docs/frameworks/react/script-loader.md +41 -533
  319. package/docs/frameworks/react/styling/overview.md +168 -253
  320. package/docs/frameworks/react/troubleshooting.md +47 -119
  321. package/docs/guides/consent-state.md +60 -0
  322. package/docs/guides/data-fetching.md +163 -0
  323. package/docs/guides/deployment-modes.md +63 -0
  324. package/docs/guides/troubleshooting.md +68 -0
  325. package/docs/guides/verify-consent.md +62 -0
  326. package/docs/integrations/adobe-analytics.md +239 -105
  327. package/docs/integrations/ahrefs-analytics.md +238 -104
  328. package/docs/integrations/amplitude.md +219 -157
  329. package/docs/integrations/building-integrations.md +32 -224
  330. package/docs/integrations/clear-on-revocation.md +167 -0
  331. package/docs/integrations/clearbit.md +247 -86
  332. package/docs/integrations/cloudflare-web-analytics.md +250 -84
  333. package/docs/integrations/crisp.md +251 -97
  334. package/docs/integrations/databuddy.md +259 -153
  335. package/docs/integrations/fathom-analytics.md +239 -96
  336. package/docs/integrations/google-maps.md +328 -207
  337. package/docs/integrations/google-tag-manager.md +248 -96
  338. package/docs/integrations/google-tag.md +261 -90
  339. package/docs/integrations/heap.md +222 -149
  340. package/docs/integrations/hightouch.md +225 -131
  341. package/docs/integrations/hotjar.md +239 -90
  342. package/docs/integrations/intercom.md +239 -98
  343. package/docs/integrations/linkedin-insights.md +243 -113
  344. package/docs/integrations/logrocket.md +241 -123
  345. package/docs/integrations/matomo-analytics.md +256 -111
  346. package/docs/integrations/meta-pixel.md +197 -324
  347. package/docs/integrations/microsoft-clarity.md +233 -114
  348. package/docs/integrations/microsoft-uet.md +245 -110
  349. package/docs/integrations/mixpanel-analytics.md +252 -87
  350. package/docs/integrations/openai-pixel.md +441 -0
  351. package/docs/integrations/overview.md +95 -133
  352. package/docs/integrations/pirsch.md +249 -96
  353. package/docs/integrations/plausible-analytics.md +241 -100
  354. package/docs/integrations/posthog.md +353 -214
  355. package/docs/integrations/promptwatch.md +251 -81
  356. package/docs/integrations/reddit-pixel.md +226 -173
  357. package/docs/integrations/rudderstack.md +244 -187
  358. package/docs/integrations/rybbit-analytics.md +244 -91
  359. package/docs/integrations/segment.md +238 -92
  360. package/docs/integrations/snapchat-pixel.md +240 -110
  361. package/docs/integrations/tiktok-pixel.md +249 -81
  362. package/docs/integrations/umami-analytics.md +242 -95
  363. package/docs/integrations/vercel-analytics.md +242 -90
  364. package/docs/integrations/x-pixel.md +238 -104
  365. package/docs/integrations/youtube.md +354 -142
  366. package/docs/upgrade-v3.md +334 -0
  367. package/iab/styles.css +1 -1
  368. package/iab/styles.tw3.css +1 -1
  369. package/package.json +187 -102
  370. package/readme.json +1 -1
  371. package/src/iab/styles.css +1 -1
  372. package/src/iab/styles.tw3.css +1 -1
  373. package/src/styles.css +1 -1
  374. package/src/styles.tw3.css +1 -1
  375. package/styles.css +1 -1
  376. package/styles.tw3.css +1 -1
  377. package/client/components/consent-banner.js +0 -4
  378. package/client/components/consent-dialog-link.js +0 -3
  379. package/client/components/consent-dialog-trigger.js +0 -3
  380. package/client/components/consent-dialog.js +0 -4
  381. package/client/components/consent-widget.js +0 -4
  382. package/client/components/frame.js +0 -3
  383. package/client/components/integrations.js +0 -3
  384. package/dist/components/consent-banner/atoms/overlay.cjs +0 -1
  385. package/dist/components/consent-banner/atoms/overlay.js +0 -1
  386. package/dist/components/consent-banner/atoms/root.cjs +0 -1
  387. package/dist/components/consent-banner/atoms/root.js +0 -1
  388. package/dist/components/consent-banner/components.cjs +0 -1
  389. package/dist/components/consent-banner/components.js +0 -1
  390. package/dist/components/consent-banner/consent-banner.cjs +0 -1
  391. package/dist/components/consent-banner/consent-banner.js +0 -1
  392. package/dist/components/consent-banner/error-boundary.cjs +0 -1
  393. package/dist/components/consent-banner/error-boundary.js +0 -1
  394. package/dist/components/consent-banner/index.cjs +0 -1
  395. package/dist/components/consent-banner/index.js +0 -1
  396. package/dist/components/consent-banner/policy-actions.cjs +0 -1
  397. package/dist/components/consent-banner/policy-actions.js +0 -1
  398. package/dist/components/consent-dialog/atoms/card.cjs +0 -1
  399. package/dist/components/consent-dialog/atoms/card.js +0 -1
  400. package/dist/components/consent-dialog/atoms/overlay.cjs +0 -1
  401. package/dist/components/consent-dialog/atoms/overlay.js +0 -1
  402. package/dist/components/consent-dialog/atoms/root.cjs +0 -1
  403. package/dist/components/consent-dialog/atoms/root.js +0 -1
  404. package/dist/components/consent-dialog/consent-dialog.cjs +0 -1
  405. package/dist/components/consent-dialog/consent-dialog.js +0 -1
  406. package/dist/components/consent-dialog/index.cjs +0 -1
  407. package/dist/components/consent-dialog/index.js +0 -1
  408. package/dist/components/consent-dialog-link/index.cjs +0 -1
  409. package/dist/components/consent-dialog-trigger/atoms/button.cjs +0 -1
  410. package/dist/components/consent-dialog-trigger/atoms/button.js +0 -1
  411. package/dist/components/consent-dialog-trigger/atoms/icon.cjs +0 -1
  412. package/dist/components/consent-dialog-trigger/atoms/icon.js +0 -1
  413. package/dist/components/consent-dialog-trigger/atoms/root.cjs +0 -1
  414. package/dist/components/consent-dialog-trigger/atoms/root.js +0 -1
  415. package/dist/components/consent-dialog-trigger/atoms/text.cjs +0 -1
  416. package/dist/components/consent-dialog-trigger/atoms/text.js +0 -1
  417. package/dist/components/consent-dialog-trigger/atoms/toolbar.cjs +0 -1
  418. package/dist/components/consent-dialog-trigger/atoms/toolbar.js +0 -1
  419. package/dist/components/consent-dialog-trigger/consent-dialog-trigger-toolbar.cjs +0 -1
  420. package/dist/components/consent-dialog-trigger/consent-dialog-trigger-toolbar.js +0 -1
  421. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.cjs +0 -1
  422. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.js +0 -1
  423. package/dist/components/consent-dialog-trigger/index.cjs +0 -1
  424. package/dist/components/consent-dialog-trigger/index.js +0 -1
  425. package/dist/components/consent-dialog-trigger/types.cjs +0 -1
  426. package/dist/components/consent-dialog-trigger/use-draggable.cjs +0 -1
  427. package/dist/components/consent-dialog-trigger/use-draggable.js +0 -1
  428. package/dist/components/consent-preferences-link/consent-preferences-link.cjs +0 -1
  429. package/dist/components/consent-preferences-link/index.cjs +0 -1
  430. package/dist/components/consent-widget/atoms/accordion.cjs +0 -1
  431. package/dist/components/consent-widget/atoms/accordion.js +0 -1
  432. package/dist/components/consent-widget/atoms/button.cjs +0 -1
  433. package/dist/components/consent-widget/atoms/button.js +0 -1
  434. package/dist/components/consent-widget/atoms/footer.cjs +0 -1
  435. package/dist/components/consent-widget/atoms/footer.js +0 -1
  436. package/dist/components/consent-widget/atoms/root.cjs +0 -1
  437. package/dist/components/consent-widget/atoms/root.js +0 -1
  438. package/dist/components/consent-widget/consent-widget.cjs +0 -1
  439. package/dist/components/consent-widget/consent-widget.js +0 -1
  440. package/dist/components/consent-widget/index.cjs +0 -1
  441. package/dist/components/consent-widget/index.js +0 -1
  442. package/dist/components/consent-widget/policy-actions.cjs +0 -1
  443. package/dist/components/consent-widget/policy-actions.js +0 -1
  444. package/dist/components/consent-widget/types.cjs +0 -1
  445. package/dist/components/frame/atoms.cjs +0 -1
  446. package/dist/components/frame/frame.cjs +0 -1
  447. package/dist/components/frame/index.cjs +0 -1
  448. package/dist/components/frame/types.cjs +0 -1
  449. package/dist/components/iab-consent-banner/atoms/button-group.cjs +0 -1
  450. package/dist/components/iab-consent-banner/atoms/button-group.js +0 -1
  451. package/dist/components/iab-consent-banner/atoms/card.cjs +0 -1
  452. package/dist/components/iab-consent-banner/atoms/card.js +0 -1
  453. package/dist/components/iab-consent-banner/atoms/description.cjs +0 -1
  454. package/dist/components/iab-consent-banner/atoms/description.js +0 -1
  455. package/dist/components/iab-consent-banner/atoms/footer.cjs +0 -1
  456. package/dist/components/iab-consent-banner/atoms/footer.js +0 -1
  457. package/dist/components/iab-consent-banner/atoms/header.cjs +0 -1
  458. package/dist/components/iab-consent-banner/atoms/header.js +0 -1
  459. package/dist/components/iab-consent-banner/atoms/overlay.cjs +0 -1
  460. package/dist/components/iab-consent-banner/atoms/overlay.js +0 -1
  461. package/dist/components/iab-consent-banner/atoms/root.cjs +0 -1
  462. package/dist/components/iab-consent-banner/atoms/root.js +0 -1
  463. package/dist/components/iab-consent-banner/atoms/title.cjs +0 -1
  464. package/dist/components/iab-consent-banner/atoms/title.js +0 -1
  465. package/dist/components/iab-consent-banner/iab-consent-banner.cjs +0 -1
  466. package/dist/components/iab-consent-banner/iab-consent-banner.js +0 -1
  467. package/dist/components/iab-consent-banner/index.cjs +0 -1
  468. package/dist/components/iab-consent-banner/index.js +0 -1
  469. package/dist/components/iab-consent-dialog/atoms/card.cjs +0 -1
  470. package/dist/components/iab-consent-dialog/atoms/card.js +0 -1
  471. package/dist/components/iab-consent-dialog/atoms/content.cjs +0 -1
  472. package/dist/components/iab-consent-dialog/atoms/content.js +0 -1
  473. package/dist/components/iab-consent-dialog/atoms/footer.cjs +0 -1
  474. package/dist/components/iab-consent-dialog/atoms/footer.js +0 -1
  475. package/dist/components/iab-consent-dialog/atoms/header.cjs +0 -1
  476. package/dist/components/iab-consent-dialog/atoms/header.js +0 -1
  477. package/dist/components/iab-consent-dialog/atoms/overlay.cjs +0 -1
  478. package/dist/components/iab-consent-dialog/atoms/overlay.js +0 -1
  479. package/dist/components/iab-consent-dialog/atoms/purpose-item.cjs +0 -1
  480. package/dist/components/iab-consent-dialog/atoms/purpose-item.js +0 -1
  481. package/dist/components/iab-consent-dialog/atoms/root.cjs +0 -1
  482. package/dist/components/iab-consent-dialog/atoms/root.js +0 -1
  483. package/dist/components/iab-consent-dialog/atoms/stack-item.cjs +0 -1
  484. package/dist/components/iab-consent-dialog/atoms/stack-item.js +0 -1
  485. package/dist/components/iab-consent-dialog/atoms/tabs.cjs +0 -1
  486. package/dist/components/iab-consent-dialog/atoms/tabs.js +0 -1
  487. package/dist/components/iab-consent-dialog/atoms/vendor-list.cjs +0 -1
  488. package/dist/components/iab-consent-dialog/atoms/vendor-list.js +0 -1
  489. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.cjs +0 -1
  490. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.js +0 -1
  491. package/dist/components/iab-consent-dialog/iab-consent-dialog.cjs +0 -1
  492. package/dist/components/iab-consent-dialog/iab-consent-dialog.js +0 -1
  493. package/dist/components/iab-consent-dialog/index.cjs +0 -1
  494. package/dist/components/iab-consent-dialog/index.js +0 -1
  495. package/dist/components/iab-consent-dialog/types.cjs +0 -1
  496. package/dist/components/iab-consent-dialog/use-iab-translations.cjs +0 -1
  497. package/dist/components/iab-consent-dialog/use-iab-translations.js +0 -1
  498. package/dist/components/integrations/google-map.cjs +0 -1
  499. package/dist/components/integrations/google-map.js +0 -1
  500. package/dist/components/integrations/index.cjs +0 -1
  501. package/dist/components/integrations/index.js +0 -1
  502. package/dist/components/integrations/shared.cjs +0 -1
  503. package/dist/components/integrations/shared.js +0 -1
  504. package/dist/components/integrations/youtube-embed.cjs +0 -1
  505. package/dist/components/integrations/youtube-embed.js +0 -1
  506. package/dist/components/shared/libs/polymorphic.cjs +0 -1
  507. package/dist/components/shared/libs/recursive-clone-children.cjs +0 -1
  508. package/dist/components/shared/libs/slot.cjs +0 -1
  509. package/dist/components/shared/libs/use-controllable-state.cjs +0 -1
  510. package/dist/components/shared/policy-actions.cjs +0 -1
  511. package/dist/components/shared/primitives/box.cjs +0 -1
  512. package/dist/components/shared/primitives/button.cjs +0 -1
  513. package/dist/components/shared/primitives/button.types.cjs +0 -1
  514. package/dist/components/shared/primitives/legal-links/index.cjs +0 -1
  515. package/dist/components/shared/ui/accordion/accordion.cjs +0 -1
  516. package/dist/components/shared/ui/accordion/accordion.types.cjs +0 -1
  517. package/dist/components/shared/ui/accordion/index.cjs +0 -1
  518. package/dist/components/shared/ui/animated-collapse/animated-collapse.cjs +0 -1
  519. package/dist/components/shared/ui/animated-collapse/index.cjs +0 -1
  520. package/dist/components/shared/ui/branding.cjs +0 -1
  521. package/dist/components/shared/ui/button/button.cjs +0 -1
  522. package/dist/components/shared/ui/button/button.types.cjs +0 -1
  523. package/dist/components/shared/ui/button/index.cjs +0 -1
  524. package/dist/components/shared/ui/collapsible/collapsible.cjs +0 -1
  525. package/dist/components/shared/ui/collapsible/index.cjs +0 -1
  526. package/dist/components/shared/ui/dialog/dialog.cjs +0 -1
  527. package/dist/components/shared/ui/dialog/index.cjs +0 -1
  528. package/dist/components/shared/ui/icon.cjs +0 -1
  529. package/dist/components/shared/ui/logo.cjs +0 -1
  530. package/dist/components/shared/ui/preference-item/index.cjs +0 -1
  531. package/dist/components/shared/ui/preference-item/preference-item.cjs +0 -1
  532. package/dist/components/shared/ui/switch/index.cjs +0 -1
  533. package/dist/components/shared/ui/switch/switch.cjs +0 -1
  534. package/dist/components/shared/ui/switch/switch.types.cjs +0 -1
  535. package/dist/components/shared/ui/tabs/index.cjs +0 -1
  536. package/dist/components/shared/ui/tabs/tabs.cjs +0 -1
  537. package/dist/context/consent-manager-context.cjs +0 -1
  538. package/dist/context/consent-manager-context.js +0 -1
  539. package/dist/context/consent-tracking-context.cjs +0 -1
  540. package/dist/context/theme-context.cjs +0 -1
  541. package/dist/headless.cjs +0 -1
  542. package/dist/hooks/index.cjs +0 -1
  543. package/dist/hooks/index.js +0 -1
  544. package/dist/hooks/use-color-scheme.cjs +0 -1
  545. package/dist/hooks/use-component-config.cjs +0 -1
  546. package/dist/hooks/use-consent-dialog-trigger.cjs +0 -1
  547. package/dist/hooks/use-consent-dialog-trigger.js +0 -1
  548. package/dist/hooks/use-consent-manager.cjs +0 -1
  549. package/dist/hooks/use-consent-manager.js +0 -1
  550. package/dist/hooks/use-consent-script.cjs +0 -1
  551. package/dist/hooks/use-consent-script.js +0 -1
  552. package/dist/hooks/use-focus-trap.cjs +0 -1
  553. package/dist/hooks/use-headless-consent-ui.cjs +0 -1
  554. package/dist/hooks/use-headless-consent-ui.js +0 -1
  555. package/dist/hooks/use-headless-iab-consent-ui.cjs +0 -1
  556. package/dist/hooks/use-reduced-motion.cjs +0 -1
  557. package/dist/hooks/use-scroll-lock.cjs +0 -1
  558. package/dist/hooks/use-ssr-status.cjs +0 -1
  559. package/dist/hooks/use-ssr-status.js +0 -1
  560. package/dist/hooks/use-styles.cjs +0 -1
  561. package/dist/hooks/use-styles.js +0 -1
  562. package/dist/hooks/use-text-direction.cjs +0 -1
  563. package/dist/hooks/use-theme.cjs +0 -1
  564. package/dist/hooks/use-translations.cjs +0 -1
  565. package/dist/hooks/use-translations.js +0 -1
  566. package/dist/iab.cjs +0 -1
  567. package/dist/index.cjs +0 -1
  568. package/dist/primitives/accordion.cjs +0 -1
  569. package/dist/primitives/button.cjs +0 -1
  570. package/dist/primitives/collapsible.cjs +0 -1
  571. package/dist/primitives/dialog.cjs +0 -1
  572. package/dist/primitives/preference-item.cjs +0 -1
  573. package/dist/primitives/switch.cjs +0 -1
  574. package/dist/primitives/tabs.cjs +0 -1
  575. package/dist/primitives.cjs +0 -1
  576. package/dist/providers/consent-manager-provider.cjs +0 -1
  577. package/dist/providers/consent-manager-provider.js +0 -1
  578. package/dist/server/fetch-ssr-data.cjs +0 -1
  579. package/dist/server/headers.cjs +0 -1
  580. package/dist/server/index.cjs +0 -1
  581. package/dist/server/init-cache-key.cjs +0 -1
  582. package/dist/server/normalize-url.cjs +0 -1
  583. package/dist/server/types.cjs +0 -1
  584. package/dist/types/consent-manager.cjs +0 -1
  585. package/dist/types/theme/index.cjs +0 -1
  586. package/dist/types/theme/style-keys.cjs +0 -1
  587. package/dist/types/theme/style-types.cjs +0 -1
  588. package/dist/utils/cn.cjs +0 -1
  589. package/dist/utils/merge-styles.cjs +0 -1
  590. package/dist/utils/test-helpers.cjs +0 -1
  591. package/dist/utils/test-helpers.js +0 -1
  592. package/dist/utils/theme-utils.cjs +0 -1
  593. package/dist/version.cjs +0 -1
  594. package/dist-types/components/consent-banner/atoms/root.d.ts +0 -126
  595. package/dist-types/components/consent-banner/policy-actions.d.ts +0 -11
  596. package/dist-types/components/consent-widget/policy-actions.d.ts +0 -11
  597. package/dist-types/components/iab-consent-dialog/hooks/use-gvl-data.d.ts +0 -27
  598. package/dist-types/components/iab-consent-dialog/types.d.ts +0 -72
  599. package/dist-types/components/integrations/google-map.d.ts +0 -82
  600. package/dist-types/components/integrations/index.d.ts +0 -2
  601. package/dist-types/components/integrations/shared.d.ts +0 -12
  602. package/dist-types/components/integrations/youtube-embed.d.ts +0 -95
  603. package/dist-types/context/consent-manager-context.d.ts +0 -31
  604. package/dist-types/hooks/index.d.ts +0 -12
  605. package/dist-types/hooks/use-consent-dialog-trigger.d.ts +0 -10
  606. package/dist-types/hooks/use-consent-manager.d.ts +0 -27
  607. package/dist-types/hooks/use-consent-script.d.ts +0 -80
  608. package/dist-types/hooks/use-headless-consent-ui.d.ts +0 -46
  609. package/dist-types/hooks/use-ssr-status.d.ts +0 -57
  610. package/dist-types/hooks/use-styles.d.ts +0 -21
  611. package/dist-types/hooks/use-translations.d.ts +0 -28
  612. package/dist-types/providers/consent-manager-provider.d.ts +0 -40
  613. package/dist-types/types/consent-manager.d.ts +0 -39
  614. package/dist-types/types/theme/style-keys.d.ts +0 -1
  615. package/dist-types/utils/test-helpers.d.ts +0 -31
  616. package/docs/frameworks/react/building-headless-components.md +0 -370
  617. package/docs/frameworks/react/callbacks.md +0 -186
  618. package/docs/frameworks/react/concepts/client-modes.md +0 -177
  619. package/docs/frameworks/react/concepts/consent-models.md +0 -113
  620. package/docs/frameworks/react/concepts/cookie-management.md +0 -122
  621. package/docs/frameworks/react/concepts/glossary.md +0 -24
  622. package/docs/frameworks/react/concepts/initialization-flow.md +0 -149
  623. package/docs/frameworks/react/concepts/policy-packs.md +0 -228
  624. package/docs/frameworks/react/hooks/use-color-scheme.md +0 -41
  625. package/docs/frameworks/react/hooks/use-consent-manager/checking-consent.md +0 -96
  626. package/docs/frameworks/react/hooks/use-consent-manager/location-info.md +0 -97
  627. package/docs/frameworks/react/hooks/use-consent-manager/setting-consent.md +0 -94
  628. package/docs/frameworks/react/hooks/use-draggable.md +0 -59
  629. package/docs/frameworks/react/hooks/use-focus-trap.md +0 -42
  630. package/docs/frameworks/react/hooks/use-reduced-motion.md +0 -37
  631. package/docs/frameworks/react/hooks/use-ssr-status.md +0 -32
  632. package/docs/frameworks/react/hooks/use-text-direction.md +0 -50
  633. package/docs/frameworks/react/hooks/use-translations.md +0 -55
  634. package/docs/frameworks/react/iab/consent-banner.md +0 -91
  635. package/docs/frameworks/react/iab/consent-dialog.md +0 -129
  636. package/docs/frameworks/react/iab/use-gvl-data.md +0 -21
  637. package/docs/frameworks/react/iframe-blocking.md +0 -106
  638. package/docs/frameworks/react/internationalization.md +0 -207
  639. package/docs/frameworks/react/network-blocker.md +0 -140
  640. package/docs/frameworks/react/optimization.md +0 -148
  641. package/docs/frameworks/react/policy-packs.md +0 -242
  642. package/docs/frameworks/react/server-side.md +0 -158
  643. package/docs/frameworks/react/styling/classnames.md +0 -94
  644. package/docs/frameworks/react/styling/color-scheme.md +0 -84
  645. package/docs/frameworks/react/styling/css-variables.md +0 -53
  646. package/docs/frameworks/react/styling/slots.md +0 -94
  647. package/docs/frameworks/react/styling/tailwind.md +0 -119
  648. package/docs/frameworks/react/styling/tokens.md +0 -156
  649. package/docs/shared/concepts/client-modes.md +0 -103
  650. package/docs/shared/concepts/consent-categories.md +0 -41
  651. package/docs/shared/concepts/consent-models.md +0 -72
  652. package/docs/shared/concepts/cookie-management.md +0 -88
  653. package/docs/shared/concepts/glossary.md +0 -24
  654. package/docs/shared/concepts/initialization-flow.md +0 -105
  655. package/docs/shared/concepts/policy-packs.md +0 -225
  656. package/docs/shared/react/components/consent-banner.md +0 -242
  657. package/docs/shared/react/components/consent-dialog-link.md +0 -45
  658. package/docs/shared/react/components/consent-dialog-trigger.md +0 -185
  659. package/docs/shared/react/components/consent-dialog.md +0 -119
  660. package/docs/shared/react/components/consent-manager-provider.md +0 -225
  661. package/docs/shared/react/components/consent-widget.md +0 -121
  662. package/docs/shared/react/components/dev-tools.md +0 -81
  663. package/docs/shared/react/components/frame.md +0 -52
  664. package/docs/shared/react/guides/building-headless-components.md +0 -110
  665. package/docs/shared/react/guides/callbacks.md +0 -89
  666. package/docs/shared/react/guides/headless.md +0 -31
  667. package/docs/shared/react/guides/iframe-blocking.md +0 -65
  668. package/docs/shared/react/guides/internationalization.md +0 -123
  669. package/docs/shared/react/guides/network-blocker.md +0 -72
  670. package/docs/shared/react/guides/optimization.md +0 -44
  671. package/docs/shared/react/guides/policy-packs.md +0 -173
  672. package/docs/shared/react/guides/script-loader.md +0 -311
  673. package/docs/shared/react/hooks/use-color-scheme.md +0 -31
  674. package/docs/shared/react/hooks/use-consent-manager/checking-consent.md +0 -95
  675. package/docs/shared/react/hooks/use-consent-manager/location-info.md +0 -96
  676. package/docs/shared/react/hooks/use-consent-manager/overview.md +0 -74
  677. package/docs/shared/react/hooks/use-consent-manager/setting-consent.md +0 -93
  678. package/docs/shared/react/hooks/use-draggable.md +0 -30
  679. package/docs/shared/react/hooks/use-focus-trap.md +0 -20
  680. package/docs/shared/react/hooks/use-reduced-motion.md +0 -33
  681. package/docs/shared/react/hooks/use-ssr-status.md +0 -16
  682. package/docs/shared/react/hooks/use-text-direction.md +0 -38
  683. package/docs/shared/react/hooks/use-translations.md +0 -15
  684. package/docs/shared/react/iab/consent-banner.md +0 -60
  685. package/docs/shared/react/iab/consent-dialog.md +0 -76
  686. package/docs/shared/react/iab/overview.md +0 -80
  687. package/docs/shared/react/iab/use-gvl-data.md +0 -21
  688. package/docs/shared/react/styling/classnames.md +0 -93
  689. package/docs/shared/react/styling/color-scheme.md +0 -35
  690. package/docs/shared/react/styling/css-variables.md +0 -53
  691. package/docs/shared/react/styling/overview.md +0 -261
  692. package/docs/shared/react/styling/slots.md +0 -93
  693. package/docs/shared/react/styling/stylesheet-entrypoint.md +0 -8
  694. package/docs/shared/react/styling/tailwind.md +0 -88
  695. package/docs/shared/react/styling/tokens.md +0 -155
  696. package/docs/shared/troubleshooting.md +0 -82
  697. /package/dist/components/{consent-dialog-trigger → iab-panel}/types.js +0 -0
  698. /package/dist/components/{consent-widget → panel-trigger}/types.js +0 -0
  699. /package/dist/components/{iab-consent-dialog → preferences}/types.js +0 -0
  700. /package/dist/types/{consent-manager.js → manager.js} +0 -0
  701. /package/dist/types/{theme/style-keys.js → slots.js} +0 -0
  702. /package/dist-types/components/{consent-dialog-link → panel-link}/index.d.ts +0 -0
  703. /package/dist-types/components/{consent-widget → preferences}/atoms/button.d.ts +0 -0
  704. /package/dist-types/components/{consent-widget/consent-widget.d.ts → preferences/preferences.d.ts} +0 -0
  705. /package/dist-types/components/{consent-widget → preferences}/types.d.ts +0 -0
package/package.json CHANGED
@@ -1,52 +1,146 @@
1
1
  {
2
2
  "name": "@c15t/react",
3
- "version": "2.2.1",
3
+ "version": "3.0.0-alpha.1",
4
4
  "description": "React cookie banner, consent manager, preference center, and headless CMP components with IAB TCF and Consent Mode support.",
5
5
  "keywords": [
6
- "react",
7
- "react-consent",
8
- "react-cookie-banner",
9
- "react-cookie-consent",
10
- "consent",
11
- "privacy",
12
- "gdpr",
13
6
  "ccpa",
14
- "lgpd",
15
- "tcf",
16
- "iab",
17
7
  "cmp",
18
- "headless",
19
- "typescript",
20
- "cookie-banner",
21
- "cookie-consent",
22
- "consent-management-platform",
23
- "consent-management",
8
+ "consent",
24
9
  "consent-banner",
10
+ "consent-management",
11
+ "consent-management-platform",
25
12
  "consent-manager-react",
13
+ "consent-mode-v2",
14
+ "cookie-banner",
15
+ "cookie-consent",
16
+ "gdpr",
17
+ "google-consent-mode",
18
+ "headless",
19
+ "iab",
20
+ "lgpd",
26
21
  "preference-center",
22
+ "privacy",
23
+ "react",
24
+ "react-cmp",
25
+ "react-consent",
26
+ "react-cookie-banner",
27
+ "react-cookie-consent",
27
28
  "react-server-components",
28
29
  "rsc",
29
- "use-client",
30
+ "tcf",
30
31
  "tracking-consent",
31
- "google-consent-mode",
32
- "consent-mode-v2",
33
- "react-cmp"
32
+ "typescript",
33
+ "use-client"
34
34
  ],
35
35
  "homepage": "https://c15t.com/docs/frameworks/react/quickstart",
36
36
  "bugs": {
37
37
  "url": "https://github.com/c15t/c15t/issues"
38
38
  },
39
+ "license": "Apache-2.0",
39
40
  "repository": {
40
41
  "type": "git",
41
42
  "url": "https://github.com/c15t/c15t.git",
42
43
  "directory": "packages/react"
43
44
  },
44
- "license": "Apache-2.0",
45
+ "files": [
46
+ "dist",
47
+ "dist-types",
48
+ "AGENTS.md",
49
+ "docs",
50
+ "styles.css",
51
+ "styles.tw3.css",
52
+ "iab",
53
+ "src/styles.tw3.css",
54
+ "src/iab/styles.tw3.css",
55
+ "!dist/mockServiceWorker.js"
56
+ ],
57
+ "type": "module",
45
58
  "sideEffects": [
46
59
  "**/*.css"
47
60
  ],
48
- "type": "module",
61
+ "main": "./dist/index.js",
62
+ "types": "./dist-types/index.d.ts",
49
63
  "exports": {
64
+ ".": {
65
+ "types": "./dist-types/index.d.ts",
66
+ "import": "./dist/index.js",
67
+ "default": "./dist/index.js"
68
+ },
69
+ "./provider": {
70
+ "types": "./dist-types/provider.d.ts",
71
+ "import": "./dist/provider.js",
72
+ "default": "./dist/provider.js"
73
+ },
74
+ "./hooks": {
75
+ "types": "./dist-types/hooks.d.ts",
76
+ "import": "./dist/hooks.js",
77
+ "default": "./dist/hooks.js"
78
+ },
79
+ "./draft": {
80
+ "types": "./dist-types/draft.d.ts",
81
+ "import": "./dist/draft.js",
82
+ "default": "./dist/draft.js"
83
+ },
84
+ "./module-hooks": {
85
+ "types": "./dist-types/module-hooks.d.ts",
86
+ "import": "./dist/module-hooks.js",
87
+ "default": "./dist/module-hooks.js"
88
+ },
89
+ "./module-hooks/script-loader": {
90
+ "types": "./dist-types/module-hooks/script-loader.d.ts",
91
+ "import": "./dist/module-hooks/script-loader.js",
92
+ "default": "./dist/module-hooks/script-loader.js"
93
+ },
94
+ "./module-hooks/persistence": {
95
+ "types": "./dist-types/module-hooks/persistence.d.ts",
96
+ "import": "./dist/module-hooks/persistence.js",
97
+ "default": "./dist/module-hooks/persistence.js"
98
+ },
99
+ "./module-hooks/network-blocker": {
100
+ "types": "./dist-types/module-hooks/network-blocker.d.ts",
101
+ "import": "./dist/module-hooks/network-blocker.js",
102
+ "default": "./dist/module-hooks/network-blocker.js"
103
+ },
104
+ "./module-hooks/iframe-blocker": {
105
+ "types": "./dist-types/module-hooks/iframe-blocker.d.ts",
106
+ "import": "./dist/module-hooks/iframe-blocker.js",
107
+ "default": "./dist/module-hooks/iframe-blocker.js"
108
+ },
109
+ "./consent-banner": {
110
+ "types": "./dist-types/prompt.d.ts",
111
+ "import": "./dist/prompt.js",
112
+ "default": "./dist/prompt.js"
113
+ },
114
+ "./consent-dialog": {
115
+ "types": "./dist-types/panel.d.ts",
116
+ "import": "./dist/panel.js",
117
+ "default": "./dist/panel.js"
118
+ },
119
+ "./consent-widget": {
120
+ "types": "./dist-types/preferences.d.ts",
121
+ "import": "./dist/preferences.js",
122
+ "default": "./dist/preferences.js"
123
+ },
124
+ "./consent-dialog-link": {
125
+ "types": "./dist-types/panel-link.d.ts",
126
+ "import": "./dist/panel-link.js",
127
+ "default": "./dist/panel-link.js"
128
+ },
129
+ "./consent-dialog-trigger": {
130
+ "types": "./dist-types/panel-trigger.d.ts",
131
+ "import": "./dist/panel-trigger.js",
132
+ "default": "./dist/panel-trigger.js"
133
+ },
134
+ "./frame": {
135
+ "types": "./dist-types/frame.d.ts",
136
+ "import": "./dist/frame.js",
137
+ "default": "./dist/frame.js"
138
+ },
139
+ "./iab": {
140
+ "types": "./dist-types/iab.d.ts",
141
+ "import": "./dist/iab.js",
142
+ "default": "./dist/iab.js"
143
+ },
50
144
  "./styles.css": "./dist/styles.css",
51
145
  "./styles.tw3.css": "./dist/styles.tw3.css",
52
146
  "./iab/styles.css": "./dist/iab/styles.css",
@@ -54,135 +148,126 @@
54
148
  "./primitives": {
55
149
  "types": "./dist-types/primitives.d.ts",
56
150
  "import": "./dist/primitives.js",
57
- "require": "./dist/primitives.cjs"
151
+ "default": "./dist/primitives.js"
58
152
  },
59
153
  "./primitives/*": {
60
154
  "types": "./dist-types/primitives/*.d.ts",
61
155
  "import": "./dist/primitives/*.js",
62
- "require": "./dist/primitives/*.cjs"
156
+ "default": "./dist/primitives/*.js"
63
157
  },
64
158
  "./server": {
65
159
  "types": "./dist-types/server/index.d.ts",
66
160
  "import": "./dist/server/index.js",
67
- "require": "./dist/server/index.cjs"
161
+ "default": "./dist/server/index.js"
68
162
  },
69
163
  "./headless": {
70
164
  "types": "./dist-types/headless.d.ts",
71
165
  "import": "./dist/headless.js",
72
- "require": "./dist/headless.cjs"
73
- },
74
- "./cookie-banner": {
75
- "types": "./dist-types/components/consent-banner/index.d.ts",
76
- "import": "./client/components/consent-banner.js",
77
- "require": "./dist/components/consent-banner/index.cjs"
166
+ "default": "./dist/headless.js"
78
167
  },
79
168
  "./components/consent-banner": {
80
- "types": "./dist-types/components/consent-banner/index.d.ts",
81
- "import": "./client/components/consent-banner.js",
82
- "require": "./dist/components/consent-banner/index.cjs"
169
+ "types": "./dist-types/components/prompt/index.d.ts",
170
+ "import": "./dist/components/prompt/index.js",
171
+ "default": "./dist/components/prompt/index.js"
83
172
  },
84
173
  "./components/consent-dialog": {
85
- "types": "./dist-types/components/consent-dialog/index.d.ts",
86
- "import": "./client/components/consent-dialog.js",
87
- "require": "./dist/components/consent-dialog/index.cjs"
174
+ "types": "./dist-types/components/panel/index.d.ts",
175
+ "import": "./dist/components/panel/index.js",
176
+ "default": "./dist/components/panel/index.js"
88
177
  },
89
178
  "./components/consent-dialog-trigger": {
90
- "types": "./dist-types/components/consent-dialog-trigger/index.d.ts",
91
- "import": "./client/components/consent-dialog-trigger.js",
92
- "require": "./dist/components/consent-dialog-trigger/index.cjs"
179
+ "types": "./dist-types/components/panel-trigger/index.d.ts",
180
+ "import": "./dist/components/panel-trigger/index.js",
181
+ "default": "./dist/components/panel-trigger/index.js"
93
182
  },
94
183
  "./components/consent-dialog-link": {
95
- "types": "./dist-types/components/consent-dialog-link/index.d.ts",
96
- "import": "./client/components/consent-dialog-link.js",
97
- "require": "./dist/components/consent-dialog-link/index.cjs"
184
+ "types": "./dist-types/components/panel-link/index.d.ts",
185
+ "import": "./dist/components/panel-link/index.js",
186
+ "default": "./dist/components/panel-link/index.js"
98
187
  },
99
188
  "./components/consent-widget": {
100
- "types": "./dist-types/components/consent-widget/index.d.ts",
101
- "import": "./client/components/consent-widget.js",
102
- "require": "./dist/components/consent-widget/index.cjs"
189
+ "types": "./dist-types/components/preferences/index.d.ts",
190
+ "import": "./dist/components/preferences/index.js",
191
+ "default": "./dist/components/preferences/index.js"
103
192
  },
104
193
  "./components/frame": {
105
194
  "types": "./dist-types/components/frame/index.d.ts",
106
- "import": "./client/components/frame.js",
107
- "require": "./dist/components/frame/index.cjs"
195
+ "import": "./dist/components/frame/index.js",
196
+ "default": "./dist/components/frame/index.js"
108
197
  },
109
- "./components/integrations": {
110
- "types": "./dist-types/components/integrations/index.d.ts",
111
- "import": "./client/components/integrations.js",
112
- "require": "./dist/components/integrations/index.cjs"
198
+ "./context": {
199
+ "types": "./dist-types/context/index.d.ts",
200
+ "import": "./dist/context/index.js",
201
+ "default": "./dist/context/index.js"
113
202
  },
114
- "./iab": {
115
- "types": "./dist-types/iab.d.ts",
116
- "import": "./dist/iab.js",
117
- "require": "./dist/iab.cjs"
203
+ "./types": {
204
+ "types": "./dist-types/types/index.d.ts",
205
+ "import": "./dist/types/index.js",
206
+ "default": "./dist/types/index.js"
118
207
  },
119
- "./hooks": {
120
- "types": "./dist-types/hooks/index.d.ts",
121
- "import": "./dist/hooks/index.js",
122
- "require": "./dist/hooks/index.cjs"
208
+ "./utils": {
209
+ "types": "./dist-types/utils/index.d.ts",
210
+ "import": "./dist/utils/index.js",
211
+ "default": "./dist/utils/index.js"
123
212
  },
124
- ".": {
125
- "types": "./dist-types/index.d.ts",
126
- "import": "./dist/index.js",
127
- "require": "./dist/index.cjs"
213
+ "./devtools": {
214
+ "types": "./dist-types/devtools.d.ts",
215
+ "import": "./dist/devtools.js",
216
+ "default": "./dist/devtools.js"
128
217
  }
129
218
  },
130
- "main": "./dist/index.cjs",
131
- "module": "./dist/index.js",
132
- "types": "./dist-types/index.d.ts",
133
- "files": [
134
- "dist",
135
- "dist-types",
136
- "AGENTS.md",
137
- "docs",
138
- "client",
139
- "styles.css",
140
- "styles.tw3.css",
141
- "iab",
142
- "src/styles.tw3.css",
143
- "src/iab/styles.tw3.css",
144
- "!dist/mockServiceWorker.js"
145
- ],
219
+ "publishConfig": {
220
+ "access": "public"
221
+ },
146
222
  "scripts": {
147
- "prebuild": "genversion --esm --semi src/version.ts",
148
- "build": "bun prebuild && rslib build && bun ../../scripts/normalize-dist-types.mjs && bun scripts/generate-distribution-css.ts && bun run clean:dist:test-artifacts && bun ../../scripts/generate-package-docs.ts @c15t/react",
223
+ "build": "bun prebuild && rslib build && bun ../../scripts/normalize-dist-types.mjs && bun scripts/generate-distribution-css.ts && bun run clean:dist:test-artifacts && node ../shared/restore-client-directives.mjs src dist",
149
224
  "build:docs": "bun ../../scripts/generate-package-docs.ts @c15t/react",
150
- "check-types": "bun prebuild && tsc --noEmit",
225
+ "check-types": "bun prebuild && tsc --noEmit && tsc -p tsconfig.type-tests.json",
151
226
  "clean:dist:test-artifacts": "bun --eval \"import { rmSync } from 'node:fs'; rmSync('dist/mockServiceWorker.js', { force: true });\"",
152
227
  "dev": "sh -c 'bun prebuild && rslib build --no-dts --no-clean && bun scripts/generate-distribution-css.ts && rslib build --watch --no-dts --no-clean'",
153
- "fmt": "bun biome format --write . && bun biome check --formatter-enabled=false --linter-enabled=false --write",
154
- "lint": "bun biome lint ./src",
155
- "prepack": "bun ../../scripts/verify-package-artifacts.ts",
156
- "test": "bun prebuild && bun run test:types && vitest run",
157
- "test:types": "tsc --noEmit --project tsconfig.type-tests.json",
228
+ "fmt": "bun oxfmt .",
229
+ "lint": "bun oxlint ./src",
230
+ "prebuild": "genversion --esm --semi src/version.ts",
231
+ "prepack": "bun run build:docs && bun ../../scripts/verify-package-artifacts.ts",
232
+ "test": "bun prebuild && vitest run",
158
233
  "test:watch": "bun prebuild && vitest"
159
234
  },
160
- "browserslist": [
161
- ">0.2%",
162
- "not dead",
163
- "not op_mini all"
164
- ],
165
235
  "dependencies": {
166
- "@c15t/ui": "2.2.1",
167
- "@types/google.maps": "3.65.3",
168
- "c15t": "2.2.1"
236
+ "@c15t/core": "3.0.0-alpha.1",
237
+ "@c15t/dev-tools": "3.0.0-alpha.1",
238
+ "@c15t/iab": "3.0.0-alpha.1",
239
+ "@c15t/schema": "3.0.0-alpha.0",
240
+ "@c15t/translations": "3.0.0-alpha.0",
241
+ "@c15t/ui": "3.0.0-alpha.1",
242
+ "@types/google.maps": "3.65.3"
169
243
  },
170
244
  "devDependencies": {
171
- "@c15t/backend": "2.2.1",
172
- "@c15t/iab": "2.2.1",
245
+ "@c15t/backend": "3.0.0-alpha.1",
246
+ "@c15t/conformance": "0.0.1",
173
247
  "@c15t/typescript-config": "0.0.1",
174
248
  "@c15t/vitest-config": "1.0.0",
175
249
  "@iabtechlabtcf/core": "^1.5.20",
176
250
  "genversion": "3.2.0",
177
- "msw": "^2.14.6"
251
+ "msw": "^2.14.6",
252
+ "typescript": "7.0.2"
178
253
  },
179
254
  "peerDependencies": {
180
255
  "react": "^19.0.0 || ^19.0.0-rc || ^18.0.0 || ^17.0.0 || ^16.8.0",
181
256
  "react-dom": "^19.0.0 || ^19.0.0-rc || ^18.0.0 || ^17.0.0 || ^16.8.0"
182
257
  },
183
- "publishConfig": {
184
- "access": "public"
258
+ "peerDependenciesMeta": {
259
+ "react": {
260
+ "optional": true
261
+ },
262
+ "react-dom": {
263
+ "optional": true
264
+ }
185
265
  },
266
+ "browserslist": [
267
+ ">0.2%",
268
+ "not dead",
269
+ "not op_mini all"
270
+ ],
186
271
  "msw": {
187
272
  "workerDirectory": [
188
273
  "public"
package/readme.json CHANGED
@@ -15,7 +15,7 @@
15
15
  ],
16
16
  "prerequisites": [
17
17
  "React 16.8 or later",
18
- "Node.js 18.17.0 or later",
18
+ "Node.js 20.19 or later",
19
19
  "A hosted [c15t instance](https://inth.com) (free sign-up), [self-hosted deployment](https://c15t.com/docs/self-host/quickstart), or offline mode for local-only storage"
20
20
  ],
21
21
  "manualInstallation": [
@@ -8,4 +8,4 @@
8
8
  * @import "@c15t/react/styles.css";
9
9
  * @import "@c15t/react/iab/styles.css";
10
10
  */
11
- @import "@c15t/ui/iab/styles.css";
11
+ @import '@c15t/ui/iab/styles.css';
@@ -11,4 +11,4 @@
11
11
  * @import "@c15t/react/iab/styles.tw3.css";
12
12
  * @tailwind utilities;
13
13
  */
14
- @import "@c15t/ui/iab/styles.tw3.css";
14
+ @import '@c15t/ui/iab/styles.tw3.css';
package/src/styles.css CHANGED
@@ -7,4 +7,4 @@
7
7
  * Usage (src/index.css):
8
8
  * @import "@c15t/react/styles.css";
9
9
  */
10
- @import "@c15t/ui/styles.css";
10
+ @import '@c15t/ui/styles.css';
@@ -10,4 +10,4 @@
10
10
  * @import "@c15t/react/styles.tw3.css";
11
11
  * @tailwind utilities;
12
12
  */
13
- @import "@c15t/ui/styles.tw3.css";
13
+ @import '@c15t/ui/styles.tw3.css';
package/styles.css CHANGED
@@ -1 +1 @@
1
- @import "./dist/styles.css";
1
+ @import './dist/styles.css';
package/styles.tw3.css CHANGED
@@ -1 +1 @@
1
- @import "./dist/styles.tw3.css";
1
+ @import './dist/styles.tw3.css';
@@ -1,4 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/consent-banner/index.js';
4
- export { default } from '../../dist/components/consent-banner/index.js';
@@ -1,3 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/consent-dialog-link/index.js';
@@ -1,3 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/consent-dialog-trigger/index.js';
@@ -1,4 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/consent-dialog/index.js';
4
- export { default } from '../../dist/components/consent-dialog/index.js';
@@ -1,4 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/consent-widget/index.js';
4
- export { default } from '../../dist/components/consent-widget/index.js';
@@ -1,3 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/frame/index.js';
@@ -1,3 +0,0 @@
1
- 'use client';
2
-
3
- export * from '../../dist/components/integrations/index.js';
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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__.n=e=>{var _=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(_,{a:_}),_},__webpack_require__.d=(e,_,r)=>{var a=(_,r)=>{for(var a in _)__webpack_require__.o(_,a)&&!__webpack_require__.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,[r]:_[a]})};a(_,"get"),a(r,"value")},__webpack_require__.o=(e,_)=>Object.prototype.hasOwnProperty.call(e,_),__webpack_require__.r=e=>{"u">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__,{ConsentBannerOverlay:()=>ConsentBannerOverlay,Overlay:()=>Overlay});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),consent_banner_module_js_namespaceObject=require("@c15t/ui/styles/components/consent-banner.module.js");var consent_banner_module_js_default=__webpack_require__.n(consent_banner_module_js_namespaceObject);const external_react_namespaceObject=require("react"),use_consent_manager_cjs_namespaceObject=require("../../../hooks/use-consent-manager.cjs"),use_scroll_lock_cjs_namespaceObject=require("../../../hooks/use-scroll-lock.cjs"),use_styles_cjs_namespaceObject=require("../../../hooks/use-styles.cjs"),use_theme_cjs_namespaceObject=require("../../../hooks/use-theme.cjs"),cn_cjs_namespaceObject=require("../../../utils/cn.cjs"),ConsentBannerOverlay=(0,external_react_namespaceObject.forwardRef)(({className:e,style:_,noStyle:r,asChild:a,...n},t)=>{let s,{activeUI:c}=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)(),{disableAnimation:o,noStyle:l,scrollLock:u}=(0,use_theme_cjs_namespaceObject.useTheme)(),p="banner"===c,[b,i]=(0,external_react_namespaceObject.useState)(!1);(0,external_react_namespaceObject.useEffect)(()=>{if(p)i(!0);else if(o)i(!1);else{let e=setTimeout(()=>{i(!1)},Number.parseInt(getComputedStyle(document.documentElement).getPropertyValue("--consent-banner-animation-duration")||"200",10));return()=>clearTimeout(e)}},[p,o]);let m=(0,use_styles_cjs_namespaceObject.useStyles)("consentBannerOverlay",{baseClassName:!(l||r)&&consent_banner_module_js_default().overlay,className:e,noStyle:l||r});s=l||r||o?void 0:b?consent_banner_module_js_default().overlayVisible:consent_banner_module_js_default().overlayHidden;let j=(0,cn_cjs_namespaceObject.cnExt)(m.className,s);return(0,use_scroll_lock_cjs_namespaceObject.useScrollLock)(!!(p&&u)),p&&u?(0,jsx_runtime_namespaceObject.jsx)("div",{ref:t,...n,className:j,style:{...m.style,..._},"data-testid":"consent-banner-overlay"}):null}),Overlay=ConsentBannerOverlay;for(var __rspack_i in exports.ConsentBannerOverlay=__webpack_exports__.ConsentBannerOverlay,exports.Overlay=__webpack_exports__.Overlay,__webpack_exports__)-1===["ConsentBannerOverlay","Overlay"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import t from"@c15t/ui/styles/components/consent-banner.module.js";import{forwardRef as o,useEffect as r,useState as s}from"react";import{useConsentManager as n}from"../../../hooks/use-consent-manager.js";import{useScrollLock as l}from"../../../hooks/use-scroll-lock.js";import{useStyles as a}from"../../../hooks/use-styles.js";import{useTheme as m}from"../../../hooks/use-theme.js";import{cnExt as i}from"../../../utils/cn.js";let u=o(({className:o,style:u,noStyle:c,asChild:y,...p},d)=>{let f,{activeUI:v}=n(),{disableAnimation:b,noStyle:j,scrollLock:h}=m(),k="banner"===v,[N,g]=s(!1);r(()=>{if(k)g(!0);else if(b)g(!1);else{let e=setTimeout(()=>{g(!1)},Number.parseInt(getComputedStyle(document.documentElement).getPropertyValue("--consent-banner-animation-duration")||"200",10));return()=>clearTimeout(e)}},[k,b]);let C=a("consentBannerOverlay",{baseClassName:!(j||c)&&t.overlay,className:o,noStyle:j||c});f=j||c||b?void 0:N?t.overlayVisible:t.overlayHidden;let O=i(C.className,f);return l(!!(k&&h)),k&&h?e("div",{ref:d,...p,className:O,style:{...C.style,...u},"data-testid":"consent-banner-overlay"}):null}),c=u;export{u as ConsentBannerOverlay,c as Overlay};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t,n)=>{var a=(t,n)=>{for(var a in t)__webpack_require__.o(t,a)&&!__webpack_require__.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,[n]:t[a]})};a(t,"get"),a(n,"value")},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"u">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__,{ConsentBannerRoot:()=>ConsentBannerRoot,Root:()=>Root});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),consent_banner_module_js_namespaceObject=require("@c15t/ui/styles/components/consent-banner.module.js");var consent_banner_module_js_default=__webpack_require__.n(consent_banner_module_js_namespaceObject);const utils_namespaceObject=require("@c15t/ui/utils"),external_react_namespaceObject=require("react"),external_react_dom_namespaceObject=require("react-dom"),consent_tracking_context_cjs_namespaceObject=require("../../../context/consent-tracking-context.cjs"),theme_context_cjs_namespaceObject=require("../../../context/theme-context.cjs"),use_consent_manager_cjs_namespaceObject=require("../../../hooks/use-consent-manager.cjs"),use_styles_cjs_namespaceObject=require("../../../hooks/use-styles.cjs"),use_text_direction_cjs_namespaceObject=require("../../../hooks/use-text-direction.cjs"),external_overlay_cjs_namespaceObject=require("./overlay.cjs"),ConsentBannerRoot=({children:e,className:t,noStyle:n,disableAnimation:a,scrollLock:_,trapFocus:r=!0,models:c,uiSource:s,...o})=>{let{policyBanner:u}=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)(),l={disableAnimation:a,noStyle:n,scrollLock:_??u.scrollLock??void 0,trapFocus:r};return(0,jsx_runtime_namespaceObject.jsx)(consent_tracking_context_cjs_namespaceObject.ConsentTrackingContext.Provider,{value:{uiSource:s??"banner"},children:(0,jsx_runtime_namespaceObject.jsx)(theme_context_cjs_namespaceObject.LocalThemeContext.Provider,{value:l,children:(0,jsx_runtime_namespaceObject.jsx)(ConsentBannerRootChildren,{disableAnimation:a,className:t,noStyle:n,models:c,...o,children:e})})})},ConsentBannerRootChildren=(0,external_react_namespaceObject.forwardRef)(({asChild:e,children:t,className:n,style:a,className:_,disableAnimation:r,noStyle:c,models:s=["opt-in"],...o},u)=>{let{activeUI:l,translationConfig:i,model:m}=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)(),p=(0,use_text_direction_cjs_namespaceObject.useTextDirection)(i.defaultLanguage),[b,j]=(0,external_react_namespaceObject.useState)(!1),[d,x]=(0,external_react_namespaceObject.useState)(!1),[O,f]=(0,external_react_namespaceObject.useState)(200),k="banner"===l&&s.includes(m);(0,external_react_namespaceObject.useEffect)(()=>{f(Number.parseInt(getComputedStyle(document.documentElement).getPropertyValue("--consent-banner-animation-duration")||"200",10))},[]),(0,external_react_namespaceObject.useEffect)(()=>{if(k)if(d)j(!0);else{let e=setTimeout(()=>{j(!0),x(!0)},10);return()=>clearTimeout(e)}else if(x(!1),r)j(!1);else{let e=setTimeout(()=>{j(!1)},O);return()=>clearTimeout(e)}},[k,r,d,O]);let y=(0,use_styles_cjs_namespaceObject.useStyles)("consentBanner",{baseClassName:[consent_banner_module_js_default().root,"ltr"===p?consent_banner_module_js_default().bottomLeft:consent_banner_module_js_default().bottomRight],style:a,className:n||_,noStyle:c}),[q,w]=(0,external_react_namespaceObject.useState)(!1);if((0,external_react_namespaceObject.useEffect)(()=>{w(!0)},[]),!q)return null;let C=c?y.className||"":`${y.className||""} ${b?consent_banner_module_js_default().bannerVisible:consent_banner_module_js_default().bannerHidden}`,R=(0,utils_namespaceObject.sanitizeDOMStyleProps)(y);return k?(0,external_react_dom_namespaceObject.createPortal)((0,jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_overlay_cjs_namespaceObject.Overlay,{}),(0,jsx_runtime_namespaceObject.jsx)("div",{ref:u,...o,...R,className:C,"data-testid":"consent-banner-root",dir:p,children:t})]}),document.body):null});ConsentBannerRootChildren.displayName="ConsentBannerRootChildren";const Root=ConsentBannerRoot;for(var __rspack_i in exports.ConsentBannerRoot=__webpack_exports__.ConsentBannerRoot,exports.Root=__webpack_exports__.Root,__webpack_exports__)-1===["ConsentBannerRoot","Root"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{Fragment as e,jsx as t,jsxs as o}from"react/jsx-runtime";import r from"@c15t/ui/styles/components/consent-banner.module.js";import{sanitizeDOMStyleProps as n}from"@c15t/ui/utils";import{forwardRef as s,useEffect as l,useState as i}from"react";import{createPortal as m}from"react-dom";import{ConsentTrackingContext as a}from"../../../context/consent-tracking-context.js";import{LocalThemeContext as c}from"../../../context/theme-context.js";import{useConsentManager as u}from"../../../hooks/use-consent-manager.js";import{useStyles as d}from"../../../hooks/use-styles.js";import{useTextDirection as f}from"../../../hooks/use-text-direction.js";import{Overlay as p}from"./overlay.js";let b=({children:e,className:o,noStyle:r,disableAnimation:n,scrollLock:s,trapFocus:l=!0,models:i,uiSource:m,...d})=>{let{policyBanner:f}=u(),p={disableAnimation:n,noStyle:r,scrollLock:s??f.scrollLock??void 0,trapFocus:l};return t(a.Provider,{value:{uiSource:m??"banner"},children:t(c.Provider,{value:p,children:t(h,{disableAnimation:n,className:o,noStyle:r,models:i,...d,children:e})})})},h=s(({asChild:s,children:a,className:c,style:b,className:h,disableAnimation:y,noStyle:N,models:j=["opt-in"],...g},v)=>{let{activeUI:x,translationConfig:k,model:C}=u(),L=f(k.defaultLanguage),[R,T]=i(!1),[B,P]=i(!1),[S,V]=i(200),$="banner"===x&&j.includes(C);l(()=>{V(Number.parseInt(getComputedStyle(document.documentElement).getPropertyValue("--consent-banner-animation-duration")||"200",10))},[]),l(()=>{if($)if(B)T(!0);else{let e=setTimeout(()=>{T(!0),P(!0)},10);return()=>clearTimeout(e)}else if(P(!1),y)T(!1);else{let e=setTimeout(()=>{T(!1)},S);return()=>clearTimeout(e)}},[$,y,B,S]);let A=d("consentBanner",{baseClassName:[r.root,"ltr"===L?r.bottomLeft:r.bottomRight],style:b,className:c||h,noStyle:N}),[E,H]=i(!1);if(l(()=>{H(!0)},[]),!E)return null;let I=N?A.className||"":`${A.className||""} ${R?r.bannerVisible:r.bannerHidden}`,q=n(A);return $?m(o(e,{children:[t(p,{}),t("div",{ref:v,...g,...q,className:I,"data-testid":"consent-banner-root",dir:L,children:a})]}),document.body):null});h.displayName="ConsentBannerRootChildren";let y=b;export{b as ConsentBannerRoot,y as Root};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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__.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(n,{a:n}),n},__webpack_require__.d=(e,n,t)=>{var r=(n,t)=>{for(var r in n)__webpack_require__.o(n,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[t]:n[r]})};r(n,"get"),r(t,"value")},__webpack_require__.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),__webpack_require__.r=e=>{"u">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__,{AcceptButton:()=>AcceptButton,Card:()=>Card,ConsentBannerAcceptButton:()=>ConsentBannerAcceptButton,ConsentBannerCard:()=>ConsentBannerCard,ConsentBannerCustomizeButton:()=>ConsentBannerCustomizeButton,ConsentBannerDescription:()=>ConsentBannerDescription,ConsentBannerFooter:()=>ConsentBannerFooter,ConsentBannerFooterSubGroup:()=>ConsentBannerFooterSubGroup,ConsentBannerHeader:()=>ConsentBannerHeader,ConsentBannerRejectButton:()=>ConsentBannerRejectButton,ConsentBannerTitle:()=>ConsentBannerTitle,CustomizeButton:()=>CustomizeButton,Description:()=>Description,Footer:()=>Footer,FooterSubGroup:()=>FooterSubGroup,Header:()=>Header,RejectButton:()=>RejectButton,Title:()=>Title});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),consent_banner_module_js_namespaceObject=require("@c15t/ui/styles/components/consent-banner.module.js");var consent_banner_module_js_default=__webpack_require__.n(consent_banner_module_js_namespaceObject);const external_react_namespaceObject=require("react"),use_focus_trap_cjs_namespaceObject=require("../../hooks/use-focus-trap.cjs"),use_theme_cjs_namespaceObject=require("../../hooks/use-theme.cjs"),use_translations_cjs_namespaceObject=require("../../hooks/use-translations.cjs"),box_cjs_namespaceObject=require("../shared/primitives/box.cjs"),button_cjs_namespaceObject=require("../shared/primitives/button.cjs"),index_cjs_namespaceObject=require("../shared/primitives/legal-links/index.cjs"),CONSENT_BANNER_TITLE_NAME="ConsentBannerTitle",CONSENT_BANNER_DESCRIPTION_NAME="ConsentBannerDescription",CONSENT_BANNER_FOOTER_NAME="ConsentBannerFooter",CONSENT_BANNER_CARD_NAME="ConsentBannerCard",CONSENT_BANNER_HEADER_NAME="ConsentBannerHeader",CONSENT_BANNER_FOOTER_SUB_GROUP_NAME="ConsentBannerFooterSubGroup",CONSENT_BANNER_REJECT_BUTTON_NAME="ConsentBannerRejectButton",CONSENT_BANNER_CUSTOMIZE_BUTTON_NAME="ConsentBannerCustomizeButton",CONSENT_BANNER_ACCEPT_BUTTON_NAME="ConsentBannerAcceptButton",ConsentBannerTitle=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>{let{cookieBanner:r}=(0,use_translations_cjs_namespaceObject.useTranslations)();return(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:t,baseClassName:consent_banner_module_js_default().title,"data-testid":"consent-banner-title",themeKey:"consentBannerTitle",...n,children:e??r.title})});ConsentBannerTitle.displayName="ConsentBannerTitle";const ConsentBannerDescription=(0,external_react_namespaceObject.forwardRef)(({children:e,legalLinks:n,asChild:t,...r},o)=>{let{cookieBanner:a}=(0,use_translations_cjs_namespaceObject.useTranslations)();return t?(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:o,baseClassName:consent_banner_module_js_default().description,"data-testid":"consent-banner-description",themeKey:"consentBannerDescription",asChild:t,...r,children:e??a.description}):(0,jsx_runtime_namespaceObject.jsxs)(box_cjs_namespaceObject.Box,{ref:o,baseClassName:consent_banner_module_js_default().description,"data-testid":"consent-banner-description",themeKey:"consentBannerDescription",asChild:t,...r,children:[e??a.description,(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.InlineLegalLinks,{links:n,themeKey:"consentBannerDescription",testIdPrefix:"consent-banner-legal-link"})]})});ConsentBannerDescription.displayName="ConsentBannerDescription";const ConsentBannerFooter=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:t,baseClassName:consent_banner_module_js_default().footer,"data-testid":"consent-banner-footer",themeKey:"consentBannerFooter",...n,children:e}));ConsentBannerFooter.displayName="ConsentBannerFooter";const ConsentBannerCard=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>{let{trapFocus:r}=(0,use_theme_cjs_namespaceObject.useTheme)(),{cookieBanner:o}=(0,use_translations_cjs_namespaceObject.useTranslations)(),a=(0,external_react_namespaceObject.useRef)(null),s=t||a,_=!!r;return(0,use_focus_trap_cjs_namespaceObject.useFocusTrap)(_,s),(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:s,tabIndex:0,baseClassName:consent_banner_module_js_default().card,"data-testid":"consent-banner-card",themeKey:"consentBannerCard","aria-label":n["aria-label"]||o.title,"aria-modal":_?"true":void 0,role:_?"dialog":void 0,...n,children:e})});ConsentBannerCard.displayName="ConsentBannerCard";const ConsentBannerHeader=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:t,baseClassName:consent_banner_module_js_default().header,"data-testid":"consent-banner-header",themeKey:"consentBannerHeader",...n,children:e}));ConsentBannerHeader.displayName="ConsentBannerHeader";const ConsentBannerFooterSubGroup=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>(0,jsx_runtime_namespaceObject.jsx)(box_cjs_namespaceObject.Box,{ref:t,baseClassName:consent_banner_module_js_default().footerSubGroup,"data-testid":"consent-banner-footer-sub-group",themeKey:"consentBannerFooterSubGroup",...n,children:e}));ConsentBannerFooterSubGroup.displayName="ConsentBannerFooterSubGroup";const ConsentBannerRejectButton=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>{let{common:r}=(0,use_translations_cjs_namespaceObject.useTranslations)();return(0,jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.ConsentButton,{ref:t,action:"reject-consent","data-testid":"consent-banner-reject-button",closeConsentBanner:!0,...n,children:e??r.rejectAll})});ConsentBannerRejectButton.displayName="ConsentBannerRejectButton";const ConsentBannerCustomizeButton=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>{let{common:r}=(0,use_translations_cjs_namespaceObject.useTranslations)();return(0,jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.ConsentButton,{ref:t,action:"open-consent-dialog","data-testid":"consent-banner-customize-button",...n,children:e??r.customize})});ConsentBannerCustomizeButton.displayName="ConsentBannerCustomizeButton";const ConsentBannerAcceptButton=(0,external_react_namespaceObject.forwardRef)(({children:e,...n},t)=>{let{common:r}=(0,use_translations_cjs_namespaceObject.useTranslations)(),{noStyle:o}=(0,use_theme_cjs_namespaceObject.useTheme)();return(0,jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.ConsentButton,{ref:t,action:"accept-consent","data-testid":"consent-banner-accept-button",closeConsentBanner:!0,noStyle:o,...n,children:e??r.acceptAll})});ConsentBannerAcceptButton.displayName="ConsentBannerAcceptButton";const Title=ConsentBannerTitle,Description=ConsentBannerDescription,Footer=ConsentBannerFooter,FooterSubGroup=ConsentBannerFooterSubGroup,Card=ConsentBannerCard,Header=ConsentBannerHeader,RejectButton=ConsentBannerRejectButton,CustomizeButton=ConsentBannerCustomizeButton,AcceptButton=ConsentBannerAcceptButton;for(var __rspack_i in exports.AcceptButton=__webpack_exports__.AcceptButton,exports.Card=__webpack_exports__.Card,exports.ConsentBannerAcceptButton=__webpack_exports__.ConsentBannerAcceptButton,exports.ConsentBannerCard=__webpack_exports__.ConsentBannerCard,exports.ConsentBannerCustomizeButton=__webpack_exports__.ConsentBannerCustomizeButton,exports.ConsentBannerDescription=__webpack_exports__.ConsentBannerDescription,exports.ConsentBannerFooter=__webpack_exports__.ConsentBannerFooter,exports.ConsentBannerFooterSubGroup=__webpack_exports__.ConsentBannerFooterSubGroup,exports.ConsentBannerHeader=__webpack_exports__.ConsentBannerHeader,exports.ConsentBannerRejectButton=__webpack_exports__.ConsentBannerRejectButton,exports.ConsentBannerTitle=__webpack_exports__.ConsentBannerTitle,exports.CustomizeButton=__webpack_exports__.CustomizeButton,exports.Description=__webpack_exports__.Description,exports.Footer=__webpack_exports__.Footer,exports.FooterSubGroup=__webpack_exports__.FooterSubGroup,exports.Header=__webpack_exports__.Header,exports.RejectButton=__webpack_exports__.RejectButton,exports.Title=__webpack_exports__.Title,__webpack_exports__)-1===["AcceptButton","Card","ConsentBannerAcceptButton","ConsentBannerCard","ConsentBannerCustomizeButton","ConsentBannerDescription","ConsentBannerFooter","ConsentBannerFooterSubGroup","ConsentBannerHeader","ConsentBannerRejectButton","ConsentBannerTitle","CustomizeButton","Description","Footer","FooterSubGroup","Header","RejectButton","Title"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as n}from"react/jsx-runtime";import t from"@c15t/ui/styles/components/consent-banner.module.js";import{forwardRef as r,useRef as o}from"react";import{useFocusTrap as a}from"../../hooks/use-focus-trap.js";import{useTheme as s}from"../../hooks/use-theme.js";import{useTranslations as i}from"../../hooks/use-translations.js";import{Box as c}from"../shared/primitives/box.js";import{ConsentButton as l}from"../shared/primitives/button.js";import{InlineLegalLinks as d}from"../shared/primitives/legal-links/index.js";let m=r(({children:n,...r},o)=>{let{cookieBanner:a}=i();return e(c,{ref:o,baseClassName:t.title,"data-testid":"consent-banner-title",themeKey:"consentBannerTitle",...r,children:n??a.title})});m.displayName="ConsentBannerTitle";let p=r(({children:r,legalLinks:o,asChild:a,...s},l)=>{let{cookieBanner:m}=i();return a?e(c,{ref:l,baseClassName:t.description,"data-testid":"consent-banner-description",themeKey:"consentBannerDescription",asChild:a,...s,children:r??m.description}):n(c,{ref:l,baseClassName:t.description,"data-testid":"consent-banner-description",themeKey:"consentBannerDescription",asChild:a,...s,children:[r??m.description,e(d,{links:o,themeKey:"consentBannerDescription",testIdPrefix:"consent-banner-legal-link"})]})});p.displayName="ConsentBannerDescription";let u=r(({children:n,...r},o)=>e(c,{ref:o,baseClassName:t.footer,"data-testid":"consent-banner-footer",themeKey:"consentBannerFooter",...r,children:n}));u.displayName="ConsentBannerFooter";let B=r(({children:n,...r},l)=>{let{trapFocus:d}=s(),{cookieBanner:m}=i(),p=o(null),u=l||p,B=!!d;return a(B,u),e(c,{ref:u,tabIndex:0,baseClassName:t.card,"data-testid":"consent-banner-card",themeKey:"consentBannerCard","aria-label":r["aria-label"]||m.title,"aria-modal":B?"true":void 0,role:B?"dialog":void 0,...r,children:n})});B.displayName="ConsentBannerCard";let C=r(({children:n,...r},o)=>e(c,{ref:o,baseClassName:t.header,"data-testid":"consent-banner-header",themeKey:"consentBannerHeader",...r,children:n}));C.displayName="ConsentBannerHeader";let b=r(({children:n,...r},o)=>e(c,{ref:o,baseClassName:t.footerSubGroup,"data-testid":"consent-banner-footer-sub-group",themeKey:"consentBannerFooterSubGroup",...r,children:n}));b.displayName="ConsentBannerFooterSubGroup";let h=r(({children:n,...t},r)=>{let{common:o}=i();return e(l,{ref:r,action:"reject-consent","data-testid":"consent-banner-reject-button",closeConsentBanner:!0,...t,children:n??o.rejectAll})});h.displayName="ConsentBannerRejectButton";let f=r(({children:n,...t},r)=>{let{common:o}=i();return e(l,{ref:r,action:"open-consent-dialog","data-testid":"consent-banner-customize-button",...t,children:n??o.customize})});f.displayName="ConsentBannerCustomizeButton";let y=r(({children:n,...t},r)=>{let{common:o}=i(),{noStyle:a}=s();return e(l,{ref:r,action:"accept-consent","data-testid":"consent-banner-accept-button",closeConsentBanner:!0,noStyle:a,...t,children:n??o.acceptAll})});y.displayName="ConsentBannerAcceptButton";let N=m,j=p,k=u,F=b,K=B,x=C,D=h,S=f,g=y;export{g as AcceptButton,K as Card,y as ConsentBannerAcceptButton,B as ConsentBannerCard,f as ConsentBannerCustomizeButton,p as ConsentBannerDescription,u as ConsentBannerFooter,b as ConsentBannerFooterSubGroup,C as ConsentBannerHeader,h as ConsentBannerRejectButton,m as ConsentBannerTitle,S as CustomizeButton,j as Description,k as Footer,F as FooterSubGroup,x as Header,D as RejectButton,N as Title};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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__.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(n,{a:n}),n},__webpack_require__.d=(e,n,t)=>{var s=(n,t)=>{for(var s in n)__webpack_require__.o(n,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,[t]:n[s]})};s(n,"get"),s(t,"value")},__webpack_require__.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),__webpack_require__.r=e=>{"u">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__,{ConsentBanner:()=>ConsentBanner});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),consent_banner_module_js_namespaceObject=require("@c15t/ui/styles/components/consent-banner.module.js");var consent_banner_module_js_default=__webpack_require__.n(consent_banner_module_js_namespaceObject);const utils_namespaceObject=require("@c15t/ui/utils"),external_react_namespaceObject=require("react"),branding_cjs_namespaceObject=require("../shared/ui/branding.cjs"),use_component_config_cjs_namespaceObject=require("../../hooks/use-component-config.cjs"),use_consent_manager_cjs_namespaceObject=require("../../hooks/use-consent-manager.cjs"),use_headless_consent_ui_cjs_namespaceObject=require("../../hooks/use-headless-consent-ui.cjs"),use_translations_cjs_namespaceObject=require("../../hooks/use-translations.cjs"),cn_cjs_namespaceObject=require("../../utils/cn.cjs"),root_cjs_namespaceObject=require("./atoms/root.cjs"),external_components_cjs_namespaceObject=require("./components.cjs"),external_error_boundary_cjs_namespaceObject=require("./error-boundary.cjs"),DEFAULT_LAYOUT=[["reject","accept"],"customize"],ConsentBanner=({noStyle:e,disableAnimation:n,scrollLock:t,trapFocus:s=!0,title:a,description:r,rejectButtonText:c,customizeButtonText:_,acceptButtonText:o,legalLinks:i,hideBranding:u=!1,layout:l,direction:j,primaryButton:m="customize",models:p,uiSource:b})=>{let{cookieBanner:d}=(0,use_translations_cjs_namespaceObject.useTranslations)(),{banner:x}=(0,use_headless_consent_ui_cjs_namespaceObject.useHeadlessConsentUI)(),{policyBanner:O}=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)(),h=t??O.scrollLock??!1,f=(0,use_component_config_cjs_namespaceObject.useComponentConfig)({noStyle:e,disableAnimation:n,scrollLock:h,trapFocus:s}),y=new Set(x.orderedActions),g=x.primaryActions.length>0?x.primaryActions:m,k=l??((x.layout?.length??0)>0?x.actionGroups:DEFAULT_LAYOUT),w=j??x.direction??"row",B=k.map(e=>Array.isArray(e)?e.filter(e=>y.has(e)):y.has(e)?[e]:[]).filter(e=>e.length>0),q=(0,utils_namespaceObject.shouldFillPolicyActions)({uiProfile:x.uiProfile,actionGroups:B,direction:w}),C=(e,n)=>{if(!y.has(e))return null;let t=Array.isArray(g)?g.includes(e):e===g;switch(e){case"reject":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerRejectButton,{consentAction:"reject",isPrimary:t,className:n,"data-testid":"consent-banner-reject-button",children:c});case"accept":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerAcceptButton,{consentAction:"accept",isPrimary:t,className:n,"data-testid":"consent-banner-accept-button",children:o});case"customize":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerCustomizeButton,{consentAction:"customize",isPrimary:t,className:n,"data-testid":"consent-banner-customize-button",children:_});default:throw Error(`Unhandled consent banner button type: ${e}`)}};return(0,jsx_runtime_namespaceObject.jsx)(external_error_boundary_cjs_namespaceObject.ErrorBoundary,{fallback:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Something went wrong with the Consent Banner."}),children:(0,jsx_runtime_namespaceObject.jsx)(root_cjs_namespaceObject.ConsentBannerRoot,{...f,models:p,uiSource:b,children:(0,jsx_runtime_namespaceObject.jsxs)("div",{className:consent_banner_module_js_default().cardShell,children:[(0,jsx_runtime_namespaceObject.jsx)(branding_cjs_namespaceObject.BrandingLink,{hideBranding:u,variant:"banner-tag",themeKey:"consentBannerTag","data-testid":"consent-banner-branding"}),(0,jsx_runtime_namespaceObject.jsxs)(external_components_cjs_namespaceObject.ConsentBannerCard,{"aria-label":d.title,children:[(0,jsx_runtime_namespaceObject.jsxs)(external_components_cjs_namespaceObject.ConsentBannerHeader,{children:[(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerTitle,{children:a}),(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerDescription,{legalLinks:i,children:r})]}),(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerFooter,{className:(0,cn_cjs_namespaceObject.cnExt)(q&&consent_banner_module_js_default().footerFill,"column"===w&&consent_banner_module_js_default().footerColumn),children:k.map((e,n)=>{if(Array.isArray(e)){let t=e.filter(e=>y.has(e));if(0===t.length)return null;let s=e.join("-");return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerFooterSubGroup,{className:(0,cn_cjs_namespaceObject.cnExt)(q&&consent_banner_module_js_default().footerSubGroupFill,"column"===w&&consent_banner_module_js_default().footerSubGroupColumn),children:t.map(e=>(0,jsx_runtime_namespaceObject.jsx)(external_react_namespaceObject.Fragment,{children:C(e,q?consent_banner_module_js_default().actionButtonFill:void 0)},e))},s?`group-${s}`:`group-${n}`)}return y.has(e)?(0,jsx_runtime_namespaceObject.jsx)(external_react_namespaceObject.Fragment,{children:C(e,q?consent_banner_module_js_default().actionButtonFill:void 0)},e):null})})]})]})})})};for(var __rspack_i in exports.ConsentBanner=__webpack_exports__.ConsentBanner,__webpack_exports__)-1===["ConsentBanner"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as r,jsxs as e}from"react/jsx-runtime";import n from"@c15t/ui/styles/components/consent-banner.module.js";import{shouldFillPolicyActions as t}from"@c15t/ui/utils";import{Fragment as o}from"react";import{BrandingLink as i}from"../shared/ui/branding.js";import{useComponentConfig as s}from"../../hooks/use-component-config.js";import{useConsentManager as a}from"../../hooks/use-consent-manager.js";import{useHeadlessConsentUI as c}from"../../hooks/use-headless-consent-ui.js";import{useTranslations as l}from"../../hooks/use-translations.js";import{cnExt as m}from"../../utils/cn.js";import{ConsentBannerRoot as u}from"./atoms/root.js";import{ConsentBannerAcceptButton as d,ConsentBannerCard as h,ConsentBannerCustomizeButton as p,ConsentBannerDescription as f,ConsentBannerFooter as b,ConsentBannerFooterSubGroup as y,ConsentBannerHeader as g,ConsentBannerRejectButton as j,ConsentBannerTitle as A}from"./components.js";import{ErrorBoundary as k}from"./error-boundary.js";let S=[["reject","accept"],"customize"],w=({noStyle:w,disableAnimation:B,scrollLock:F,trapFocus:N=!0,title:v,description:z,rejectButtonText:P,customizeButtonText:C,acceptButtonText:G,legalLinks:L,hideBranding:$=!1,layout:x,direction:E,primaryButton:K="customize",models:T,uiSource:U})=>{let{cookieBanner:q}=l(),{banner:D}=c(),{policyBanner:H}=a(),I=s({noStyle:w,disableAnimation:B,scrollLock:F??H.scrollLock??!1,trapFocus:N}),J=new Set(D.orderedActions),M=D.primaryActions.length>0?D.primaryActions:K,O=x??((D.layout?.length??0)>0?D.actionGroups:S),Q=E??D.direction??"row",R=O.map(r=>Array.isArray(r)?r.filter(r=>J.has(r)):J.has(r)?[r]:[]).filter(r=>r.length>0),V=t({uiProfile:D.uiProfile,actionGroups:R,direction:Q}),W=(e,n)=>{if(!J.has(e))return null;let t=Array.isArray(M)?M.includes(e):e===M;switch(e){case"reject":return r(j,{consentAction:"reject",isPrimary:t,className:n,"data-testid":"consent-banner-reject-button",children:P});case"accept":return r(d,{consentAction:"accept",isPrimary:t,className:n,"data-testid":"consent-banner-accept-button",children:G});case"customize":return r(p,{consentAction:"customize",isPrimary:t,className:n,"data-testid":"consent-banner-customize-button",children:C});default:throw Error(`Unhandled consent banner button type: ${e}`)}};return r(k,{fallback:r("div",{children:"Something went wrong with the Consent Banner."}),children:r(u,{...I,models:T,uiSource:U,children:e("div",{className:n.cardShell,children:[r(i,{hideBranding:$,variant:"banner-tag",themeKey:"consentBannerTag","data-testid":"consent-banner-branding"}),e(h,{"aria-label":q.title,children:[e(g,{children:[r(A,{children:v}),r(f,{legalLinks:L,children:z})]}),r(b,{className:m(V&&n.footerFill,"column"===Q&&n.footerColumn),children:O.map((e,t)=>{if(Array.isArray(e)){let i=e.filter(r=>J.has(r));if(0===i.length)return null;let s=e.join("-");return r(y,{className:m(V&&n.footerSubGroupFill,"column"===Q&&n.footerSubGroupColumn),children:i.map(e=>r(o,{children:W(e,V?n.actionButtonFill:void 0)},e))},s?`group-${s}`:`group-${t}`)}return J.has(e)?r(o,{children:W(e,V?n.actionButtonFill:void 0)},e):null})})]})]})})})};export{w as ConsentBanner};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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=(r,e,_)=>{var t=(e,_)=>{for(var t in e)__webpack_require__.o(e,t)&&!__webpack_require__.o(r,t)&&Object.defineProperty(r,t,{enumerable:!0,[_]:e[t]})};t(e,"get"),t(_,"value")},__webpack_require__.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),__webpack_require__.r=r=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{ErrorBoundary:()=>ErrorBoundary});const external_react_namespaceObject=require("react");class ErrorBoundary extends external_react_namespaceObject.Component{constructor(r){super(r),this.state={hasError:!1,error:null,errorInfo:null}}static getDerivedStateFromError(r){return{hasError:!0,error:r,errorInfo:null}}componentDidCatch(r,e){this.setState({error:r,errorInfo:e})}render(){return this.state.hasError?"function"==typeof this.props.fallback?this.props.fallback(this.state.error,this.state.errorInfo):this.props.fallback:this.props.children}}for(var __rspack_i in exports.ErrorBoundary=__webpack_exports__.ErrorBoundary,__webpack_exports__)-1===["ErrorBoundary"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{Component as r}from"react";class t extends r{constructor(r){super(r),this.state={hasError:!1,error:null,errorInfo:null}}static getDerivedStateFromError(r){return{hasError:!0,error:r,errorInfo:null}}componentDidCatch(r,t){this.setState({error:r,errorInfo:t})}render(){return this.state.hasError?"function"==typeof this.props.fallback?this.props.fallback(this.state.error,this.state.errorInfo):this.props.fallback:this.props.children}}export{t as ErrorBoundary};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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,n,t)=>{var o=(n,t)=>{for(var o in n)__webpack_require__.o(n,o)&&!__webpack_require__.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,[t]:n[o]})};o(n,"get"),o(t,"value")},__webpack_require__.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),__webpack_require__.r=e=>{"u">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__,{AcceptButton:()=>external_components_cjs_namespaceObject.AcceptButton,Card:()=>external_components_cjs_namespaceObject.Card,ConsentBanner:()=>ConsentBanner,ConsentBannerAcceptButton:()=>external_components_cjs_namespaceObject.ConsentBannerAcceptButton,ConsentBannerCard:()=>external_components_cjs_namespaceObject.ConsentBannerCard,ConsentBannerCustomizeButton:()=>external_components_cjs_namespaceObject.ConsentBannerCustomizeButton,ConsentBannerDescription:()=>external_components_cjs_namespaceObject.ConsentBannerDescription,ConsentBannerFooter:()=>external_components_cjs_namespaceObject.ConsentBannerFooter,ConsentBannerFooterSubGroup:()=>external_components_cjs_namespaceObject.ConsentBannerFooterSubGroup,ConsentBannerHeader:()=>external_components_cjs_namespaceObject.ConsentBannerHeader,ConsentBannerOverlay:()=>overlay_cjs_namespaceObject.ConsentBannerOverlay,ConsentBannerPolicyActions:()=>external_policy_actions_cjs_namespaceObject.ConsentBannerPolicyActions,ConsentBannerRejectButton:()=>external_components_cjs_namespaceObject.ConsentBannerRejectButton,ConsentBannerRoot:()=>root_cjs_namespaceObject.ConsentBannerRoot,ConsentBannerTitle:()=>external_components_cjs_namespaceObject.ConsentBannerTitle,CustomizeButton:()=>external_components_cjs_namespaceObject.CustomizeButton,Description:()=>external_components_cjs_namespaceObject.Description,Footer:()=>external_components_cjs_namespaceObject.Footer,FooterSubGroup:()=>external_components_cjs_namespaceObject.FooterSubGroup,Header:()=>external_components_cjs_namespaceObject.Header,Overlay:()=>overlay_cjs_namespaceObject.Overlay,PolicyActions:()=>external_policy_actions_cjs_namespaceObject.PolicyActions,RejectButton:()=>external_components_cjs_namespaceObject.RejectButton,Root:()=>root_cjs_namespaceObject.Root,Title:()=>external_components_cjs_namespaceObject.Title,default:()=>consent_banner});const overlay_cjs_namespaceObject=require("./atoms/overlay.cjs"),root_cjs_namespaceObject=require("./atoms/root.cjs"),external_components_cjs_namespaceObject=require("./components.cjs"),external_consent_banner_cjs_namespaceObject=require("./consent-banner.cjs"),external_policy_actions_cjs_namespaceObject=require("./policy-actions.cjs"),ConsentBanner=Object.assign(external_consent_banner_cjs_namespaceObject.ConsentBanner,{Root:root_cjs_namespaceObject.Root,Card:external_components_cjs_namespaceObject.Card,Header:external_components_cjs_namespaceObject.Header,Title:external_components_cjs_namespaceObject.Title,Description:external_components_cjs_namespaceObject.Description,PolicyActions:external_policy_actions_cjs_namespaceObject.PolicyActions,Footer:external_components_cjs_namespaceObject.Footer,FooterSubGroup:external_components_cjs_namespaceObject.FooterSubGroup,RejectButton:external_components_cjs_namespaceObject.RejectButton,CustomizeButton:external_components_cjs_namespaceObject.CustomizeButton,AcceptButton:external_components_cjs_namespaceObject.AcceptButton,Overlay:overlay_cjs_namespaceObject.Overlay,Content:external_components_cjs_namespaceObject.Card,Actions:external_components_cjs_namespaceObject.FooterSubGroup}),consent_banner=ConsentBanner;for(var __rspack_i in exports.AcceptButton=__webpack_exports__.AcceptButton,exports.Card=__webpack_exports__.Card,exports.ConsentBanner=__webpack_exports__.ConsentBanner,exports.ConsentBannerAcceptButton=__webpack_exports__.ConsentBannerAcceptButton,exports.ConsentBannerCard=__webpack_exports__.ConsentBannerCard,exports.ConsentBannerCustomizeButton=__webpack_exports__.ConsentBannerCustomizeButton,exports.ConsentBannerDescription=__webpack_exports__.ConsentBannerDescription,exports.ConsentBannerFooter=__webpack_exports__.ConsentBannerFooter,exports.ConsentBannerFooterSubGroup=__webpack_exports__.ConsentBannerFooterSubGroup,exports.ConsentBannerHeader=__webpack_exports__.ConsentBannerHeader,exports.ConsentBannerOverlay=__webpack_exports__.ConsentBannerOverlay,exports.ConsentBannerPolicyActions=__webpack_exports__.ConsentBannerPolicyActions,exports.ConsentBannerRejectButton=__webpack_exports__.ConsentBannerRejectButton,exports.ConsentBannerRoot=__webpack_exports__.ConsentBannerRoot,exports.ConsentBannerTitle=__webpack_exports__.ConsentBannerTitle,exports.CustomizeButton=__webpack_exports__.CustomizeButton,exports.Description=__webpack_exports__.Description,exports.Footer=__webpack_exports__.Footer,exports.FooterSubGroup=__webpack_exports__.FooterSubGroup,exports.Header=__webpack_exports__.Header,exports.Overlay=__webpack_exports__.Overlay,exports.PolicyActions=__webpack_exports__.PolicyActions,exports.RejectButton=__webpack_exports__.RejectButton,exports.Root=__webpack_exports__.Root,exports.Title=__webpack_exports__.Title,exports.default=__webpack_exports__.default,__webpack_exports__)-1===["AcceptButton","Card","ConsentBanner","ConsentBannerAcceptButton","ConsentBannerCard","ConsentBannerCustomizeButton","ConsentBannerDescription","ConsentBannerFooter","ConsentBannerFooterSubGroup","ConsentBannerHeader","ConsentBannerOverlay","ConsentBannerPolicyActions","ConsentBannerRejectButton","ConsentBannerRoot","ConsentBannerTitle","CustomizeButton","Description","Footer","FooterSubGroup","Header","Overlay","PolicyActions","RejectButton","Root","Title","default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{ConsentBannerOverlay as n,Overlay as o}from"./atoms/overlay.js";import{ConsentBannerRoot as t,Root as e}from"./atoms/root.js";import{AcceptButton as r,Card as s,ConsentBannerAcceptButton as a,ConsentBannerCard as i,ConsentBannerCustomizeButton as c,ConsentBannerDescription as B,ConsentBannerFooter as C,ConsentBannerFooterSubGroup as u,ConsentBannerHeader as p,ConsentBannerRejectButton as m,ConsentBannerTitle as l,CustomizeButton as j,Description as y,Footer as d,FooterSubGroup as A,Header as b,RejectButton as f,Title as F}from"./components.js";import{ConsentBanner as R}from"./consent-banner.js";import{ConsentBannerPolicyActions as v,PolicyActions as O}from"./policy-actions.js";let z=Object.assign(R,{Root:e,Card:s,Header:b,Title:F,Description:y,PolicyActions:O,Footer:d,FooterSubGroup:A,RejectButton:f,CustomizeButton:j,AcceptButton:r,Overlay:o,Content:s,Actions:A});export default z;export{r as AcceptButton,s as Card,a as ConsentBannerAcceptButton,i as ConsentBannerCard,c as ConsentBannerCustomizeButton,B as ConsentBannerDescription,C as ConsentBannerFooter,u as ConsentBannerFooterSubGroup,p as ConsentBannerHeader,n as ConsentBannerOverlay,v as ConsentBannerPolicyActions,m as ConsentBannerRejectButton,t as ConsentBannerRoot,l as ConsentBannerTitle,j as CustomizeButton,y as Description,d as Footer,A as FooterSubGroup,b as Header,o as Overlay,O as PolicyActions,f as RejectButton,e as Root,F as Title,z as ConsentBanner};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="u"<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__.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(n,{a:n}),n},__webpack_require__.d=(e,n,t)=>{var o=(n,t)=>{for(var o in n)__webpack_require__.o(n,o)&&!__webpack_require__.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,[t]:n[o]})};o(n,"get"),o(t,"value")},__webpack_require__.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),__webpack_require__.r=e=>{"u">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__,{ConsentBannerPolicyActions:()=>ConsentBannerPolicyActions,PolicyActions:()=>PolicyActions});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),consent_banner_module_js_namespaceObject=require("@c15t/ui/styles/components/consent-banner.module.js");var consent_banner_module_js_default=__webpack_require__.n(consent_banner_module_js_namespaceObject);const use_headless_consent_ui_cjs_namespaceObject=require("../../hooks/use-headless-consent-ui.cjs"),policy_actions_cjs_namespaceObject=require("../shared/policy-actions.cjs"),external_components_cjs_namespaceObject=require("./components.cjs");function renderDefaultAction(e,n){let{key:t,consentAction:o,..._}=n;switch(e){case"accept":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerAcceptButton,{consentAction:o,"data-testid":"consent-banner-accept-button",..._},t);case"reject":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerRejectButton,{consentAction:o,"data-testid":"consent-banner-reject-button",..._},t);case"customize":return(0,jsx_runtime_namespaceObject.jsx)(external_components_cjs_namespaceObject.ConsentBannerCustomizeButton,{consentAction:o,"data-testid":"consent-banner-customize-button",..._},t);default:throw Error(`Unhandled consent banner action: ${e}`)}}function ConsentBannerPolicyActions({renderAction:e}){let{banner:n}=(0,use_headless_consent_ui_cjs_namespaceObject.useHeadlessConsentUI)();return(0,jsx_runtime_namespaceObject.jsx)(policy_actions_cjs_namespaceObject.PolicyActionsRenderer,{state:n,Footer:external_components_cjs_namespaceObject.ConsentBannerFooter,FooterSubGroup:external_components_cjs_namespaceObject.ConsentBannerFooterSubGroup,classNames:{footerFill:consent_banner_module_js_default().footerFill,footerColumn:consent_banner_module_js_default().footerColumn,footerSubGroupFill:consent_banner_module_js_default().footerSubGroupFill,footerSubGroupColumn:consent_banner_module_js_default().footerSubGroupColumn},renderAction:e,renderDefaultAction:renderDefaultAction})}const PolicyActions=ConsentBannerPolicyActions;for(var __rspack_i in exports.ConsentBannerPolicyActions=__webpack_exports__.ConsentBannerPolicyActions,exports.PolicyActions=__webpack_exports__.PolicyActions,__webpack_exports__)-1===["ConsentBannerPolicyActions","PolicyActions"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});