@c15t/react 2.2.1 → 3.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/AGENTS.md +88 -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 +133 -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 +173 -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 +144 -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 +88 -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 +41 -249
  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 +35 -535
  319. package/docs/frameworks/react/styling/overview.md +160 -255
  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/clearbit.md +247 -86
  331. package/docs/integrations/cloudflare-web-analytics.md +250 -84
  332. package/docs/integrations/crisp.md +251 -97
  333. package/docs/integrations/databuddy.md +259 -153
  334. package/docs/integrations/fathom-analytics.md +239 -96
  335. package/docs/integrations/google-maps.md +328 -207
  336. package/docs/integrations/google-tag-manager.md +248 -96
  337. package/docs/integrations/google-tag.md +261 -90
  338. package/docs/integrations/heap.md +222 -149
  339. package/docs/integrations/hightouch.md +225 -131
  340. package/docs/integrations/hotjar.md +239 -90
  341. package/docs/integrations/intercom.md +239 -98
  342. package/docs/integrations/linkedin-insights.md +243 -113
  343. package/docs/integrations/logrocket.md +241 -123
  344. package/docs/integrations/matomo-analytics.md +256 -111
  345. package/docs/integrations/meta-pixel.md +197 -324
  346. package/docs/integrations/microsoft-clarity.md +233 -114
  347. package/docs/integrations/microsoft-uet.md +245 -110
  348. package/docs/integrations/mixpanel-analytics.md +252 -87
  349. package/docs/integrations/openai-pixel.md +441 -0
  350. package/docs/integrations/overview.md +95 -133
  351. package/docs/integrations/pirsch.md +249 -96
  352. package/docs/integrations/plausible-analytics.md +241 -100
  353. package/docs/integrations/posthog.md +353 -214
  354. package/docs/integrations/promptwatch.md +251 -81
  355. package/docs/integrations/reddit-pixel.md +226 -173
  356. package/docs/integrations/rudderstack.md +244 -187
  357. package/docs/integrations/rybbit-analytics.md +244 -91
  358. package/docs/integrations/segment.md +238 -92
  359. package/docs/integrations/snapchat-pixel.md +240 -110
  360. package/docs/integrations/tiktok-pixel.md +249 -81
  361. package/docs/integrations/umami-analytics.md +242 -95
  362. package/docs/integrations/vercel-analytics.md +242 -90
  363. package/docs/integrations/x-pixel.md +238 -104
  364. package/docs/integrations/youtube.md +354 -142
  365. package/docs/upgrade-v3.md +334 -0
  366. package/iab/styles.css +1 -1
  367. package/iab/styles.tw3.css +1 -1
  368. package/package.json +187 -102
  369. package/readme.json +1 -1
  370. package/src/iab/styles.css +1 -1
  371. package/src/iab/styles.tw3.css +1 -1
  372. package/src/styles.css +1 -1
  373. package/src/styles.tw3.css +1 -1
  374. package/styles.css +1 -1
  375. package/styles.tw3.css +1 -1
  376. package/client/components/consent-banner.js +0 -4
  377. package/client/components/consent-dialog-link.js +0 -3
  378. package/client/components/consent-dialog-trigger.js +0 -3
  379. package/client/components/consent-dialog.js +0 -4
  380. package/client/components/consent-widget.js +0 -4
  381. package/client/components/frame.js +0 -3
  382. package/client/components/integrations.js +0 -3
  383. package/dist/components/consent-banner/atoms/overlay.cjs +0 -1
  384. package/dist/components/consent-banner/atoms/overlay.js +0 -1
  385. package/dist/components/consent-banner/atoms/root.cjs +0 -1
  386. package/dist/components/consent-banner/atoms/root.js +0 -1
  387. package/dist/components/consent-banner/components.cjs +0 -1
  388. package/dist/components/consent-banner/components.js +0 -1
  389. package/dist/components/consent-banner/consent-banner.cjs +0 -1
  390. package/dist/components/consent-banner/consent-banner.js +0 -1
  391. package/dist/components/consent-banner/error-boundary.cjs +0 -1
  392. package/dist/components/consent-banner/error-boundary.js +0 -1
  393. package/dist/components/consent-banner/index.cjs +0 -1
  394. package/dist/components/consent-banner/index.js +0 -1
  395. package/dist/components/consent-banner/policy-actions.cjs +0 -1
  396. package/dist/components/consent-banner/policy-actions.js +0 -1
  397. package/dist/components/consent-dialog/atoms/card.cjs +0 -1
  398. package/dist/components/consent-dialog/atoms/card.js +0 -1
  399. package/dist/components/consent-dialog/atoms/overlay.cjs +0 -1
  400. package/dist/components/consent-dialog/atoms/overlay.js +0 -1
  401. package/dist/components/consent-dialog/atoms/root.cjs +0 -1
  402. package/dist/components/consent-dialog/atoms/root.js +0 -1
  403. package/dist/components/consent-dialog/consent-dialog.cjs +0 -1
  404. package/dist/components/consent-dialog/consent-dialog.js +0 -1
  405. package/dist/components/consent-dialog/index.cjs +0 -1
  406. package/dist/components/consent-dialog/index.js +0 -1
  407. package/dist/components/consent-dialog-link/index.cjs +0 -1
  408. package/dist/components/consent-dialog-trigger/atoms/button.cjs +0 -1
  409. package/dist/components/consent-dialog-trigger/atoms/button.js +0 -1
  410. package/dist/components/consent-dialog-trigger/atoms/icon.cjs +0 -1
  411. package/dist/components/consent-dialog-trigger/atoms/icon.js +0 -1
  412. package/dist/components/consent-dialog-trigger/atoms/root.cjs +0 -1
  413. package/dist/components/consent-dialog-trigger/atoms/root.js +0 -1
  414. package/dist/components/consent-dialog-trigger/atoms/text.cjs +0 -1
  415. package/dist/components/consent-dialog-trigger/atoms/text.js +0 -1
  416. package/dist/components/consent-dialog-trigger/atoms/toolbar.cjs +0 -1
  417. package/dist/components/consent-dialog-trigger/atoms/toolbar.js +0 -1
  418. package/dist/components/consent-dialog-trigger/consent-dialog-trigger-toolbar.cjs +0 -1
  419. package/dist/components/consent-dialog-trigger/consent-dialog-trigger-toolbar.js +0 -1
  420. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.cjs +0 -1
  421. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.js +0 -1
  422. package/dist/components/consent-dialog-trigger/index.cjs +0 -1
  423. package/dist/components/consent-dialog-trigger/index.js +0 -1
  424. package/dist/components/consent-dialog-trigger/types.cjs +0 -1
  425. package/dist/components/consent-dialog-trigger/use-draggable.cjs +0 -1
  426. package/dist/components/consent-dialog-trigger/use-draggable.js +0 -1
  427. package/dist/components/consent-preferences-link/consent-preferences-link.cjs +0 -1
  428. package/dist/components/consent-preferences-link/index.cjs +0 -1
  429. package/dist/components/consent-widget/atoms/accordion.cjs +0 -1
  430. package/dist/components/consent-widget/atoms/accordion.js +0 -1
  431. package/dist/components/consent-widget/atoms/button.cjs +0 -1
  432. package/dist/components/consent-widget/atoms/button.js +0 -1
  433. package/dist/components/consent-widget/atoms/footer.cjs +0 -1
  434. package/dist/components/consent-widget/atoms/footer.js +0 -1
  435. package/dist/components/consent-widget/atoms/root.cjs +0 -1
  436. package/dist/components/consent-widget/atoms/root.js +0 -1
  437. package/dist/components/consent-widget/consent-widget.cjs +0 -1
  438. package/dist/components/consent-widget/consent-widget.js +0 -1
  439. package/dist/components/consent-widget/index.cjs +0 -1
  440. package/dist/components/consent-widget/index.js +0 -1
  441. package/dist/components/consent-widget/policy-actions.cjs +0 -1
  442. package/dist/components/consent-widget/policy-actions.js +0 -1
  443. package/dist/components/consent-widget/types.cjs +0 -1
  444. package/dist/components/frame/atoms.cjs +0 -1
  445. package/dist/components/frame/frame.cjs +0 -1
  446. package/dist/components/frame/index.cjs +0 -1
  447. package/dist/components/frame/types.cjs +0 -1
  448. package/dist/components/iab-consent-banner/atoms/button-group.cjs +0 -1
  449. package/dist/components/iab-consent-banner/atoms/button-group.js +0 -1
  450. package/dist/components/iab-consent-banner/atoms/card.cjs +0 -1
  451. package/dist/components/iab-consent-banner/atoms/card.js +0 -1
  452. package/dist/components/iab-consent-banner/atoms/description.cjs +0 -1
  453. package/dist/components/iab-consent-banner/atoms/description.js +0 -1
  454. package/dist/components/iab-consent-banner/atoms/footer.cjs +0 -1
  455. package/dist/components/iab-consent-banner/atoms/footer.js +0 -1
  456. package/dist/components/iab-consent-banner/atoms/header.cjs +0 -1
  457. package/dist/components/iab-consent-banner/atoms/header.js +0 -1
  458. package/dist/components/iab-consent-banner/atoms/overlay.cjs +0 -1
  459. package/dist/components/iab-consent-banner/atoms/overlay.js +0 -1
  460. package/dist/components/iab-consent-banner/atoms/root.cjs +0 -1
  461. package/dist/components/iab-consent-banner/atoms/root.js +0 -1
  462. package/dist/components/iab-consent-banner/atoms/title.cjs +0 -1
  463. package/dist/components/iab-consent-banner/atoms/title.js +0 -1
  464. package/dist/components/iab-consent-banner/iab-consent-banner.cjs +0 -1
  465. package/dist/components/iab-consent-banner/iab-consent-banner.js +0 -1
  466. package/dist/components/iab-consent-banner/index.cjs +0 -1
  467. package/dist/components/iab-consent-banner/index.js +0 -1
  468. package/dist/components/iab-consent-dialog/atoms/card.cjs +0 -1
  469. package/dist/components/iab-consent-dialog/atoms/card.js +0 -1
  470. package/dist/components/iab-consent-dialog/atoms/content.cjs +0 -1
  471. package/dist/components/iab-consent-dialog/atoms/content.js +0 -1
  472. package/dist/components/iab-consent-dialog/atoms/footer.cjs +0 -1
  473. package/dist/components/iab-consent-dialog/atoms/footer.js +0 -1
  474. package/dist/components/iab-consent-dialog/atoms/header.cjs +0 -1
  475. package/dist/components/iab-consent-dialog/atoms/header.js +0 -1
  476. package/dist/components/iab-consent-dialog/atoms/overlay.cjs +0 -1
  477. package/dist/components/iab-consent-dialog/atoms/overlay.js +0 -1
  478. package/dist/components/iab-consent-dialog/atoms/purpose-item.cjs +0 -1
  479. package/dist/components/iab-consent-dialog/atoms/purpose-item.js +0 -1
  480. package/dist/components/iab-consent-dialog/atoms/root.cjs +0 -1
  481. package/dist/components/iab-consent-dialog/atoms/root.js +0 -1
  482. package/dist/components/iab-consent-dialog/atoms/stack-item.cjs +0 -1
  483. package/dist/components/iab-consent-dialog/atoms/stack-item.js +0 -1
  484. package/dist/components/iab-consent-dialog/atoms/tabs.cjs +0 -1
  485. package/dist/components/iab-consent-dialog/atoms/tabs.js +0 -1
  486. package/dist/components/iab-consent-dialog/atoms/vendor-list.cjs +0 -1
  487. package/dist/components/iab-consent-dialog/atoms/vendor-list.js +0 -1
  488. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.cjs +0 -1
  489. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.js +0 -1
  490. package/dist/components/iab-consent-dialog/iab-consent-dialog.cjs +0 -1
  491. package/dist/components/iab-consent-dialog/iab-consent-dialog.js +0 -1
  492. package/dist/components/iab-consent-dialog/index.cjs +0 -1
  493. package/dist/components/iab-consent-dialog/index.js +0 -1
  494. package/dist/components/iab-consent-dialog/types.cjs +0 -1
  495. package/dist/components/iab-consent-dialog/use-iab-translations.cjs +0 -1
  496. package/dist/components/iab-consent-dialog/use-iab-translations.js +0 -1
  497. package/dist/components/integrations/google-map.cjs +0 -1
  498. package/dist/components/integrations/google-map.js +0 -1
  499. package/dist/components/integrations/index.cjs +0 -1
  500. package/dist/components/integrations/index.js +0 -1
  501. package/dist/components/integrations/shared.cjs +0 -1
  502. package/dist/components/integrations/shared.js +0 -1
  503. package/dist/components/integrations/youtube-embed.cjs +0 -1
  504. package/dist/components/integrations/youtube-embed.js +0 -1
  505. package/dist/components/shared/libs/polymorphic.cjs +0 -1
  506. package/dist/components/shared/libs/recursive-clone-children.cjs +0 -1
  507. package/dist/components/shared/libs/slot.cjs +0 -1
  508. package/dist/components/shared/libs/use-controllable-state.cjs +0 -1
  509. package/dist/components/shared/policy-actions.cjs +0 -1
  510. package/dist/components/shared/primitives/box.cjs +0 -1
  511. package/dist/components/shared/primitives/button.cjs +0 -1
  512. package/dist/components/shared/primitives/button.types.cjs +0 -1
  513. package/dist/components/shared/primitives/legal-links/index.cjs +0 -1
  514. package/dist/components/shared/ui/accordion/accordion.cjs +0 -1
  515. package/dist/components/shared/ui/accordion/accordion.types.cjs +0 -1
  516. package/dist/components/shared/ui/accordion/index.cjs +0 -1
  517. package/dist/components/shared/ui/animated-collapse/animated-collapse.cjs +0 -1
  518. package/dist/components/shared/ui/animated-collapse/index.cjs +0 -1
  519. package/dist/components/shared/ui/branding.cjs +0 -1
  520. package/dist/components/shared/ui/button/button.cjs +0 -1
  521. package/dist/components/shared/ui/button/button.types.cjs +0 -1
  522. package/dist/components/shared/ui/button/index.cjs +0 -1
  523. package/dist/components/shared/ui/collapsible/collapsible.cjs +0 -1
  524. package/dist/components/shared/ui/collapsible/index.cjs +0 -1
  525. package/dist/components/shared/ui/dialog/dialog.cjs +0 -1
  526. package/dist/components/shared/ui/dialog/index.cjs +0 -1
  527. package/dist/components/shared/ui/icon.cjs +0 -1
  528. package/dist/components/shared/ui/logo.cjs +0 -1
  529. package/dist/components/shared/ui/preference-item/index.cjs +0 -1
  530. package/dist/components/shared/ui/preference-item/preference-item.cjs +0 -1
  531. package/dist/components/shared/ui/switch/index.cjs +0 -1
  532. package/dist/components/shared/ui/switch/switch.cjs +0 -1
  533. package/dist/components/shared/ui/switch/switch.types.cjs +0 -1
  534. package/dist/components/shared/ui/tabs/index.cjs +0 -1
  535. package/dist/components/shared/ui/tabs/tabs.cjs +0 -1
  536. package/dist/context/consent-manager-context.cjs +0 -1
  537. package/dist/context/consent-manager-context.js +0 -1
  538. package/dist/context/consent-tracking-context.cjs +0 -1
  539. package/dist/context/theme-context.cjs +0 -1
  540. package/dist/headless.cjs +0 -1
  541. package/dist/hooks/index.cjs +0 -1
  542. package/dist/hooks/index.js +0 -1
  543. package/dist/hooks/use-color-scheme.cjs +0 -1
  544. package/dist/hooks/use-component-config.cjs +0 -1
  545. package/dist/hooks/use-consent-dialog-trigger.cjs +0 -1
  546. package/dist/hooks/use-consent-dialog-trigger.js +0 -1
  547. package/dist/hooks/use-consent-manager.cjs +0 -1
  548. package/dist/hooks/use-consent-manager.js +0 -1
  549. package/dist/hooks/use-consent-script.cjs +0 -1
  550. package/dist/hooks/use-consent-script.js +0 -1
  551. package/dist/hooks/use-focus-trap.cjs +0 -1
  552. package/dist/hooks/use-headless-consent-ui.cjs +0 -1
  553. package/dist/hooks/use-headless-consent-ui.js +0 -1
  554. package/dist/hooks/use-headless-iab-consent-ui.cjs +0 -1
  555. package/dist/hooks/use-reduced-motion.cjs +0 -1
  556. package/dist/hooks/use-scroll-lock.cjs +0 -1
  557. package/dist/hooks/use-ssr-status.cjs +0 -1
  558. package/dist/hooks/use-ssr-status.js +0 -1
  559. package/dist/hooks/use-styles.cjs +0 -1
  560. package/dist/hooks/use-styles.js +0 -1
  561. package/dist/hooks/use-text-direction.cjs +0 -1
  562. package/dist/hooks/use-theme.cjs +0 -1
  563. package/dist/hooks/use-translations.cjs +0 -1
  564. package/dist/hooks/use-translations.js +0 -1
  565. package/dist/iab.cjs +0 -1
  566. package/dist/index.cjs +0 -1
  567. package/dist/primitives/accordion.cjs +0 -1
  568. package/dist/primitives/button.cjs +0 -1
  569. package/dist/primitives/collapsible.cjs +0 -1
  570. package/dist/primitives/dialog.cjs +0 -1
  571. package/dist/primitives/preference-item.cjs +0 -1
  572. package/dist/primitives/switch.cjs +0 -1
  573. package/dist/primitives/tabs.cjs +0 -1
  574. package/dist/primitives.cjs +0 -1
  575. package/dist/providers/consent-manager-provider.cjs +0 -1
  576. package/dist/providers/consent-manager-provider.js +0 -1
  577. package/dist/server/fetch-ssr-data.cjs +0 -1
  578. package/dist/server/headers.cjs +0 -1
  579. package/dist/server/index.cjs +0 -1
  580. package/dist/server/init-cache-key.cjs +0 -1
  581. package/dist/server/normalize-url.cjs +0 -1
  582. package/dist/server/types.cjs +0 -1
  583. package/dist/types/consent-manager.cjs +0 -1
  584. package/dist/types/theme/index.cjs +0 -1
  585. package/dist/types/theme/style-keys.cjs +0 -1
  586. package/dist/types/theme/style-types.cjs +0 -1
  587. package/dist/utils/cn.cjs +0 -1
  588. package/dist/utils/merge-styles.cjs +0 -1
  589. package/dist/utils/test-helpers.cjs +0 -1
  590. package/dist/utils/test-helpers.js +0 -1
  591. package/dist/utils/theme-utils.cjs +0 -1
  592. package/dist/version.cjs +0 -1
  593. package/dist-types/components/consent-banner/atoms/root.d.ts +0 -126
  594. package/dist-types/components/consent-banner/policy-actions.d.ts +0 -11
  595. package/dist-types/components/consent-widget/policy-actions.d.ts +0 -11
  596. package/dist-types/components/iab-consent-dialog/hooks/use-gvl-data.d.ts +0 -27
  597. package/dist-types/components/iab-consent-dialog/types.d.ts +0 -72
  598. package/dist-types/components/integrations/google-map.d.ts +0 -82
  599. package/dist-types/components/integrations/index.d.ts +0 -2
  600. package/dist-types/components/integrations/shared.d.ts +0 -12
  601. package/dist-types/components/integrations/youtube-embed.d.ts +0 -95
  602. package/dist-types/context/consent-manager-context.d.ts +0 -31
  603. package/dist-types/hooks/index.d.ts +0 -12
  604. package/dist-types/hooks/use-consent-dialog-trigger.d.ts +0 -10
  605. package/dist-types/hooks/use-consent-manager.d.ts +0 -27
  606. package/dist-types/hooks/use-consent-script.d.ts +0 -80
  607. package/dist-types/hooks/use-headless-consent-ui.d.ts +0 -46
  608. package/dist-types/hooks/use-ssr-status.d.ts +0 -57
  609. package/dist-types/hooks/use-styles.d.ts +0 -21
  610. package/dist-types/hooks/use-translations.d.ts +0 -28
  611. package/dist-types/providers/consent-manager-provider.d.ts +0 -40
  612. package/dist-types/types/consent-manager.d.ts +0 -39
  613. package/dist-types/types/theme/style-keys.d.ts +0 -1
  614. package/dist-types/utils/test-helpers.d.ts +0 -31
  615. package/docs/frameworks/react/building-headless-components.md +0 -370
  616. package/docs/frameworks/react/callbacks.md +0 -186
  617. package/docs/frameworks/react/concepts/client-modes.md +0 -177
  618. package/docs/frameworks/react/concepts/consent-models.md +0 -113
  619. package/docs/frameworks/react/concepts/cookie-management.md +0 -122
  620. package/docs/frameworks/react/concepts/glossary.md +0 -24
  621. package/docs/frameworks/react/concepts/initialization-flow.md +0 -149
  622. package/docs/frameworks/react/concepts/policy-packs.md +0 -228
  623. package/docs/frameworks/react/hooks/use-color-scheme.md +0 -41
  624. package/docs/frameworks/react/hooks/use-consent-manager/checking-consent.md +0 -96
  625. package/docs/frameworks/react/hooks/use-consent-manager/location-info.md +0 -97
  626. package/docs/frameworks/react/hooks/use-consent-manager/setting-consent.md +0 -94
  627. package/docs/frameworks/react/hooks/use-draggable.md +0 -59
  628. package/docs/frameworks/react/hooks/use-focus-trap.md +0 -42
  629. package/docs/frameworks/react/hooks/use-reduced-motion.md +0 -37
  630. package/docs/frameworks/react/hooks/use-ssr-status.md +0 -32
  631. package/docs/frameworks/react/hooks/use-text-direction.md +0 -50
  632. package/docs/frameworks/react/hooks/use-translations.md +0 -55
  633. package/docs/frameworks/react/iab/consent-banner.md +0 -91
  634. package/docs/frameworks/react/iab/consent-dialog.md +0 -129
  635. package/docs/frameworks/react/iab/use-gvl-data.md +0 -21
  636. package/docs/frameworks/react/iframe-blocking.md +0 -106
  637. package/docs/frameworks/react/internationalization.md +0 -207
  638. package/docs/frameworks/react/network-blocker.md +0 -140
  639. package/docs/frameworks/react/optimization.md +0 -148
  640. package/docs/frameworks/react/policy-packs.md +0 -242
  641. package/docs/frameworks/react/server-side.md +0 -158
  642. package/docs/frameworks/react/styling/classnames.md +0 -94
  643. package/docs/frameworks/react/styling/color-scheme.md +0 -84
  644. package/docs/frameworks/react/styling/css-variables.md +0 -53
  645. package/docs/frameworks/react/styling/slots.md +0 -94
  646. package/docs/frameworks/react/styling/tailwind.md +0 -119
  647. package/docs/frameworks/react/styling/tokens.md +0 -156
  648. package/docs/shared/concepts/client-modes.md +0 -103
  649. package/docs/shared/concepts/consent-categories.md +0 -41
  650. package/docs/shared/concepts/consent-models.md +0 -72
  651. package/docs/shared/concepts/cookie-management.md +0 -88
  652. package/docs/shared/concepts/glossary.md +0 -24
  653. package/docs/shared/concepts/initialization-flow.md +0 -105
  654. package/docs/shared/concepts/policy-packs.md +0 -225
  655. package/docs/shared/react/components/consent-banner.md +0 -242
  656. package/docs/shared/react/components/consent-dialog-link.md +0 -45
  657. package/docs/shared/react/components/consent-dialog-trigger.md +0 -185
  658. package/docs/shared/react/components/consent-dialog.md +0 -119
  659. package/docs/shared/react/components/consent-manager-provider.md +0 -225
  660. package/docs/shared/react/components/consent-widget.md +0 -121
  661. package/docs/shared/react/components/dev-tools.md +0 -81
  662. package/docs/shared/react/components/frame.md +0 -52
  663. package/docs/shared/react/guides/building-headless-components.md +0 -110
  664. package/docs/shared/react/guides/callbacks.md +0 -89
  665. package/docs/shared/react/guides/headless.md +0 -31
  666. package/docs/shared/react/guides/iframe-blocking.md +0 -65
  667. package/docs/shared/react/guides/internationalization.md +0 -123
  668. package/docs/shared/react/guides/network-blocker.md +0 -72
  669. package/docs/shared/react/guides/optimization.md +0 -44
  670. package/docs/shared/react/guides/policy-packs.md +0 -173
  671. package/docs/shared/react/guides/script-loader.md +0 -311
  672. package/docs/shared/react/hooks/use-color-scheme.md +0 -31
  673. package/docs/shared/react/hooks/use-consent-manager/checking-consent.md +0 -95
  674. package/docs/shared/react/hooks/use-consent-manager/location-info.md +0 -96
  675. package/docs/shared/react/hooks/use-consent-manager/overview.md +0 -74
  676. package/docs/shared/react/hooks/use-consent-manager/setting-consent.md +0 -93
  677. package/docs/shared/react/hooks/use-draggable.md +0 -30
  678. package/docs/shared/react/hooks/use-focus-trap.md +0 -20
  679. package/docs/shared/react/hooks/use-reduced-motion.md +0 -33
  680. package/docs/shared/react/hooks/use-ssr-status.md +0 -16
  681. package/docs/shared/react/hooks/use-text-direction.md +0 -38
  682. package/docs/shared/react/hooks/use-translations.md +0 -15
  683. package/docs/shared/react/iab/consent-banner.md +0 -60
  684. package/docs/shared/react/iab/consent-dialog.md +0 -76
  685. package/docs/shared/react/iab/overview.md +0 -80
  686. package/docs/shared/react/iab/use-gvl-data.md +0 -21
  687. package/docs/shared/react/styling/classnames.md +0 -93
  688. package/docs/shared/react/styling/color-scheme.md +0 -35
  689. package/docs/shared/react/styling/css-variables.md +0 -53
  690. package/docs/shared/react/styling/overview.md +0 -261
  691. package/docs/shared/react/styling/slots.md +0 -93
  692. package/docs/shared/react/styling/stylesheet-entrypoint.md +0 -8
  693. package/docs/shared/react/styling/tailwind.md +0 -88
  694. package/docs/shared/react/styling/tokens.md +0 -155
  695. package/docs/shared/troubleshooting.md +0 -82
  696. /package/dist/components/{consent-dialog-trigger → iab-panel}/types.js +0 -0
  697. /package/dist/components/{consent-widget → panel-trigger}/types.js +0 -0
  698. /package/dist/components/{iab-consent-dialog → preferences}/types.js +0 -0
  699. /package/dist/types/{consent-manager.js → manager.js} +0 -0
  700. /package/dist/types/{theme/style-keys.js → slots.js} +0 -0
  701. /package/dist-types/components/{consent-dialog-link → panel-link}/index.d.ts +0 -0
  702. /package/dist-types/components/{consent-widget → preferences}/atoms/button.d.ts +0 -0
  703. /package/dist-types/components/{consent-widget/consent-widget.d.ts → preferences/preferences.d.ts} +0 -0
  704. /package/dist-types/components/{consent-widget → preferences}/types.d.ts +0 -0
