@c15t/react 2.0.0-rc.0 → 2.0.0-rc.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (715) hide show
  1. package/README.md +12 -3
  2. package/client/components/consent-banner.js +4 -0
  3. package/client/components/consent-dialog-link.js +3 -0
  4. package/client/components/consent-dialog-trigger.js +3 -0
  5. package/client/components/consent-dialog.js +4 -0
  6. package/client/components/consent-widget.js +4 -0
  7. package/client/components/frame.js +3 -0
  8. package/dist/components/consent-banner/atoms/overlay.cjs +1 -1
  9. package/dist/components/consent-banner/atoms/overlay.js +1 -1
  10. package/dist/components/consent-banner/atoms/root.cjs +1 -1
  11. package/dist/components/consent-banner/atoms/root.js +1 -1
  12. package/dist/components/consent-banner/components.cjs +1 -1
  13. package/dist/components/consent-banner/components.js +1 -1
  14. package/dist/components/consent-banner/consent-banner.cjs +1 -1
  15. package/dist/components/consent-banner/consent-banner.js +1 -1
  16. package/dist/components/consent-banner/error-boundary.cjs +1 -1
  17. package/dist/components/consent-banner/index.cjs +1 -1
  18. package/dist/components/consent-banner/index.js +1 -1
  19. package/dist/components/consent-banner/policy-actions.cjs +1 -0
  20. package/dist/components/consent-banner/policy-actions.js +1 -0
  21. package/dist/components/consent-dialog/atoms/card.cjs +1 -1
  22. package/dist/components/consent-dialog/atoms/card.js +1 -1
  23. package/dist/components/consent-dialog/atoms/overlay.cjs +1 -1
  24. package/dist/components/consent-dialog/atoms/overlay.js +1 -1
  25. package/dist/components/consent-dialog/atoms/root.cjs +1 -1
  26. package/dist/components/consent-dialog/atoms/root.js +1 -1
  27. package/dist/components/consent-dialog/consent-dialog.cjs +1 -1
  28. package/dist/components/consent-dialog/consent-dialog.js +1 -1
  29. package/dist/components/consent-dialog/index.cjs +1 -1
  30. package/dist/components/consent-dialog/index.js +1 -1
  31. package/dist/components/consent-dialog-link/index.cjs +1 -0
  32. package/dist/components/consent-dialog-link/index.js +1 -0
  33. package/dist/components/consent-dialog-trigger/atoms/button.cjs +1 -1
  34. package/dist/components/consent-dialog-trigger/atoms/button.js +1 -1
  35. package/dist/components/consent-dialog-trigger/atoms/icon.cjs +1 -1
  36. package/dist/components/consent-dialog-trigger/atoms/icon.js +1 -1
  37. package/dist/components/consent-dialog-trigger/atoms/root.cjs +1 -1
  38. package/dist/components/consent-dialog-trigger/atoms/root.js +1 -1
  39. package/dist/components/consent-dialog-trigger/atoms/text.cjs +1 -1
  40. package/dist/components/consent-dialog-trigger/atoms/text.js +1 -1
  41. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.cjs +1 -1
  42. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.js +1 -1
  43. package/dist/components/consent-dialog-trigger/index.cjs +1 -1
  44. package/dist/components/consent-dialog-trigger/index.js +1 -1
  45. package/dist/components/consent-dialog-trigger/types.cjs +1 -1
  46. package/dist/components/consent-dialog-trigger/use-draggable.cjs +1 -1
  47. package/dist/components/consent-dialog-trigger/use-draggable.js +1 -1
  48. package/dist/components/consent-preferences-link/consent-preferences-link.cjs +1 -0
  49. package/dist/components/consent-preferences-link/consent-preferences-link.js +1 -0
  50. package/dist/components/consent-preferences-link/index.cjs +1 -0
  51. package/dist/components/consent-preferences-link/index.js +1 -0
  52. package/dist/components/consent-widget/atoms/accordion.cjs +1 -1
  53. package/dist/components/consent-widget/atoms/accordion.js +1 -1
  54. package/dist/components/consent-widget/atoms/button.cjs +1 -1
  55. package/dist/components/consent-widget/atoms/button.js +1 -1
  56. package/dist/components/consent-widget/atoms/footer.cjs +1 -1
  57. package/dist/components/consent-widget/atoms/footer.js +1 -1
  58. package/dist/components/consent-widget/atoms/root.cjs +1 -1
  59. package/dist/components/consent-widget/atoms/root.js +1 -1
  60. package/dist/components/consent-widget/consent-widget.cjs +1 -1
  61. package/dist/components/consent-widget/consent-widget.js +1 -1
  62. package/dist/components/consent-widget/index.cjs +1 -1
  63. package/dist/components/consent-widget/index.js +1 -1
  64. package/dist/components/consent-widget/policy-actions.cjs +1 -0
  65. package/dist/components/consent-widget/policy-actions.js +1 -0
  66. package/dist/components/consent-widget/types.cjs +1 -1
  67. package/dist/components/frame/atoms.cjs +1 -1
  68. package/dist/components/frame/atoms.js +1 -1
  69. package/dist/components/frame/frame.cjs +1 -1
  70. package/dist/components/frame/frame.js +1 -1
  71. package/dist/components/frame/index.cjs +1 -1
  72. package/dist/components/frame/index.js +1 -1
  73. package/dist/components/frame/types.cjs +1 -1
  74. package/dist/components/iab-consent-banner/atoms/button-group.cjs +1 -1
  75. package/dist/components/iab-consent-banner/atoms/button-group.js +1 -1
  76. package/dist/components/iab-consent-banner/atoms/card.cjs +1 -1
  77. package/dist/components/iab-consent-banner/atoms/card.js +1 -1
  78. package/dist/components/iab-consent-banner/atoms/description.cjs +1 -1
  79. package/dist/components/iab-consent-banner/atoms/description.js +1 -1
  80. package/dist/components/iab-consent-banner/atoms/footer.cjs +1 -1
  81. package/dist/components/iab-consent-banner/atoms/footer.js +1 -1
  82. package/dist/components/iab-consent-banner/atoms/header.cjs +1 -1
  83. package/dist/components/iab-consent-banner/atoms/header.js +1 -1
  84. package/dist/components/iab-consent-banner/atoms/overlay.cjs +1 -1
  85. package/dist/components/iab-consent-banner/atoms/overlay.js +1 -1
  86. package/dist/components/iab-consent-banner/atoms/root.cjs +1 -1
  87. package/dist/components/iab-consent-banner/atoms/root.js +1 -1
  88. package/dist/components/iab-consent-banner/atoms/title.cjs +1 -1
  89. package/dist/components/iab-consent-banner/atoms/title.js +1 -1
  90. package/dist/components/iab-consent-banner/iab-consent-banner.cjs +1 -1
  91. package/dist/components/iab-consent-banner/iab-consent-banner.js +1 -1
  92. package/dist/components/iab-consent-banner/index.cjs +1 -1
  93. package/dist/components/iab-consent-banner/index.js +1 -1
  94. package/dist/components/iab-consent-dialog/atoms/card.cjs +1 -1
  95. package/dist/components/iab-consent-dialog/atoms/card.js +1 -1
  96. package/dist/components/iab-consent-dialog/atoms/content.cjs +1 -1
  97. package/dist/components/iab-consent-dialog/atoms/content.js +1 -1
  98. package/dist/components/iab-consent-dialog/atoms/footer.cjs +1 -1
  99. package/dist/components/iab-consent-dialog/atoms/footer.js +1 -1
  100. package/dist/components/iab-consent-dialog/atoms/header.cjs +1 -1
  101. package/dist/components/iab-consent-dialog/atoms/header.js +1 -1
  102. package/dist/components/iab-consent-dialog/atoms/overlay.cjs +1 -1
  103. package/dist/components/iab-consent-dialog/atoms/overlay.js +1 -1
  104. package/dist/components/iab-consent-dialog/atoms/purpose-item.cjs +1 -1
  105. package/dist/components/iab-consent-dialog/atoms/purpose-item.js +1 -1
  106. package/dist/components/iab-consent-dialog/atoms/root.cjs +1 -1
  107. package/dist/components/iab-consent-dialog/atoms/root.js +1 -1
  108. package/dist/components/iab-consent-dialog/atoms/stack-item.cjs +1 -1
  109. package/dist/components/iab-consent-dialog/atoms/stack-item.js +1 -1
  110. package/dist/components/iab-consent-dialog/atoms/tabs.cjs +1 -1
  111. package/dist/components/iab-consent-dialog/atoms/tabs.js +1 -1
  112. package/dist/components/iab-consent-dialog/atoms/vendor-list.cjs +1 -1
  113. package/dist/components/iab-consent-dialog/atoms/vendor-list.js +1 -1
  114. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.cjs +1 -1
  115. package/dist/components/iab-consent-dialog/iab-consent-dialog.cjs +1 -1
  116. package/dist/components/iab-consent-dialog/iab-consent-dialog.js +1 -1
  117. package/dist/components/iab-consent-dialog/index.cjs +1 -1
  118. package/dist/components/iab-consent-dialog/index.js +1 -1
  119. package/dist/components/iab-consent-dialog/types.cjs +1 -1
  120. package/dist/components/iab-consent-dialog/use-iab-translations.cjs +1 -1
  121. package/dist/components/shared/libs/polymorphic.cjs +1 -1
  122. package/dist/components/shared/libs/recursive-clone-children.cjs +1 -1
  123. package/dist/components/shared/libs/slot.cjs +1 -0
  124. package/dist/components/shared/libs/slot.js +1 -0
  125. package/dist/components/shared/libs/use-controllable-state.cjs +1 -0
  126. package/dist/components/shared/libs/use-controllable-state.js +1 -0
  127. package/dist/components/shared/policy-actions.cjs +1 -0
  128. package/dist/components/shared/policy-actions.js +1 -0
  129. package/dist/components/shared/primitives/box.cjs +1 -1
  130. package/dist/components/shared/primitives/box.js +1 -1
  131. package/dist/components/shared/primitives/button.cjs +1 -1
  132. package/dist/components/shared/primitives/button.js +1 -1
  133. package/dist/components/shared/primitives/button.types.cjs +1 -1
  134. package/dist/components/shared/primitives/legal-links/index.cjs +1 -1
  135. package/dist/components/shared/primitives/legal-links/index.js +1 -1
  136. package/dist/components/shared/ui/accordion/accordion.cjs +1 -1
  137. package/dist/components/shared/ui/accordion/accordion.js +1 -1
  138. package/dist/components/shared/ui/accordion/accordion.types.cjs +1 -1
  139. package/dist/components/shared/ui/accordion/index.cjs +1 -1
  140. package/dist/components/shared/ui/animated-collapse/animated-collapse.cjs +1 -1
  141. package/dist/components/shared/ui/animated-collapse/index.cjs +1 -1
  142. package/dist/components/shared/ui/animated-collapse/index.js +1 -1
  143. package/dist/components/shared/ui/branding.cjs +1 -0
  144. package/dist/components/shared/ui/branding.js +1 -0
  145. package/dist/components/shared/ui/button/button.cjs +1 -1
  146. package/dist/components/shared/ui/button/button.js +1 -1
  147. package/dist/components/shared/ui/button/button.types.cjs +1 -1
  148. package/dist/components/shared/ui/button/index.cjs +1 -1
  149. package/dist/components/shared/ui/collapsible/collapsible.cjs +1 -0
  150. package/dist/components/shared/ui/collapsible/collapsible.js +1 -0
  151. package/dist/components/shared/ui/collapsible/index.cjs +1 -0
  152. package/dist/components/shared/ui/collapsible/index.js +1 -0
  153. package/dist/components/shared/ui/dialog/dialog.cjs +1 -0
  154. package/dist/components/shared/ui/dialog/dialog.js +1 -0
  155. package/dist/components/shared/ui/dialog/index.cjs +1 -0
  156. package/dist/components/shared/ui/dialog/index.js +1 -0
  157. package/dist/components/shared/ui/icon.cjs +1 -1
  158. package/dist/components/shared/ui/logo.cjs +1 -1
  159. package/dist/components/shared/ui/logo.js +1 -1
  160. package/dist/components/shared/ui/preference-item/index.cjs +1 -0
  161. package/dist/components/shared/ui/preference-item/index.js +1 -0
  162. package/dist/components/shared/ui/preference-item/preference-item.cjs +1 -0
  163. package/dist/components/shared/ui/preference-item/preference-item.js +1 -0
  164. package/dist/components/shared/ui/switch/index.cjs +1 -1
  165. package/dist/components/shared/ui/switch/index.js +1 -1
  166. package/dist/components/shared/ui/switch/switch.cjs +1 -1
  167. package/dist/components/shared/ui/switch/switch.js +1 -1
  168. package/dist/components/shared/ui/switch/switch.types.cjs +1 -1
  169. package/dist/components/shared/ui/tabs/index.cjs +1 -0
  170. package/dist/components/shared/ui/tabs/index.js +1 -0
  171. package/dist/components/shared/ui/tabs/tabs.cjs +1 -0
  172. package/dist/components/shared/ui/tabs/tabs.js +1 -0
  173. package/dist/context/consent-manager-context.cjs +1 -1
  174. package/dist/context/consent-tracking-context.cjs +1 -1
  175. package/dist/context/theme-context.cjs +1 -1
  176. package/dist/headless.cjs +1 -1
  177. package/dist/headless.js +1 -1
  178. package/dist/hooks/index.cjs +1 -1
  179. package/dist/hooks/index.js +1 -1
  180. package/dist/hooks/use-color-scheme.cjs +1 -1
  181. package/dist/hooks/use-component-config.cjs +1 -1
  182. package/dist/hooks/use-consent-dialog-trigger.cjs +1 -0
  183. package/dist/hooks/use-consent-dialog-trigger.js +1 -0
  184. package/dist/hooks/use-consent-manager.cjs +1 -1
  185. package/dist/hooks/use-consent-manager.js +1 -1
  186. package/dist/hooks/use-focus-trap.cjs +1 -1
  187. package/dist/hooks/use-focus-trap.js +1 -1
  188. package/dist/hooks/use-headless-consent-ui.cjs +1 -0
  189. package/dist/hooks/use-headless-consent-ui.js +1 -0
  190. package/dist/hooks/use-headless-iab-consent-ui.cjs +1 -0
  191. package/dist/hooks/use-headless-iab-consent-ui.js +1 -0
  192. package/dist/hooks/use-reduced-motion.cjs +1 -1
  193. package/dist/hooks/use-reduced-motion.js +1 -1
  194. package/dist/hooks/use-scroll-lock.cjs +1 -1
  195. package/dist/hooks/use-scroll-lock.js +1 -1
  196. package/dist/hooks/use-ssr-status.cjs +1 -1
  197. package/dist/hooks/use-styles.cjs +1 -1
  198. package/dist/hooks/use-text-direction.cjs +1 -1
  199. package/dist/hooks/use-theme.cjs +1 -1
  200. package/dist/hooks/use-theme.js +1 -1
  201. package/dist/hooks/use-translations.cjs +1 -1
  202. package/dist/iab/styles.css +11 -0
  203. package/dist/iab/styles.tw3.css +14 -0
  204. package/dist/iab.cjs +1 -0
  205. package/dist/iab.js +1 -0
  206. package/dist/index.cjs +1 -1
  207. package/dist/index.js +1 -1
  208. package/dist/primitives/accordion.cjs +1 -0
  209. package/dist/primitives/accordion.js +1 -0
  210. package/dist/primitives/button.cjs +1 -0
  211. package/dist/primitives/button.js +1 -0
  212. package/dist/primitives/collapsible.cjs +1 -0
  213. package/dist/primitives/collapsible.js +1 -0
  214. package/dist/primitives/dialog.cjs +1 -0
  215. package/dist/primitives/dialog.js +1 -0
  216. package/dist/primitives/preference-item.cjs +1 -0
  217. package/dist/primitives/preference-item.js +1 -0
  218. package/dist/primitives/switch.cjs +1 -0
  219. package/dist/primitives/switch.js +1 -0
  220. package/dist/primitives/tabs.cjs +1 -0
  221. package/dist/primitives/tabs.js +1 -0
  222. package/dist/primitives.cjs +1 -0
  223. package/dist/primitives.js +1 -0
  224. package/dist/providers/consent-manager-provider.cjs +1 -1
  225. package/dist/providers/consent-manager-provider.js +1 -1
  226. package/dist/server/fetch-ssr-data.cjs +1 -1
  227. package/dist/server/fetch-ssr-data.js +1 -1
  228. package/dist/server/headers.cjs +1 -1
  229. package/dist/server/headers.js +1 -1
  230. package/dist/server/index.cjs +1 -1
  231. package/dist/server/index.js +1 -1
  232. package/dist/server/init-cache-key.cjs +1 -0
  233. package/dist/server/init-cache-key.js +1 -0
  234. package/dist/server/normalize-url.cjs +1 -1
  235. package/dist/server/types.cjs +1 -1
  236. package/dist/styles.css +10 -0
  237. package/dist/styles.tw3.css +13 -0
  238. package/dist/types/consent-manager.cjs +1 -1
  239. package/dist/types/theme/index.cjs +1 -1
  240. package/dist/types/theme/style-keys.cjs +1 -1
  241. package/dist/types/theme/style-types.cjs +1 -1
  242. package/dist/utils/cn.cjs +1 -1
  243. package/dist/utils/merge-styles.cjs +1 -1
  244. package/dist/utils/test-helpers.cjs +1 -1
  245. package/dist/utils/test-helpers.js +1 -1
  246. package/dist/utils/theme-utils.cjs +1 -1
  247. package/dist/version.cjs +1 -1
  248. package/dist/version.js +1 -1
  249. package/{dist → dist-types}/components/consent-banner/atoms/overlay.d.ts +1 -2
  250. package/{dist → dist-types}/components/consent-banner/atoms/root.d.ts +44 -14
  251. package/{dist → dist-types}/components/consent-banner/components.d.ts +4 -5
  252. package/{dist → dist-types}/components/consent-banner/consent-banner.d.ts +14 -8
  253. package/{dist → dist-types}/components/consent-banner/error-boundary.d.ts +0 -1
  254. package/{dist → dist-types}/components/consent-banner/index.d.ts +48 -26
  255. package/dist-types/components/consent-banner/policy-actions.d.ts +11 -0
  256. package/{dist → dist-types}/components/consent-dialog/atoms/card.d.ts +14 -8
  257. package/{dist → dist-types}/components/consent-dialog/atoms/overlay.d.ts +1 -2
  258. package/{dist → dist-types}/components/consent-dialog/atoms/root.d.ts +1 -2
  259. package/{dist → dist-types}/components/consent-dialog/consent-dialog.d.ts +2 -3
  260. package/{dist → dist-types}/components/consent-dialog/index.d.ts +31 -10
  261. package/dist-types/components/consent-dialog-link/index.d.ts +1 -0
  262. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/button.d.ts +0 -1
  263. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/icon.d.ts +1 -2
  264. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/root.d.ts +0 -1
  265. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/text.d.ts +0 -1
  266. package/{dist → dist-types}/components/consent-dialog-trigger/consent-dialog-trigger.d.ts +2 -3
  267. package/{dist → dist-types}/components/consent-dialog-trigger/index.d.ts +0 -1
  268. package/{dist → dist-types}/components/consent-dialog-trigger/types.d.ts +2 -3
  269. package/{dist → dist-types}/components/consent-dialog-trigger/use-draggable.d.ts +1 -2
  270. package/dist-types/components/consent-preferences-link/consent-preferences-link.d.ts +15 -0
  271. package/dist-types/components/consent-preferences-link/index.d.ts +1 -0
  272. package/dist-types/components/consent-widget/atoms/accordion.d.ts +28 -0
  273. package/{dist → dist-types}/components/consent-widget/atoms/button.d.ts +1 -2
  274. package/{dist → dist-types}/components/consent-widget/atoms/footer.d.ts +0 -1
  275. package/{dist → dist-types}/components/consent-widget/atoms/root.d.ts +1 -7
  276. package/{dist → dist-types}/components/consent-widget/consent-widget.d.ts +0 -1
  277. package/{dist → dist-types}/components/consent-widget/index.d.ts +27 -8
  278. package/dist-types/components/consent-widget/policy-actions.d.ts +11 -0
  279. package/{dist → dist-types}/components/consent-widget/types.d.ts +2 -3
  280. package/{dist → dist-types}/components/frame/atoms.d.ts +1 -2
  281. package/{dist → dist-types}/components/frame/frame.d.ts +0 -1
  282. package/{dist → dist-types}/components/frame/index.d.ts +1 -2
  283. package/{dist → dist-types}/components/frame/types.d.ts +0 -1
  284. package/{dist → dist-types}/components/iab-consent-banner/atoms/button-group.d.ts +0 -1
  285. package/{dist → dist-types}/components/iab-consent-banner/atoms/card.d.ts +0 -1
  286. package/{dist → dist-types}/components/iab-consent-banner/atoms/description.d.ts +0 -1
  287. package/{dist → dist-types}/components/iab-consent-banner/atoms/footer.d.ts +0 -1
  288. package/{dist → dist-types}/components/iab-consent-banner/atoms/header.d.ts +0 -1
  289. package/{dist → dist-types}/components/iab-consent-banner/atoms/overlay.d.ts +0 -1
  290. package/{dist → dist-types}/components/iab-consent-banner/atoms/root.d.ts +0 -1
  291. package/{dist → dist-types}/components/iab-consent-banner/atoms/title.d.ts +0 -1
  292. package/{dist → dist-types}/components/iab-consent-banner/iab-consent-banner.d.ts +0 -1
  293. package/{dist → dist-types}/components/iab-consent-banner/index.d.ts +1 -2
  294. package/{dist → dist-types}/components/iab-consent-dialog/atoms/card.d.ts +0 -1
  295. package/{dist → dist-types}/components/iab-consent-dialog/atoms/content.d.ts +0 -1
  296. package/{dist → dist-types}/components/iab-consent-dialog/atoms/footer.d.ts +0 -1
  297. package/{dist → dist-types}/components/iab-consent-dialog/atoms/header.d.ts +0 -1
  298. package/{dist → dist-types}/components/iab-consent-dialog/atoms/overlay.d.ts +0 -1
  299. package/{dist → dist-types}/components/iab-consent-dialog/atoms/purpose-item.d.ts +0 -1
  300. package/{dist → dist-types}/components/iab-consent-dialog/atoms/root.d.ts +0 -1
  301. package/{dist → dist-types}/components/iab-consent-dialog/atoms/stack-item.d.ts +0 -1
  302. package/dist-types/components/iab-consent-dialog/atoms/tabs.d.ts +12 -0
  303. package/{dist → dist-types}/components/iab-consent-dialog/atoms/vendor-list.d.ts +0 -1
  304. package/{dist → dist-types}/components/iab-consent-dialog/hooks/use-gvl-data.d.ts +0 -1
  305. package/{dist → dist-types}/components/iab-consent-dialog/iab-consent-dialog.d.ts +0 -1
  306. package/{dist → dist-types}/components/iab-consent-dialog/index.d.ts +1 -2
  307. package/{dist → dist-types}/components/iab-consent-dialog/types.d.ts +0 -1
  308. package/{dist → dist-types}/components/iab-consent-dialog/use-iab-translations.d.ts +0 -1
  309. package/{dist → dist-types}/components/shared/libs/polymorphic.d.ts +0 -1
  310. package/{dist → dist-types}/components/shared/libs/recursive-clone-children.d.ts +0 -1
  311. package/dist-types/components/shared/libs/slot.d.ts +6 -0
  312. package/dist-types/components/shared/libs/use-controllable-state.d.ts +7 -0
  313. package/dist-types/components/shared/policy-actions.d.ts +29 -0
  314. package/{dist → dist-types}/components/shared/primitives/box.d.ts +0 -1
  315. package/{dist → dist-types}/components/shared/primitives/button.d.ts +4 -1
  316. package/{dist → dist-types}/components/shared/primitives/button.types.d.ts +17 -1
  317. package/{dist → dist-types}/components/shared/primitives/legal-links/index.d.ts +0 -45
  318. package/{dist → dist-types}/components/shared/ui/accordion/accordion.d.ts +32 -68
  319. package/{dist → dist-types}/components/shared/ui/accordion/accordion.types.d.ts +0 -1
  320. package/{dist → dist-types}/components/shared/ui/accordion/index.d.ts +0 -1
  321. package/{dist → dist-types}/components/shared/ui/animated-collapse/animated-collapse.d.ts +0 -1
  322. package/{dist → dist-types}/components/shared/ui/animated-collapse/index.d.ts +0 -1
  323. package/dist-types/components/shared/ui/branding.d.ts +27 -0
  324. package/{dist → dist-types}/components/shared/ui/button/button.d.ts +2 -3
  325. package/{dist → dist-types}/components/shared/ui/button/button.types.d.ts +0 -1
  326. package/{dist → dist-types}/components/shared/ui/button/index.d.ts +0 -1
  327. package/dist-types/components/shared/ui/collapsible/collapsible.d.ts +20 -0
  328. package/dist-types/components/shared/ui/collapsible/index.d.ts +1 -0
  329. package/dist-types/components/shared/ui/dialog/dialog.d.ts +29 -0
  330. package/dist-types/components/shared/ui/dialog/index.d.ts +1 -0
  331. package/{dist → dist-types}/components/shared/ui/icon.d.ts +0 -1
  332. package/{dist → dist-types}/components/shared/ui/logo.d.ts +8 -1
  333. package/dist-types/components/shared/ui/preference-item/index.d.ts +1 -0
  334. package/dist-types/components/shared/ui/preference-item/preference-item.d.ts +33 -0
  335. package/dist-types/components/shared/ui/switch/index.d.ts +2 -0
  336. package/dist-types/components/shared/ui/switch/switch.d.ts +20 -0
  337. package/{dist → dist-types}/components/shared/ui/switch/switch.types.d.ts +0 -1
  338. package/dist-types/components/shared/ui/tabs/index.d.ts +1 -0
  339. package/dist-types/components/shared/ui/tabs/tabs.d.ts +28 -0
  340. package/{dist → dist-types}/context/consent-manager-context.d.ts +0 -1
  341. package/{dist → dist-types}/context/consent-tracking-context.d.ts +0 -1
  342. package/{dist → dist-types}/context/theme-context.d.ts +0 -1
  343. package/dist-types/headless.d.ts +9 -0
  344. package/{dist → dist-types}/hooks/index.d.ts +3 -1
  345. package/{dist → dist-types}/hooks/use-color-scheme.d.ts +0 -1
  346. package/{dist → dist-types}/hooks/use-component-config.d.ts +0 -1
  347. package/dist-types/hooks/use-consent-dialog-trigger.d.ts +10 -0
  348. package/{dist → dist-types}/hooks/use-consent-manager.d.ts +0 -1
  349. package/{dist → dist-types}/hooks/use-focus-trap.d.ts +0 -1
  350. package/dist-types/hooks/use-headless-consent-ui.d.ts +46 -0
  351. package/dist-types/hooks/use-headless-iab-consent-ui.d.ts +41 -0
  352. package/{dist → dist-types}/hooks/use-reduced-motion.d.ts +0 -1
  353. package/{dist → dist-types}/hooks/use-scroll-lock.d.ts +0 -1
  354. package/{dist → dist-types}/hooks/use-ssr-status.d.ts +2 -2
  355. package/{dist → dist-types}/hooks/use-styles.d.ts +0 -1
  356. package/{dist → dist-types}/hooks/use-text-direction.d.ts +0 -1
  357. package/{dist → dist-types}/hooks/use-theme.d.ts +0 -1
  358. package/{dist → dist-types}/hooks/use-translations.d.ts +0 -1
  359. package/dist-types/iab.d.ts +24 -0
  360. package/{dist → dist-types}/index.d.ts +5 -6
  361. package/dist-types/primitives/accordion.d.ts +1 -0
  362. package/dist-types/primitives/button.d.ts +1 -0
  363. package/dist-types/primitives/collapsible.d.ts +1 -0
  364. package/dist-types/primitives/dialog.d.ts +1 -0
  365. package/dist-types/primitives/preference-item.d.ts +1 -0
  366. package/dist-types/primitives/switch.d.ts +1 -0
  367. package/dist-types/primitives/tabs.d.ts +1 -0
  368. package/dist-types/primitives.d.ts +7 -0
  369. package/{dist → dist-types}/providers/consent-manager-provider.d.ts +0 -1
  370. package/{dist → dist-types}/server/fetch-ssr-data.d.ts +0 -1
  371. package/{dist → dist-types}/server/headers.d.ts +2 -2
  372. package/{dist → dist-types}/server/index.d.ts +1 -1
  373. package/dist-types/server/init-cache-key.d.ts +21 -0
  374. package/{dist → dist-types}/server/normalize-url.d.ts +0 -1
  375. package/{dist → dist-types}/server/types.d.ts +0 -1
  376. package/{dist → dist-types}/types/consent-manager.d.ts +7 -1
  377. package/{dist → dist-types}/types/theme/index.d.ts +0 -1
  378. package/{dist → dist-types}/types/theme/style-keys.d.ts +0 -1
  379. package/{dist → dist-types}/types/theme/style-types.d.ts +2 -1
  380. package/{dist → dist-types}/utils/cn.d.ts +0 -1
  381. package/{dist → dist-types}/utils/merge-styles.d.ts +0 -1
  382. package/{dist → dist-types}/utils/test-helpers.d.ts +0 -1
  383. package/{dist → dist-types}/utils/theme-utils.d.ts +1 -2
  384. package/dist-types/version.d.ts +1 -0
  385. package/docs/README.md +76 -0
  386. package/docs/building-headless-components.md +266 -0
  387. package/docs/callbacks.md +184 -0
  388. package/docs/components/consent-banner.md +298 -0
  389. package/docs/components/consent-dialog-link.md +59 -0
  390. package/docs/components/consent-dialog-trigger.md +103 -0
  391. package/docs/components/consent-dialog.md +177 -0
  392. package/docs/components/consent-manager-provider.md +425 -0
  393. package/docs/components/consent-widget.md +160 -0
  394. package/docs/components/dev-tools.md +63 -0
  395. package/docs/components/frame.md +73 -0
  396. package/docs/concepts/client-modes.md +175 -0
  397. package/docs/concepts/consent-categories.md +97 -0
  398. package/docs/concepts/consent-models.md +112 -0
  399. package/docs/concepts/cookie-management.md +122 -0
  400. package/docs/concepts/glossary.md +23 -0
  401. package/docs/concepts/initialization-flow.md +148 -0
  402. package/docs/concepts/policy-packs.md +227 -0
  403. package/docs/headless.md +190 -0
  404. package/docs/hooks/use-color-scheme.md +40 -0
  405. package/docs/hooks/use-consent-manager/checking-consent.md +94 -0
  406. package/docs/hooks/use-consent-manager/location-info.md +95 -0
  407. package/docs/hooks/use-consent-manager/overview.md +420 -0
  408. package/docs/hooks/use-consent-manager/setting-consent.md +92 -0
  409. package/docs/hooks/use-draggable.md +57 -0
  410. package/docs/hooks/use-focus-trap.md +41 -0
  411. package/docs/hooks/use-reduced-motion.md +35 -0
  412. package/docs/hooks/use-ssr-status.md +31 -0
  413. package/docs/hooks/use-text-direction.md +49 -0
  414. package/docs/hooks/use-translations.md +118 -0
  415. package/docs/iab/consent-banner.md +92 -0
  416. package/docs/iab/consent-dialog.md +132 -0
  417. package/docs/iab/overview.md +125 -0
  418. package/docs/iab/use-gvl-data.md +208 -0
  419. package/docs/iframe-blocking.md +107 -0
  420. package/docs/integrations/building-integrations.md +405 -0
  421. package/docs/integrations/databuddy.md +203 -0
  422. package/docs/integrations/google-tag-manager.md +153 -0
  423. package/docs/integrations/google-tag.md +122 -0
  424. package/docs/integrations/linkedin-insights.md +109 -0
  425. package/docs/integrations/meta-pixel.md +342 -0
  426. package/docs/integrations/microsoft-uet.md +112 -0
  427. package/docs/integrations/overview.md +105 -0
  428. package/docs/integrations/posthog.md +199 -0
  429. package/docs/integrations/tiktok-pixel.md +113 -0
  430. package/docs/integrations/x-pixel.md +143 -0
  431. package/docs/internationalization.md +197 -0
  432. package/docs/network-blocker.md +178 -0
  433. package/docs/optimization.md +113 -0
  434. package/docs/policy-packs.md +240 -0
  435. package/docs/quickstart.md +152 -0
  436. package/docs/script-loader.md +321 -0
  437. package/docs/server-side.md +153 -0
  438. package/docs/styling/classnames.md +92 -0
  439. package/docs/styling/color-scheme.md +82 -0
  440. package/docs/styling/css-variables.md +92 -0
  441. package/docs/styling/overview.md +459 -0
  442. package/docs/styling/slots.md +127 -0
  443. package/docs/styling/tailwind.md +113 -0
  444. package/docs/styling/tokens.md +216 -0
  445. package/docs/troubleshooting.md +137 -0
  446. package/iab/styles.css +1 -0
  447. package/package.json +87 -27
  448. package/readme.json +6 -0
  449. package/src/iab/styles.css +11 -0
  450. package/src/iab/styles.tw3.css +14 -0
  451. package/src/styles.css +10 -0
  452. package/src/styles.tw3.css +13 -0
  453. package/styles.css +1 -0
  454. package/dist/components/__tests__/active-ui-transitions.e2e.test.cjs +0 -1
  455. package/dist/components/__tests__/active-ui-transitions.e2e.test.js +0 -1
  456. package/dist/components/__tests__/consent-flow.e2e.test.cjs +0 -1
  457. package/dist/components/__tests__/consent-flow.e2e.test.js +0 -1
  458. package/dist/components/__tests__/models-prop.e2e.test.cjs +0 -1
  459. package/dist/components/__tests__/models-prop.e2e.test.js +0 -1
  460. package/dist/components/__tests__/ui-source-tracking.e2e.test.cjs +0 -1
  461. package/dist/components/__tests__/ui-source-tracking.e2e.test.js +0 -1
  462. package/dist/components/consent-banner/atoms/overlay.d.ts.map +0 -1
  463. package/dist/components/consent-banner/atoms/root.d.ts.map +0 -1
  464. package/dist/components/consent-banner/components.d.ts.map +0 -1
  465. package/dist/components/consent-banner/consent-banner.d.ts.map +0 -1
  466. package/dist/components/consent-banner/error-boundary.d.ts.map +0 -1
  467. package/dist/components/consent-banner/index.d.ts.map +0 -1
  468. package/dist/components/consent-dialog/atoms/card.d.ts.map +0 -1
  469. package/dist/components/consent-dialog/atoms/overlay.d.ts.map +0 -1
  470. package/dist/components/consent-dialog/atoms/root.d.ts.map +0 -1
  471. package/dist/components/consent-dialog/consent-dialog.d.ts.map +0 -1
  472. package/dist/components/consent-dialog/index.d.ts.map +0 -1
  473. package/dist/components/consent-dialog-trigger/atoms/button.d.ts.map +0 -1
  474. package/dist/components/consent-dialog-trigger/atoms/icon.d.ts.map +0 -1
  475. package/dist/components/consent-dialog-trigger/atoms/root.d.ts.map +0 -1
  476. package/dist/components/consent-dialog-trigger/atoms/text.d.ts.map +0 -1
  477. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.d.ts.map +0 -1
  478. package/dist/components/consent-dialog-trigger/index.d.ts.map +0 -1
  479. package/dist/components/consent-dialog-trigger/types.d.ts.map +0 -1
  480. package/dist/components/consent-dialog-trigger/use-draggable.d.ts.map +0 -1
  481. package/dist/components/consent-widget/atoms/accordion.d.ts +0 -46
  482. package/dist/components/consent-widget/atoms/accordion.d.ts.map +0 -1
  483. package/dist/components/consent-widget/atoms/button.d.ts.map +0 -1
  484. package/dist/components/consent-widget/atoms/footer.d.ts.map +0 -1
  485. package/dist/components/consent-widget/atoms/root.d.ts.map +0 -1
  486. package/dist/components/consent-widget/consent-widget.d.ts.map +0 -1
  487. package/dist/components/consent-widget/index.d.ts.map +0 -1
  488. package/dist/components/consent-widget/types.d.ts.map +0 -1
  489. package/dist/components/frame/atoms.d.ts.map +0 -1
  490. package/dist/components/frame/frame.d.ts.map +0 -1
  491. package/dist/components/frame/index.d.ts.map +0 -1
  492. package/dist/components/frame/types.d.ts.map +0 -1
  493. package/dist/components/iab/__tests__/e2e-setup.cjs +0 -1
  494. package/dist/components/iab/__tests__/e2e-setup.js +0 -1
  495. package/dist/components/iab/__tests__/fixtures/mock-consent-state.cjs +0 -1
  496. package/dist/components/iab/__tests__/fixtures/mock-consent-state.d.ts +0 -212
  497. package/dist/components/iab/__tests__/fixtures/mock-consent-state.d.ts.map +0 -1
  498. package/dist/components/iab/__tests__/fixtures/mock-consent-state.js +0 -1
  499. package/dist/components/iab/__tests__/iab-banner.e2e.test.cjs +0 -1
  500. package/dist/components/iab/__tests__/iab-banner.e2e.test.js +0 -1
  501. package/dist/components/iab/__tests__/iab-consent-flow.e2e.test.cjs +0 -1
  502. package/dist/components/iab/__tests__/iab-consent-flow.e2e.test.js +0 -1
  503. package/dist/components/iab/__tests__/iab-events.e2e.test.cjs +0 -1
  504. package/dist/components/iab/__tests__/iab-events.e2e.test.js +0 -1
  505. package/dist/components/iab/__tests__/iab-gvl.e2e.test.cjs +0 -1
  506. package/dist/components/iab/__tests__/iab-gvl.e2e.test.js +0 -1
  507. package/dist/components/iab/__tests__/iab-preference-center.e2e.test.cjs +0 -1
  508. package/dist/components/iab/__tests__/iab-preference-center.e2e.test.js +0 -1
  509. package/dist/components/iab/__tests__/iab-storage.e2e.test.cjs +0 -1
  510. package/dist/components/iab/__tests__/iab-storage.e2e.test.js +0 -1
  511. package/dist/components/iab/__tests__/iab-stub.e2e.test.cjs +0 -1
  512. package/dist/components/iab/__tests__/iab-stub.e2e.test.js +0 -1
  513. package/dist/components/iab/__tests__/iab-tcfapi.e2e.test.cjs +0 -1
  514. package/dist/components/iab/__tests__/iab-tcfapi.e2e.test.js +0 -1
  515. package/dist/components/iab/__tests__/msw-handlers.cjs +0 -1
  516. package/dist/components/iab/__tests__/msw-handlers.js +0 -1
  517. package/dist/components/iab-consent-banner/__tests__/iab-consent-banner.test.cjs +0 -1
  518. package/dist/components/iab-consent-banner/__tests__/iab-consent-banner.test.js +0 -1
  519. package/dist/components/iab-consent-banner/atoms/button-group.d.ts.map +0 -1
  520. package/dist/components/iab-consent-banner/atoms/card.d.ts.map +0 -1
  521. package/dist/components/iab-consent-banner/atoms/description.d.ts.map +0 -1
  522. package/dist/components/iab-consent-banner/atoms/footer.d.ts.map +0 -1
  523. package/dist/components/iab-consent-banner/atoms/header.d.ts.map +0 -1
  524. package/dist/components/iab-consent-banner/atoms/overlay.d.ts.map +0 -1
  525. package/dist/components/iab-consent-banner/atoms/root.d.ts.map +0 -1
  526. package/dist/components/iab-consent-banner/atoms/title.d.ts.map +0 -1
  527. package/dist/components/iab-consent-banner/iab-consent-banner.d.ts.map +0 -1
  528. package/dist/components/iab-consent-banner/index.d.ts.map +0 -1
  529. package/dist/components/iab-consent-dialog/__tests__/legitimate-interest-ui.test.cjs +0 -1
  530. package/dist/components/iab-consent-dialog/__tests__/legitimate-interest-ui.test.js +0 -1
  531. package/dist/components/iab-consent-dialog/__tests__/preference-center.test.cjs +0 -1
  532. package/dist/components/iab-consent-dialog/__tests__/preference-center.test.js +0 -1
  533. package/dist/components/iab-consent-dialog/__tests__/purposes-tab.test.cjs +0 -1
  534. package/dist/components/iab-consent-dialog/__tests__/purposes-tab.test.js +0 -1
  535. package/dist/components/iab-consent-dialog/__tests__/vendors-tab.test.cjs +0 -1
  536. package/dist/components/iab-consent-dialog/__tests__/vendors-tab.test.js +0 -1
  537. package/dist/components/iab-consent-dialog/atoms/card.d.ts.map +0 -1
  538. package/dist/components/iab-consent-dialog/atoms/content.d.ts.map +0 -1
  539. package/dist/components/iab-consent-dialog/atoms/footer.d.ts.map +0 -1
  540. package/dist/components/iab-consent-dialog/atoms/header.d.ts.map +0 -1
  541. package/dist/components/iab-consent-dialog/atoms/overlay.d.ts.map +0 -1
  542. package/dist/components/iab-consent-dialog/atoms/purpose-item.d.ts.map +0 -1
  543. package/dist/components/iab-consent-dialog/atoms/root.d.ts.map +0 -1
  544. package/dist/components/iab-consent-dialog/atoms/stack-item.d.ts.map +0 -1
  545. package/dist/components/iab-consent-dialog/atoms/tabs.d.ts +0 -40
  546. package/dist/components/iab-consent-dialog/atoms/tabs.d.ts.map +0 -1
  547. package/dist/components/iab-consent-dialog/atoms/vendor-list.d.ts.map +0 -1
  548. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.d.ts.map +0 -1
  549. package/dist/components/iab-consent-dialog/iab-consent-dialog.d.ts.map +0 -1
  550. package/dist/components/iab-consent-dialog/index.d.ts.map +0 -1
  551. package/dist/components/iab-consent-dialog/types.d.ts.map +0 -1
  552. package/dist/components/iab-consent-dialog/use-iab-translations.d.ts.map +0 -1
  553. package/dist/components/shared/libs/polymorphic.d.ts.map +0 -1
  554. package/dist/components/shared/libs/recursive-clone-children.d.ts.map +0 -1
  555. package/dist/components/shared/primitives/box.d.ts.map +0 -1
  556. package/dist/components/shared/primitives/button.d.ts.map +0 -1
  557. package/dist/components/shared/primitives/button.types.d.ts.map +0 -1
  558. package/dist/components/shared/primitives/legal-links/index.d.ts.map +0 -1
  559. package/dist/components/shared/ui/__tests__/primitives.test.cjs +0 -1
  560. package/dist/components/shared/ui/__tests__/primitives.test.js +0 -1
  561. package/dist/components/shared/ui/accordion/accordion.d.ts.map +0 -1
  562. package/dist/components/shared/ui/accordion/accordion.types.d.ts.map +0 -1
  563. package/dist/components/shared/ui/accordion/index.d.ts.map +0 -1
  564. package/dist/components/shared/ui/animated-collapse/animated-collapse.d.ts.map +0 -1
  565. package/dist/components/shared/ui/animated-collapse/index.d.ts.map +0 -1
  566. package/dist/components/shared/ui/button/button.d.ts.map +0 -1
  567. package/dist/components/shared/ui/button/button.types.d.ts.map +0 -1
  568. package/dist/components/shared/ui/button/index.d.ts.map +0 -1
  569. package/dist/components/shared/ui/icon.d.ts.map +0 -1
  570. package/dist/components/shared/ui/logo.d.ts.map +0 -1
  571. package/dist/components/shared/ui/switch/index.d.ts +0 -3
  572. package/dist/components/shared/ui/switch/index.d.ts.map +0 -1
  573. package/dist/components/shared/ui/switch/switch.d.ts +0 -45
  574. package/dist/components/shared/ui/switch/switch.d.ts.map +0 -1
  575. package/dist/components/shared/ui/switch/switch.types.d.ts.map +0 -1
  576. package/dist/context/consent-manager-context.d.ts.map +0 -1
  577. package/dist/context/consent-tracking-context.d.ts.map +0 -1
  578. package/dist/context/theme-context.d.ts.map +0 -1
  579. package/dist/headless.d.ts +0 -8
  580. package/dist/headless.d.ts.map +0 -1
  581. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.cjs +0 -1
  582. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.js +0 -1
  583. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-handles-default-theme-based-on-document-class-1.cjs +0 -1
  584. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-handles-default-theme-based-on-document-class-1.js +0 -1
  585. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-responds-to-system-preference-1.cjs +0 -1
  586. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-responds-to-system-preference-1.js +0 -1
  587. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-sets-dark-theme-correctly-1.cjs +0 -1
  588. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-sets-dark-theme-correctly-1.js +0 -1
  589. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-default-theme-changes-1.cjs +0 -1
  590. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-default-theme-changes-1.js +0 -1
  591. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-system-preference-changes-1.cjs +0 -1
  592. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-system-preference-changes-1.js +0 -1
  593. package/dist/hooks/__tests__/__screenshots__/use-consent-manager.test.tsx/useConsentManager-provides-manager-object-when-configured-1.cjs +0 -1
  594. package/dist/hooks/__tests__/__screenshots__/use-consent-manager.test.tsx/useConsentManager-provides-manager-object-when-configured-1.js +0 -1
  595. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-handles-string-className-correctly-1.cjs +0 -1
  596. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-handles-string-className-correctly-1.js +0 -1
  597. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-merges-theme-and-component-styles-correctly-1.cjs +0 -1
  598. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-merges-theme-and-component-styles-correctly-1.js +0 -1
  599. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-should-remove-base-default-styles-but-keep-theme-and-component-classNames-when-noStyle--true-1.cjs +0 -1
  600. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-should-remove-base-default-styles-but-keep-theme-and-component-classNames-when-noStyle--true-1.js +0 -1
  601. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-should-remove-default-styles-but-keep-custom-classNames-when-theme-object-provides-noStyle--true-1.cjs +0 -1
  602. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-should-remove-default-styles-but-keep-custom-classNames-when-theme-object-provides-noStyle--true-1.js +0 -1
  603. package/dist/hooks/__tests__/__screenshots__/use-theme.test.tsx/useTheme-local-theme-takes-precedence-over-global-theme-1.cjs +0 -1
  604. package/dist/hooks/__tests__/__screenshots__/use-theme.test.tsx/useTheme-local-theme-takes-precedence-over-global-theme-1.js +0 -1
  605. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.cjs +0 -1
  606. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.js +0 -1
  607. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.cjs +0 -1
  608. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.js +0 -1
  609. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-merges-custom-translations-with-defaults-1.cjs +0 -1
  610. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-merges-custom-translations-with-defaults-1.js +0 -1
  611. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-returns-English-translations-by-default-1.cjs +0 -1
  612. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-returns-English-translations-by-default-1.js +0 -1
  613. package/dist/hooks/__tests__/use-color-scheme.test.cjs +0 -1
  614. package/dist/hooks/__tests__/use-color-scheme.test.js +0 -1
  615. package/dist/hooks/__tests__/use-consent-manager.test.cjs +0 -1
  616. package/dist/hooks/__tests__/use-consent-manager.test.js +0 -1
  617. package/dist/hooks/__tests__/use-focus-trap.test.cjs +0 -1
  618. package/dist/hooks/__tests__/use-focus-trap.test.js +0 -1
  619. package/dist/hooks/__tests__/use-scroll-lock.test.cjs +0 -1
  620. package/dist/hooks/__tests__/use-scroll-lock.test.js +0 -1
  621. package/dist/hooks/__tests__/use-styles.test.cjs +0 -1
  622. package/dist/hooks/__tests__/use-styles.test.js +0 -1
  623. package/dist/hooks/__tests__/use-theme.test.cjs +0 -1
  624. package/dist/hooks/__tests__/use-theme.test.js +0 -1
  625. package/dist/hooks/__tests__/use-translations.test.cjs +0 -1
  626. package/dist/hooks/__tests__/use-translations.test.js +0 -1
  627. package/dist/hooks/index.d.ts.map +0 -1
  628. package/dist/hooks/use-color-scheme.d.ts.map +0 -1
  629. package/dist/hooks/use-component-config.d.ts.map +0 -1
  630. package/dist/hooks/use-consent-manager.d.ts.map +0 -1
  631. package/dist/hooks/use-focus-trap.d.ts.map +0 -1
  632. package/dist/hooks/use-reduced-motion.d.ts.map +0 -1
  633. package/dist/hooks/use-scroll-lock.d.ts.map +0 -1
  634. package/dist/hooks/use-ssr-status.d.ts.map +0 -1
  635. package/dist/hooks/use-styles.d.ts.map +0 -1
  636. package/dist/hooks/use-text-direction.d.ts.map +0 -1
  637. package/dist/hooks/use-theme.d.ts.map +0 -1
  638. package/dist/hooks/use-translations.d.ts.map +0 -1
  639. package/dist/index.d.ts.map +0 -1
  640. package/dist/mockServiceWorker.js +0 -349
  641. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.cjs +0 -1
  642. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.js +0 -1
  643. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.cjs +0 -1
  644. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.js +0 -1
  645. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.cjs +0 -1
  646. package/dist/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.js +0 -1
  647. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.cjs +0 -1
  648. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.js +0 -1
  649. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.cjs +0 -1
  650. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.js +0 -1
  651. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.cjs +0 -1
  652. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.js +0 -1
  653. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.cjs +0 -1
  654. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.js +0 -1
  655. package/dist/providers/__tests__/provider-basic.test.cjs +0 -1
  656. package/dist/providers/__tests__/provider-basic.test.js +0 -1
  657. package/dist/providers/__tests__/provider-context.test.cjs +0 -1
  658. package/dist/providers/__tests__/provider-context.test.js +0 -1
  659. package/dist/providers/__tests__/provider-errors.test.cjs +0 -1
  660. package/dist/providers/__tests__/provider-errors.test.js +0 -1
  661. package/dist/providers/__tests__/provider-hydration.test.cjs +0 -1
  662. package/dist/providers/__tests__/provider-hydration.test.js +0 -1
  663. package/dist/providers/__tests__/test-helpers.cjs +0 -1
  664. package/dist/providers/__tests__/test-helpers.js +0 -1
  665. package/dist/providers/consent-manager-provider.d.ts.map +0 -1
  666. package/dist/server/fetch-ssr-data.d.ts.map +0 -1
  667. package/dist/server/headers.d.ts.map +0 -1
  668. package/dist/server/headers.test.cjs +0 -1
  669. package/dist/server/headers.test.d.ts +0 -2
  670. package/dist/server/headers.test.d.ts.map +0 -1
  671. package/dist/server/headers.test.js +0 -1
  672. package/dist/server/index.d.ts.map +0 -1
  673. package/dist/server/normalize-url.d.ts.map +0 -1
  674. package/dist/server/normalize-url.test.cjs +0 -1
  675. package/dist/server/normalize-url.test.d.ts +0 -2
  676. package/dist/server/normalize-url.test.d.ts.map +0 -1
  677. package/dist/server/normalize-url.test.js +0 -1
  678. package/dist/server/types.d.ts.map +0 -1
  679. package/dist/static/image/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png +0 -0
  680. package/dist/static/image/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.png +0 -0
  681. package/dist/static/image/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png +0 -0
  682. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png +0 -0
  683. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png +0 -0
  684. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png +0 -0
  685. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png +0 -0
  686. package/dist/static/image/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.png +0 -0
  687. package/dist/static/image/useColorScheme-handles-default-theme-based-on-document-class-1.png +0 -0
  688. package/dist/static/image/useColorScheme-responds-to-system-preference-1.png +0 -0
  689. package/dist/static/image/useColorScheme-sets-dark-theme-correctly-1.png +0 -0
  690. package/dist/static/image/useColorScheme-updates-theme-when-default-theme-changes-1.png +0 -0
  691. package/dist/static/image/useColorScheme-updates-theme-when-system-preference-changes-1.png +0 -0
  692. package/dist/static/image/useConsentManager-provides-manager-object-when-configured-1.png +0 -0
  693. package/dist/static/image/useStyles-handles-string-className-correctly-1.png +0 -0
  694. package/dist/static/image/useStyles-merges-theme-and-component-styles-correctly-1.png +0 -0
  695. package/dist/static/image/useStyles-should-remove-base-default-styles-but-keep-theme-and-component-classNames-when-noStyle--true-1.png +0 -0
  696. package/dist/static/image/useStyles-should-remove-default-styles-but-keep-custom-classNames-when-theme-object-provides-noStyle--true-1.png +0 -0
  697. package/dist/static/image/useTheme-local-theme-takes-precedence-over-global-theme-1.png +0 -0
  698. package/dist/static/image/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.png +0 -0
  699. package/dist/static/image/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.png +0 -0
  700. package/dist/static/image/useTranslations-merges-custom-translations-with-defaults-1.png +0 -0
  701. package/dist/static/image/useTranslations-returns-English-translations-by-default-1.png +0 -0
  702. package/dist/test-setup.browser.cjs +0 -1
  703. package/dist/test-setup.browser.d.ts +0 -8
  704. package/dist/test-setup.browser.d.ts.map +0 -1
  705. package/dist/test-setup.browser.js +0 -1
  706. package/dist/types/consent-manager.d.ts.map +0 -1
  707. package/dist/types/theme/index.d.ts.map +0 -1
  708. package/dist/types/theme/style-keys.d.ts.map +0 -1
  709. package/dist/types/theme/style-types.d.ts.map +0 -1
  710. package/dist/utils/cn.d.ts.map +0 -1
  711. package/dist/utils/merge-styles.d.ts.map +0 -1
  712. package/dist/utils/test-helpers.d.ts.map +0 -1
  713. package/dist/utils/theme-utils.d.ts.map +0 -1
  714. package/dist/version.d.ts +0 -2
  715. package/dist/version.d.ts.map +0 -1