@@ -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,a,c)=>{var r=(a,c)=>{for(var r in a)__webpack_require__.o(a,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[c]:a[r]})};r(a,"get"),r(c,"value")},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__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__,{useHeadlessConsentUI:()=>useHeadlessConsentUI});const utils_namespaceObject=require("@c15t/ui/utils"),external_react_namespaceObject=require("react"),external_use_consent_manager_cjs_namespaceObject=require("./use-consent-manager.cjs"),DEFAULT_UI_SOURCE_BY_SURFACE={banner:"banner",dialog:"dialog"};function useHeadlessConsentUI(){let{activeUI:e,policyBanner:{allowedActions:a,primaryActions:c,layout:r,direction:t,uiProfile:s,scrollLock:o},policyDialog:{allowedActions:l,primaryActions:i,layout:_,direction:n,uiProfile:u,scrollLock:p},saveConsents:b,setActiveUI:m}=(0,external_use_consent_manager_cjs_namespaceObject.useConsentManager)(),y=(0,external_react_namespaceObject.useMemo)(()=>({allowedActions:a,primaryActions:c,layout:r,direction:t,uiProfile:s,scrollLock:o}),[a,t,r,c,s,o]),d=(0,external_react_namespaceObject.useMemo)(()=>({allowedActions:l,primaryActions:i,layout:_,direction:n,uiProfile:u,scrollLock:p}),[l,n,_,i,u,p]),O=(0,external_react_namespaceObject.useMemo)(()=>{let l=(0,utils_namespaceObject.resolvePolicyAllowedActions)({allowedActions:a}),i=(0,utils_namespaceObject.resolvePolicyActionGroups)({allowedActions:l,layout:r}),_=(0,utils_namespaceObject.resolvePolicyOrderedActions)({allowedActions:l,layout:r}),n=(0,utils_namespaceObject.resolvePolicyDirection)(t);return{allowedActions:l,orderedActions:_,actionGroups:i,primaryActions:(0,utils_namespaceObject.resolvePolicyPrimaryActions)({orderedActions:_,primaryActions:c}),layout:r,direction:n,uiProfile:s,scrollLock:o,hasPolicyHints:(0,utils_namespaceObject.hasPolicyHints)(y),shouldFillActions:(0,utils_namespaceObject.shouldFillPolicyActions)({uiProfile:s,actionGroups:i,direction:n}),isVisible:"banner"===e}},[e,a,t,r,c,s,o,y]),j=(0,external_react_namespaceObject.useMemo)(()=>{let a=(0,utils_namespaceObject.resolvePolicyAllowedActions)({allowedActions:l}),c=(0,utils_namespaceObject.resolvePolicyActionGroups)({allowedActions:a,layout:_}),r=(0,utils_namespaceObject.resolvePolicyOrderedActions)({allowedActions:a,layout:_}),t=(0,utils_namespaceObject.resolvePolicyDirection)(n);return{allowedActions:a,orderedActions:r,actionGroups:c,primaryActions:(0,utils_namespaceObject.resolvePolicyPrimaryActions)({orderedActions:r,primaryActions:i}),layout:_,direction:t,uiProfile:u,scrollLock:p,hasPolicyHints:(0,utils_namespaceObject.hasPolicyHints)(d),shouldFillActions:(0,utils_namespaceObject.shouldFillPolicyActions)({uiProfile:u,actionGroups:c,direction:t}),isVisible:"dialog"===e}},[e,l,n,_,i,u,p,d]),A=(0,external_react_namespaceObject.useCallback)(async(e,a)=>{let c=a.uiSource??DEFAULT_UI_SOURCE_BY_SURFACE[a.surface];switch(e){case"accept":await b("all",{uiSource:c});return;case"reject":await b("necessary",{uiSource:c});return}},[b]),k=(0,external_react_namespaceObject.useCallback)((e,a)=>A(e,{surface:"banner",uiSource:a?.uiSource}),[A]),P=(0,external_react_namespaceObject.useCallback)((e,a)=>A(e,{surface:"dialog",uiSource:a?.uiSource}),[A]),w=(0,external_react_namespaceObject.useCallback)(async e=>{await b("custom",{uiSource:e?.uiSource??DEFAULT_UI_SOURCE_BY_SURFACE.dialog})},[b]),f=(0,external_react_namespaceObject.useCallback)(e=>{m("banner",e)},[m]);return{activeUI:e,banner:O,dialog:j,openBanner:f,openDialog:(0,external_react_namespaceObject.useCallback)(()=>{m("dialog")},[m]),closeUI:(0,external_react_namespaceObject.useCallback)(()=>{m("none")},[m]),performAction:A,performBannerAction:k,performDialogAction:P,saveCustomPreferences:w}}for(var __rspack_i in exports.useHeadlessConsentUI=__webpack_exports__.useHeadlessConsentUI,__webpack_exports__)-1===["useHeadlessConsentUI"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{hasPolicyHints as o,resolvePolicyActionGroups as i,resolvePolicyAllowedActions as l,resolvePolicyDirection as r,resolvePolicyOrderedActions as e,resolvePolicyPrimaryActions as c,shouldFillPolicyActions as a}from"@c15t/ui/utils";import{useCallback as t,useMemo as n}from"react";import{useConsentManager as s}from"./use-consent-manager.js";let u={banner:"banner",dialog:"dialog"};function y(){let{activeUI:y,policyBanner:{allowedActions:d,primaryActions:m,layout:p,direction:A,uiProfile:f,scrollLock:w},policyDialog:{allowedActions:P,primaryActions:g,layout:b,direction:S,uiProfile:k,scrollLock:L},saveConsents:h,setActiveUI:H}=s(),j=n(()=>({allowedActions:d,primaryActions:m,layout:p,direction:A,uiProfile:f,scrollLock:w}),[d,A,p,m,f,w]),D=n(()=>({allowedActions:P,primaryActions:g,layout:b,direction:S,uiProfile:k,scrollLock:L}),[P,S,b,g,k,L]),F=n(()=>{let t=l({allowedActions:d}),n=i({allowedActions:t,layout:p}),s=e({allowedActions:t,layout:p}),u=r(A);return{allowedActions:t,orderedActions:s,actionGroups:n,primaryActions:c({orderedActions:s,primaryActions:m}),layout:p,direction:u,uiProfile:f,scrollLock:w,hasPolicyHints:o(j),shouldFillActions:a({uiProfile:f,actionGroups:n,direction:u}),isVisible:"banner"===y}},[y,d,A,p,m,f,w,j]),I=n(()=>{let t=l({allowedActions:P}),n=i({allowedActions:t,layout:b}),s=e({allowedActions:t,layout:b}),u=r(S);return{allowedActions:t,orderedActions:s,actionGroups:n,primaryActions:c({orderedActions:s,primaryActions:g}),layout:b,direction:u,uiProfile:k,scrollLock:L,hasPolicyHints:o(D),shouldFillActions:a({uiProfile:k,actionGroups:n,direction:u}),isVisible:"dialog"===y}},[y,P,S,b,g,k,L,D]),U=t(async(o,i)=>{let l=i.uiSource??u[i.surface];switch(o){case"accept":await h("all",{uiSource:l});return;case"reject":await h("necessary",{uiSource:l});return}},[h]),V=t((o,i)=>U(o,{surface:"banner",uiSource:i?.uiSource}),[U]),x=t((o,i)=>U(o,{surface:"dialog",uiSource:i?.uiSource}),[U]),B=t(async o=>{await h("custom",{uiSource:o?.uiSource??u.dialog})},[h]),C=t(o=>{H("banner",o)},[H]);return{activeUI:y,banner:F,dialog:I,openBanner:C,openDialog:t(()=>{H("dialog")},[H]),closeUI:t(()=>{H("none")},[H]),performAction:U,performBannerAction:V,performDialogAction:x,saveCustomPreferences:B}}export{y as useHeadlessConsentUI};
@@ -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,r,a)=>{var t=(r,a)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[a]:r[t]})};t(r,"get"),t(a,"value")},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__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__,{useHeadlessIABConsentUI:()=>useHeadlessIABConsentUI});const external_react_namespaceObject=require("react"),external_use_consent_manager_cjs_namespaceObject=require("./use-consent-manager.cjs"),MAX_BANNER_DISPLAY_ITEMS=5,STANDALONE_PURPOSE_ID=1;function resolveIABBannerSummary(e){if(!e?.gvl)return{isReady:!1,vendorCount:0,displayItems:[],remainingCount:0};let r=e.gvl,a=Object.keys(r.vendors).length+(e.nonIABVendors?.length??0),t=Object.entries(r.purposes).filter(([e])=>Object.values(r.vendors).some(r=>r.purposes?.includes(Number(e))||r.legIntPurposes?.includes(Number(e)))).map(([e,r])=>({id:Number(e),name:r.name})),s=t.find(e=>1===e.id),n=t.filter(e=>1!==e.id),c=new Set(n.map(e=>e.id)),_=[];for(let e of Object.values(r.stacks||{})){let r=e.purposes.filter(e=>c.has(e));r.length>=2&&_.push({name:e.name,coveredPurposeIds:r,score:r.length})}_.sort((e,r)=>r.score-e.score);let l=[],o=new Set;for(let{name:e,coveredPurposeIds:r}of _){let a=r.filter(e=>!o.has(e));if(a.length>=2)for(let r of(l.push(e),a))o.add(r)}let u=n.filter(e=>!o.has(e.id)),i=Object.entries(r.specialFeatures||{}).filter(([e])=>Object.values(r.vendors).some(r=>r.specialFeatures?.includes(Number(e)))).map(([,e])=>e.name),p=[];for(let e of(s&&p.push(s.name),l))p.push(e);for(let e of u)p.push(e.name);for(let e of i)p.push(e);return{isReady:!0,vendorCount:a,displayItems:p.slice(0,5),remainingCount:Math.max(0,p.length-5)}}function useHeadlessIABConsentUI(){let{activeUI:e,model:r,iab:a,policyBanner:{scrollLock:t},policyDialog:{scrollLock:s},setActiveUI:n}=(0,external_use_consent_manager_cjs_namespaceObject.useConsentManager)(),c=!!a?.config.enabled,_=(0,external_react_namespaceObject.useMemo)(()=>resolveIABBannerSummary(a),[a]),l=(0,external_react_namespaceObject.useCallback)(e=>{n("banner",e)},[n]),o=(0,external_react_namespaceObject.useCallback)(e=>{e?.tab&&a?.setPreferenceCenterTab(e.tab),n("dialog")},[a,n]),u=(0,external_react_namespaceObject.useCallback)(()=>{o({tab:"purposes"})},[o]),i=(0,external_react_namespaceObject.useCallback)(()=>{o({tab:"vendors"})},[o]),p=(0,external_react_namespaceObject.useCallback)(()=>{n("none")},[n]),b=(0,external_react_namespaceObject.useCallback)(()=>{if(!a)return;a.acceptAll();let e=a.save();return n("none"),e},[a,n]),m=(0,external_react_namespaceObject.useCallback)(()=>{if(!a)return;a.rejectAll();let e=a.save();return n("none"),e},[a,n]),d=(0,external_react_namespaceObject.useCallback)(()=>{if(!a)return;let e=a.save();return n("none"),e},[a,n]),f=(0,external_react_namespaceObject.useCallback)(e=>{switch(e){case"accept":return b();case"reject":return m();case"customize":return u()}},[b,u,m]),k=(0,external_react_namespaceObject.useCallback)(e=>{switch(e){case"accept":return b();case"reject":return m();case"customize":return d()}},[b,m,d]);return{activeUI:e,model:r,iab:a,isIABEnabled:c,banner:{..._,isVisible:"banner"===e&&"iab"===r&&c,scrollLock:t},dialog:{isVisible:"dialog"===e&&"iab"===r&&c,isLoading:!!(a?.isLoadingGVL||!a?.gvl),activeTab:a?.preferenceCenterTab??"purposes",scrollLock:s},openBanner:l,openDialog:o,openPurposesDialog:u,openVendorsDialog:i,closeUI:p,acceptAll:b,rejectAll:m,savePreferences:d,performBannerAction:f,performDialogAction:k}}for(var __rspack_i in exports.useHeadlessIABConsentUI=__webpack_exports__.useHeadlessIABConsentUI,__webpack_exports__)-1===["useHeadlessIABConsentUI"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{useReducedMotion:()=>useReducedMotion});const external_react_namespaceObject=require("react");function useReducedMotion(){let[e,_]=(0,external_react_namespaceObject.useState)(!1);return(0,external_react_namespaceObject.useEffect)(()=>{if("u"<typeof window)return;let e=window.matchMedia("(prefers-reduced-motion: reduce)");_(e.matches);let r=e=>{_(e.matches)};return e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]),e}for(var __rspack_i in exports.useReducedMotion=__webpack_exports__.useReducedMotion,__webpack_exports__)-1===["useReducedMotion"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var c=(_,r)=>{for(var c in _)__webpack_require__.o(_,c)&&!__webpack_require__.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,[r]:_[c]})};c(_,"get"),c(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__,{useScrollLock:()=>useScrollLock});const dom_namespaceObject=require("@c15t/ui/utils/dom"),external_react_namespaceObject=require("react");function useScrollLock(e){(0,external_react_namespaceObject.useEffect)(()=>{if(e)return(0,dom_namespaceObject.setupScrollLock)()},[e])}for(var __rspack_i in exports.useScrollLock=__webpack_exports__.useScrollLock,__webpack_exports__)-1===["useScrollLock"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,t)=>{var r=(_,t)=>{for(var r in _)__webpack_require__.o(_,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[t]:_[r]})};r(_,"get"),r(t,"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__,{useSSRStatus:()=>useSSRStatus});const external_react_namespaceObject=require("react"),consent_manager_context_cjs_namespaceObject=require("../context/consent-manager-context.cjs");function useSSRStatus(){let e=(0,external_react_namespaceObject.useContext)(consent_manager_context_cjs_namespaceObject.ConsentStateContext);if(void 0===e)throw Error("useSSRStatus must be used within a ConsentManagerProvider");return{ssrDataUsed:e.state.ssrDataUsed,ssrSkippedReason:e.state.ssrSkippedReason}}for(var __rspack_i in exports.useSSRStatus=__webpack_exports__.useSSRStatus,__webpack_exports__)-1===["useSSRStatus"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{useContext as t}from"react";import{ConsentStateContext as e}from"../context/consent-manager-context.js";function s(){let s=t(e);if(void 0===s)throw Error("useSSRStatus must be used within a ConsentManagerProvider");return{ssrDataUsed:s.state.ssrDataUsed,ssrSkippedReason:s.state.ssrSkippedReason}}export{s as useSSRStatus};
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{useStyles:()=>useStyles});const utils_namespaceObject=require("@c15t/ui/utils"),external_react_namespaceObject=require("react"),external_use_theme_cjs_namespaceObject=require("./use-theme.cjs");function useStyles(e,_,r){let{noStyle:t,theme:c}=(0,external_use_theme_cjs_namespaceObject.useTheme)(),a=r??c;return(0,external_react_namespaceObject.useMemo)(()=>(0,utils_namespaceObject.resolveStyles)(e,a,_,t),[e,a,_,t])}for(var __rspack_i in exports.useStyles=__webpack_exports__.useStyles,__webpack_exports__)-1===["useStyles"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{resolveStyles as t}from"@c15t/ui/utils";import{useMemo as e}from"react";import{useTheme as r}from"./use-theme.js";function o(o,m,i){let{noStyle:u,theme:s}=r(),f=i??s;return e(()=>t(o,f,m,u),[o,f,m,u])}export{o as useStyles};
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{useTextDirection:()=>useTextDirection});const utils_namespaceObject=require("@c15t/ui/utils"),external_react_namespaceObject=require("react");function useTextDirection(e){let _=(0,external_react_namespaceObject.useMemo)(()=>(0,utils_namespaceObject.getTextDirection)(e),[e]);return(0,external_react_namespaceObject.useEffect)(()=>(0,utils_namespaceObject.setupTextDirection)(e),[e]),_}for(var __rspack_i in exports.useTextDirection=__webpack_exports__.useTextDirection,__webpack_exports__)-1===["useTextDirection"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{useTheme:()=>useTheme});const external_react_namespaceObject=require("react"),theme_context_cjs_namespaceObject=require("../context/theme-context.cjs");function deepMerge(e,_){if(!_)return e;let r={...e};for(let t in _)void 0!==_[t]&&(_[t]&&"object"==typeof _[t]&&!Array.isArray(_[t])&&e[t]&&"object"==typeof e[t]?r[t]=deepMerge(e[t],_[t]):r[t]=_[t]);return r}const useTheme=()=>{let e=(0,external_react_namespaceObject.useContext)(theme_context_cjs_namespaceObject.GlobalThemeContext),_=(0,external_react_namespaceObject.useContext)(theme_context_cjs_namespaceObject.LocalThemeContext);if(!e)throw Error("Theme components must be used within Theme.Root");return(0,external_react_namespaceObject.useMemo)(()=>deepMerge(e,_||null),[e,_])};for(var __rspack_i in exports.useTheme=__webpack_exports__.useTheme,__webpack_exports__)-1===["useTheme"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,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__,{useTranslations:()=>useTranslations});const utils_namespaceObject=require("@c15t/ui/utils"),external_c15t_namespaceObject=require("c15t"),external_react_namespaceObject=require("react"),external_use_consent_manager_cjs_namespaceObject=require("./use-consent-manager.cjs");function useTranslations(){let{translationConfig:e}=(0,external_use_consent_manager_cjs_namespaceObject.useConsentManager)();return(0,external_react_namespaceObject.useMemo)(()=>(0,utils_namespaceObject.resolveTranslations)(e,external_c15t_namespaceObject.defaultTranslationConfig),[e])}for(var __rspack_i in exports.useTranslations=__webpack_exports__.useTranslations,__webpack_exports__)-1===["useTranslations"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{resolveTranslations as r}from"@c15t/ui/utils";import{defaultTranslationConfig as t}from"c15t";import{useMemo as o}from"react";import{useConsentManager as m}from"./use-consent-manager.js";function e(){let{translationConfig:e}=m();return o(()=>r(e,t),[e])}export{e as useTranslations};
package/dist/iab.cjs DELETED
@@ -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)=>{var s=(_,n)=>{for(var s in _)__webpack_require__.o(_,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,[n]:_[s]})};s(_,"get"),s(n,"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__,{IABConsentBanner:()=>index_cjs_namespaceObject.IABConsentBanner,IABConsentDialog:()=>iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,useHeadlessIABConsentUI:()=>use_headless_iab_consent_ui_cjs_namespaceObject.useHeadlessIABConsentUI});const index_cjs_namespaceObject=require("./components/iab-consent-banner/index.cjs"),iab_consent_dialog_index_cjs_namespaceObject=require("./components/iab-consent-dialog/index.cjs"),use_headless_iab_consent_ui_cjs_namespaceObject=require("./hooks/use-headless-iab-consent-ui.cjs");for(var __rspack_i in exports.IABConsentBanner=__webpack_exports__.IABConsentBanner,exports.IABConsentDialog=__webpack_exports__.IABConsentDialog,exports.useHeadlessIABConsentUI=__webpack_exports__.useHeadlessIABConsentUI,__webpack_exports__)-1===["IABConsentBanner","IABConsentDialog","useHeadlessIABConsentUI"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
package/dist/index.cjs DELETED
@@ -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_modules__={7196(e){e.exports=require("./components/consent-banner/components.cjs")},1100(e){e.exports=require("./components/consent-banner/index.cjs")},2343(e){e.exports=require("./components/consent-dialog-link/index.cjs")},2287(e){e.exports=require("./components/consent-dialog-trigger/index.cjs")},866(e){e.exports=require("./components/consent-dialog/index.cjs")},4390(e){e.exports=require("./components/consent-widget/index.cjs")},6662(e){e.exports=require("./components/frame/index.cjs")},1252(e){e.exports=require("./components/integrations/index.cjs")},7677(e){e.exports=require("./components/shared/primitives/button.cjs")},3805(e){e.exports=require("./hooks/use-color-scheme.cjs")},36(e){e.exports=require("./hooks/use-consent-dialog-trigger.cjs")},8096(e){e.exports=require("./hooks/use-consent-manager.cjs")},2390(e){e.exports=require("./hooks/use-consent-script.cjs")},3540(e){e.exports=require("./hooks/use-focus-trap.cjs")},9049(e){e.exports=require("./hooks/use-headless-consent-ui.cjs")},2601(e){e.exports=require("./hooks/use-ssr-status.cjs")},2912(e){e.exports=require("./hooks/use-translations.cjs")},3510(e){e.exports=require("./providers/consent-manager-provider.cjs")},1285(e){e.exports=require("c15t")}},__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var o=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](o,o.exports,__webpack_require__),o.exports}__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r,o)=>{var s=(r,o)=>{for(var s in r)__webpack_require__.o(r,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,[o]:r[s]})};s(r,"get"),s(o,"value")},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__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__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var e=__webpack_require__(1285),r=__webpack_require__(1100),o=__webpack_require__(7196),s={};for(let e in o)0>["ConsentWidget","ConsentButton","useConsentScript","useColorScheme","useHeadlessConsentUI","detectBrowserLanguage","TriggerIcon","useSSRStatus","defaultTranslationConfig","useConsentDialogTrigger","YouTubeEmbed","default","prepareTranslationConfig","ConsentBanner","TriggerButton","useConsentManager","policyPackPresets","ConsentDialogTriggerToolbar","useDraggable","Frame","ConsentDialog","useTriggerContext","useFocusTrap","mergeTranslationConfigs","ConsentDialogTrigger","ConsentDialogLink","useTranslations","configureConsentManager","TriggerText","ConsentScriptConflictError","GoogleMap","ConsentManagerProvider","TriggerRoot"].indexOf(e)&&(s[e]=()=>o[e]);__webpack_require__.d(__webpack_exports__,s);var n=__webpack_require__(866),_=__webpack_require__(2343),t=__webpack_require__(2287),a=__webpack_require__(4390),i=__webpack_require__(6662),p=__webpack_require__(1252),g=__webpack_require__(7677),u=__webpack_require__(3805),c=__webpack_require__(36),l=__webpack_require__(8096),C=__webpack_require__(2390),x=__webpack_require__(3540),b=__webpack_require__(9049),k=__webpack_require__(2601),T=__webpack_require__(2912),w=__webpack_require__(3510);__webpack_require__.d(__webpack_exports__,{ConsentBanner:()=>r.ConsentBanner,ConsentButton:()=>g.ConsentButton,ConsentDialog:()=>n.ConsentDialog,ConsentDialogLink:()=>_.ConsentDialogLink,ConsentDialogTrigger:()=>t.ConsentDialogTrigger,ConsentDialogTriggerToolbar:()=>t.ConsentDialogTriggerToolbar,ConsentManagerProvider:()=>w.ConsentManagerProvider,ConsentScriptConflictError:()=>C.ConsentScriptConflictError,ConsentWidget:()=>a.ConsentWidget,Frame:()=>i.Frame,GoogleMap:()=>p.GoogleMap,TriggerButton:()=>t.TriggerButton,TriggerIcon:()=>t.TriggerIcon,TriggerRoot:()=>t.TriggerRoot,TriggerText:()=>t.TriggerText,YouTubeEmbed:()=>p.YouTubeEmbed,configureConsentManager:()=>e.configureConsentManager,defaultTranslationConfig:()=>e.defaultTranslationConfig,detectBrowserLanguage:()=>e.detectBrowserLanguage,mergeTranslationConfigs:()=>e.mergeTranslationConfigs,policyPackPresets:()=>e.policyPackPresets,prepareTranslationConfig:()=>e.prepareTranslationConfig,useColorScheme:()=>u.useColorScheme,useConsentDialogTrigger:()=>c.useConsentDialogTrigger,useConsentManager:()=>l.useConsentManager,useConsentScript:()=>C.useConsentScript,useDraggable:()=>t.useDraggable,useFocusTrap:()=>x.useFocusTrap,useHeadlessConsentUI:()=>b.useHeadlessConsentUI,useSSRStatus:()=>k.useSSRStatus,useTranslations:()=>T.useTranslations,useTriggerContext:()=>t.useTriggerContext})})(),exports.ConsentBanner=__webpack_exports__.ConsentBanner,exports.ConsentButton=__webpack_exports__.ConsentButton,exports.ConsentDialog=__webpack_exports__.ConsentDialog,exports.ConsentDialogLink=__webpack_exports__.ConsentDialogLink,exports.ConsentDialogTrigger=__webpack_exports__.ConsentDialogTrigger,exports.ConsentDialogTriggerToolbar=__webpack_exports__.ConsentDialogTriggerToolbar,exports.ConsentManagerProvider=__webpack_exports__.ConsentManagerProvider,exports.ConsentScriptConflictError=__webpack_exports__.ConsentScriptConflictError,exports.ConsentWidget=__webpack_exports__.ConsentWidget,exports.Frame=__webpack_exports__.Frame,exports.GoogleMap=__webpack_exports__.GoogleMap,exports.TriggerButton=__webpack_exports__.TriggerButton,exports.TriggerIcon=__webpack_exports__.TriggerIcon,exports.TriggerRoot=__webpack_exports__.TriggerRoot,exports.TriggerText=__webpack_exports__.TriggerText,exports.YouTubeEmbed=__webpack_exports__.YouTubeEmbed,exports.configureConsentManager=__webpack_exports__.configureConsentManager,exports.defaultTranslationConfig=__webpack_exports__.defaultTranslationConfig,exports.detectBrowserLanguage=__webpack_exports__.detectBrowserLanguage,exports.mergeTranslationConfigs=__webpack_exports__.mergeTranslationConfigs,exports.policyPackPresets=__webpack_exports__.policyPackPresets,exports.prepareTranslationConfig=__webpack_exports__.prepareTranslationConfig,exports.useColorScheme=__webpack_exports__.useColorScheme,exports.useConsentDialogTrigger=__webpack_exports__.useConsentDialogTrigger,exports.useConsentManager=__webpack_exports__.useConsentManager,exports.useConsentScript=__webpack_exports__.useConsentScript,exports.useDraggable=__webpack_exports__.useDraggable,exports.useFocusTrap=__webpack_exports__.useFocusTrap,exports.useHeadlessConsentUI=__webpack_exports__.useHeadlessConsentUI,exports.useSSRStatus=__webpack_exports__.useSSRStatus,exports.useTranslations=__webpack_exports__.useTranslations,exports.useTriggerContext=__webpack_exports__.useTriggerContext,__webpack_exports__)-1===["ConsentBanner","ConsentButton","ConsentDialog","ConsentDialogLink","ConsentDialogTrigger","ConsentDialogTriggerToolbar","ConsentManagerProvider","ConsentScriptConflictError","ConsentWidget","Frame","GoogleMap","TriggerButton","TriggerIcon","TriggerRoot","TriggerText","YouTubeEmbed","configureConsentManager","defaultTranslationConfig","detectBrowserLanguage","mergeTranslationConfigs","policyPackPresets","prepareTranslationConfig","useColorScheme","useConsentDialogTrigger","useConsentManager","useConsentScript","useDraggable","useFocusTrap","useHeadlessConsentUI","useSSRStatus","useTranslations","useTriggerContext"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={8316(_){_.exports=require("../components/shared/ui/accordion/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(8316),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={5460(_){_.exports=require("../components/shared/ui/button/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(5460),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={7290(_){_.exports=require("../components/shared/ui/collapsible/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(7290),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={1692(_){_.exports=require("../components/shared/ui/dialog/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(1692),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={2221(e){e.exports=require("../components/shared/ui/preference-item/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(e){var _=__webpack_module_cache__[e];if(void 0!==_)return _.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](r,r.exports,__webpack_require__),r.exports}__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__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var e=__webpack_require__(2221),_={};for(let r in e)"default"!==r&&(_[r]=()=>e[r]);__webpack_require__.d(__webpack_exports__,_)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={5492(_){_.exports=require("../components/shared/ui/switch/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(5492),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={1400(_){_.exports=require("../components/shared/ui/tabs/index.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(1400),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,c)=>{var r=(_,c)=>{for(var r in _)__webpack_require__.o(_,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[c]:_[r]})};r(_,"get"),r(c,"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__,{Accordion:()=>index_cjs_namespaceObject,Button:()=>button_index_cjs_namespaceObject,Collapsible:()=>collapsible_index_cjs_namespaceObject,Dialog:()=>dialog_index_cjs_namespaceObject,PreferenceItem:()=>preference_item_index_cjs_namespaceObject,Switch:()=>switch_index_cjs_namespaceObject,Tabs:()=>tabs_index_cjs_namespaceObject});const index_cjs_namespaceObject=require("./components/shared/ui/accordion/index.cjs"),button_index_cjs_namespaceObject=require("./components/shared/ui/button/index.cjs"),collapsible_index_cjs_namespaceObject=require("./components/shared/ui/collapsible/index.cjs"),dialog_index_cjs_namespaceObject=require("./components/shared/ui/dialog/index.cjs"),preference_item_index_cjs_namespaceObject=require("./components/shared/ui/preference-item/index.cjs"),switch_index_cjs_namespaceObject=require("./components/shared/ui/switch/index.cjs"),tabs_index_cjs_namespaceObject=require("./components/shared/ui/tabs/index.cjs");for(var __rspack_i in exports.Accordion=__webpack_exports__.Accordion,exports.Button=__webpack_exports__.Button,exports.Collapsible=__webpack_exports__.Collapsible,exports.Dialog=__webpack_exports__.Dialog,exports.PreferenceItem=__webpack_exports__.PreferenceItem,exports.Switch=__webpack_exports__.Switch,exports.Tabs=__webpack_exports__.Tabs,__webpack_exports__)-1===["Accordion","Button","Collapsible","Dialog","PreferenceItem","Switch","Tabs"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,t,r)=>{var n=(t,r)=>{for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,[r]:t[n]})};n(t,"get"),n(r,"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__,{ConsentManagerProvider:()=>ConsentManagerProvider,clearConsentRuntimeCache:()=>clearConsentRuntimeCache});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),theme_namespaceObject=require("@c15t/ui/theme"),utils_namespaceObject=require("@c15t/ui/utils"),external_c15t_namespaceObject=require("c15t"),external_react_namespaceObject=require("react"),consent_manager_context_cjs_namespaceObject=require("../context/consent-manager-context.cjs"),theme_context_cjs_namespaceObject=require("../context/theme-context.cjs"),use_color_scheme_cjs_namespaceObject=require("../hooks/use-color-scheme.cjs"),theme_utils_cjs_namespaceObject=require("../utils/theme-utils.cjs"),external_version_cjs_namespaceObject=require("../version.cjs");function clearConsentRuntimeCache(){(0,external_c15t_namespaceObject.clearConsentRuntimeCache)()}const CALLBACK_KEYS=["onBannerFetched","onConsentSet","onConsentChanged","onError","onBeforeConsentRevocationReload"];function pickCallbackProps(e){return{onBannerFetched:e?.onBannerFetched,onConsentSet:e?.onConsentSet,onConsentChanged:e?.onConsentChanged,onError:e?.onError,onBeforeConsentRevocationReload:e?.onBeforeConsentRevocationReload}}function ConsentManagerProvider({children:e,options:t}){let{consentManager:r,consentStore:n}=(0,external_react_namespaceObject.useMemo)(()=>(0,external_c15t_namespaceObject.getOrCreateConsentRuntime)(t,{pkg:"@c15t/react",version:external_version_cjs_namespaceObject.version}),[t]),[a,c]=(0,external_react_namespaceObject.useState)(()=>n?n.getState():{}),o=(0,external_react_namespaceObject.useRef)(!1),_=(0,external_react_namespaceObject.useRef)(pickCallbackProps(t.callbacks));(0,external_react_namespaceObject.useEffect)(()=>{if(!n)return;let e=n.subscribe(c);if(!o.current){let e=n.getState();(0,external_react_namespaceObject.startTransition)(()=>{c(t=>t!==e?(o.current=!0,e):(o.current=!0,t))})}return e},[n]),(0,external_react_namespaceObject.useEffect)(()=>{if(!n)return;let e=n.getState().overrides??{},r=t.overrides??{};(e.country!==r.country||e.region!==r.region||e.language!==r.language||e.gpc!==r.gpc)&&n.getState().setOverrides({country:r.country,region:r.region,language:r.language,gpc:r.gpc})},[n,t.overrides?.country,t.overrides?.region,t.overrides?.language,t.overrides?.gpc]),(0,external_react_namespaceObject.useEffect)(()=>{if(!n)return;let e=pickCallbackProps(t.callbacks),r=_.current;CALLBACK_KEYS.some(t=>r[t]!==e[t])&&(n.setState(t=>({callbacks:{...t.callbacks,...e}})),_.current=e)},[n,t.callbacks?.onBannerFetched,t.callbacks?.onConsentSet,t.callbacks?.onConsentChanged,t.callbacks?.onError,t.callbacks?.onBeforeConsentRevocationReload]);let s=(0,external_react_namespaceObject.useMemo)(()=>{let{theme:e={},noStyle:r,disableAnimation:n,trapFocus:a=!0,colorScheme:c}=t;return{theme:(0,utils_namespaceObject.deepMerge)(theme_utils_cjs_namespaceObject.defaultTheme,e),noStyle:r,disableAnimation:n,trapFocus:a,colorScheme:c}},[t]),i=(0,external_react_namespaceObject.useMemo)(()=>(0,theme_namespaceObject.generateThemeCSS)(s.theme),[s.theme]),l=t.nonce??t.store?.nonce;(0,use_color_scheme_cjs_namespaceObject.useColorScheme)(t.colorScheme);let u=(0,external_react_namespaceObject.useMemo)(()=>{if(!n)throw Error("Consent store must be initialized before creating context value");return{state:a,store:n,manager:r}},[a,n,r]);return(0,jsx_runtime_namespaceObject.jsx)(consent_manager_context_cjs_namespaceObject.ConsentStateContext.Provider,{value:u,children:(0,jsx_runtime_namespaceObject.jsxs)(theme_context_cjs_namespaceObject.GlobalThemeContext.Provider,{value:s,children:[i?(0,jsx_runtime_namespaceObject.jsx)("style",{id:"c15t-theme",nonce:l,dangerouslySetInnerHTML:{__html:i}}):null,e]})})}for(var __rspack_i in exports.ConsentManagerProvider=__webpack_exports__.ConsentManagerProvider,exports.clearConsentRuntimeCache=__webpack_exports__.clearConsentRuntimeCache,__webpack_exports__)-1===["ConsentManagerProvider","clearConsentRuntimeCache"].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{generateThemeCSS as t}from"@c15t/ui/theme";import{deepMerge as r}from"@c15t/ui/utils";import{clearConsentRuntimeCache as o,getOrCreateConsentRuntime as c}from"c15t";import{startTransition as a,useEffect as s,useMemo as i,useRef as l,useState as u}from"react";import{ConsentStateContext as m}from"../context/consent-manager-context.js";import{GlobalThemeContext as g}from"../context/theme-context.js";import{useColorScheme as d}from"../hooks/use-color-scheme.js";import{defaultTheme as h}from"../utils/theme-utils.js";import{version as f}from"../version.js";function C(){o()}let v=["onBannerFetched","onConsentSet","onConsentChanged","onError","onBeforeConsentRevocationReload"];function p(e){return{onBannerFetched:e?.onBannerFetched,onConsentSet:e?.onConsentSet,onConsentChanged:e?.onConsentChanged,onError:e?.onError,onBeforeConsentRevocationReload:e?.onBeforeConsentRevocationReload}}function b({children:o,options:C}){let{consentManager:k,consentStore:S}=i(()=>c(C,{pkg:"@c15t/react",version:f}),[C]),[R,B]=u(()=>S?S.getState():{}),x=l(!1),y=l(p(C.callbacks));s(()=>{if(!S)return;let e=S.subscribe(B);if(!x.current){let e=S.getState();a(()=>{B(n=>n!==e?(x.current=!0,e):(x.current=!0,n))})}return e},[S]),s(()=>{if(!S)return;let e=S.getState().overrides??{},n=C.overrides??{};(e.country!==n.country||e.region!==n.region||e.language!==n.language||e.gpc!==n.gpc)&&S.getState().setOverrides({country:n.country,region:n.region,language:n.language,gpc:n.gpc})},[S,C.overrides?.country,C.overrides?.region,C.overrides?.language,C.overrides?.gpc]),s(()=>{if(!S)return;let e=p(C.callbacks),n=y.current;v.some(t=>n[t]!==e[t])&&(S.setState(n=>({callbacks:{...n.callbacks,...e}})),y.current=e)},[S,C.callbacks?.onBannerFetched,C.callbacks?.onConsentSet,C.callbacks?.onConsentChanged,C.callbacks?.onError,C.callbacks?.onBeforeConsentRevocationReload]);let j=i(()=>{let{theme:e={},noStyle:n,disableAnimation:t,trapFocus:o=!0,colorScheme:c}=C;return{theme:r(h,e),noStyle:n,disableAnimation:t,trapFocus:o,colorScheme:c}},[C]),E=i(()=>t(j.theme),[j.theme]),_=C.nonce??C.store?.nonce;d(C.colorScheme);let F=i(()=>{if(!S)throw Error("Consent store must be initialized before creating context value");return{state:R,store:S,manager:k}},[R,S,k]);return e(m.Provider,{value:F,children:n(g.Provider,{value:j,children:[E?e("style",{id:"c15t-theme",nonce:_,dangerouslySetInnerHTML:{__html:E}}):null,o]})})}export{b as ConsentManagerProvider,C as clearConsentRuntimeCache};
@@ -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,r,t)=>{var c=(r,t)=>{for(var c in r)__webpack_require__.o(r,c)&&!__webpack_require__.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,[t]:r[c]})};c(r,"get"),c(t,"value")},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__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__,{fetchSSRData:()=>fetchSSRData});const external_version_cjs_namespaceObject=require("../version.cjs"),external_headers_cjs_namespaceObject=require("./headers.cjs"),external_normalize_url_cjs_namespaceObject=require("./normalize-url.cjs"),C15T_VERSION_HEADER="x-c15t-version";function buildRequestContext(e){return{backendURL:e.backendURL,country:e.overrides?.country??e.headers["x-c15t-country"]??null,region:e.overrides?.region??e.headers["x-c15t-region"]??null,language:e.overrides?.language??e.headers["accept-language"]??null,gpc:"1"===e.headers["sec-gpc"]}}function performInitFetch(e,r,t,c){let a=getNowMs();return fetch(`${e}/init`,{method:"GET",headers:r}).then(e=>{let r=Math.max(0,Math.round(getNowMs()-a)),n=inspectCacheHeaders(e.headers),o={requestContext:t,requestDurationMs:r,cache:n};return e.ok?e.json().then(e=>({init:e,metadata:o})):(c&&(console.log(`[c15t/server] SSR fetch failed with status: ${e.status}`),n.detail&&console.log(`[c15t/server] SSR cache status: ${n.detail}`)),{metadata:o})}).then(e=>(c&&e.init&&(console.log(`[c15t/server] SSR fetch succeeded in ${e.metadata?.requestDurationMs??0}ms`),e.metadata?.cache?.detail&&console.log(`[c15t/server] SSR cache status: ${e.metadata.cache.detail}`)),e)).catch(e=>{if(c){let r=e instanceof Error?e.message:"Unknown error";console.log(`[c15t/server] SSR fetch error: ${r}`)}return{}})}function getNowMs(){return"u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}function inspectCacheHeaders(e){let r=null,t=!1;for(let c of["x-vercel-cache","cf-cache-status","x-cache","cache-status"]){let a=e.get(c);if(a){r=`${c}=${a}`,t=/\b(hit|stale|revalidated|updating)\b/i.test(a);break}}let c=e.get("age"),a=c?Number.parseInt(c,10):NaN,n=Number.isFinite(a)&&a>0,o=n?`age=${a}`:null;return{isHit:t||n,detail:r&&o?`${r}, ${o}`:r??o}}async function fetchSSRData(e){let{backendURL:r,headers:t,overrides:c,debug:a}=e;a&&console.log("[c15t/server] SSR fetch starting...");let n=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(t);if(a){let e=Object.keys(n);console.log(`[c15t/server] Detected headers: [${e.join(", ")}]`);let r=n["cf-ipcountry"],t=n["x-vercel-ip-country"];r?console.log(`[c15t/server] Country from cf-ipcountry: ${r}`):t&&console.log(`[c15t/server] Country from x-vercel-ip-country: ${t}`)}if(0===Object.keys(n).length){a&&console.log("[c15t/server] No relevant headers found, skipping SSR fetch");return}let o=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)(r,t);if(!o){a&&console.log("[c15t/server] Failed to normalize URL, skipping SSR fetch");return}a&&console.log(`[c15t/server] Fetching from: ${o}/init`);let s={...n};c?.country&&(s["x-c15t-country"]=c.country,a&&console.log(`[c15t/server] Country override: ${c.country}`)),c?.region&&(s["x-c15t-region"]=c.region,a&&console.log(`[c15t/server] Region override: ${c.region}`)),c?.language&&(s["accept-language"]=c.language,a&&console.log(`[c15t/server] Language override: ${c.language}`)),s[C15T_VERSION_HEADER]||(s[C15T_VERSION_HEADER]=external_version_cjs_namespaceObject.version);let _=await performInitFetch(o,s,buildRequestContext({backendURL:o,headers:s,overrides:c}),a),i=_.init;if(!i){a&&console.log("[c15t/server] SSR fetch returned no data");return}return{init:i,gvl:i.gvl,metadata:_.metadata}}for(var __rspack_i in exports.fetchSSRData=__webpack_exports__.fetchSSRData,__webpack_exports__)-1===["fetchSSRData"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,r,_)=>{var t=(r,_)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[_]:r[t]})};t(r,"get"),t(_,"value")},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__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__);const COUNTRY_PRIORITY=["cf-ipcountry","x-vercel-ip-country","x-amz-cf-ipcountry","x-country-code"],REGION_PRIORITY=["x-vercel-ip-country-region","x-region-code"],FORWARDED_HEADERS=[...COUNTRY_PRIORITY,...REGION_PRIORITY,"x-c15t-version","accept-language","user-agent","x-forwarded-host","x-forwarded-for","sec-gpc","purpose","sec-purpose","next-router-prefetch","x-middleware-prefetch"];function extractRelevantHeaders(e){let r={};for(let _ of FORWARDED_HEADERS){let t=e.get(_);t&&(r[_]=t)}let _=COUNTRY_PRIORITY.find(e=>r[e]);_&&(r["x-c15t-country"]=r[_]);let t=REGION_PRIORITY.find(e=>r[e]);return t&&(r["x-c15t-region"]=r[t]),r}for(var __rspack_i in __webpack_require__.d(__webpack_exports__,{extractRelevantHeaders:()=>extractRelevantHeaders}),exports.extractRelevantHeaders=__webpack_exports__.extractRelevantHeaders,__webpack_exports__)-1===["extractRelevantHeaders"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,a)=>{var r=(_,a)=>{for(var r in _)__webpack_require__.o(_,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[a]:_[r]})};r(_,"get"),r(a,"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__,{createSSRInitCacheKey:()=>external_init_cache_key_cjs_namespaceObject.createSSRInitCacheKey,extractRelevantHeaders:()=>external_headers_cjs_namespaceObject.extractRelevantHeaders,fetchSSRData:()=>external_fetch_ssr_data_cjs_namespaceObject.fetchSSRData,normalizeBackendURL:()=>external_normalize_url_cjs_namespaceObject.normalizeBackendURL,validateBackendURL:()=>external_normalize_url_cjs_namespaceObject.validateBackendURL});const external_fetch_ssr_data_cjs_namespaceObject=require("./fetch-ssr-data.cjs"),external_headers_cjs_namespaceObject=require("./headers.cjs"),external_init_cache_key_cjs_namespaceObject=require("./init-cache-key.cjs"),external_normalize_url_cjs_namespaceObject=require("./normalize-url.cjs");for(var __rspack_i in exports.createSSRInitCacheKey=__webpack_exports__.createSSRInitCacheKey,exports.extractRelevantHeaders=__webpack_exports__.extractRelevantHeaders,exports.fetchSSRData=__webpack_exports__.fetchSSRData,exports.normalizeBackendURL=__webpack_exports__.normalizeBackendURL,exports.validateBackendURL=__webpack_exports__.validateBackendURL,__webpack_exports__)-1===["createSSRInitCacheKey","extractRelevantHeaders","fetchSSRData","normalizeBackendURL","validateBackendURL"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{createSSRInitCacheKey:()=>createSSRInitCacheKey});const external_headers_cjs_namespaceObject=require("./headers.cjs");function createSSRInitCacheKey({normalizedURL:e,headers:_,overrides:r}){let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(_);return JSON.stringify({normalizedURL:e,country:r?.country??t["x-c15t-country"]??"",region:r?.region??t["x-c15t-region"]??"",language:r?.language??t["accept-language"]??"",gpc:t["sec-gpc"]??""})}for(var __rspack_i in exports.createSSRInitCacheKey=__webpack_exports__.createSSRInitCacheKey,__webpack_exports__)-1===["createSSRInitCacheKey"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,r,_)=>{var t=(r,_)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[_]:r[t]})};t(r,"get"),t(_,"value")},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__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__);const ABSOLUTE_URL_REGEX=/^https?:\/\//;function trimTrailingSlash(e){return"/"===e?e:e.endsWith("/")?e.slice(0,-1):e}function validateBackendURL(e){if(ABSOLUTE_URL_REGEX.test(e))return new URL(e),{isAbsolute:!0,normalizedURL:trimTrailingSlash(e)};if(e.startsWith("/"))return{isAbsolute:!1,normalizedURL:trimTrailingSlash(e)};throw Error(`Invalid URL format: ${e}. URL must be absolute (https://...) or relative starting with (/)`)}function normalizeBackendURL(e,r){try{let{normalizedURL:_,isAbsolute:t}=validateBackendURL(e);if(t)return _;let a=r.get("referer"),i=r.get("x-forwarded-proto")||"https",n=r.get("x-forwarded-host")||r.get("host");if(n)return trimTrailingSlash(`${i}://${n}${_}`);if(a){let e=new URL(a);return trimTrailingSlash(`${e.protocol}//${e.host}${_}`)}return null}catch{return null}}for(var __rspack_i in __webpack_require__.d(__webpack_exports__,{normalizeBackendURL:()=>normalizeBackendURL,validateBackendURL:()=>validateBackendURL}),exports.normalizeBackendURL=__webpack_exports__.normalizeBackendURL,exports.validateBackendURL=__webpack_exports__.validateBackendURL,__webpack_exports__)-1===["normalizeBackendURL","validateBackendURL"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in __webpack_require__.r(__webpack_exports__),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in __webpack_require__.r(__webpack_exports__),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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_modules__={7831(_){_.exports=require("./style-keys.cjs")},464(_){_.exports=require("./style-types.cjs")}},__webpack_module_cache__={};function __webpack_require__(_){var e=__webpack_module_cache__[_];if(void 0!==e)return e.exports;var r=__webpack_module_cache__[_]={exports:{}};return __webpack_modules__[_](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=_=>{var e=_&&_.__esModule?()=>_.default:()=>_;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(_,e,r)=>{var a=(e,r)=>{for(var a in e)__webpack_require__.o(e,a)&&!__webpack_require__.o(_,a)&&Object.defineProperty(_,a,{enumerable:!0,[r]:e[a]})};a(e,"get"),a(r,"value")},__webpack_require__.o=(_,e)=>Object.prototype.hasOwnProperty.call(_,e),__webpack_require__.r=_=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in(()=>{__webpack_require__.r(__webpack_exports__);var _=__webpack_require__(7831),e={};for(let r in _)"default"!==r&&(e[r]=()=>_[r]);__webpack_require__.d(__webpack_exports__,e);var r=__webpack_require__(464),e={};for(let _ in r)"default"!==_&&(e[_]=()=>r[_]);__webpack_require__.d(__webpack_exports__,e)})(),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};for(var __rspack_i in __webpack_require__.r(__webpack_exports__),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__={};function defineTheme(e){return e}for(var __rspack_i in __webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{defineTheme:()=>defineTheme}),exports.defineTheme=__webpack_exports__.defineTheme,__webpack_exports__)-1===["defineTheme"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
package/dist/utils/cn.cjs DELETED
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{cnExt:()=>cnExt});const utils_namespaceObject=require("@c15t/ui/utils");function cnExt(...e){return(0,utils_namespaceObject.cn)(...e)}for(var __rspack_i in exports.cnExt=__webpack_exports__.cnExt,__webpack_exports__)-1===["cnExt"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{mergeStyles:()=>mergeStyles});const utils_namespaceObject=require("@c15t/ui/utils");function mergeStyles(e,_){return(0,utils_namespaceObject.mergeStyles)(e,_)}for(var __rspack_i in exports.mergeStyles=__webpack_exports__.mergeStyles,__webpack_exports__)-1===["mergeStyles"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -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,t,_)=>{var r=(t,_)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,[_]:t[r]})};r(t,"get"),r(_,"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__,{default:()=>test_helpers,testComponentStyles:()=>testComponentStyles});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),consent_manager_provider_cjs_namespaceObject=require("../providers/consent-manager-provider.cjs");async function testComponentStyles({component:e,testCases:t,noStyle:_=!1,theme:r}){let{container:a}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",noStyle:_,theme:r},children:e}));for(let{testId:e,styles:r}of(await new Promise(e=>setTimeout(e,50)),t)){let t=a.querySelector(`[data-testid="${e}"]`),s=document.body.querySelector(`[data-testid="${e}"]`),c=t||s;if(!c){console.warn(`Element with testId "${e}" not found in DOM`),(0,external_vitest_namespaceObject.expect)(!0).toBe(!0);continue}(0,external_vitest_namespaceObject.expect)(c).toBeTruthy(),"string"==typeof r&&r?_?(0,external_vitest_namespaceObject.expect)(c.className).toBe(r):(0,external_vitest_namespaceObject.expect)(c.className).toContain(r):"object"==typeof r&&r?.className&&(_?(0,external_vitest_namespaceObject.expect)(c.className).toBe(r.className):(0,external_vitest_namespaceObject.expect)(c.className).toContain(r.className))}}const test_helpers=testComponentStyles;for(var __rspack_i in exports.default=__webpack_exports__.default,exports.testComponentStyles=__webpack_exports__.testComponentStyles,__webpack_exports__)-1===["default","testComponentStyles"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as t}from"react/jsx-runtime";import{expect as e}from"vitest";import{render as o}from"vitest-browser-react";import{ConsentManagerProvider as s}from"../providers/consent-manager-provider.js";async function a({component:r,testCases:n,noStyle:i=!1,theme:m}){let{container:c}=await o(t(s,{options:{mode:"offline",noStyle:i,theme:m},children:r}));for(let{testId:t,styles:o}of(await new Promise(t=>setTimeout(t,50)),n)){let s=c.querySelector(`[data-testid="${t}"]`),a=document.body.querySelector(`[data-testid="${t}"]`),r=s||a;if(!r){console.warn(`Element with testId "${t}" not found in DOM`),e(!0).toBe(!0);continue}e(r).toBeTruthy(),"string"==typeof o&&o?i?e(r.className).toBe(o):e(r.className).toContain(o):"object"==typeof o&&o?.className&&(i?e(r.className).toBe(o.className):e(r.className).toContain(o.className))}}export default a;export{a as testComponentStyles};
@@ -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,_,r)=>{var t=(_,r)=>{for(var t in _)__webpack_require__.o(_,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,[r]:_[t]})};t(_,"get"),t(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__,{defaultTheme:()=>defaultTheme,generateThemeCSS:()=>generateThemeCSS,themeToVars:()=>themeToVars});const theme_namespaceObject=require("@c15t/ui/theme"),defaultTheme=theme_namespaceObject.defaultTheme;function themeToVars(e,_=!1){return(0,theme_namespaceObject.themeToVars)(e,_)}function generateThemeCSS(e){return(0,theme_namespaceObject.generateThemeCSS)(e)}for(var __rspack_i in exports.defaultTheme=__webpack_exports__.defaultTheme,exports.generateThemeCSS=__webpack_exports__.generateThemeCSS,exports.themeToVars=__webpack_exports__.themeToVars,__webpack_exports__)-1===["defaultTheme","generateThemeCSS","themeToVars"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
package/dist/version.cjs DELETED
@@ -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,_,r)=>{var o=(_,r)=>{for(var o in _)__webpack_require__.o(_,o)&&!__webpack_require__.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,[r]:_[o]})};o(_,"get"),o(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__);const version="2.2.1";for(var __rspack_i in __webpack_require__.d(__webpack_exports__,{},{version:"2.2.1"}),exports.version=__webpack_exports__.version,__webpack_exports__)-1===["version"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,126 +0,0 @@
1
- import { type FC, type HTMLAttributes, type ReactNode } from 'react';
2
- /**
3
- * Props for the root component of the ConsentBanner.
4
- *
5
- * @remarks
6
- * The root component serves as the top-level container and context provider
7
- * for the consent banner. It manages the consent state and styling configuration
8
- * for all child components.
9
- *
10
- * @public
11
- */
12
- interface ConsentBannerRootProps extends HTMLAttributes<HTMLDivElement> {
13
- /**
14
- * @remarks
15
- * React elements to be rendered within the consent banner.
16
- * Typically includes Content, Title, Description, and Actions components.
17
- */
18
- children: ReactNode;
19
- /**
20
- * @remarks
21
- * When true, removes all default styling from the banner and its children.
22
- * Useful when implementing completely custom styles.
23
- */
24
- noStyle?: boolean;
25
- /**
26
- * @remarks
27
- * When true, disables the entrance/exit animations.
28
- * Useful for environments where animations are not desired.
29
- */
30
- disableAnimation?: boolean;
31
- /**
32
- * @remarks
33
- * When true, the consent banner will lock the scroll of the page.
34
- * Useful for implementing a consent banner that locks the scroll of the page.
35
- * @default false
36
- */
37
- scrollLock?: boolean;
38
- /**
39
- * @remarks
40
- * When true, the consent banner will trap focus.
41
- * Useful for implementing a consent banner that traps focus.
42
- * @default true
43
- */
44
- trapFocus?: boolean;
45
- /**
46
- * Which consent models this banner responds to.
47
- * @default ['opt-in', 'opt-out']
48
- */
49
- models?: import('c15t').Model[];
50
- /**
51
- * Override the UI source identifier sent with consent API calls.
52
- * @default 'banner'
53
- */
54
- uiSource?: string;
55
- }
56
- /**
57
- * Root component of the ConsentBanner that provides context and styling.
58
- *
59
- * @remarks
60
- * This component:
61
- * - Provides the ConsentBanner context to all child components
62
- * - Manages consent state through the consent manager
63
- * - Handles style distribution to child components
64
- * - Serves as the main container for the banner
65
- *
66
- * @example
67
- * Basic usage:
68
- * ```tsx
69
- * <ConsentBanner.Root>
70
- * <ConsentBanner.Card>
71
- * <ConsentBanner.Header>
72
- * <ConsentBanner.Title />
73
- * <ConsentBanner.Description />
74
- * </ConsentBanner.Header>
75
- * <ConsentBanner.Footer>
76
- * <ConsentBanner.CustomizeButton />
77
- * <ConsentBanner.FooterSubGroup>
78
- * <ConsentBanner.RejectButton />
79
- * <ConsentBanner.AcceptButton />
80
- * </ConsentBanner.FooterSubGroup>
81
- * </ConsentBanner.Footer>
82
- * </ConsentBanner.Card>
83
- * </ConsentBanner.Root>
84
- * ```
85
- *
86
- * @example
87
- * Preferred styling with provider theme tokens and slots:
88
- * ```tsx
89
- * <ConsentManagerProvider
90
- * options={{
91
- * theme: {
92
- * colors: {
93
- * surface: '#fffdf8',
94
- * surfaceHover: '#f6f3ee',
95
- * },
96
- * slots: {
97
- * consentBannerCard: 'rounded-3xl shadow-xl',
98
- * consentBannerFooter: 'border-t border-black/10 px-6',
99
- * consentBannerTitle: 'tracking-tight',
100
- * },
101
- * },
102
- * }}
103
- * >
104
- * <ConsentBanner.Root>
105
- * <ConsentBanner.Card>
106
- * <ConsentBanner.Header>
107
- * <ConsentBanner.Title />
108
- * <ConsentBanner.Description />
109
- * </ConsentBanner.Header>
110
- * <ConsentBanner.Footer>
111
- * <ConsentBanner.CustomizeButton />
112
- * <ConsentBanner.FooterSubGroup>
113
- * <ConsentBanner.RejectButton />
114
- * <ConsentBanner.AcceptButton />
115
- * </ConsentBanner.FooterSubGroup>
116
- * </ConsentBanner.Footer>
117
- * </ConsentBanner.Card>
118
- * </ConsentBanner.Root>
119
- * </ConsentManagerProvider>
120
- * ```
121
- *
122
- * @public
123
- */
124
- declare const ConsentBannerRoot: FC<ConsentBannerRootProps>;
125
- declare const Root: FC<ConsentBannerRootProps>;
126
- export { ConsentBannerRoot, Root };
@@ -1,11 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import { type HeadlessConsentBannerAction } from '../../hooks/use-headless-consent-ui';
3
- import { type PolicyActionRenderProps } from '../shared/policy-actions';
4
- export interface ConsentBannerPolicyActionRenderProps extends PolicyActionRenderProps<HeadlessConsentBannerAction> {
5
- }
6
- export interface ConsentBannerPolicyActionsProps {
7
- renderAction?: (action: HeadlessConsentBannerAction, props: ConsentBannerPolicyActionRenderProps) => ReactNode;
8
- }
9
- export declare function ConsentBannerPolicyActions({ renderAction, }: ConsentBannerPolicyActionsProps): import("react").JSX.Element;
10
- declare const PolicyActions: typeof ConsentBannerPolicyActions;
11
- export { PolicyActions };
@@ -1,11 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import { type HeadlessConsentDialogAction } from '../../hooks/use-headless-consent-ui';
3
- import { type PolicyActionRenderProps } from '../shared/policy-actions';
4
- export interface ConsentWidgetPolicyActionRenderProps extends PolicyActionRenderProps<HeadlessConsentDialogAction> {
5
- }
6
- export interface ConsentWidgetPolicyActionsProps {
7
- renderAction?: (action: HeadlessConsentDialogAction, props: ConsentWidgetPolicyActionRenderProps) => ReactNode;
8
- }
9
- export declare function ConsentWidgetPolicyActions({ renderAction, }: ConsentWidgetPolicyActionsProps): import("react").JSX.Element;
10
- declare const PolicyActions: typeof ConsentWidgetPolicyActions;
11
- export { PolicyActions };
@@ -1,27 +0,0 @@
1
- import type { ProcessedFeature, ProcessedPurpose, ProcessedSpecialFeature, ProcessedStack } from '../types';
2
- /**
3
- * Processed GVL data for the IAB Consent Dialog.
4
- * @public
5
- */
6
- export interface GVLData {
7
- purposes: ProcessedPurpose[];
8
- specialPurposes: ProcessedPurpose[];
9
- specialFeatures: ProcessedSpecialFeature[];
10
- features: ProcessedFeature[];
11
- stacks: ProcessedStack[];
12
- standalonePurposes: ProcessedPurpose[];
13
- totalVendors: number;
14
- isLoading: boolean;
15
- }
16
- /**
17
- * Hook to process GVL (Global Vendor List) data into UI-friendly format.
18
- *
19
- * @remarks
20
- * Extracts and processes vendor, purpose, and feature data from the IAB TCF GVL
21
- * for use in the consent dialog UI. Handles purpose grouping into stacks,
22
- * standalone purposes, special purposes/features, and vendor mapping.
23
- *
24
- * @returns Processed GVL data ready for UI rendering
25
- * @public
26
- */
27
- export declare function useGVLData(): GVLData;
@@ -1,72 +0,0 @@
1
- export type VendorId = number | string;
2
- /**
3
- * Processed vendor data for UI display.
4
- */
5
- export interface ProcessedVendor {
6
- id: VendorId;
7
- name: string;
8
- policyUrl: string;
9
- usesNonCookieAccess: boolean;
10
- deviceStorageDisclosureUrl: string | null;
11
- usesCookies: boolean;
12
- cookieMaxAgeSeconds: number | null;
13
- cookieRefresh?: boolean;
14
- specialPurposes: number[];
15
- specialFeatures: number[];
16
- features: number[];
17
- purposes: number[];
18
- legIntPurposes: number[];
19
- legitimateInterestUrl?: string | null;
20
- isCustom?: boolean;
21
- usesLegitimateInterest?: boolean;
22
- dataRetention?: {
23
- purposes?: Record<number, number>;
24
- specialPurposes?: Record<number, number>;
25
- stdRetention?: number;
26
- };
27
- dataDeclaration?: number[];
28
- }
29
- /**
30
- * Processed purpose data for UI display.
31
- */
32
- export interface ProcessedPurpose {
33
- id: number;
34
- name: string;
35
- description: string;
36
- descriptionLegal?: string;
37
- illustrations: string[];
38
- vendors: ProcessedVendor[];
39
- isSpecialPurpose?: boolean;
40
- }
41
- /**
42
- * Special feature data for UI display.
43
- */
44
- export interface ProcessedSpecialFeature {
45
- id: number;
46
- name: string;
47
- description: string;
48
- descriptionLegal?: string;
49
- illustrations: string[];
50
- vendors: ProcessedVendor[];
51
- }
52
- /**
53
- * Feature data for UI display.
54
- * Features are informational (no consent toggle) and describe technical capabilities.
55
- */
56
- export interface ProcessedFeature {
57
- id: number;
58
- name: string;
59
- description: string;
60
- descriptionLegal?: string;
61
- illustrations: string[];
62
- vendors: ProcessedVendor[];
63
- }
64
- /**
65
- * Stack data with resolved purposes.
66
- */
67
- export interface ProcessedStack {
68
- id: number;
69
- name: string;
70
- description: string;
71
- purposes: ProcessedPurpose[];
72
- }