@@ -1,349 +0,0 @@
1
- /* eslint-disable */
2
- /* tslint:disable */
3
-
4
- /**
5
- * Mock Service Worker.
6
- * @see https://github.com/mswjs/msw
7
- * - Please do NOT modify this file.
8
- */
9
-
10
- const PACKAGE_VERSION = '2.12.7';
11
- const INTEGRITY_CHECKSUM = '4db4a41e972cec1b64cc569c66952d82';
12
- const IS_MOCKED_RESPONSE = Symbol('isMockedResponse');
13
- const activeClientIds = new Set();
14
-
15
- addEventListener('install', function () {
16
- self.skipWaiting();
17
- });
18
-
19
- addEventListener('activate', function (event) {
20
- event.waitUntil(self.clients.claim());
21
- });
22
-
23
- addEventListener('message', async function (event) {
24
- const clientId = Reflect.get(event.source || {}, 'id');
25
-
26
- if (!clientId || !self.clients) {
27
- return;
28
- }
29
-
30
- const client = await self.clients.get(clientId);
31
-
32
- if (!client) {
33
- return;
34
- }
35
-
36
- const allClients = await self.clients.matchAll({
37
- type: 'window',
38
- });
39
-
40
- switch (event.data) {
41
- case 'KEEPALIVE_REQUEST': {
42
- sendToClient(client, {
43
- type: 'KEEPALIVE_RESPONSE',
44
- });
45
- break;
46
- }
47
-
48
- case 'INTEGRITY_CHECK_REQUEST': {
49
- sendToClient(client, {
50
- type: 'INTEGRITY_CHECK_RESPONSE',
51
- payload: {
52
- packageVersion: PACKAGE_VERSION,
53
- checksum: INTEGRITY_CHECKSUM,
54
- },
55
- });
56
- break;
57
- }
58
-
59
- case 'MOCK_ACTIVATE': {
60
- activeClientIds.add(clientId);
61
-
62
- sendToClient(client, {
63
- type: 'MOCKING_ENABLED',
64
- payload: {
65
- client: {
66
- id: client.id,
67
- frameType: client.frameType,
68
- },
69
- },
70
- });
71
- break;
72
- }
73
-
74
- case 'CLIENT_CLOSED': {
75
- activeClientIds.delete(clientId);
76
-
77
- const remainingClients = allClients.filter((client) => {
78
- return client.id !== clientId;
79
- });
80
-
81
- // Unregister itself when there are no more clients
82
- if (remainingClients.length === 0) {
83
- self.registration.unregister();
84
- }
85
-
86
- break;
87
- }
88
- }
89
- });
90
-
91
- addEventListener('fetch', function (event) {
92
- const requestInterceptedAt = Date.now();
93
-
94
- // Bypass navigation requests.
95
- if (event.request.mode === 'navigate') {
96
- return;
97
- }
98
-
99
- // Opening the DevTools triggers the "only-if-cached" request
100
- // that cannot be handled by the worker. Bypass such requests.
101
- if (
102
- event.request.cache === 'only-if-cached' &&
103
- event.request.mode !== 'same-origin'
104
- ) {
105
- return;
106
- }
107
-
108
- // Bypass all requests when there are no active clients.
109
- // Prevents the self-unregistered worked from handling requests
110
- // after it's been terminated (still remains active until the next reload).
111
- if (activeClientIds.size === 0) {
112
- return;
113
- }
114
-
115
- const requestId = crypto.randomUUID();
116
- event.respondWith(handleRequest(event, requestId, requestInterceptedAt));
117
- });
118
-
119
- /**
120
- * @param {FetchEvent} event
121
- * @param {string} requestId
122
- * @param {number} requestInterceptedAt
123
- */
124
- async function handleRequest(event, requestId, requestInterceptedAt) {
125
- const client = await resolveMainClient(event);
126
- const requestCloneForEvents = event.request.clone();
127
- const response = await getResponse(
128
- event,
129
- client,
130
- requestId,
131
- requestInterceptedAt
132
- );
133
-
134
- // Send back the response clone for the "response:*" life-cycle events.
135
- // Ensure MSW is active and ready to handle the message, otherwise
136
- // this message will pend indefinitely.
137
- if (client && activeClientIds.has(client.id)) {
138
- const serializedRequest = await serializeRequest(requestCloneForEvents);
139
-
140
- // Clone the response so both the client and the library could consume it.
141
- const responseClone = response.clone();
142
-
143
- sendToClient(
144
- client,
145
- {
146
- type: 'RESPONSE',
147
- payload: {
148
- isMockedResponse: IS_MOCKED_RESPONSE in response,
149
- request: {
150
- id: requestId,
151
- ...serializedRequest,
152
- },
153
- response: {
154
- type: responseClone.type,
155
- status: responseClone.status,
156
- statusText: responseClone.statusText,
157
- headers: Object.fromEntries(responseClone.headers.entries()),
158
- body: responseClone.body,
159
- },
160
- },
161
- },
162
- responseClone.body ? [serializedRequest.body, responseClone.body] : []
163
- );
164
- }
165
-
166
- return response;
167
- }
168
-
169
- /**
170
- * Resolve the main client for the given event.
171
- * Client that issues a request doesn't necessarily equal the client
172
- * that registered the worker. It's with the latter the worker should
173
- * communicate with during the response resolving phase.
174
- * @param {FetchEvent} event
175
- * @returns {Promise<Client | undefined>}
176
- */
177
- async function resolveMainClient(event) {
178
- const client = await self.clients.get(event.clientId);
179
-
180
- if (activeClientIds.has(event.clientId)) {
181
- return client;
182
- }
183
-
184
- if (client?.frameType === 'top-level') {
185
- return client;
186
- }
187
-
188
- const allClients = await self.clients.matchAll({
189
- type: 'window',
190
- });
191
-
192
- return allClients
193
- .filter((client) => {
194
- // Get only those clients that are currently visible.
195
- return client.visibilityState === 'visible';
196
- })
197
- .find((client) => {
198
- // Find the client ID that's recorded in the
199
- // set of clients that have registered the worker.
200
- return activeClientIds.has(client.id);
201
- });
202
- }
203
-
204
- /**
205
- * @param {FetchEvent} event
206
- * @param {Client | undefined} client
207
- * @param {string} requestId
208
- * @param {number} requestInterceptedAt
209
- * @returns {Promise<Response>}
210
- */
211
- async function getResponse(event, client, requestId, requestInterceptedAt) {
212
- // Clone the request because it might've been already used
213
- // (i.e. its body has been read and sent to the client).
214
- const requestClone = event.request.clone();
215
-
216
- function passthrough() {
217
- // Cast the request headers to a new Headers instance
218
- // so the headers can be manipulated with.
219
- const headers = new Headers(requestClone.headers);
220
-
221
- // Remove the "accept" header value that marked this request as passthrough.
222
- // This prevents request alteration and also keeps it compliant with the
223
- // user-defined CORS policies.
224
- const acceptHeader = headers.get('accept');
225
- if (acceptHeader) {
226
- const values = acceptHeader.split(',').map((value) => value.trim());
227
- const filteredValues = values.filter(
228
- (value) => value !== 'msw/passthrough'
229
- );
230
-
231
- if (filteredValues.length > 0) {
232
- headers.set('accept', filteredValues.join(', '));
233
- } else {
234
- headers.delete('accept');
235
- }
236
- }
237
-
238
- return fetch(requestClone, { headers });
239
- }
240
-
241
- // Bypass mocking when the client is not active.
242
- if (!client) {
243
- return passthrough();
244
- }
245
-
246
- // Bypass initial page load requests (i.e. static assets).
247
- // The absence of the immediate/parent client in the map of the active clients
248
- // means that MSW hasn't dispatched the "MOCK_ACTIVATE" event yet
249
- // and is not ready to handle requests.
250
- if (!activeClientIds.has(client.id)) {
251
- return passthrough();
252
- }
253
-
254
- // Notify the client that a request has been intercepted.
255
- const serializedRequest = await serializeRequest(event.request);
256
- const clientMessage = await sendToClient(
257
- client,
258
- {
259
- type: 'REQUEST',
260
- payload: {
261
- id: requestId,
262
- interceptedAt: requestInterceptedAt,
263
- ...serializedRequest,
264
- },
265
- },
266
- [serializedRequest.body]
267
- );
268
-
269
- switch (clientMessage.type) {
270
- case 'MOCK_RESPONSE': {
271
- return respondWithMock(clientMessage.data);
272
- }
273
-
274
- case 'PASSTHROUGH': {
275
- return passthrough();
276
- }
277
- }
278
-
279
- return passthrough();
280
- }
281
-
282
- /**
283
- * @param {Client} client
284
- * @param {any} message
285
- * @param {Array<Transferable>} transferrables
286
- * @returns {Promise<any>}
287
- */
288
- function sendToClient(client, message, transferrables = []) {
289
- return new Promise((resolve, reject) => {
290
- const channel = new MessageChannel();
291
-
292
- channel.port1.onmessage = (event) => {
293
- if (event.data && event.data.error) {
294
- return reject(event.data.error);
295
- }
296
-
297
- resolve(event.data);
298
- };
299
-
300
- client.postMessage(message, [
301
- channel.port2,
302
- ...transferrables.filter(Boolean),
303
- ]);
304
- });
305
- }
306
-
307
- /**
308
- * @param {Response} response
309
- * @returns {Response}
310
- */
311
- function respondWithMock(response) {
312
- // Setting response status code to 0 is a no-op.
313
- // However, when responding with a "Response.error()", the produced Response
314
- // instance will have status code set to 0. Since it's not possible to create
315
- // a Response instance with status code 0, handle that use-case separately.
316
- if (response.status === 0) {
317
- return Response.error();
318
- }
319
-
320
- const mockedResponse = new Response(response.body, response);
321
-
322
- Reflect.defineProperty(mockedResponse, IS_MOCKED_RESPONSE, {
323
- value: true,
324
- enumerable: true,
325
- });
326
-
327
- return mockedResponse;
328
- }
329
-
330
- /**
331
- * @param {Request} request
332
- */
333
- async function serializeRequest(request) {
334
- return {
335
- url: request.url,
336
- mode: request.mode,
337
- method: request.method,
338
- headers: Object.fromEntries(request.headers.entries()),
339
- cache: request.cache,
340
- credentials: request.credentials,
341
- destination: request.destination,
342
- integrity: request.integrity,
343
- redirect: request.redirect,
344
- referrer: request.referrer,
345
- referrerPolicy: request.referrerPolicy,
346
- body: await request.arrayBuffer(),
347
- keepalive: request.keepalive,
348
- };
349
- }
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-not-make-additional-requests-when-props-change-but-core-options-remain-same-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-basic.test.tsx/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import e from"../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png";export{e as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_modules__={"./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png"(e){e.exports=require("../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png")}},__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}var __webpack_exports__=__webpack_require__("./src/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png");for(var __rspack_i in exports.default=__webpack_exports__.default,__webpack_exports__)-1===["default"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import a from"../../../../static/image/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png";export{a as default};
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_c15t_namespaceObject=require("c15t"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),external_index_cjs_namespaceObject=require("../../index.cjs"),mockFetch=external_vitest_namespaceObject.vi.fn();for(var __rspack_i in window.fetch=mockFetch,(0,external_vitest_namespaceObject.describe)("ConsentManagerProvider Basic Request Behavior",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{external_vitest_namespaceObject.vi.resetAllMocks(),external_vitest_namespaceObject.vi.useFakeTimers(),mockFetch.mockResolvedValue(new Response(JSON.stringify({showConsentBanner:!0,jurisdiction:{code:"GDPR"},translations:{language:"en",translations:external_c15t_namespaceObject.defaultTranslationConfig.translations.en}}),{status:200,headers:{"Content-Type":"application/json"}}))}),(0,external_vitest_namespaceObject.afterEach)(()=>{external_vitest_namespaceObject.vi.clearAllMocks(),external_vitest_namespaceObject.vi.useRealTimers()}),(0,external_vitest_namespaceObject.it)("should only make one initial request for consent banner status",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Test Component"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t/init"),external_vitest_namespaceObject.expect.any(Object))}),(0,external_vitest_namespaceObject.it)("should not make additional requests when props change but core options remain same",async()=>{mockFetch.mockClear();let{rerender:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",theme:{slots:{bannerCard:"light"}}},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Light theme"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled(),e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",theme:{slots:{bannerCard:"dark"}}},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Dark theme"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled()}),(0,external_vitest_namespaceObject.it)("should make a new request when core options change",async()=>{let{rerender:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-1"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"First URL"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledTimes(1),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t-1/init"),external_vitest_namespaceObject.expect.any(Object)),mockFetch.mockClear(),e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t-2"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Second URL"})})),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).toHaveBeenCalledWith(external_vitest_namespaceObject.expect.stringContaining("/api/c15t-2/init"),external_vitest_namespaceObject.expect.any(Object))}),(0,external_vitest_namespaceObject.it)("should handle rapid re-renders without making duplicate requests",async()=>{mockFetch.mockClear();let{rerender:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline"},children:(0,jsx_runtime_namespaceObject.jsx)("div",{children:"Counter: 0"})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled();for(let t=1;t<=5;t++)e((0,jsx_runtime_namespaceObject.jsx)(external_index_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline"},children:(0,jsx_runtime_namespaceObject.jsxs)("div",{children:["Counter: ",t]})})),await external_vitest_namespaceObject.vi.runAllTimersAsync();(0,external_vitest_namespaceObject.expect)(mockFetch).not.toHaveBeenCalled()})}),__webpack_exports__)exports[__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{defaultTranslationConfig as t}from"c15t";import{afterEach as i,beforeEach as a,describe as o,expect as r,it as s,vi as l}from"vitest";import{render as c}from"vitest-browser-react";import{ConsentManagerProvider as d}from"../../index.js";let m=l.fn();window.fetch=m,o("ConsentManagerProvider Basic Request Behavior",()=>{a(()=>{l.resetAllMocks(),l.useFakeTimers(),m.mockResolvedValue(new Response(JSON.stringify({showConsentBanner:!0,jurisdiction:{code:"GDPR"},translations:{language:"en",translations:t.translations.en}}),{status:200,headers:{"Content-Type":"application/json"}}))}),i(()=>{l.clearAllMocks(),l.useRealTimers()}),s("should only make one initial request for consent banner status",async()=>{c(e(d,{options:{mode:"c15t",backendURL:"/api/c15t"},children:e("div",{children:"Test Component"})})),await l.runAllTimersAsync(),r(m).toHaveBeenCalledTimes(1),r(m).toHaveBeenCalledWith(r.stringContaining("/api/c15t/init"),r.any(Object))}),s("should not make additional requests when props change but core options remain same",async()=>{m.mockClear();let{rerender:n}=await c(e(d,{options:{mode:"offline",theme:{slots:{bannerCard:"light"}}},children:e("div",{children:"Light theme"})}));await l.runAllTimersAsync(),r(m).not.toHaveBeenCalled(),n(e(d,{options:{mode:"offline",theme:{slots:{bannerCard:"dark"}}},children:e("div",{children:"Dark theme"})})),await l.runAllTimersAsync(),r(m).not.toHaveBeenCalled()}),s("should make a new request when core options change",async()=>{let{rerender:n}=await c(e(d,{options:{mode:"c15t",backendURL:"/api/c15t-1"},children:e("div",{children:"First URL"})}));await l.runAllTimersAsync(),r(m).toHaveBeenCalledTimes(1),r(m).toHaveBeenCalledWith(r.stringContaining("/api/c15t-1/init"),r.any(Object)),m.mockClear(),n(e(d,{options:{mode:"c15t",backendURL:"/api/c15t-2"},children:e("div",{children:"Second URL"})})),await l.runAllTimersAsync(),r(m).toHaveBeenCalledWith(r.stringContaining("/api/c15t-2/init"),r.any(Object))}),s("should handle rapid re-renders without making duplicate requests",async()=>{m.mockClear();let{rerender:t}=await c(e(d,{options:{mode:"offline"},children:e("div",{children:"Counter: 0"})}));await l.runAllTimersAsync(),r(m).not.toHaveBeenCalled();for(let i=1;i<=5;i++)t(e(d,{options:{mode:"offline"},children:n("div",{children:["Counter: ",i]})})),await l.runAllTimersAsync();r(m).not.toHaveBeenCalled()})});
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),use_consent_manager_cjs_namespaceObject=require("../../hooks/use-consent-manager.cjs"),external_consent_manager_provider_cjs_namespaceObject=require("../consent-manager-provider.cjs"),external_test_helpers_cjs_namespaceObject=require("./test-helpers.cjs");(0,external_test_helpers_cjs_namespaceObject.setupMocks)();const modifyContextActiveUI=external_vitest_namespaceObject.vi.fn();for(var __rspack_i in external_vitest_namespaceObject.vi.mock("../../hooks/use-consent-manager",async()=>{let e=await external_vitest_namespaceObject.vi.importActual("../../hooks/use-consent-manager");return{...e,useConsentManager:()=>{let t=e.useConsentManager();return t.activeUI="banner",modifyContextActiveUI(),t}}}),(0,external_vitest_namespaceObject.describe)("ConsentManagerProvider Context Values",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{external_vitest_namespaceObject.vi.resetAllMocks(),external_vitest_namespaceObject.vi.useFakeTimers(),(0,external_consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.afterEach)(()=>{external_vitest_namespaceObject.vi.clearAllMocks(),external_vitest_namespaceObject.vi.useRealTimers()}),(0,external_vitest_namespaceObject.it)("should provide correct context values to children",async()=>{let{getByTestId:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",theme:{slots:{bannerCard:"dark"}}},children:(0,jsx_runtime_namespaceObject.jsx)(()=>{let e=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)();return(0,jsx_runtime_namespaceObject.jsxs)("div",{children:[(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"has-manager",children:(!!e.manager).toString()}),(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"active-ui",children:"banner"===e.activeUI?"true":"false"}),(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"debug-state",children:JSON.stringify({activeUI:e.activeUI})})]})},{})}));await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(modifyContextActiveUI).toHaveBeenCalled(),await external_vitest_namespaceObject.vi.waitFor(()=>{(0,external_vitest_namespaceObject.expect)(e("has-manager")).toHaveTextContent("true"),(0,external_vitest_namespaceObject.expect)(e("active-ui")).toHaveTextContent("true")},{timeout:3e3})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{afterEach as r,beforeEach as a,describe as n,expect as o,it as s,vi as i}from"vitest";import{render as c}from"vitest-browser-react";import{useConsentManager as l}from"../../hooks/use-consent-manager.js";import{ConsentManagerProvider as m,clearConsentRuntimeCache as d}from"../consent-manager-provider.js";import{setupMocks as u}from"./test-helpers.js";u();let v=i.fn();i.mock("../../hooks/use-consent-manager",async()=>{let e=await i.importActual("../../hooks/use-consent-manager");return{...e,useConsentManager:()=>{let t=e.useConsentManager();return t.activeUI="banner",v(),t}}}),n("ConsentManagerProvider Context Values",()=>{a(()=>{i.resetAllMocks(),i.useFakeTimers(),d()}),r(()=>{i.clearAllMocks(),i.useRealTimers()}),s("should provide correct context values to children",async()=>{let{getByTestId:r}=await c(e(m,{options:{mode:"offline",theme:{slots:{bannerCard:"dark"}}},children:e(()=>{let r=l();return t("div",{children:[e("div",{"data-testid":"has-manager",children:(!!r.manager).toString()}),e("div",{"data-testid":"active-ui",children:"banner"===r.activeUI?"true":"false"}),e("div",{"data-testid":"debug-state",children:JSON.stringify({activeUI:r.activeUI})})]})},{})}));await i.runAllTimersAsync(),o(v).toHaveBeenCalled(),await i.waitFor(()=>{o(r("has-manager")).toHaveTextContent("true"),o(r("active-ui")).toHaveTextContent("true")},{timeout:3e3})})});
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),use_consent_manager_cjs_namespaceObject=require("../../hooks/use-consent-manager.cjs"),external_consent_manager_provider_cjs_namespaceObject=require("../consent-manager-provider.cjs"),external_test_helpers_cjs_namespaceObject=require("./test-helpers.cjs"),{mockFetch:e}=(0,external_test_helpers_cjs_namespaceObject.setupMocks)();for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("ConsentManagerProvider Error Handling",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{external_vitest_namespaceObject.vi.resetAllMocks(),e.mockResolvedValueOnce(new Response(JSON.stringify({error:"API error"}),{status:500,headers:{"Content-Type":"application/json"}}))}),(0,external_vitest_namespaceObject.afterEach)(()=>{external_vitest_namespaceObject.vi.clearAllMocks()}),(0,external_vitest_namespaceObject.it)("should handle errors from API responses",async()=>{let{getByTestId:t}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"c15t",backendURL:"/api/c15t"},children:(0,jsx_runtime_namespaceObject.jsx)(()=>{let e=(0,use_consent_manager_cjs_namespaceObject.useConsentManager)();return(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"request-state",children:e.manager?"Manager Ready":"Manager Not Ready"})},{})}));await external_vitest_namespaceObject.vi.waitFor(()=>{let e=t("request-state");(0,external_vitest_namespaceObject.expect)(e).toHaveTextContent(/Manager (Not )?Ready/)}),(0,external_vitest_namespaceObject.expect)(e).toHaveBeenCalledTimes(1)})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{afterEach as r,beforeEach as t,describe as o,expect as a,it as s,vi as n}from"vitest";import{render as i}from"vitest-browser-react";import{useConsentManager as m}from"../../hooks/use-consent-manager.js";import{ConsentManagerProvider as d}from"../consent-manager-provider.js";import{setupMocks as l}from"./test-helpers.js";let{mockFetch:c}=l();o("ConsentManagerProvider Error Handling",()=>{t(()=>{n.resetAllMocks(),c.mockResolvedValueOnce(new Response(JSON.stringify({error:"API error"}),{status:500,headers:{"Content-Type":"application/json"}}))}),r(()=>{n.clearAllMocks()}),s("should handle errors from API responses",async()=>{let{getByTestId:r}=await i(e(d,{options:{mode:"c15t",backendURL:"/api/c15t"},children:e(()=>e("div",{"data-testid":"request-state",children:m().manager?"Manager Ready":"Manager Not Ready"}),{})}));await n.waitFor(()=>{a(r("request-state")).toHaveTextContent(/Manager (Not )?Ready/)}),a(c).toHaveBeenCalledTimes(1)})});
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),external_consent_manager_provider_cjs_namespaceObject=require("../consent-manager-provider.cjs"),MockSSRProvider=({children:e})=>(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"ssr-provider",children:e}),RenderTracker=({label:e})=>(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":`render-${e}`,children:e});for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("ConsentManagerProvider Hydration Behavior",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{external_vitest_namespaceObject.vi.resetAllMocks(),external_vitest_namespaceObject.vi.useFakeTimers(),(0,external_consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.afterEach)(()=>{external_vitest_namespaceObject.vi.clearAllMocks(),external_vitest_namespaceObject.vi.useRealTimers()}),(0,external_vitest_namespaceObject.it)("should render children immediately without blocking during hydration",async()=>{let{getByTestId:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:(0,jsx_runtime_namespaceObject.jsx)(RenderTracker,{label:"child"})}));(0,external_vitest_namespaceObject.expect)(e("render-child")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-child")).toHaveTextContent("child"),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(e("render-child")).toBeInTheDocument()}),(0,external_vitest_namespaceObject.it)("should not block SSR provider content when ConsentManager wraps SSR provider",async()=>{let{getByTestId:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:(0,jsx_runtime_namespaceObject.jsx)(MockSSRProvider,{children:(0,jsx_runtime_namespaceObject.jsx)(RenderTracker,{label:"ssr-content"})})}));(0,external_vitest_namespaceObject.expect)(e("ssr-provider")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-ssr-content")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-ssr-content")).toHaveTextContent("ssr-content"),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(e("ssr-provider")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-ssr-content")).toBeInTheDocument()}),(0,external_vitest_namespaceObject.it)("should not block SSR provider content when SSR provider wraps ConsentManager",async()=>{let{getByTestId:e}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(MockSSRProvider,{children:(0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:(0,jsx_runtime_namespaceObject.jsx)(RenderTracker,{label:"nested-content"})})}));(0,external_vitest_namespaceObject.expect)(e("ssr-provider")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-nested-content")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-nested-content")).toHaveTextContent("nested-content"),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(e("ssr-provider")).toBeInTheDocument(),(0,external_vitest_namespaceObject.expect)(e("render-nested-content")).toBeInTheDocument()}),(0,external_vitest_namespaceObject.it)("should handle rapid re-renders without blocking children",async()=>{let{rerender:e,getByTestId:t}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary"]},children:(0,jsx_runtime_namespaceObject.jsx)(RenderTracker,{label:"rapid-render"})}));(0,external_vitest_namespaceObject.expect)(t("render-rapid-render")).toBeInTheDocument();for(let n=0;n<3;n++)e((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:(0,jsx_runtime_namespaceObject.jsx)(RenderTracker,{label:"rapid-render"})})),(0,external_vitest_namespaceObject.expect)(t("render-rapid-render")).toBeInTheDocument(),await external_vitest_namespaceObject.vi.runAllTimersAsync()}),(0,external_vitest_namespaceObject.it)("should use startTransition for non-blocking state updates during hydration",async()=>{let e=!1,{getByTestId:t}=await (0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(external_consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:{mode:"offline",consentCategories:["necessary"]},children:(0,jsx_runtime_namespaceObject.jsx)(()=>(e=!0,(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"hydration-test",children:"Content"})),{})}));(0,external_vitest_namespaceObject.expect)(e).toBe(!0),(0,external_vitest_namespaceObject.expect)(t("hydration-test")).toBeInTheDocument(),await external_vitest_namespaceObject.vi.runAllTimersAsync(),(0,external_vitest_namespaceObject.expect)(t("hydration-test")).toBeInTheDocument()})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{afterEach as n,beforeEach as t,describe as r,expect as o,it as s,vi as i}from"vitest";import{render as a}from"vitest-browser-react";import{ConsentManagerProvider as d,clearConsentRuntimeCache as c}from"../consent-manager-provider.js";let l=({children:n})=>e("div",{"data-testid":"ssr-provider",children:n}),h=({label:n})=>e("div",{"data-testid":`render-${n}`,children:n});r("ConsentManagerProvider Hydration Behavior",()=>{t(()=>{i.resetAllMocks(),i.useFakeTimers(),c()}),n(()=>{i.clearAllMocks(),i.useRealTimers()}),s("should render children immediately without blocking during hydration",async()=>{let{getByTestId:n}=await a(e(d,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:e(h,{label:"child"})}));o(n("render-child")).toBeInTheDocument(),o(n("render-child")).toHaveTextContent("child"),await i.runAllTimersAsync(),o(n("render-child")).toBeInTheDocument()}),s("should not block SSR provider content when ConsentManager wraps SSR provider",async()=>{let{getByTestId:n}=await a(e(d,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:e(l,{children:e(h,{label:"ssr-content"})})}));o(n("ssr-provider")).toBeInTheDocument(),o(n("render-ssr-content")).toBeInTheDocument(),o(n("render-ssr-content")).toHaveTextContent("ssr-content"),await i.runAllTimersAsync(),o(n("ssr-provider")).toBeInTheDocument(),o(n("render-ssr-content")).toBeInTheDocument()}),s("should not block SSR provider content when SSR provider wraps ConsentManager",async()=>{let{getByTestId:n}=await a(e(l,{children:e(d,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:e(h,{label:"nested-content"})})}));o(n("ssr-provider")).toBeInTheDocument(),o(n("render-nested-content")).toBeInTheDocument(),o(n("render-nested-content")).toHaveTextContent("nested-content"),await i.runAllTimersAsync(),o(n("ssr-provider")).toBeInTheDocument(),o(n("render-nested-content")).toBeInTheDocument()}),s("should handle rapid re-renders without blocking children",async()=>{let{rerender:n,getByTestId:t}=await a(e(d,{options:{mode:"offline",consentCategories:["necessary"]},children:e(h,{label:"rapid-render"})}));o(t("render-rapid-render")).toBeInTheDocument();for(let r=0;r<3;r++)n(e(d,{options:{mode:"offline",consentCategories:["necessary","marketing"]},children:e(h,{label:"rapid-render"})})),o(t("render-rapid-render")).toBeInTheDocument(),await i.runAllTimersAsync()}),s("should use startTransition for non-blocking state updates during hydration",async()=>{let n=!1,{getByTestId:t}=await a(e(d,{options:{mode:"offline",consentCategories:["necessary"]},children:e(()=>(n=!0,e("div",{"data-testid":"hydration-test",children:"Content"})),{})}));o(n).toBe(!0),o(t("hydration-test")).toBeInTheDocument(),await i.runAllTimersAsync(),o(t("hydration-test")).toBeInTheDocument()})});
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,n)=>{for(var t in n)__webpack_require__.o(n,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},__webpack_require__.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{TestConsumer:()=>TestConsumer,setupMocks:()=>setupMocks});const jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_vitest_namespaceObject=require("vitest"),external_index_cjs_namespaceObject=require("../../index.cjs");function setupMocks(){let e=external_vitest_namespaceObject.vi.fn();window.fetch=e;let n=external_vitest_namespaceObject.vi.fn(),t=new Map,r=new Map;return(0,external_vitest_namespaceObject.beforeEach)(()=>{t.clear(),r.clear()}),external_vitest_namespaceObject.vi.mock("c15t",async()=>{let s=await external_vitest_namespaceObject.vi.importActual("c15t"),{createConsentManagerStore:a}=s,o=r=>{n(r);let s=r.backendURL||"";if("c15t"===r.mode)return{getCallbacks:()=>r.callbacks,showConsentBanner:async()=>(t.has(s)||(e(`${s}/init`,{headers:{"Content-Type":"application/json"}}),t.set(s,!0)),{ok:!0,data:{showConsentBanner:!0},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})};if("offline"===r.mode)return{getCallbacks:()=>r.callbacks,showConsentBanner:async()=>({ok:!0,data:{showConsentBanner:!0},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})};if("custom"===r.mode&&"endpointHandlers"in r){let e=r.endpointHandlers;return{getCallbacks:()=>r.callbacks,init:async()=>e?.init?.({}),setConsent:async n=>e.setConsent({body:n}),verifyConsent:async n=>e.verifyConsent({body:n})}}return{getCallbacks:()=>r.callbacks,init:async()=>({ok:!0,data:{jurisdiction:"GDPR",location:{countryCode:"GB",regionCode:null},translations:{language:"en",translations:{}},branding:"c15t"},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})}};return{...s,configureConsentManager:o,getOrCreateConsentRuntime:(e,n)=>{let t=e.mode||"c15t",s="backendURL"in e?e.backendURL:void 0,c=`${t}:${s??"default"}`,_=r.get(c);if(_)return{..._,cacheKey:c};let i=o({...e,mode:t,..."c15t"===t?{backendURL:s||"/api/c15t"}:{}}),l=a(i,{config:{pkg:n.pkg,version:n.version,mode:e.mode||"Unknown"},...e,...e.store,initialTranslationConfig:e.translations});return r.set(c,{consentManager:i,consentStore:l}),{consentManager:i,consentStore:l,cacheKey:c}}}}),{mockFetch:e,mockConfigureConsentManager:n}}const TestConsumer=()=>{let e=(0,external_index_cjs_namespaceObject.useConsentManager)();return(0,jsx_runtime_namespaceObject.jsx)("div",{"data-testid":"consumer",children:"banner"===e.activeUI?"Show":"Hide"})};for(var __rspack_i in exports.TestConsumer=__webpack_exports__.TestConsumer,exports.setupMocks=__webpack_exports__.setupMocks,__webpack_exports__)-1===["TestConsumer","setupMocks"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as n}from"react/jsx-runtime";import{beforeEach as e,vi as t}from"vitest";import{useConsentManager as s}from"../../index.js";function o(){let n=t.fn();window.fetch=n;let s=t.fn(),o=new Map,r=new Map;return e(()=>{o.clear(),r.clear()}),t.mock("c15t",async()=>{let e=await t.importActual("c15t"),{createConsentManagerStore:a}=e,l=e=>{s(e);let t=e.backendURL||"";if("c15t"===e.mode)return{getCallbacks:()=>e.callbacks,showConsentBanner:async()=>(o.has(t)||(n(`${t}/init`,{headers:{"Content-Type":"application/json"}}),o.set(t,!0)),{ok:!0,data:{showConsentBanner:!0},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})};if("offline"===e.mode)return{getCallbacks:()=>e.callbacks,showConsentBanner:async()=>({ok:!0,data:{showConsentBanner:!0},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})};if("custom"===e.mode&&"endpointHandlers"in e){let n=e.endpointHandlers;return{getCallbacks:()=>e.callbacks,init:async()=>n?.init?.({}),setConsent:async e=>n.setConsent({body:e}),verifyConsent:async e=>n.verifyConsent({body:e})}}return{getCallbacks:()=>e.callbacks,init:async()=>({ok:!0,data:{jurisdiction:"GDPR",location:{countryCode:"GB",regionCode:null},translations:{language:"en",translations:{}},branding:"c15t"},error:null,response:null}),setConsent:async()=>({ok:!0,data:{success:!0},error:null,response:null}),verifyConsent:async()=>({ok:!0,data:{valid:!0},error:null,response:null})}};return{...e,configureConsentManager:l,getOrCreateConsentRuntime:(n,e)=>{let t=n.mode||"c15t",s="backendURL"in n?n.backendURL:void 0,o=`${t}:${s??"default"}`,i=r.get(o);if(i)return{...i,cacheKey:o};let c=l({...n,mode:t,..."c15t"===t?{backendURL:s||"/api/c15t"}:{}}),u=a(c,{config:{pkg:e.pkg,version:e.version,mode:n.mode||"Unknown"},...n,...n.store,initialTranslationConfig:n.translations});return r.set(o,{consentManager:c,consentStore:u}),{consentManager:c,consentStore:u,cacheKey:o}}}}),{mockFetch:n,mockConfigureConsentManager:s}}let r=()=>n("div",{"data-testid":"consumer",children:"banner"===s().activeUI?"Show":"Hide"});export{r as TestConsumer,o as setupMocks};
@@ -1 +0,0 @@
1
- {"version":3,"file":"consent-manager-provider.d.ts","sourceRoot":"","sources":["../../src/providers/consent-manager-provider.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAI5E;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,sBAAsB,CAAC,EACtC,QAAQ,EACR,OAAO,GACP,EAAE,2BAA2B,2CA0G7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch-ssr-data.d.ts","sourceRoot":"","sources":["../../src/server/fetch-ssr-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,MAAM,CAAC;AAGvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AA8CnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAsB,YAAY,CACjC,OAAO,EAAE,mBAAmB,GAC1B,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAkFrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["../../src/server/headers.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,iBAAiB,4NAQb,CAAC;AAEX,KAAK,eAAe,GACjB,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,GAClC,gBAAgB,GAChB,eAAe,CAAC;AAEnB,KAAK,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,OAAO,GAAG,eAAe,CA4B5E"}
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const external_vitest_namespaceObject=require("vitest"),external_headers_cjs_namespaceObject=require("./headers.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("extractRelevantHeaders",()=>{(0,external_vitest_namespaceObject.it)("should extract all relevant headers when present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("x-vercel-ip-country","GB"),e.set("x-amz-cf-ipcountry","DE"),e.set("x-country-code","FR"),e.set("x-vercel-ip-country-region","CA-ON"),e.set("x-region-code","WEST"),e.set("accept-language","en-US,en;q=0.9"),e.set("user-agent","Mozilla/5.0"),e.set("x-forwarded-host","example.com"),e.set("x-forwarded-for","127.0.0.1");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toEqual({"cf-ipcountry":"US","x-vercel-ip-country":"GB","x-amz-cf-ipcountry":"DE","x-country-code":"FR","x-vercel-ip-country-region":"CA-ON","x-region-code":"WEST","accept-language":"en-US,en;q=0.9","user-agent":"Mozilla/5.0","x-c15t-country":"US","x-c15t-region":"CA-ON","x-forwarded-host":"example.com","x-forwarded-for":"127.0.0.1"})}),(0,external_vitest_namespaceObject.it)("should only extract headers that are present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("user-agent","Mozilla/5.0");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toEqual({"cf-ipcountry":"US","user-agent":"Mozilla/5.0","x-c15t-country":"US"})}),(0,external_vitest_namespaceObject.it)("should return empty object when no relevant headers are present",()=>{let e=new Headers;e.set("irrelevant-header","some-value");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toEqual({})}),(0,external_vitest_namespaceObject.it)("should handle empty Headers object",()=>{let e=new Headers,t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toEqual({})}),(0,external_vitest_namespaceObject.it)("should extract sec-gpc header when present",()=>{let e=new Headers;e.set("sec-gpc","1"),e.set("cf-ipcountry","CA");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toEqual({"sec-gpc":"1","cf-ipcountry":"CA","x-c15t-country":"CA"})}),(0,external_vitest_namespaceObject.it)("should not include sec-gpc when not present",()=>{let e=new Headers;e.set("cf-ipcountry","US");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).not.toHaveProperty("sec-gpc")}),(0,external_vitest_namespaceObject.it)("should add c15t headers when corresponding headers are present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("x-vercel-ip-country","GB"),e.set("x-amz-cf-ipcountry","DE"),e.set("x-country-code","FR"),e.set("x-vercel-ip-country-region","CA-ON"),e.set("x-region-code","WEST");let t=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(e);(0,external_vitest_namespaceObject.expect)(t).toMatchObject({"x-c15t-country":"US","x-c15t-region":"CA-ON"});let a=new Headers;a.set("x-country-code","FR");let c=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(a);(0,external_vitest_namespaceObject.expect)(c).toMatchObject({"x-c15t-country":"FR"});let r=new Headers;r.set("x-region-code","WEST");let s=(0,external_headers_cjs_namespaceObject.extractRelevantHeaders)(r);(0,external_vitest_namespaceObject.expect)(s).toMatchObject({"x-c15t-region":"WEST"})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=headers.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"headers.test.d.ts","sourceRoot":"","sources":["../../src/server/headers.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- import{describe as e,expect as t,it as r}from"vitest";import{extractRelevantHeaders as c}from"./headers.js";e("extractRelevantHeaders",()=>{r("should extract all relevant headers when present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("x-vercel-ip-country","GB"),e.set("x-amz-cf-ipcountry","DE"),e.set("x-country-code","FR"),e.set("x-vercel-ip-country-region","CA-ON"),e.set("x-region-code","WEST"),e.set("accept-language","en-US,en;q=0.9"),e.set("user-agent","Mozilla/5.0"),e.set("x-forwarded-host","example.com"),e.set("x-forwarded-for","127.0.0.1"),t(c(e)).toEqual({"cf-ipcountry":"US","x-vercel-ip-country":"GB","x-amz-cf-ipcountry":"DE","x-country-code":"FR","x-vercel-ip-country-region":"CA-ON","x-region-code":"WEST","accept-language":"en-US,en;q=0.9","user-agent":"Mozilla/5.0","x-c15t-country":"US","x-c15t-region":"CA-ON","x-forwarded-host":"example.com","x-forwarded-for":"127.0.0.1"})}),r("should only extract headers that are present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("user-agent","Mozilla/5.0"),t(c(e)).toEqual({"cf-ipcountry":"US","user-agent":"Mozilla/5.0","x-c15t-country":"US"})}),r("should return empty object when no relevant headers are present",()=>{let e=new Headers;e.set("irrelevant-header","some-value"),t(c(e)).toEqual({})}),r("should handle empty Headers object",()=>{t(c(new Headers)).toEqual({})}),r("should extract sec-gpc header when present",()=>{let e=new Headers;e.set("sec-gpc","1"),e.set("cf-ipcountry","CA"),t(c(e)).toEqual({"sec-gpc":"1","cf-ipcountry":"CA","x-c15t-country":"CA"})}),r("should not include sec-gpc when not present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),t(c(e)).not.toHaveProperty("sec-gpc")}),r("should add c15t headers when corresponding headers are present",()=>{let e=new Headers;e.set("cf-ipcountry","US"),e.set("x-vercel-ip-country","GB"),e.set("x-amz-cf-ipcountry","DE"),e.set("x-country-code","FR"),e.set("x-vercel-ip-country-region","CA-ON"),e.set("x-region-code","WEST"),t(c(e)).toMatchObject({"x-c15t-country":"US","x-c15t-region":"CA-ON"});let r=new Headers;r.set("x-country-code","FR"),t(c(r)).toMatchObject({"x-c15t-country":"FR"});let o=new Headers;o.set("x-region-code","WEST"),t(c(o)).toMatchObject({"x-c15t-region":"WEST"})})});
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,YAAY,EACX,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,GAClB,MAAM,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalize-url.d.ts","sourceRoot":"","sources":["../../src/server/normalize-url.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG;IACvD,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACtB,CAwBA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,OAAO,GAClB,MAAM,GAAG,IAAI,CA4Bf"}
@@ -1 +0,0 @@
1
- "use strict";const __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_exports__={};const external_vitest_namespaceObject=require("vitest"),external_normalize_url_cjs_namespaceObject=require("./normalize-url.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("validateBackendURL",()=>{(0,external_vitest_namespaceObject.it)("should validate absolute URLs correctly",()=>{for(let e of["http://example.com","https://example.com","http://localhost:3000","https://api.example.com/path"]){let t=(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e);(0,external_vitest_namespaceObject.expect)(t.isAbsolute).toBe(!0),(0,external_vitest_namespaceObject.expect)(t.normalizedURL).toBe(e)}}),(0,external_vitest_namespaceObject.it)("should trim trailing slashes from absolute URLs",()=>{for(let{input:e,expected:t}of[{input:"https://my-instance.c15t.dev/",expected:"https://my-instance.c15t.dev"},{input:"https://example.com/",expected:"https://example.com"},{input:"http://localhost:3000/",expected:"http://localhost:3000"},{input:"https://api.example.com/path/",expected:"https://api.example.com/path"}]){let a=(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e);(0,external_vitest_namespaceObject.expect)(a.isAbsolute).toBe(!0),(0,external_vitest_namespaceObject.expect)(a.normalizedURL).toBe(t)}}),(0,external_vitest_namespaceObject.it)("should throw error for invalid absolute URLs",()=>{for(let e of["ftp://example.com","ws://example.com","not-a-url://","http:/invalid-url"])(0,external_vitest_namespaceObject.expect)(()=>(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e)).toThrow()}),(0,external_vitest_namespaceObject.it)("should validate relative URLs correctly",()=>{for(let{input:e,expected:t}of[{input:"/api/c15t",expected:"/api/c15t"},{input:"/path/to/api",expected:"/path/to/api"}]){let a=(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e);(0,external_vitest_namespaceObject.expect)(a.isAbsolute).toBe(!1),(0,external_vitest_namespaceObject.expect)(a.normalizedURL).toBe(t)}}),(0,external_vitest_namespaceObject.it)("should trim trailing slashes from relative URLs",()=>{for(let{input:e,expected:t}of[{input:"/api/c15t/",expected:"/api/c15t"},{input:"/path/to/api/",expected:"/path/to/api"},{input:"/",expected:"/"}]){let a=(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e);(0,external_vitest_namespaceObject.expect)(a.isAbsolute).toBe(!1),(0,external_vitest_namespaceObject.expect)(a.normalizedURL).toBe(t)}}),(0,external_vitest_namespaceObject.it)("should throw error for invalid relative URLs",()=>{for(let e of["not-a-url","http://","https://","api/c15t"])(0,external_vitest_namespaceObject.expect)(()=>(0,external_normalize_url_cjs_namespaceObject.validateBackendURL)(e)).toThrow()})}),(0,external_vitest_namespaceObject.describe)("normalizeBackendURL",()=>{let e=e=>({get:t=>e[t.toLowerCase()]||null});(0,external_vitest_namespaceObject.it)("should return absolute URLs unchanged",()=>{let t="https://example.com/api",a=e({}),c=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)(t,a);(0,external_vitest_namespaceObject.expect)(c).toBe(t)}),(0,external_vitest_namespaceObject.it)("should trim trailing slashes from absolute URLs",()=>{let t=e({});for(let{input:e,expected:a}of[{input:"https://my-instance.c15t.dev/",expected:"https://my-instance.c15t.dev"},{input:"https://example.com/api/",expected:"https://example.com/api"}]){let c=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)(e,t);(0,external_vitest_namespaceObject.expect)(c).toBe(a)}}),(0,external_vitest_namespaceObject.it)("should construct URL from x-forwarded headers",()=>{let t=e({"x-forwarded-proto":"https","x-forwarded-host":"example.com"}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("/api/c15t",t);(0,external_vitest_namespaceObject.expect)(a).toBe("https://example.com/api/c15t")}),(0,external_vitest_namespaceObject.it)("should construct URL from x-forwarded headers and trim trailing slashes",()=>{for(let{headers:t,input:a,expected:c}of[{headers:{"x-forwarded-proto":"https","x-forwarded-host":"my-instance.c15t.dev"},input:"/api/c15t/",expected:"https://my-instance.c15t.dev/api/c15t"},{headers:{"x-forwarded-proto":"https","x-forwarded-host":"example.com"},input:"/api/",expected:"https://example.com/api"}]){let s=e(t),r=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)(a,s);(0,external_vitest_namespaceObject.expect)(r).toBe(c)}}),(0,external_vitest_namespaceObject.it)("should use host header when x-forwarded-host is not available",()=>{let t=e({host:"example.com"}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("/api/c15t",t);(0,external_vitest_namespaceObject.expect)(a).toBe("https://example.com/api/c15t")}),(0,external_vitest_namespaceObject.it)("should use referer when host headers are not available",()=>{let t=e({referer:"https://example.com/some/path"}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("/api/c15t",t);(0,external_vitest_namespaceObject.expect)(a).toBe("https://example.com/api/c15t")}),(0,external_vitest_namespaceObject.it)("should use referer and trim trailing slashes",()=>{let t=e({referer:"https://my-instance.c15t.dev/some/path"}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("/api/c15t/",t);(0,external_vitest_namespaceObject.expect)(a).toBe("https://my-instance.c15t.dev/api/c15t")}),(0,external_vitest_namespaceObject.it)("should return null when no headers are available to determine base URL",()=>{let t=e({}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("/api/c15t",t);(0,external_vitest_namespaceObject.expect)(a).toBeNull()}),(0,external_vitest_namespaceObject.it)("should return null for invalid URLs",()=>{let t=e({host:"example.com"}),a=(0,external_normalize_url_cjs_namespaceObject.normalizeBackendURL)("not-a-url://",t);(0,external_vitest_namespaceObject.expect)(a).toBeNull()})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=normalize-url.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalize-url.test.d.ts","sourceRoot":"","sources":["../../src/server/normalize-url.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- import{describe as t,expect as e,it as o}from"vitest";import{normalizeBackendURL as a,validateBackendURL as p}from"./normalize-url.js";t("validateBackendURL",()=>{o("should validate absolute URLs correctly",()=>{for(let t of["http://example.com","https://example.com","http://localhost:3000","https://api.example.com/path"]){let o=p(t);e(o.isAbsolute).toBe(!0),e(o.normalizedURL).toBe(t)}}),o("should trim trailing slashes from absolute URLs",()=>{for(let{input:t,expected:o}of[{input:"https://my-instance.c15t.dev/",expected:"https://my-instance.c15t.dev"},{input:"https://example.com/",expected:"https://example.com"},{input:"http://localhost:3000/",expected:"http://localhost:3000"},{input:"https://api.example.com/path/",expected:"https://api.example.com/path"}]){let a=p(t);e(a.isAbsolute).toBe(!0),e(a.normalizedURL).toBe(o)}}),o("should throw error for invalid absolute URLs",()=>{for(let t of["ftp://example.com","ws://example.com","not-a-url://","http:/invalid-url"])e(()=>p(t)).toThrow()}),o("should validate relative URLs correctly",()=>{for(let{input:t,expected:o}of[{input:"/api/c15t",expected:"/api/c15t"},{input:"/path/to/api",expected:"/path/to/api"}]){let a=p(t);e(a.isAbsolute).toBe(!1),e(a.normalizedURL).toBe(o)}}),o("should trim trailing slashes from relative URLs",()=>{for(let{input:t,expected:o}of[{input:"/api/c15t/",expected:"/api/c15t"},{input:"/path/to/api/",expected:"/path/to/api"},{input:"/",expected:"/"}]){let a=p(t);e(a.isAbsolute).toBe(!1),e(a.normalizedURL).toBe(o)}}),o("should throw error for invalid relative URLs",()=>{for(let t of["not-a-url","http://","https://","api/c15t"])e(()=>p(t)).toThrow()})}),t("normalizeBackendURL",()=>{let t=t=>({get:e=>t[e.toLowerCase()]||null});o("should return absolute URLs unchanged",()=>{let o="https://example.com/api";e(a(o,t({}))).toBe(o)}),o("should trim trailing slashes from absolute URLs",()=>{let o=t({});for(let{input:t,expected:p}of[{input:"https://my-instance.c15t.dev/",expected:"https://my-instance.c15t.dev"},{input:"https://example.com/api/",expected:"https://example.com/api"}])e(a(t,o)).toBe(p)}),o("should construct URL from x-forwarded headers",()=>{e(a("/api/c15t",t({"x-forwarded-proto":"https","x-forwarded-host":"example.com"}))).toBe("https://example.com/api/c15t")}),o("should construct URL from x-forwarded headers and trim trailing slashes",()=>{for(let{headers:o,input:p,expected:s}of[{headers:{"x-forwarded-proto":"https","x-forwarded-host":"my-instance.c15t.dev"},input:"/api/c15t/",expected:"https://my-instance.c15t.dev/api/c15t"},{headers:{"x-forwarded-proto":"https","x-forwarded-host":"example.com"},input:"/api/",expected:"https://example.com/api"}])e(a(p,t(o))).toBe(s)}),o("should use host header when x-forwarded-host is not available",()=>{e(a("/api/c15t",t({host:"example.com"}))).toBe("https://example.com/api/c15t")}),o("should use referer when host headers are not available",()=>{e(a("/api/c15t",t({referer:"https://example.com/some/path"}))).toBe("https://example.com/api/c15t")}),o("should use referer and trim trailing slashes",()=>{e(a("/api/c15t/",t({referer:"https://my-instance.c15t.dev/some/path"}))).toBe("https://my-instance.c15t.dev/api/c15t")}),o("should return null when no headers are available to determine base URL",()=>{e(a("/api/c15t",t({}))).toBeNull()}),o("should return null for invalid URLs",()=>{e(a("not-a-url://",t({host:"example.com"}))).toBeNull()})});
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAuB;IACvC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IACnE;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,SAAS,CAAC"}