@c15t/react 2.0.0-rc.3 → 2.0.0-rc.5

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 (506) hide show
  1. package/client/components/consent-banner.js +4 -0
  2. package/client/components/consent-dialog-link.js +3 -0
  3. package/client/components/consent-dialog-trigger.js +3 -0
  4. package/client/components/consent-dialog.js +4 -0
  5. package/client/components/consent-widget.js +4 -0
  6. package/client/components/frame.js +3 -0
  7. package/client/components/iab-consent-banner.js +4 -0
  8. package/client/components/iab-consent-dialog.js +4 -0
  9. package/dist/components/consent-banner/atoms/root.cjs +1 -1
  10. package/dist/components/consent-banner/atoms/root.js +1 -1
  11. package/dist/components/consent-banner/consent-banner.cjs +1 -1
  12. package/dist/components/consent-banner/consent-banner.js +1 -1
  13. package/dist/components/consent-dialog/atoms/root.cjs +1 -1
  14. package/dist/components/consent-dialog/atoms/root.js +1 -1
  15. package/dist/components/consent-dialog/consent-dialog.cjs +1 -1
  16. package/dist/components/consent-dialog/consent-dialog.js +1 -1
  17. package/dist/components/consent-dialog-link/index.cjs +1 -0
  18. package/dist/components/consent-dialog-link/index.js +1 -0
  19. package/dist/components/consent-dialog-trigger/atoms/button.cjs +1 -1
  20. package/dist/components/consent-dialog-trigger/atoms/button.js +1 -1
  21. package/dist/components/consent-dialog-trigger/atoms/root.cjs +1 -1
  22. package/dist/components/consent-dialog-trigger/atoms/root.js +1 -1
  23. package/dist/components/consent-preferences-link/consent-preferences-link.cjs +1 -0
  24. package/dist/components/consent-preferences-link/consent-preferences-link.js +1 -0
  25. package/dist/components/consent-preferences-link/index.cjs +1 -0
  26. package/dist/components/consent-preferences-link/index.js +1 -0
  27. package/dist/components/consent-widget/atoms/button.cjs +1 -1
  28. package/dist/components/consent-widget/atoms/button.js +1 -1
  29. package/dist/components/consent-widget/consent-widget.cjs +1 -1
  30. package/dist/components/consent-widget/consent-widget.js +1 -1
  31. package/dist/components/frame/frame.cjs +1 -1
  32. package/dist/components/frame/frame.js +1 -1
  33. package/dist/components/iab-consent-banner/atoms/root.cjs +1 -1
  34. package/dist/components/iab-consent-banner/atoms/root.js +1 -1
  35. package/dist/components/iab-consent-banner/iab-consent-banner.cjs +1 -1
  36. package/dist/components/iab-consent-banner/iab-consent-banner.js +1 -1
  37. package/dist/components/iab-consent-dialog/atoms/footer.cjs +1 -1
  38. package/dist/components/iab-consent-dialog/atoms/footer.js +1 -1
  39. package/dist/components/iab-consent-dialog/atoms/root.cjs +1 -1
  40. package/dist/components/iab-consent-dialog/atoms/root.js +1 -1
  41. package/dist/components/iab-consent-dialog/iab-consent-dialog.cjs +1 -1
  42. package/dist/components/iab-consent-dialog/iab-consent-dialog.js +1 -1
  43. package/dist/components/shared/libs/policy-actions.cjs +1 -0
  44. package/dist/components/shared/libs/policy-actions.js +1 -0
  45. package/dist/components/shared/primitives/button.cjs +1 -1
  46. package/dist/components/shared/primitives/button.js +1 -1
  47. package/dist/headless.cjs +1 -1
  48. package/dist/headless.js +1 -1
  49. package/dist/hooks/index.cjs +1 -1
  50. package/dist/hooks/index.js +1 -1
  51. package/dist/hooks/use-consent-dialog-trigger.cjs +1 -0
  52. package/dist/hooks/use-consent-dialog-trigger.js +1 -0
  53. package/dist/hooks/use-consent-manager.cjs +1 -1
  54. package/dist/hooks/use-consent-manager.js +1 -1
  55. package/dist/hooks/use-headless-consent-ui.cjs +1 -0
  56. package/dist/hooks/use-headless-consent-ui.js +1 -0
  57. package/dist/hooks/use-headless-iab-consent-ui.cjs +1 -0
  58. package/dist/hooks/use-headless-iab-consent-ui.js +1 -0
  59. package/dist/index.cjs +1 -1
  60. package/dist/index.js +1 -1
  61. package/dist/providers/consent-manager-provider.cjs +1 -1
  62. package/dist/providers/consent-manager-provider.js +1 -1
  63. package/dist/server/fetch-ssr-data.cjs +1 -1
  64. package/dist/server/fetch-ssr-data.js +1 -1
  65. package/dist/server/headers.cjs +1 -1
  66. package/dist/server/headers.js +1 -1
  67. package/dist/server/index.cjs +1 -1
  68. package/dist/server/index.js +1 -1
  69. package/dist/server/init-cache-key.cjs +1 -0
  70. package/dist/server/init-cache-key.js +1 -0
  71. package/dist/version.cjs +1 -1
  72. package/dist/version.js +1 -1
  73. package/{dist → dist-types}/components/consent-banner/atoms/overlay.d.ts +0 -1
  74. package/{dist → dist-types}/components/consent-banner/atoms/root.d.ts +1 -2
  75. package/{dist → dist-types}/components/consent-banner/components.d.ts +0 -1
  76. package/{dist → dist-types}/components/consent-banner/consent-banner.d.ts +8 -7
  77. package/{dist → dist-types}/components/consent-banner/error-boundary.d.ts +0 -1
  78. package/{dist → dist-types}/components/consent-banner/index.d.ts +0 -1
  79. package/{dist → dist-types}/components/consent-dialog/atoms/card.d.ts +0 -1
  80. package/{dist → dist-types}/components/consent-dialog/atoms/overlay.d.ts +0 -1
  81. package/{dist → dist-types}/components/consent-dialog/atoms/root.d.ts +1 -2
  82. package/{dist → dist-types}/components/consent-dialog/consent-dialog.d.ts +1 -2
  83. package/{dist → dist-types}/components/consent-dialog/index.d.ts +0 -1
  84. package/dist-types/components/consent-dialog-link/index.d.ts +1 -0
  85. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/button.d.ts +0 -1
  86. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/icon.d.ts +0 -1
  87. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/root.d.ts +0 -1
  88. package/{dist → dist-types}/components/consent-dialog-trigger/atoms/text.d.ts +0 -1
  89. package/{dist → dist-types}/components/consent-dialog-trigger/consent-dialog-trigger.d.ts +0 -1
  90. package/{dist → dist-types}/components/consent-dialog-trigger/index.d.ts +0 -1
  91. package/{dist → dist-types}/components/consent-dialog-trigger/types.d.ts +1 -2
  92. package/{dist → dist-types}/components/consent-dialog-trigger/use-draggable.d.ts +1 -2
  93. package/dist-types/components/consent-preferences-link/consent-preferences-link.d.ts +15 -0
  94. package/dist-types/components/consent-preferences-link/index.d.ts +1 -0
  95. package/{dist → dist-types}/components/consent-widget/atoms/accordion.d.ts +0 -1
  96. package/{dist → dist-types}/components/consent-widget/atoms/button.d.ts +0 -1
  97. package/{dist → dist-types}/components/consent-widget/atoms/footer.d.ts +0 -1
  98. package/{dist → dist-types}/components/consent-widget/atoms/root.d.ts +0 -1
  99. package/{dist → dist-types}/components/consent-widget/consent-widget.d.ts +0 -1
  100. package/{dist → dist-types}/components/consent-widget/index.d.ts +0 -1
  101. package/{dist → dist-types}/components/consent-widget/types.d.ts +0 -1
  102. package/{dist → dist-types}/components/frame/atoms.d.ts +1 -2
  103. package/{dist → dist-types}/components/frame/frame.d.ts +0 -1
  104. package/{dist → dist-types}/components/frame/index.d.ts +0 -1
  105. package/{dist → dist-types}/components/frame/types.d.ts +1 -2
  106. package/{dist → dist-types}/components/iab-consent-banner/atoms/button-group.d.ts +0 -1
  107. package/{dist → dist-types}/components/iab-consent-banner/atoms/card.d.ts +0 -1
  108. package/{dist → dist-types}/components/iab-consent-banner/atoms/description.d.ts +0 -1
  109. package/{dist → dist-types}/components/iab-consent-banner/atoms/footer.d.ts +0 -1
  110. package/{dist → dist-types}/components/iab-consent-banner/atoms/header.d.ts +0 -1
  111. package/{dist → dist-types}/components/iab-consent-banner/atoms/overlay.d.ts +0 -1
  112. package/{dist → dist-types}/components/iab-consent-banner/atoms/root.d.ts +1 -2
  113. package/{dist → dist-types}/components/iab-consent-banner/atoms/title.d.ts +0 -1
  114. package/{dist → dist-types}/components/iab-consent-banner/iab-consent-banner.d.ts +1 -2
  115. package/{dist → dist-types}/components/iab-consent-banner/index.d.ts +0 -1
  116. package/{dist → dist-types}/components/iab-consent-dialog/atoms/card.d.ts +0 -1
  117. package/{dist → dist-types}/components/iab-consent-dialog/atoms/content.d.ts +0 -1
  118. package/{dist → dist-types}/components/iab-consent-dialog/atoms/footer.d.ts +0 -1
  119. package/{dist → dist-types}/components/iab-consent-dialog/atoms/header.d.ts +0 -1
  120. package/{dist → dist-types}/components/iab-consent-dialog/atoms/overlay.d.ts +0 -1
  121. package/{dist → dist-types}/components/iab-consent-dialog/atoms/purpose-item.d.ts +0 -1
  122. package/{dist → dist-types}/components/iab-consent-dialog/atoms/root.d.ts +1 -2
  123. package/{dist → dist-types}/components/iab-consent-dialog/atoms/stack-item.d.ts +0 -1
  124. package/{dist → dist-types}/components/iab-consent-dialog/atoms/tabs.d.ts +0 -1
  125. package/{dist → dist-types}/components/iab-consent-dialog/atoms/vendor-list.d.ts +1 -2
  126. package/{dist → dist-types}/components/iab-consent-dialog/hooks/use-gvl-data.d.ts +0 -1
  127. package/{dist → dist-types}/components/iab-consent-dialog/iab-consent-dialog.d.ts +1 -2
  128. package/{dist → dist-types}/components/iab-consent-dialog/index.d.ts +0 -1
  129. package/{dist → dist-types}/components/iab-consent-dialog/types.d.ts +0 -1
  130. package/{dist → dist-types}/components/iab-consent-dialog/use-iab-translations.d.ts +0 -1
  131. package/dist-types/components/shared/libs/policy-actions.d.ts +26 -0
  132. package/{dist → dist-types}/components/shared/libs/polymorphic.d.ts +0 -1
  133. package/{dist → dist-types}/components/shared/libs/recursive-clone-children.d.ts +0 -1
  134. package/{dist → dist-types}/components/shared/primitives/box.d.ts +0 -1
  135. package/{dist → dist-types}/components/shared/primitives/button.d.ts +5 -2
  136. package/{dist → dist-types}/components/shared/primitives/button.types.d.ts +17 -1
  137. package/{dist → dist-types}/components/shared/primitives/legal-links/index.d.ts +1 -2
  138. package/{dist → dist-types}/components/shared/ui/accordion/accordion.d.ts +1 -2
  139. package/{dist → dist-types}/components/shared/ui/accordion/accordion.types.d.ts +1 -2
  140. package/{dist → dist-types}/components/shared/ui/accordion/index.d.ts +0 -1
  141. package/{dist → dist-types}/components/shared/ui/animated-collapse/animated-collapse.d.ts +0 -1
  142. package/{dist → dist-types}/components/shared/ui/animated-collapse/index.d.ts +0 -1
  143. package/{dist → dist-types}/components/shared/ui/button/button.d.ts +1 -2
  144. package/{dist → dist-types}/components/shared/ui/button/button.types.d.ts +0 -1
  145. package/{dist → dist-types}/components/shared/ui/button/index.d.ts +0 -1
  146. package/{dist → dist-types}/components/shared/ui/icon.d.ts +0 -1
  147. package/{dist → dist-types}/components/shared/ui/logo.d.ts +0 -1
  148. package/{dist → dist-types}/components/shared/ui/switch/index.d.ts +0 -1
  149. package/{dist → dist-types}/components/shared/ui/switch/switch.d.ts +1 -2
  150. package/{dist → dist-types}/components/shared/ui/switch/switch.types.d.ts +1 -2
  151. package/{dist → dist-types}/context/consent-manager-context.d.ts +1 -2
  152. package/{dist → dist-types}/context/consent-tracking-context.d.ts +0 -1
  153. package/{dist → dist-types}/context/theme-context.d.ts +0 -1
  154. package/dist-types/headless.d.ts +10 -0
  155. package/{dist → dist-types}/hooks/index.d.ts +3 -1
  156. package/{dist → dist-types}/hooks/use-color-scheme.d.ts +0 -1
  157. package/{dist → dist-types}/hooks/use-component-config.d.ts +1 -2
  158. package/dist-types/hooks/use-consent-dialog-trigger.d.ts +10 -0
  159. package/{dist → dist-types}/hooks/use-consent-manager.d.ts +1 -2
  160. package/{dist → dist-types}/hooks/use-focus-trap.d.ts +0 -1
  161. package/dist-types/hooks/use-headless-consent-ui.d.ts +46 -0
  162. package/dist-types/hooks/use-headless-iab-consent-ui.d.ts +41 -0
  163. package/{dist → dist-types}/hooks/use-reduced-motion.d.ts +0 -1
  164. package/{dist → dist-types}/hooks/use-scroll-lock.d.ts +0 -1
  165. package/{dist → dist-types}/hooks/use-ssr-status.d.ts +0 -1
  166. package/{dist → dist-types}/hooks/use-styles.d.ts +0 -1
  167. package/{dist → dist-types}/hooks/use-text-direction.d.ts +0 -1
  168. package/{dist → dist-types}/hooks/use-theme.d.ts +0 -1
  169. package/{dist → dist-types}/hooks/use-translations.d.ts +1 -2
  170. package/{dist → dist-types}/index.d.ts +6 -3
  171. package/{dist → dist-types}/providers/consent-manager-provider.d.ts +0 -1
  172. package/{dist → dist-types}/server/fetch-ssr-data.d.ts +1 -2
  173. package/{dist → dist-types}/server/headers.d.ts +2 -2
  174. package/{dist → dist-types}/server/index.d.ts +1 -1
  175. package/dist-types/server/init-cache-key.d.ts +21 -0
  176. package/{dist → dist-types}/server/normalize-url.d.ts +0 -1
  177. package/{dist → dist-types}/server/types.d.ts +1 -2
  178. package/{dist → dist-types}/types/consent-manager.d.ts +8 -2
  179. package/{dist → dist-types}/types/theme/index.d.ts +0 -1
  180. package/dist-types/types/theme/style-keys.d.ts +1 -0
  181. package/{dist → dist-types}/types/theme/style-types.d.ts +4 -3
  182. package/{dist → dist-types}/utils/cn.d.ts +1 -2
  183. package/{dist → dist-types}/utils/merge-styles.d.ts +0 -1
  184. package/{dist → dist-types}/utils/test-helpers.d.ts +0 -1
  185. package/{dist → dist-types}/utils/theme-utils.d.ts +1 -2
  186. package/dist-types/version.d.ts +1 -0
  187. package/docs/README.md +76 -0
  188. package/docs/building-headless-components.md +245 -0
  189. package/docs/callbacks.md +117 -0
  190. package/docs/components/consent-banner.md +174 -0
  191. package/docs/components/consent-dialog-link.md +59 -0
  192. package/docs/components/consent-dialog-trigger.md +103 -0
  193. package/docs/components/consent-dialog.md +137 -0
  194. package/docs/components/consent-manager-provider.md +422 -0
  195. package/docs/components/consent-widget.md +78 -0
  196. package/docs/components/dev-tools.md +63 -0
  197. package/docs/components/frame.md +73 -0
  198. package/docs/concepts/client-modes.md +163 -0
  199. package/docs/concepts/consent-categories.md +97 -0
  200. package/docs/concepts/consent-models.md +112 -0
  201. package/docs/concepts/cookie-management.md +122 -0
  202. package/docs/concepts/glossary.md +23 -0
  203. package/docs/concepts/initialization-flow.md +141 -0
  204. package/docs/concepts/policy-packs.md +227 -0
  205. package/docs/headless.md +184 -0
  206. package/docs/hooks/use-color-scheme.md +40 -0
  207. package/docs/hooks/use-consent-manager/checking-consent.md +94 -0
  208. package/docs/hooks/use-consent-manager/location-info.md +95 -0
  209. package/docs/hooks/use-consent-manager/overview.md +390 -0
  210. package/docs/hooks/use-consent-manager/setting-consent.md +92 -0
  211. package/docs/hooks/use-draggable.md +57 -0
  212. package/docs/hooks/use-focus-trap.md +41 -0
  213. package/docs/hooks/use-reduced-motion.md +35 -0
  214. package/docs/hooks/use-ssr-status.md +31 -0
  215. package/docs/hooks/use-text-direction.md +49 -0
  216. package/docs/hooks/use-translations.md +116 -0
  217. package/docs/iab/consent-banner.md +95 -0
  218. package/docs/iab/consent-dialog.md +135 -0
  219. package/docs/iab/overview.md +119 -0
  220. package/docs/iab/use-gvl-data.md +208 -0
  221. package/docs/iframe-blocking.md +107 -0
  222. package/docs/integrations/databuddy.md +186 -0
  223. package/docs/integrations/google-tag-manager.md +153 -0
  224. package/docs/integrations/google-tag.md +149 -0
  225. package/docs/integrations/linkedin-insights.md +109 -0
  226. package/docs/integrations/meta-pixel.md +342 -0
  227. package/docs/integrations/microsoft-uet.md +112 -0
  228. package/docs/integrations/overview.md +89 -0
  229. package/docs/integrations/posthog.md +177 -0
  230. package/docs/integrations/tiktok-pixel.md +113 -0
  231. package/docs/integrations/x-pixel.md +143 -0
  232. package/docs/internationalization.md +197 -0
  233. package/docs/network-blocker.md +178 -0
  234. package/docs/optimization.md +117 -0
  235. package/docs/policy-packs.md +240 -0
  236. package/docs/quickstart.md +136 -0
  237. package/docs/script-loader.md +300 -0
  238. package/docs/server-side.md +153 -0
  239. package/docs/styling/classnames.md +84 -0
  240. package/docs/styling/color-scheme.md +82 -0
  241. package/docs/styling/css-variables.md +92 -0
  242. package/docs/styling/overview.md +315 -0
  243. package/docs/styling/slots.md +93 -0
  244. package/docs/styling/tailwind.md +86 -0
  245. package/docs/styling/tokens.md +214 -0
  246. package/docs/troubleshooting.md +137 -0
  247. package/package.json +64 -17
  248. package/dist/components/__tests__/active-ui-transitions.e2e.test.cjs +0 -1
  249. package/dist/components/__tests__/active-ui-transitions.e2e.test.js +0 -1
  250. package/dist/components/__tests__/consent-flow.e2e.test.cjs +0 -1
  251. package/dist/components/__tests__/consent-flow.e2e.test.js +0 -1
  252. package/dist/components/__tests__/models-prop.e2e.test.cjs +0 -1
  253. package/dist/components/__tests__/models-prop.e2e.test.js +0 -1
  254. package/dist/components/__tests__/ui-source-tracking.e2e.test.cjs +0 -1
  255. package/dist/components/__tests__/ui-source-tracking.e2e.test.js +0 -1
  256. package/dist/components/consent-banner/atoms/overlay.d.ts.map +0 -1
  257. package/dist/components/consent-banner/atoms/root.d.ts.map +0 -1
  258. package/dist/components/consent-banner/components.d.ts.map +0 -1
  259. package/dist/components/consent-banner/consent-banner.d.ts.map +0 -1
  260. package/dist/components/consent-banner/error-boundary.d.ts.map +0 -1
  261. package/dist/components/consent-banner/index.d.ts.map +0 -1
  262. package/dist/components/consent-dialog/atoms/card.d.ts.map +0 -1
  263. package/dist/components/consent-dialog/atoms/overlay.d.ts.map +0 -1
  264. package/dist/components/consent-dialog/atoms/root.d.ts.map +0 -1
  265. package/dist/components/consent-dialog/consent-dialog.d.ts.map +0 -1
  266. package/dist/components/consent-dialog/index.d.ts.map +0 -1
  267. package/dist/components/consent-dialog-trigger/atoms/button.d.ts.map +0 -1
  268. package/dist/components/consent-dialog-trigger/atoms/icon.d.ts.map +0 -1
  269. package/dist/components/consent-dialog-trigger/atoms/root.d.ts.map +0 -1
  270. package/dist/components/consent-dialog-trigger/atoms/text.d.ts.map +0 -1
  271. package/dist/components/consent-dialog-trigger/consent-dialog-trigger.d.ts.map +0 -1
  272. package/dist/components/consent-dialog-trigger/index.d.ts.map +0 -1
  273. package/dist/components/consent-dialog-trigger/types.d.ts.map +0 -1
  274. package/dist/components/consent-dialog-trigger/use-draggable.d.ts.map +0 -1
  275. package/dist/components/consent-widget/atoms/accordion.d.ts.map +0 -1
  276. package/dist/components/consent-widget/atoms/button.d.ts.map +0 -1
  277. package/dist/components/consent-widget/atoms/footer.d.ts.map +0 -1
  278. package/dist/components/consent-widget/atoms/root.d.ts.map +0 -1
  279. package/dist/components/consent-widget/consent-widget.d.ts.map +0 -1
  280. package/dist/components/consent-widget/index.d.ts.map +0 -1
  281. package/dist/components/consent-widget/types.d.ts.map +0 -1
  282. package/dist/components/frame/atoms.d.ts.map +0 -1
  283. package/dist/components/frame/frame.d.ts.map +0 -1
  284. package/dist/components/frame/index.d.ts.map +0 -1
  285. package/dist/components/frame/types.d.ts.map +0 -1
  286. package/dist/components/iab/__tests__/e2e-setup.cjs +0 -1
  287. package/dist/components/iab/__tests__/e2e-setup.js +0 -1
  288. package/dist/components/iab/__tests__/fixtures/mock-consent-state.cjs +0 -1
  289. package/dist/components/iab/__tests__/fixtures/mock-consent-state.d.ts +0 -212
  290. package/dist/components/iab/__tests__/fixtures/mock-consent-state.d.ts.map +0 -1
  291. package/dist/components/iab/__tests__/fixtures/mock-consent-state.js +0 -1
  292. package/dist/components/iab/__tests__/iab-banner.e2e.test.cjs +0 -1
  293. package/dist/components/iab/__tests__/iab-banner.e2e.test.js +0 -1
  294. package/dist/components/iab/__tests__/iab-consent-flow.e2e.test.cjs +0 -1
  295. package/dist/components/iab/__tests__/iab-consent-flow.e2e.test.js +0 -1
  296. package/dist/components/iab/__tests__/iab-events.e2e.test.cjs +0 -1
  297. package/dist/components/iab/__tests__/iab-events.e2e.test.js +0 -1
  298. package/dist/components/iab/__tests__/iab-gvl.e2e.test.cjs +0 -1
  299. package/dist/components/iab/__tests__/iab-gvl.e2e.test.js +0 -1
  300. package/dist/components/iab/__tests__/iab-preference-center.e2e.test.cjs +0 -1
  301. package/dist/components/iab/__tests__/iab-preference-center.e2e.test.js +0 -1
  302. package/dist/components/iab/__tests__/iab-storage.e2e.test.cjs +0 -1
  303. package/dist/components/iab/__tests__/iab-storage.e2e.test.js +0 -1
  304. package/dist/components/iab/__tests__/iab-stub.e2e.test.cjs +0 -1
  305. package/dist/components/iab/__tests__/iab-stub.e2e.test.js +0 -1
  306. package/dist/components/iab/__tests__/iab-tcfapi.e2e.test.cjs +0 -1
  307. package/dist/components/iab/__tests__/iab-tcfapi.e2e.test.js +0 -1
  308. package/dist/components/iab/__tests__/msw-handlers.cjs +0 -1
  309. package/dist/components/iab/__tests__/msw-handlers.js +0 -1
  310. package/dist/components/iab-consent-banner/__tests__/iab-consent-banner.test.cjs +0 -1
  311. package/dist/components/iab-consent-banner/__tests__/iab-consent-banner.test.js +0 -1
  312. package/dist/components/iab-consent-banner/atoms/button-group.d.ts.map +0 -1
  313. package/dist/components/iab-consent-banner/atoms/card.d.ts.map +0 -1
  314. package/dist/components/iab-consent-banner/atoms/description.d.ts.map +0 -1
  315. package/dist/components/iab-consent-banner/atoms/footer.d.ts.map +0 -1
  316. package/dist/components/iab-consent-banner/atoms/header.d.ts.map +0 -1
  317. package/dist/components/iab-consent-banner/atoms/overlay.d.ts.map +0 -1
  318. package/dist/components/iab-consent-banner/atoms/root.d.ts.map +0 -1
  319. package/dist/components/iab-consent-banner/atoms/title.d.ts.map +0 -1
  320. package/dist/components/iab-consent-banner/iab-consent-banner.d.ts.map +0 -1
  321. package/dist/components/iab-consent-banner/index.d.ts.map +0 -1
  322. package/dist/components/iab-consent-dialog/__tests__/legitimate-interest-ui.test.cjs +0 -1
  323. package/dist/components/iab-consent-dialog/__tests__/legitimate-interest-ui.test.js +0 -1
  324. package/dist/components/iab-consent-dialog/__tests__/preference-center.test.cjs +0 -1
  325. package/dist/components/iab-consent-dialog/__tests__/preference-center.test.js +0 -1
  326. package/dist/components/iab-consent-dialog/__tests__/purposes-tab.test.cjs +0 -1
  327. package/dist/components/iab-consent-dialog/__tests__/purposes-tab.test.js +0 -1
  328. package/dist/components/iab-consent-dialog/__tests__/vendors-tab.test.cjs +0 -1
  329. package/dist/components/iab-consent-dialog/__tests__/vendors-tab.test.js +0 -1
  330. package/dist/components/iab-consent-dialog/atoms/card.d.ts.map +0 -1
  331. package/dist/components/iab-consent-dialog/atoms/content.d.ts.map +0 -1
  332. package/dist/components/iab-consent-dialog/atoms/footer.d.ts.map +0 -1
  333. package/dist/components/iab-consent-dialog/atoms/header.d.ts.map +0 -1
  334. package/dist/components/iab-consent-dialog/atoms/overlay.d.ts.map +0 -1
  335. package/dist/components/iab-consent-dialog/atoms/purpose-item.d.ts.map +0 -1
  336. package/dist/components/iab-consent-dialog/atoms/root.d.ts.map +0 -1
  337. package/dist/components/iab-consent-dialog/atoms/stack-item.d.ts.map +0 -1
  338. package/dist/components/iab-consent-dialog/atoms/tabs.d.ts.map +0 -1
  339. package/dist/components/iab-consent-dialog/atoms/vendor-list.d.ts.map +0 -1
  340. package/dist/components/iab-consent-dialog/hooks/use-gvl-data.d.ts.map +0 -1
  341. package/dist/components/iab-consent-dialog/iab-consent-dialog.d.ts.map +0 -1
  342. package/dist/components/iab-consent-dialog/index.d.ts.map +0 -1
  343. package/dist/components/iab-consent-dialog/types.d.ts.map +0 -1
  344. package/dist/components/iab-consent-dialog/use-iab-translations.d.ts.map +0 -1
  345. package/dist/components/shared/libs/polymorphic.d.ts.map +0 -1
  346. package/dist/components/shared/libs/recursive-clone-children.d.ts.map +0 -1
  347. package/dist/components/shared/primitives/box.d.ts.map +0 -1
  348. package/dist/components/shared/primitives/button.d.ts.map +0 -1
  349. package/dist/components/shared/primitives/button.types.d.ts.map +0 -1
  350. package/dist/components/shared/primitives/legal-links/index.d.ts.map +0 -1
  351. package/dist/components/shared/ui/__tests__/primitives.test.cjs +0 -1
  352. package/dist/components/shared/ui/__tests__/primitives.test.js +0 -1
  353. package/dist/components/shared/ui/accordion/accordion.d.ts.map +0 -1
  354. package/dist/components/shared/ui/accordion/accordion.types.d.ts.map +0 -1
  355. package/dist/components/shared/ui/accordion/index.d.ts.map +0 -1
  356. package/dist/components/shared/ui/animated-collapse/animated-collapse.d.ts.map +0 -1
  357. package/dist/components/shared/ui/animated-collapse/index.d.ts.map +0 -1
  358. package/dist/components/shared/ui/button/button.d.ts.map +0 -1
  359. package/dist/components/shared/ui/button/button.types.d.ts.map +0 -1
  360. package/dist/components/shared/ui/button/index.d.ts.map +0 -1
  361. package/dist/components/shared/ui/icon.d.ts.map +0 -1
  362. package/dist/components/shared/ui/logo.d.ts.map +0 -1
  363. package/dist/components/shared/ui/switch/index.d.ts.map +0 -1
  364. package/dist/components/shared/ui/switch/switch.d.ts.map +0 -1
  365. package/dist/components/shared/ui/switch/switch.types.d.ts.map +0 -1
  366. package/dist/context/consent-manager-context.d.ts.map +0 -1
  367. package/dist/context/consent-tracking-context.d.ts.map +0 -1
  368. package/dist/context/theme-context.d.ts.map +0 -1
  369. package/dist/headless.d.ts +0 -8
  370. package/dist/headless.d.ts.map +0 -1
  371. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.cjs +0 -1
  372. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.js +0 -1
  373. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-handles-default-theme-based-on-document-class-1.cjs +0 -1
  374. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-handles-default-theme-based-on-document-class-1.js +0 -1
  375. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-responds-to-system-preference-1.cjs +0 -1
  376. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-responds-to-system-preference-1.js +0 -1
  377. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-sets-dark-theme-correctly-1.cjs +0 -1
  378. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-sets-dark-theme-correctly-1.js +0 -1
  379. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-default-theme-changes-1.cjs +0 -1
  380. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-default-theme-changes-1.js +0 -1
  381. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-system-preference-changes-1.cjs +0 -1
  382. package/dist/hooks/__tests__/__screenshots__/use-color-scheme.test.tsx/useColorScheme-updates-theme-when-system-preference-changes-1.js +0 -1
  383. package/dist/hooks/__tests__/__screenshots__/use-consent-manager.test.tsx/useConsentManager-provides-manager-object-when-configured-1.cjs +0 -1
  384. package/dist/hooks/__tests__/__screenshots__/use-consent-manager.test.tsx/useConsentManager-provides-manager-object-when-configured-1.js +0 -1
  385. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-handles-string-className-correctly-1.cjs +0 -1
  386. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-handles-string-className-correctly-1.js +0 -1
  387. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-merges-theme-and-component-styles-correctly-1.cjs +0 -1
  388. package/dist/hooks/__tests__/__screenshots__/use-styles.test.tsx/useStyles-merges-theme-and-component-styles-correctly-1.js +0 -1
  389. 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
  390. 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
  391. 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
  392. 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
  393. package/dist/hooks/__tests__/__screenshots__/use-theme.test.tsx/useTheme-local-theme-takes-precedence-over-global-theme-1.cjs +0 -1
  394. package/dist/hooks/__tests__/__screenshots__/use-theme.test.tsx/useTheme-local-theme-takes-precedence-over-global-theme-1.js +0 -1
  395. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.cjs +0 -1
  396. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.js +0 -1
  397. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.cjs +0 -1
  398. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.js +0 -1
  399. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-merges-custom-translations-with-defaults-1.cjs +0 -1
  400. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-merges-custom-translations-with-defaults-1.js +0 -1
  401. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-returns-English-translations-by-default-1.cjs +0 -1
  402. package/dist/hooks/__tests__/__screenshots__/use-translations.test.tsx/useTranslations-returns-English-translations-by-default-1.js +0 -1
  403. package/dist/hooks/__tests__/use-color-scheme.test.cjs +0 -1
  404. package/dist/hooks/__tests__/use-color-scheme.test.js +0 -1
  405. package/dist/hooks/__tests__/use-consent-manager.test.cjs +0 -1
  406. package/dist/hooks/__tests__/use-consent-manager.test.js +0 -1
  407. package/dist/hooks/__tests__/use-focus-trap.test.cjs +0 -1
  408. package/dist/hooks/__tests__/use-focus-trap.test.js +0 -1
  409. package/dist/hooks/__tests__/use-scroll-lock.test.cjs +0 -1
  410. package/dist/hooks/__tests__/use-scroll-lock.test.js +0 -1
  411. package/dist/hooks/__tests__/use-styles.test.cjs +0 -1
  412. package/dist/hooks/__tests__/use-styles.test.js +0 -1
  413. package/dist/hooks/__tests__/use-theme.test.cjs +0 -1
  414. package/dist/hooks/__tests__/use-theme.test.js +0 -1
  415. package/dist/hooks/__tests__/use-translations.test.cjs +0 -1
  416. package/dist/hooks/__tests__/use-translations.test.js +0 -1
  417. package/dist/hooks/index.d.ts.map +0 -1
  418. package/dist/hooks/use-color-scheme.d.ts.map +0 -1
  419. package/dist/hooks/use-component-config.d.ts.map +0 -1
  420. package/dist/hooks/use-consent-manager.d.ts.map +0 -1
  421. package/dist/hooks/use-focus-trap.d.ts.map +0 -1
  422. package/dist/hooks/use-reduced-motion.d.ts.map +0 -1
  423. package/dist/hooks/use-scroll-lock.d.ts.map +0 -1
  424. package/dist/hooks/use-ssr-status.d.ts.map +0 -1
  425. package/dist/hooks/use-styles.d.ts.map +0 -1
  426. package/dist/hooks/use-text-direction.d.ts.map +0 -1
  427. package/dist/hooks/use-theme.d.ts.map +0 -1
  428. package/dist/hooks/use-translations.d.ts.map +0 -1
  429. package/dist/index.d.ts.map +0 -1
  430. package/dist/mockServiceWorker.js +0 -349
  431. 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
  432. 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
  433. 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
  434. 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
  435. 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
  436. 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
  437. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.cjs +0 -1
  438. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.js +0 -1
  439. 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
  440. 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
  441. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.cjs +0 -1
  442. package/dist/providers/__tests__/__screenshots__/provider-hydration.test.tsx/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.js +0 -1
  443. 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
  444. 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
  445. package/dist/providers/__tests__/provider-basic.test.cjs +0 -1
  446. package/dist/providers/__tests__/provider-basic.test.js +0 -1
  447. package/dist/providers/__tests__/provider-context.test.cjs +0 -1
  448. package/dist/providers/__tests__/provider-context.test.js +0 -1
  449. package/dist/providers/__tests__/provider-errors.test.cjs +0 -1
  450. package/dist/providers/__tests__/provider-errors.test.js +0 -1
  451. package/dist/providers/__tests__/provider-hydration.test.cjs +0 -1
  452. package/dist/providers/__tests__/provider-hydration.test.js +0 -1
  453. package/dist/providers/__tests__/test-helpers.cjs +0 -1
  454. package/dist/providers/__tests__/test-helpers.js +0 -1
  455. package/dist/providers/consent-manager-provider.d.ts.map +0 -1
  456. package/dist/server/fetch-ssr-data.d.ts.map +0 -1
  457. package/dist/server/headers.d.ts.map +0 -1
  458. package/dist/server/headers.test.cjs +0 -1
  459. package/dist/server/headers.test.d.ts +0 -2
  460. package/dist/server/headers.test.d.ts.map +0 -1
  461. package/dist/server/headers.test.js +0 -1
  462. package/dist/server/index.d.ts.map +0 -1
  463. package/dist/server/normalize-url.d.ts.map +0 -1
  464. package/dist/server/normalize-url.test.cjs +0 -1
  465. package/dist/server/normalize-url.test.d.ts +0 -2
  466. package/dist/server/normalize-url.test.d.ts.map +0 -1
  467. package/dist/server/normalize-url.test.js +0 -1
  468. package/dist/server/types.d.ts.map +0 -1
  469. package/dist/static/image/ConsentManagerProvider-Basic-Request-Behavior-should-make-a-new-request-when-core-options-change-1.png +0 -0
  470. 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
  471. package/dist/static/image/ConsentManagerProvider-Basic-Request-Behavior-should-only-make-one-initial-request-for-consent-banner-status-1.png +0 -0
  472. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-handle-rapid-re-renders-without-blocking-children-1.png +0 -0
  473. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-not-block-SSR-provider-content-when-SSR-provider-wraps-ConsentManager-1.png +0 -0
  474. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-render-children-immediately-without-blocking-during-hydration-1.png +0 -0
  475. package/dist/static/image/ConsentManagerProvider-Hydration-Behavior-should-use-startTransition-for-non-blocking-state-updates-during-hydration-1.png +0 -0
  476. package/dist/static/image/useColorScheme-cleans-up-system-preference-listener-on-unmount-1.png +0 -0
  477. package/dist/static/image/useColorScheme-handles-default-theme-based-on-document-class-1.png +0 -0
  478. package/dist/static/image/useColorScheme-responds-to-system-preference-1.png +0 -0
  479. package/dist/static/image/useColorScheme-sets-dark-theme-correctly-1.png +0 -0
  480. package/dist/static/image/useColorScheme-updates-theme-when-default-theme-changes-1.png +0 -0
  481. package/dist/static/image/useColorScheme-updates-theme-when-system-preference-changes-1.png +0 -0
  482. package/dist/static/image/useConsentManager-provides-manager-object-when-configured-1.png +0 -0
  483. package/dist/static/image/useStyles-handles-string-className-correctly-1.png +0 -0
  484. package/dist/static/image/useStyles-merges-theme-and-component-styles-correctly-1.png +0 -0
  485. package/dist/static/image/useStyles-should-remove-base-default-styles-but-keep-theme-and-component-classNames-when-noStyle--true-1.png +0 -0
  486. package/dist/static/image/useStyles-should-remove-default-styles-but-keep-custom-classNames-when-theme-object-provides-noStyle--true-1.png +0 -0
  487. package/dist/static/image/useTheme-local-theme-takes-precedence-over-global-theme-1.png +0 -0
  488. package/dist/static/image/useTranslations-Custom-English-instead-of-English-when-German-is-selected-1.png +0 -0
  489. package/dist/static/image/useTranslations-falls-back-to-English-when-selected-language-is-not-available-1.png +0 -0
  490. package/dist/static/image/useTranslations-merges-custom-translations-with-defaults-1.png +0 -0
  491. package/dist/static/image/useTranslations-returns-English-translations-by-default-1.png +0 -0
  492. package/dist/test-setup.browser.cjs +0 -1
  493. package/dist/test-setup.browser.d.ts +0 -8
  494. package/dist/test-setup.browser.d.ts.map +0 -1
  495. package/dist/test-setup.browser.js +0 -1
  496. package/dist/types/consent-manager.d.ts.map +0 -1
  497. package/dist/types/theme/index.d.ts.map +0 -1
  498. package/dist/types/theme/style-keys.d.ts +0 -2
  499. package/dist/types/theme/style-keys.d.ts.map +0 -1
  500. package/dist/types/theme/style-types.d.ts.map +0 -1
  501. package/dist/utils/cn.d.ts.map +0 -1
  502. package/dist/utils/merge-styles.d.ts.map +0 -1
  503. package/dist/utils/test-helpers.d.ts.map +0 -1
  504. package/dist/utils/theme-utils.d.ts.map +0 -1
  505. package/dist/version.d.ts +0 -2
  506. package/dist/version.d.ts.map +0 -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"),index_cjs_namespaceObject=require("../../iab-consent-banner/index.cjs"),external_iab_consent_dialog_index_cjs_namespaceObject=require("../../iab-consent-dialog/index.cjs"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_e2e_setup_cjs_namespaceObject=require("./e2e-setup.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB GVL E2E Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{(0,external_e2e_setup_cjs_namespaceObject.clearConsentState)(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.describe)("GVL Loading",()=>{(0,external_vitest_namespaceObject.test)("should fetch GVL successfully",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.purposes).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.vendors).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should display vendor count from GVL",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=document.querySelector('[data-testid="iab-consent-banner-header"]')?.textContent||"";(0,external_vitest_namespaceObject.expect)(e).toMatch(/\d+/)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Purposes",()=>{(0,external_vitest_namespaceObject.test)("should have all 11 purposes",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=Object.keys((await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2)).purposes).map(Number);(0,external_vitest_namespaceObject.expect)(e).toContain(1),(0,external_vitest_namespaceObject.expect)(e).toContain(2),(0,external_vitest_namespaceObject.expect)(e).toContain(3),(0,external_vitest_namespaceObject.expect)(e).toContain(4),(0,external_vitest_namespaceObject.expect)(e).toContain(5),(0,external_vitest_namespaceObject.expect)(e).toContain(6),(0,external_vitest_namespaceObject.expect)(e).toContain(7),(0,external_vitest_namespaceObject.expect)(e).toContain(8),(0,external_vitest_namespaceObject.expect)(e).toContain(9),(0,external_vitest_namespaceObject.expect)(e).toContain(10),(0,external_vitest_namespaceObject.expect)(e).toContain(11),(0,external_vitest_namespaceObject.expect)(e.length).toBe(11)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Special Purposes",()=>{(0,external_vitest_namespaceObject.test)("should have special purposes 1-2",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=Object.keys((await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2)).specialPurposes).map(Number);(0,external_vitest_namespaceObject.expect)(e).toContain(1),(0,external_vitest_namespaceObject.expect)(e).toContain(2)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Features",()=>{(0,external_vitest_namespaceObject.test)("should have features 1-3",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=Object.keys((await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2)).features).map(Number);(0,external_vitest_namespaceObject.expect)(e).toContain(1),(0,external_vitest_namespaceObject.expect)(e).toContain(2),(0,external_vitest_namespaceObject.expect)(e).toContain(3)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Special Features",()=>{(0,external_vitest_namespaceObject.test)("should have special features 1-2",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=Object.keys((await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2)).specialFeatures).map(Number);(0,external_vitest_namespaceObject.expect)(e).toContain(1),(0,external_vitest_namespaceObject.expect)(e).toContain(2)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Stacks",()=>{(0,external_vitest_namespaceObject.test)("should have stacks for UI grouping",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(e.stacks).toBeDefined(),(0,external_vitest_namespaceObject.expect)(Object.keys(e.stacks).length).toBeGreaterThan(0)})}),(0,external_vitest_namespaceObject.describe)("GVL Content - Vendors",()=>{(0,external_vitest_namespaceObject.test)("should have vendors with required fields",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(Object.keys(e.vendors).length).toBeGreaterThan(0);let t=Object.values(e.vendors)[0];(0,external_vitest_namespaceObject.expect)(t).toHaveProperty("id"),(0,external_vitest_namespaceObject.expect)(t).toHaveProperty("name"),(0,external_vitest_namespaceObject.expect)(t).toHaveProperty("purposes")})}),(0,external_vitest_namespaceObject.describe)("GVL Version",()=>{(0,external_vitest_namespaceObject.test)("should have vendorListVersion",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(e.vendorListVersion).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof e.vendorListVersion).toBe("number")}),(0,external_vitest_namespaceObject.test)("should have tcfPolicyVersion=5",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(e.tcfPolicyVersion).toBe(5)})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as t,jsxs as e}from"react/jsx-runtime";import{beforeEach as a,describe as n,expect as o,test as i,vi as s}from"vitest";import{render as r}from"vitest-browser-react";import{IABConsentBanner as d}from"../../iab-consent-banner/index.js";import{IABConsentDialog as c}from"../../iab-consent-dialog/index.js";import{ConsentManagerProvider as l,clearConsentRuntimeCache as p}from"../../../providers/consent-manager-provider.js";import{clearConsentState as u,defaultIABOptions as b,tcfApiPromise as h,waitForCMP as w,waitForElement as m}from"./e2e-setup.js";n("IAB GVL E2E Tests",()=>{a(()=>{u(),s.clearAllMocks(),p()}),n("GVL Loading",()=>{i("should fetch GVL successfully",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=await h("getVendorList",2);o(a).toBeDefined(),o(a.purposes).toBeDefined(),o(a.vendors).toBeDefined()}),i("should display vendor count from GVL",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w(),o(document.querySelector('[data-testid="iab-consent-banner-header"]')?.textContent||"").toMatch(/\d+/)})}),n("GVL Content - Purposes",()=>{i("should have all 11 purposes",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=Object.keys((await h("getVendorList",2)).purposes).map(Number);o(a).toContain(1),o(a).toContain(2),o(a).toContain(3),o(a).toContain(4),o(a).toContain(5),o(a).toContain(6),o(a).toContain(7),o(a).toContain(8),o(a).toContain(9),o(a).toContain(10),o(a).toContain(11),o(a.length).toBe(11)})}),n("GVL Content - Special Purposes",()=>{i("should have special purposes 1-2",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=Object.keys((await h("getVendorList",2)).specialPurposes).map(Number);o(a).toContain(1),o(a).toContain(2)})}),n("GVL Content - Features",()=>{i("should have features 1-3",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=Object.keys((await h("getVendorList",2)).features).map(Number);o(a).toContain(1),o(a).toContain(2),o(a).toContain(3)})}),n("GVL Content - Special Features",()=>{i("should have special features 1-2",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=Object.keys((await h("getVendorList",2)).specialFeatures).map(Number);o(a).toContain(1),o(a).toContain(2)})}),n("GVL Content - Stacks",()=>{i("should have stacks for UI grouping",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=await h("getVendorList",2);o(a.stacks).toBeDefined(),o(Object.keys(a.stacks).length).toBeGreaterThan(0)})}),n("GVL Content - Vendors",()=>{i("should have vendors with required fields",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=await h("getVendorList",2);o(Object.keys(a.vendors).length).toBeGreaterThan(0);let n=Object.values(a.vendors)[0];o(n).toHaveProperty("id"),o(n).toHaveProperty("name"),o(n).toHaveProperty("purposes")})}),n("GVL Version",()=>{i("should have vendorListVersion",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w();let a=await h("getVendorList",2);o(a.vendorListVersion).toBeDefined(),o(typeof a.vendorListVersion).toBe("number")}),i("should have tcfPolicyVersion=5",async()=>{r(e(l,{options:b,children:[t(d,{}),t(c,{})]})),await m('[data-testid="iab-consent-banner-card"]'),await w(),o((await h("getVendorList",2)).tcfPolicyVersion).toBe(5)})})});
@@ -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"),context_namespaceObject=require("@vitest/browser/context"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),index_cjs_namespaceObject=require("../../iab-consent-dialog/index.cjs"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_e2e_setup_cjs_namespaceObject=require("./e2e-setup.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB Preference Center E2E Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{(0,external_e2e_setup_cjs_namespaceObject.clearConsentState)(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.describe)("Preference Center Layout",()=>{(0,external_vitest_namespaceObject.test)("should render with purposes tab by default",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button[data-state]');(0,external_vitest_namespaceObject.expect)(e.length).toBeGreaterThan(0)}),(0,external_vitest_namespaceObject.test)("should switch between purposes and vendors tabs",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));e&&(await context_namespaceObject.userEvent.click(e),(0,external_vitest_namespaceObject.expect)(e.getAttribute("data-state")).toBe("active"))}),(0,external_vitest_namespaceObject.test)("should display loading state while GVL loads",async()=>{let e=globalThis.fetch;globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>new Promise(e=>setTimeout(()=>e(new Response(JSON.stringify({}),{status:200,headers:{"Content-Type":"application/json"}})),1e3))),(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]'),globalThis.fetch=e})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Consent",()=>{(0,external_vitest_namespaceObject.test)("should display purpose toggles",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()}),(0,external_vitest_namespaceObject.test)("all purpose consents should default to OFF (no pre-checked)",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Legitimate Interest",()=>{(0,external_vitest_namespaceObject.test)("should display LI toggles for purposes 2-11",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]'),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');if(!e?.textContent?.length)throw Error("Content not loaded")},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Special Features",()=>{(0,external_vitest_namespaceObject.test)("should display special features with opt-in toggles",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]'),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');if(!e?.textContent?.length)throw Error("Content not loaded")},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Vendors Tab",()=>{(0,external_vitest_namespaceObject.test)("should display vendor list",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Save & Cancel Actions",()=>{(0,external_vitest_namespaceObject.test)("should save preferences when Save button clicked",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("save")||e.textContent?.toLowerCase().includes("confirm"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should accept all when Accept All clicked",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("accept all"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should reject all when Reject All clicked",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-root"]');let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("reject all"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Accessibility",()=>{(0,external_vitest_namespaceObject.test)("should have proper ARIA attributes",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentDialog,{open:!0})}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-dialog-card"]');(0,external_vitest_namespaceObject.expect)(e.getAttribute("role")).toBe("dialog"),(0,external_vitest_namespaceObject.expect)(e.getAttribute("aria-label")).toBeTruthy()})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as t}from"react/jsx-runtime";import{userEvent as e}from"@vitest/browser/context";import{beforeEach as o,describe as a,expect as n,test as i,vi as s}from"vitest";import{render as r}from"vitest-browser-react";import{IABConsentDialog as d}from"../../iab-consent-dialog/index.js";import{ConsentManagerProvider as l,clearConsentRuntimeCache as c}from"../../../providers/consent-manager-provider.js";import{clearConsentState as u,defaultIABOptions as p,waitForElement as h}from"./e2e-setup.js";a("IAB Preference Center E2E Tests",()=>{o(()=>{u(),s.clearAllMocks(),c()}),a("Preference Center Layout",()=>{i("should render with purposes tab by default",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button[data-state]').length).toBeGreaterThan(0)}),i("should switch between purposes and vendors tabs",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]');let o=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(t=>t.textContent?.toLowerCase().includes("vendor"));o&&(await e.click(o),n(o.getAttribute("data-state")).toBe("active"))}),i("should display loading state while GVL loads",async()=>{let e=globalThis.fetch;globalThis.fetch=s.fn(()=>new Promise(t=>setTimeout(()=>t(new Response(JSON.stringify({}),{status:200,headers:{"Content-Type":"application/json"}})),1e3))),r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),globalThis.fetch=e})}),a("Purposes Tab - Consent",()=>{i("should display purpose toggles",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()}),i("all purpose consents should default to OFF (no pre-checked)",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()})}),a("Purposes Tab - Legitimate Interest",()=>{i("should display LI toggles for purposes 2-11",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),await s.waitFor(()=>{let t=document.querySelector('[data-testid="iab-consent-dialog-root"]');if(!t?.textContent?.length)throw Error("Content not loaded")},{timeout:3e3})})}),a("Special Features",()=>{i("should display special features with opt-in toggles",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),await s.waitFor(()=>{let t=document.querySelector('[data-testid="iab-consent-dialog-root"]');if(!t?.textContent?.length)throw Error("Content not loaded")},{timeout:3e3})})}),a("Vendors Tab",()=>{i("should display vendor list",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(t=>t.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})}),a("Save & Cancel Actions",()=>{i("should save preferences when Save button clicked",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(t=>t.textContent?.toLowerCase().includes("save")||t.textContent?.toLowerCase().includes("confirm"))).toBeDefined()}),i("should accept all when Accept All clicked",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(t=>t.textContent?.toLowerCase().includes("accept all"))).toBeDefined()}),i("should reject all when Reject All clicked",async()=>{r(t(l,{options:p,children:t(d,{open:!0})})),await h('[data-testid="iab-consent-dialog-root"]'),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(t=>t.textContent?.toLowerCase().includes("reject all"))).toBeDefined()})}),a("Accessibility",()=>{i("should have proper ARIA attributes",async()=>{r(t(l,{options:p,children:t(d,{open:!0})}));let e=await h('[data-testid="iab-consent-dialog-card"]');n(e.getAttribute("role")).toBe("dialog"),n(e.getAttribute("aria-label")).toBeTruthy()})})});
@@ -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"),context_namespaceObject=require("@vitest/browser/context"),external_vitest_namespaceObject=require("vitest"),external_vitest_browser_react_namespaceObject=require("vitest-browser-react"),index_cjs_namespaceObject=require("../../iab-consent-banner/index.cjs"),external_iab_consent_dialog_index_cjs_namespaceObject=require("../../iab-consent-dialog/index.cjs"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_e2e_setup_cjs_namespaceObject=require("./e2e-setup.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB Storage E2E Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{(0,external_e2e_setup_cjs_namespaceObject.clearConsentState)(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.describe)("localStorage Storage",()=>{(0,external_vitest_namespaceObject.test)("should store consent to localStorage",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]'),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=window.localStorage.getItem("c15t");return(0,external_vitest_namespaceObject.expect)(e).not.toBeNull(),e},{timeout:1e3});let t=JSON.parse(window.localStorage.getItem("c15t")||"{}");(0,external_vitest_namespaceObject.expect)(t.consents).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should store TC string in localStorage",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]');let t=(0,external_e2e_setup_cjs_namespaceObject.getStoredTCString)();(0,external_vitest_namespaceObject.expect)(t).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof t).toBe("string")}),(0,external_vitest_namespaceObject.test)("TC string should be valid base64url format",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]');let t=(0,external_e2e_setup_cjs_namespaceObject.getStoredTCString)();(0,external_vitest_namespaceObject.expect)(t).toMatch(/^[A-Za-z0-9_-]+(\.[A-Za-z0-9_-]+)*$/)})}),(0,external_vitest_namespaceObject.describe)("Storage Update on Consent Change",()=>{(0,external_vitest_namespaceObject.test)("should update storage when Accept All clicked",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),(0,external_vitest_namespaceObject.expect)((0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)()).toBeNull(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]'),(0,external_vitest_namespaceObject.expect)((0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)()).not.toBeNull()}),(0,external_vitest_namespaceObject.test)("should update storage when Reject All clicked",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-reject-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),(0,external_vitest_namespaceObject.expect)((0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)()).toBeNull(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]');let t=(0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)();(0,external_vitest_namespaceObject.expect)(t).not.toBeNull(),(0,external_vitest_namespaceObject.expect)(t?.consents?.necessary).toBe(!0)})}),(0,external_vitest_namespaceObject.describe)("Storage Content",()=>{(0,external_vitest_namespaceObject.test)("should store consent info with timestamp",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let t=Date.now();await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]');let a=Date.now(),n=(0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)();(0,external_vitest_namespaceObject.expect)(n?.consentInfo?.time).toBeDefined(),(0,external_vitest_namespaceObject.expect)(n?.consentInfo?.time).toBeGreaterThanOrEqual(t-1e3),(0,external_vitest_namespaceObject.expect)(n?.consentInfo?.time).toBeLessThanOrEqual(a+1e3)}),(0,external_vitest_namespaceObject.test)("should store consent info with subjectId",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]');let t=(0,external_e2e_setup_cjs_namespaceObject.getStoredConsent)();(0,external_vitest_namespaceObject.expect)(t?.consentInfo?.subjectId).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof t?.consentInfo?.subjectId).toBe("string")})}),(0,external_vitest_namespaceObject.describe)("c15t Storage Key",()=>{(0,external_vitest_namespaceObject.test)('should use "c15t" key in localStorage',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]'),(0,external_vitest_namespaceObject.expect)(window.localStorage.getItem("c15t")).not.toBeNull()}),(0,external_vitest_namespaceObject.test)('should use "euconsent-v2" key for TC string',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]}));let e=await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-accept-button"]');await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),await context_namespaceObject.userEvent.click(e),await (0,external_e2e_setup_cjs_namespaceObject.waitForElementRemoved)('[data-testid="iab-consent-banner-card"]'),(0,external_vitest_namespaceObject.expect)(window.localStorage.getItem("euconsent-v2")).not.toBeNull()})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as t,jsxs as a}from"react/jsx-runtime";import{userEvent as e}from"@vitest/browser/context";import{beforeEach as n,describe as o,expect as i,test as c,vi as s}from"vitest";import{render as r}from"vitest-browser-react";import{IABConsentBanner as l}from"../../iab-consent-banner/index.js";import{IABConsentDialog as d}from"../../iab-consent-dialog/index.js";import{ConsentManagerProvider as b,clearConsentRuntimeCache as w}from"../../../providers/consent-manager-provider.js";import{clearConsentState as u,defaultIABOptions as p,getStoredConsent as m,getStoredTCString as g,waitForCMP as h,waitForElement as f,waitForElementRemoved as B}from"./e2e-setup.js";o("IAB Storage E2E Tests",()=>{n(()=>{u(),s.clearAllMocks(),w()}),o("localStorage Storage",()=>{c("should store consent to localStorage",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]'),await s.waitFor(()=>{let t=window.localStorage.getItem("c15t");return i(t).not.toBeNull(),t},{timeout:1e3}),i(JSON.parse(window.localStorage.getItem("c15t")||"{}").consents).toBeDefined()}),c("should store TC string in localStorage",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]');let o=g();i(o).toBeDefined(),i(typeof o).toBe("string")}),c("TC string should be valid base64url format",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]'),i(g()).toMatch(/^[A-Za-z0-9_-]+(\.[A-Za-z0-9_-]+)*$/)})}),o("Storage Update on Consent Change",()=>{c("should update storage when Accept All clicked",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),i(m()).toBeNull(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]'),i(m()).not.toBeNull()}),c("should update storage when Reject All clicked",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-reject-button"]');await h(),i(m()).toBeNull(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]');let o=m();i(o).not.toBeNull(),i(o?.consents?.necessary).toBe(!0)})}),o("Storage Content",()=>{c("should store consent info with timestamp",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h();let o=Date.now();await e.click(n),await B('[data-testid="iab-consent-banner-card"]');let c=Date.now(),s=m();i(s?.consentInfo?.time).toBeDefined(),i(s?.consentInfo?.time).toBeGreaterThanOrEqual(o-1e3),i(s?.consentInfo?.time).toBeLessThanOrEqual(c+1e3)}),c("should store consent info with subjectId",async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]');let o=m();i(o?.consentInfo?.subjectId).toBeDefined(),i(typeof o?.consentInfo?.subjectId).toBe("string")})}),o("c15t Storage Key",()=>{c('should use "c15t" key in localStorage',async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]'),i(window.localStorage.getItem("c15t")).not.toBeNull()}),c('should use "euconsent-v2" key for TC string',async()=>{r(a(b,{options:p,children:[t(l,{}),t(d,{})]}));let n=await f('[data-testid="iab-consent-banner-accept-button"]');await h(),await e.click(n),await B('[data-testid="iab-consent-banner-card"]'),i(window.localStorage.getItem("euconsent-v2")).not.toBeNull()})})});
@@ -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"),index_cjs_namespaceObject=require("../../iab-consent-banner/index.cjs"),external_iab_consent_dialog_index_cjs_namespaceObject=require("../../iab-consent-dialog/index.cjs"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_e2e_setup_cjs_namespaceObject=require("./e2e-setup.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB Stub E2E Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{(0,external_e2e_setup_cjs_namespaceObject.clearConsentState)(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.describe)("__tcfapi Availability",()=>{(0,external_vitest_namespaceObject.test)("__tcfapi should be available after CMP loads",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)(),(0,external_vitest_namespaceObject.expect)(window.__tcfapi).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof window.__tcfapi).toBe("function")}),(0,external_vitest_namespaceObject.test)("__tcfapi should accept standard parameters",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=window.__tcfapi;(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),await new Promise(t=>{e?.("ping",2,()=>{t()})})}),(0,external_vitest_namespaceObject.test)("__tcfapi should accept optional parameter",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=window.__tcfapi,t=await new Promise(t=>{e?.("removeEventListener",2,e=>{t(e)},12345)});(0,external_vitest_namespaceObject.expect)(t).toBe(!1)})}),(0,external_vitest_namespaceObject.describe)("Stub Ping Behavior",()=>{(0,external_vitest_namespaceObject.test)("ping should return cmpLoaded=true after CMP ready",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("ping",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e.cmpLoaded).toBe(!0)}),(0,external_vitest_namespaceObject.test)('ping should return cmpStatus="loaded" after CMP ready',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("ping",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e.cmpStatus).toBe("loaded")})}),(0,external_vitest_namespaceObject.describe)("Queue Processing",()=>{(0,external_vitest_namespaceObject.test)("calls should be processed after CMP loads",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("getTCData",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("tcString")})}),(0,external_vitest_namespaceObject.describe)("Command Handling",()=>{(0,external_vitest_namespaceObject.test)("should handle ping command",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("ping",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e.apiVersion).toBe("2.3")}),(0,external_vitest_namespaceObject.test)("should handle getTCData command",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("getTCData",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof e.gdprApplies).toBe("boolean")}),(0,external_vitest_namespaceObject.test)("should handle addEventListener command",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("addEventListener",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e.listenerId).toBeDefined(),(0,external_vitest_namespaceObject.expect)(typeof e.listenerId).toBe("number")}),(0,external_vitest_namespaceObject.test)("should handle getVendorList command",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("getVendorList",2,t=>{e(t)})});(0,external_vitest_namespaceObject.expect)(e.purposes).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should return false for unknown commands",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await new Promise(e=>{window.__tcfapi?.("unknownCommand",2,(t,a)=>{e({data:t,success:a})})});(0,external_vitest_namespaceObject.expect)(e.success).toBe(!1)})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{jsx as a,jsxs as t}from"react/jsx-runtime";import{beforeEach as e,describe as n,expect as i,test as o,vi as d}from"vitest";import{render as s}from"vitest-browser-react";import{IABConsentBanner as r}from"../../iab-consent-banner/index.js";import{IABConsentDialog as c}from"../../iab-consent-dialog/index.js";import{ConsentManagerProvider as w,clearConsentRuntimeCache as p}from"../../../providers/consent-manager-provider.js";import{clearConsentState as l,defaultIABOptions as m,waitForCMP as f,waitForElement as b}from"./e2e-setup.js";n("IAB Stub E2E Tests",()=>{e(()=>{l(),d.clearAllMocks(),p()}),n("__tcfapi Availability",()=>{o("__tcfapi should be available after CMP loads",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i(window.__tcfapi).toBeDefined(),i(typeof window.__tcfapi).toBe("function")}),o("__tcfapi should accept standard parameters",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f();let e=window.__tcfapi;i(e).toBeDefined(),await new Promise(a=>{e?.("ping",2,()=>{a()})})}),o("__tcfapi should accept optional parameter",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f();let e=window.__tcfapi;i(await new Promise(a=>{e?.("removeEventListener",2,t=>{a(t)},12345)})).toBe(!1)})}),n("Stub Ping Behavior",()=>{o("ping should return cmpLoaded=true after CMP ready",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i((await new Promise(a=>{window.__tcfapi?.("ping",2,t=>{a(t)})})).cmpLoaded).toBe(!0)}),o('ping should return cmpStatus="loaded" after CMP ready',async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i((await new Promise(a=>{window.__tcfapi?.("ping",2,t=>{a(t)})})).cmpStatus).toBe("loaded")})}),n("Queue Processing",()=>{o("calls should be processed after CMP loads",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f();let e=await new Promise(a=>{window.__tcfapi?.("getTCData",2,t=>{a(t)})});i(e).toBeDefined(),i(e).toHaveProperty("tcString")})}),n("Command Handling",()=>{o("should handle ping command",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i((await new Promise(a=>{window.__tcfapi?.("ping",2,t=>{a(t)})})).apiVersion).toBe("2.3")}),o("should handle getTCData command",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f();let e=await new Promise(a=>{window.__tcfapi?.("getTCData",2,t=>{a(t)})});i(e).toBeDefined(),i(typeof e.gdprApplies).toBe("boolean")}),o("should handle addEventListener command",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f();let e=await new Promise(a=>{window.__tcfapi?.("addEventListener",2,t=>{a(t)})});i(e.listenerId).toBeDefined(),i(typeof e.listenerId).toBe("number")}),o("should handle getVendorList command",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i((await new Promise(a=>{window.__tcfapi?.("getVendorList",2,t=>{a(t)})})).purposes).toBeDefined()}),o("should return false for unknown commands",async()=>{s(t(w,{options:m,children:[a(r,{}),a(c,{})]})),await b('[data-testid="iab-consent-banner-card"]'),await f(),i((await new Promise(a=>{window.__tcfapi?.("unknownCommand",2,(t,e)=>{a({data:t,success:e})})})).success).toBe(!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"),index_cjs_namespaceObject=require("../../iab-consent-banner/index.cjs"),external_iab_consent_dialog_index_cjs_namespaceObject=require("../../iab-consent-dialog/index.cjs"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_e2e_setup_cjs_namespaceObject=require("./e2e-setup.cjs");for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("__tcfapi E2E Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{(0,external_e2e_setup_cjs_namespaceObject.clearConsentState)(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)()}),(0,external_vitest_namespaceObject.describe)("ping Command",()=>{(0,external_vitest_namespaceObject.test)("should return cmpLoaded=true after CMP ready",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(e.cmpLoaded).toBe(!0)}),(0,external_vitest_namespaceObject.test)("should return correct gdprApplies value",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(typeof e.gdprApplies).toBe("boolean")}),(0,external_vitest_namespaceObject.test)("should return cmpId matching configured ID",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(e.cmpId).toBe(160)}),(0,external_vitest_namespaceObject.test)('should return apiVersion="2.3"',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(e.apiVersion).toBe("2.3")}),(0,external_vitest_namespaceObject.test)("should return tcfPolicyVersion=5",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(e.tcfPolicyVersion).toBe(5)}),(0,external_vitest_namespaceObject.test)('should return cmpStatus="loaded"',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPPingData)();(0,external_vitest_namespaceObject.expect)(e.cmpStatus).toBe("loaded")})}),(0,external_vitest_namespaceObject.describe)("addEventListener Command",()=>{(0,external_vitest_namespaceObject.test)("should invoke callback immediately on registration",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.addCMPEventListener)();(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.eventStatus).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should return unique listenerId",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.addCMPEventListener)(),t=await (0,external_e2e_setup_cjs_namespaceObject.addCMPEventListener)();(0,external_vitest_namespaceObject.expect)(e.listenerId).toBeDefined(),(0,external_vitest_namespaceObject.expect)(t.listenerId).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.listenerId).not.toBe(t.listenerId)}),(0,external_vitest_namespaceObject.test)('should fire eventStatus="tcloaded" initially',async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.addCMPEventListener)();(0,external_vitest_namespaceObject.expect)(e.eventStatus).toBe("tcloaded")})}),(0,external_vitest_namespaceObject.describe)("removeEventListener Command",()=>{(0,external_vitest_namespaceObject.test)("should remove listener by listenerId",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.addCMPEventListener)(),t=await (0,external_e2e_setup_cjs_namespaceObject.removeCMPEventListener)(e.listenerId);(0,external_vitest_namespaceObject.expect)(t).toBe(!0)}),(0,external_vitest_namespaceObject.test)("should return false for invalid listenerId",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.removeCMPEventListener)(999999);(0,external_vitest_namespaceObject.expect)(e).toBe(!1)})}),(0,external_vitest_namespaceObject.describe)("getTCData Command",()=>{(0,external_vitest_namespaceObject.test)("should return complete TCData object",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("tcString"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("gdprApplies"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("cmpStatus"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("isServiceSpecific"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("publisherCC"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("purpose"),(0,external_vitest_namespaceObject.expect)(e).toHaveProperty("vendor")}),(0,external_vitest_namespaceObject.test)("should return isServiceSpecific=true",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e.isServiceSpecific).toBe(!0)}),(0,external_vitest_namespaceObject.test)("should have purpose.consents and purpose.legitimateInterests",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e.purpose).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.purpose.consents).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.purpose.legitimateInterests).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should have vendor.consents and vendor.legitimateInterests",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e.vendor).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.vendor.consents).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.vendor.legitimateInterests).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should have specialFeatureOptins",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e.specialFeatureOptins).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should have publisher object",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)();(0,external_vitest_namespaceObject.expect)(e.publisher).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.publisher.consents).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.publisher.legitimateInterests).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("getVendorList Command",()=>{(0,external_vitest_namespaceObject.test)("should return complete GVL",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2);(0,external_vitest_namespaceObject.expect)(e).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.purposes).toBeDefined(),(0,external_vitest_namespaceObject.expect)(e.vendors).toBeDefined()}),(0,external_vitest_namespaceObject.test)("GVL should contain all 11 purposes",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=Object.keys((await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getVendorList",2)).purposes).map(Number);(0,external_vitest_namespaceObject.expect)(e).toContain(1),(0,external_vitest_namespaceObject.expect)(e).toContain(11),(0,external_vitest_namespaceObject.expect)(e.length).toBe(11)})}),(0,external_vitest_namespaceObject.describe)("getInAppTCData Command (Mobile Alias)",()=>{(0,external_vitest_namespaceObject.test)("should return same data as getTCData",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsxs)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:external_e2e_setup_cjs_namespaceObject.defaultIABOptions,children:[(0,jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.IABConsentBanner,{}),(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_index_cjs_namespaceObject.IABConsentDialog,{})]})),await (0,external_e2e_setup_cjs_namespaceObject.waitForElement)('[data-testid="iab-consent-banner-card"]'),await (0,external_e2e_setup_cjs_namespaceObject.waitForCMP)();let e=await (0,external_e2e_setup_cjs_namespaceObject.getCMPTCData)(),t=await (0,external_e2e_setup_cjs_namespaceObject.tcfApiPromise)("getInAppTCData",2);(0,external_vitest_namespaceObject.expect)(t.gdprApplies).toBe(e.gdprApplies),(0,external_vitest_namespaceObject.expect)(t.cmpStatus).toBe(e.cmpStatus)})})}),__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{beforeEach as a,describe as i,expect as n,test as o,vi as s}from"vitest";import{render as r}from"vitest-browser-react";import{IABConsentBanner as d}from"../../iab-consent-banner/index.js";import{IABConsentDialog as c}from"../../iab-consent-dialog/index.js";import{ConsentManagerProvider as p,clearConsentRuntimeCache as l}from"../../../providers/consent-manager-provider.js";import{addCMPEventListener as u,clearConsentState as w,defaultIABOptions as b,getCMPPingData as m,getCMPTCData as h,removeCMPEventListener as f,tcfApiPromise as v,waitForCMP as y,waitForElement as B}from"./e2e-setup.js";i("__tcfapi E2E Tests",()=>{a(()=>{w(),s.clearAllMocks(),l()}),i("ping Command",()=>{o("should return cmpLoaded=true after CMP ready",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await m()).cmpLoaded).toBe(!0)}),o("should return correct gdprApplies value",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n(typeof(await m()).gdprApplies).toBe("boolean")}),o("should return cmpId matching configured ID",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await m()).cmpId).toBe(160)}),o('should return apiVersion="2.3"',async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await m()).apiVersion).toBe("2.3")}),o("should return tcfPolicyVersion=5",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await m()).tcfPolicyVersion).toBe(5)}),o('should return cmpStatus="loaded"',async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await m()).cmpStatus).toBe("loaded")})}),i("addEventListener Command",()=>{o("should invoke callback immediately on registration",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await u();n(a).toBeDefined(),n(a.eventStatus).toBeDefined()}),o("should return unique listenerId",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await u(),i=await u();n(a.listenerId).toBeDefined(),n(i.listenerId).toBeDefined(),n(a.listenerId).not.toBe(i.listenerId)}),o('should fire eventStatus="tcloaded" initially',async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await u()).eventStatus).toBe("tcloaded")})}),i("removeEventListener Command",()=>{o("should remove listener by listenerId",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await u();n(await f(a.listenerId)).toBe(!0)}),o("should return false for invalid listenerId",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n(await f(999999)).toBe(!1)})}),i("getTCData Command",()=>{o("should return complete TCData object",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await h();n(a).toBeDefined(),n(a).toHaveProperty("tcString"),n(a).toHaveProperty("gdprApplies"),n(a).toHaveProperty("cmpStatus"),n(a).toHaveProperty("isServiceSpecific"),n(a).toHaveProperty("publisherCC"),n(a).toHaveProperty("purpose"),n(a).toHaveProperty("vendor")}),o("should return isServiceSpecific=true",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await h()).isServiceSpecific).toBe(!0)}),o("should have purpose.consents and purpose.legitimateInterests",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await h();n(a.purpose).toBeDefined(),n(a.purpose.consents).toBeDefined(),n(a.purpose.legitimateInterests).toBeDefined()}),o("should have vendor.consents and vendor.legitimateInterests",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await h();n(a.vendor).toBeDefined(),n(a.vendor.consents).toBeDefined(),n(a.vendor.legitimateInterests).toBeDefined()}),o("should have specialFeatureOptins",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y(),n((await h()).specialFeatureOptins).toBeDefined()}),o("should have publisher object",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await h();n(a.publisher).toBeDefined(),n(a.publisher.consents).toBeDefined(),n(a.publisher.legitimateInterests).toBeDefined()})}),i("getVendorList Command",()=>{o("should return complete GVL",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await v("getVendorList",2);n(a).toBeDefined(),n(a.purposes).toBeDefined(),n(a.vendors).toBeDefined()}),o("GVL should contain all 11 purposes",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=Object.keys((await v("getVendorList",2)).purposes).map(Number);n(a).toContain(1),n(a).toContain(11),n(a.length).toBe(11)})}),i("getInAppTCData Command (Mobile Alias)",()=>{o("should return same data as getTCData",async()=>{r(t(p,{options:b,children:[e(d,{}),e(c,{})]})),await B('[data-testid="iab-consent-banner-card"]'),await y();let a=await h(),i=await v("getInAppTCData",2);n(i.gdprApplies).toBe(a.gdprApplies),n(i.cmpStatus).toBe(a.cmpStatus)})})});
@@ -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,r)=>{for(var n in r)__webpack_require__.o(r,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{nonIABRegionHandler:()=>nonIABRegionHandler,errorHandler:()=>errorHandler,handlers:()=>handlers,invalidGVLHandler:()=>invalidGVLHandler});const external_msw_namespaceObject=require("msw"),mock_consent_state_cjs_namespaceObject=require("./fixtures/mock-consent-state.cjs"),handlers=[external_msw_namespaceObject.http.get("https://gvl.consent.io*",({request:e})=>{console.log("[MSW] GVL request intercepted:",e.url);let r=new URL(e.url).searchParams.get("vendorIds");if(r){let e=r.split(",").map(Number),n={};for(let r of e)mock_consent_state_cjs_namespaceObject.mockGVL.vendors[r]&&(n[r]=mock_consent_state_cjs_namespaceObject.mockGVL.vendors[r]);return external_msw_namespaceObject.HttpResponse.json({...mock_consent_state_cjs_namespaceObject.mockGVL,vendors:n})}return external_msw_namespaceObject.HttpResponse.json(mock_consent_state_cjs_namespaceObject.mockGVL)})],nonIABRegionHandler=external_msw_namespaceObject.http.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning 204 (non-IAB region)"),new external_msw_namespaceObject.HttpResponse(null,{status:204}))),errorHandler=external_msw_namespaceObject.http.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning error"),external_msw_namespaceObject.HttpResponse.error())),invalidGVLHandler=external_msw_namespaceObject.http.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning invalid GVL"),external_msw_namespaceObject.HttpResponse.json({invalid:"data"})));for(var __rspack_i in exports.errorHandler=__webpack_exports__.errorHandler,exports.handlers=__webpack_exports__.handlers,exports.invalidGVLHandler=__webpack_exports__.invalidGVLHandler,exports.nonIABRegionHandler=__webpack_exports__.nonIABRegionHandler,__webpack_exports__)-1===["errorHandler","handlers","invalidGVLHandler","nonIABRegionHandler"].indexOf(__rspack_i)&&(exports[__rspack_i]=__webpack_exports__[__rspack_i]);Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- import{HttpResponse as e,http as n}from"msw";import{mockGVL as o}from"./fixtures/mock-consent-state.js";let t=[n.get("https://gvl.consent.io*",({request:n})=>{console.log("[MSW] GVL request intercepted:",n.url);let t=new URL(n.url).searchParams.get("vendorIds");if(t){let n=t.split(",").map(Number),r={};for(let e of n)o.vendors[e]&&(r[e]=o.vendors[e]);return e.json({...o,vendors:r})}return e.json(o)})],r=n.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning 204 (non-IAB region)"),new e(null,{status:204}))),s=n.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning error"),e.error())),l=n.get("https://gvl.consent.io*",()=>(console.log("[MSW] Returning invalid GVL"),e.json({invalid:"data"})));export{s as errorHandler,t as handlers,l as invalidGVLHandler,r as nonIABRegionHandler};
@@ -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"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_iab_consent_banner_cjs_namespaceObject=require("../iab-consent-banner.cjs"),localStorageMock=(()=>{let e={};return{getItem:t=>e[t]||null,setItem:(t,n)=>{e[t]=n},removeItem:t=>{delete e[t]},clear:()=>{e={}}}})();Object.defineProperty(window,"localStorage",{value:localStorageMock});const mockGVL={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information",description:"",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Security",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor",purposes:[1,2],legIntPurposes:[],specialPurposes:[],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:0,usesCookies:!1,cookieRefresh:!1,usesNonCookieAccess:!1,urls:[]}},stacks:{1:{id:1,name:"Test Stack",description:"",purposes:[2],specialFeatures:[]}}};globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>Promise.resolve(new Response(JSON.stringify(mockGVL),{status:200,headers:{"Content-Type":"application/json"}})));const defaultIABOptions={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB Consent Banner Unit Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{for(let e of(window.localStorage.clear(),document.cookie.split(";"))){let t=e.split("=")[0]?.trim();t&&(document.cookie=`${t}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`)}external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.describe)("Component Rendering",()=>{(0,external_vitest_namespaceObject.test)("should render banner when IAB is enabled",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should render accept button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-accept-button"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should render reject button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-reject-button"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should render customize button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-customize-button"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Accessibility",()=>{(0,external_vitest_namespaceObject.test)("should have dialog role",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e?.getAttribute("role")).toBe("dialog")},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should have aria-label",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e?.getAttribute("aria-label")).toBeTruthy()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should be focusable",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e?.tabIndex).toBe(0)},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Props",()=>{(0,external_vitest_namespaceObject.test)("should accept primaryButton prop",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{primaryButton:"accept"})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should accept trapFocus prop",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{trapFocus:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');(0,external_vitest_namespaceObject.expect)(e?.getAttribute("aria-modal")).toBe("true")},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Content",()=>{(0,external_vitest_namespaceObject.test)("should display header section",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-header"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should display footer section",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_banner_cjs_namespaceObject.IABConsentBanner,{})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-footer"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- let e;import{jsx as t}from"react/jsx-runtime";import{beforeEach as o,describe as n,expect as a,test as i,vi as r}from"vitest";import{render as s}from"vitest-browser-react";import{ConsentManagerProvider as c,clearConsentRuntimeCache as d}from"../../../providers/consent-manager-provider.js";import{IABConsentBanner as l}from"../iab-consent-banner.js";Object.defineProperty(window,"localStorage",{value:(e={},{getItem:t=>e[t]||null,setItem:(t,o)=>{e[t]=o},removeItem:t=>{delete e[t]},clear:()=>{e={}}})});let u={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information",description:"",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Security",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor",purposes:[1,2],legIntPurposes:[],specialPurposes:[],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:0,usesCookies:!1,cookieRefresh:!1,usesNonCookieAccess:!1,urls:[]}},stacks:{1:{id:1,name:"Test Stack",description:"",purposes:[2],specialFeatures:[]}}};globalThis.fetch=r.fn(()=>Promise.resolve(new Response(JSON.stringify(u),{status:200,headers:{"Content-Type":"application/json"}})));let p={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};n("IAB Consent Banner Unit Tests",()=>{o(()=>{for(let e of(window.localStorage.clear(),document.cookie.split(";"))){let t=e.split("=")[0]?.trim();t&&(document.cookie=`${t}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`)}r.clearAllMocks(),d(),delete window.__tcfapi}),n("Component Rendering",()=>{i("should render banner when IAB is enabled",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-card"]')).toBeInTheDocument()},{timeout:3e3})}),i("should render accept button",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-accept-button"]')).toBeInTheDocument()},{timeout:3e3})}),i("should render reject button",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-reject-button"]')).toBeInTheDocument()},{timeout:3e3})}),i("should render customize button",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-customize-button"]')).toBeInTheDocument()},{timeout:3e3})})}),n("Accessibility",()=>{i("should have dialog role",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');a(e?.getAttribute("role")).toBe("dialog")},{timeout:3e3})}),i("should have aria-label",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');a(e?.getAttribute("aria-label")).toBeTruthy()},{timeout:3e3})}),i("should be focusable",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');a(e?.tabIndex).toBe(0)},{timeout:3e3})})}),n("Props",()=>{i("should accept primaryButton prop",async()=>{s(t(c,{options:p,children:t(l,{primaryButton:"accept"})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-card"]')).toBeInTheDocument()},{timeout:3e3})}),i("should accept trapFocus prop",async()=>{s(t(c,{options:p,children:t(l,{trapFocus:!0})})),await r.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-banner-card"]');a(e?.getAttribute("aria-modal")).toBe("true")},{timeout:3e3})})}),n("Content",()=>{i("should display header section",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-header"]')).toBeInTheDocument()},{timeout:3e3})}),i("should display footer section",async()=>{s(t(c,{options:p,children:t(l,{})})),await r.waitFor(()=>{a(document.querySelector('[data-testid="iab-consent-banner-footer"]')).toBeInTheDocument()},{timeout:3e3})})})});
@@ -1 +0,0 @@
1
- {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/button-group.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAExE,UAAU,gCACT,SAAQ,cAAc,CAAC,cAAc,CAAC;IACtC,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,2BAA2B,6HAiB/B,CAAC;AAIH;;;;GAIG;AACH,QAAA,MAAM,4BAA4B,2HAahC,CAAC;AAIH,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/card.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,MAAM,OAAO,CAAC;AAKf,UAAU,yBAA0B,SAAQ,cAAc,CAAC,cAAc,CAAC;IACzE,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,oBAAoB,sHA0BxB,CAAC;AAIH,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/description.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAExE,UAAU,gCACT,SAAQ,cAAc,CAAC,oBAAoB,CAAC;IAC5C,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;GAIG;AACH,QAAA,MAAM,2BAA2B,mIAe/B,CAAC;AAIH,OAAO,EAAE,2BAA2B,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/footer.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGxE,UAAU,2BAA4B,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC3E,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,sBAAsB,wHAmB1B,CAAC;AAIH,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/header.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGxE,UAAU,2BAA4B,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC3E,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,sBAAsB,wHAmB1B,CAAC;AAIH,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/overlay.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAuB,MAAM,OAAO,CAAC;AAO7E,UAAU,YAAa,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC5D,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,uBAAuB,yGAiE5B,CAAC;AAIF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/root.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,EAAE,EAEP,KAAK,cAAc,EACnB,KAAK,SAAS,EAGd,MAAM,OAAO,CAAC;AAUf,UAAU,yBAA0B,SAAQ,cAAc,CAAC,cAAc,CAAC;IACzE,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,MAAM,EAAE,KAAK,EAAE,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAmCvD,CAAC;AA4HF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-banner/atoms/title.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAExE,UAAU,0BACT,SAAQ,cAAc,CAAC,kBAAkB,CAAC;IAC1C,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;GAIG;AACH,QAAA,MAAM,qBAAqB,2HAazB,CAAC;AAIH,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"iab-consent-banner.d.ts","sourceRoot":"","sources":["../../../src/components/iab-consent-banner/iab-consent-banner.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,EAAmC,MAAM,OAAO,CAAC;AASjE;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACrC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;IAElD;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,MAAM,EAAE,KAAK,EAAE,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAkStD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/iab-consent-banner/index.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EACN,2BAA2B,EAC3B,4BAA4B,EAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAEN,KAAK,qBAAqB,EAC1B,MAAM,sBAAsB,CAAC;AAE9B;;;GAGG;AACH,MAAM,WAAW,iCAChB,SAAQ,EAAE,CAAC,qBAAqB,CAAC;IACjC,IAAI,EAAE,OAAO,oBAAoB,CAAC;IAClC,IAAI,EAAE,OAAO,oBAAoB,CAAC;IAClC,MAAM,EAAE,OAAO,sBAAsB,CAAC;IACtC,KAAK,EAAE,OAAO,qBAAqB,CAAC;IACpC,WAAW,EAAE,OAAO,2BAA2B,CAAC;IAChD,MAAM,EAAE,OAAO,sBAAsB,CAAC;IACtC,WAAW,EAAE,OAAO,2BAA2B,CAAC;IAChD,YAAY,EAAE,OAAO,4BAA4B,CAAC;IAClD,OAAO,EAAE,OAAO,uBAAuB,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,QAAA,MAAM,gBAAgB,EAUhB,iCAAiC,CAAC;AAGxC,eAAe,gBAAgB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,CAAC;AAGxD,OAAO,EACN,2BAA2B,EAC3B,4BAA4B,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
@@ -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"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_iab_consent_dialog_cjs_namespaceObject=require("../iab-consent-dialog.cjs"),localStorageMock=(()=>{let e={};return{getItem:t=>e[t]||null,setItem:(t,a)=>{e[t]=a},removeItem:t=>{delete e[t]},clear:()=>{e={}}}})();Object.defineProperty(window,"localStorage",{value:localStorageMock});const mockGVL={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent and detect fraud",description:"",illustrations:[]},2:{id:2,name:"Deliver content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data from other sources",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"",illustrations:[]},2:{id:2,name:"Actively scan device characteristics",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Consent Only Vendor",purposes:[1,2,3],legIntPurposes:[],specialPurposes:[1],features:[1],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor1.com/privacy"}]},10:{id:10,name:"LI Vendor",purposes:[1],legIntPurposes:[2,7,9,10],specialPurposes:[1],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor10.com/privacy"}]},20:{id:20,name:"Another LI Vendor",purposes:[1,2],legIntPurposes:[7,8,9],specialPurposes:[1,2],features:[1,2],specialFeatures:[],flexiblePurposes:[2],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://vendor20.com/privacy"}]},755:{id:755,name:"Google Advertising Products",purposes:[1,2,3],legIntPurposes:[7,9,10],specialPurposes:[1,2],features:[1,2],specialFeatures:[1],flexiblePurposes:[2,7,9,10],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]}}};globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>Promise.resolve(new Response(JSON.stringify(mockGVL),{status:200,headers:{"Content-Type":"application/json"}})));const defaultIABOptions={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("Legitimate Interest UI - Purpose Level",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("LI purposes section should be separate from consent",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("LI toggle should default to allowed (not objected)",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("Purpose 1 should not have LI toggle (per IAB spec)",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("Purposes 2-11 can have LI toggles",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Legitimate Interest UI - Vendor Level",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("Vendor with LI purposes should show LI toggle",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("Vendor without LI purposes should not show LI toggle",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("Vendor-level LI objection should be independent per vendor",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Legitimate Interest UI - Objection Behavior",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("Toggling to object should set LI to false",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("Purpose-level LI objection should cascade to vendors using that purpose",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("LI objection should persist after save",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Legitimate Interest UI - Display Requirements",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("LI section should display purpose names from GVL",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("LI toggle should be clearly distinguishable from consent toggle",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("Vendor details should show which purposes use LI",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Legitimate Interest UI - Flexible Purposes",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("Flexible purposes can use either consent or LI",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("Vendor with flexible purposes should show both consent and LI options",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- let e;import{jsx as o}from"react/jsx-runtime";import{beforeEach as t,describe as i,expect as n,test as s,vi as a}from"vitest";import{render as r}from"vitest-browser-react";import{ConsentManagerProvider as c,clearConsentRuntimeCache as d}from"../../../providers/consent-manager-provider.js";import{IABConsentDialog as l}from"../iab-consent-dialog.js";Object.defineProperty(window,"localStorage",{value:(e={},{getItem:o=>e[o]||null,setItem:(o,t)=>{e[o]=t},removeItem:o=>{delete e[o]},clear:()=>{e={}}})});let u={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent and detect fraud",description:"",illustrations:[]},2:{id:2,name:"Deliver content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data from other sources",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"",illustrations:[]},2:{id:2,name:"Actively scan device characteristics",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Consent Only Vendor",purposes:[1,2,3],legIntPurposes:[],specialPurposes:[1],features:[1],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor1.com/privacy"}]},10:{id:10,name:"LI Vendor",purposes:[1],legIntPurposes:[2,7,9,10],specialPurposes:[1],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor10.com/privacy"}]},20:{id:20,name:"Another LI Vendor",purposes:[1,2],legIntPurposes:[7,8,9],specialPurposes:[1,2],features:[1,2],specialFeatures:[],flexiblePurposes:[2],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://vendor20.com/privacy"}]},755:{id:755,name:"Google Advertising Products",purposes:[1,2,3],legIntPurposes:[7,9,10],specialPurposes:[1,2],features:[1,2],specialFeatures:[1],flexiblePurposes:[2,7,9,10],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]}}};globalThis.fetch=a.fn(()=>Promise.resolve(new Response(JSON.stringify(u),{status:200,headers:{"Content-Type":"application/json"}})));let p={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};i("Legitimate Interest UI - Purpose Level",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),d(),delete window.__tcfapi}),s("LI purposes section should be separate from consent",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("LI toggle should default to allowed (not objected)",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("Purpose 1 should not have LI toggle (per IAB spec)",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("Purposes 2-11 can have LI toggles",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Legitimate Interest UI - Vendor Level",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),d(),delete window.__tcfapi}),s("Vendor with LI purposes should show LI toggle",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()}),s("Vendor without LI purposes should not show LI toggle",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()}),s("Vendor-level LI objection should be independent per vendor",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})}),i("Legitimate Interest UI - Objection Behavior",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),d(),delete window.__tcfapi}),s("Toggling to object should set LI to false",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("Purpose-level LI objection should cascade to vendors using that purpose",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("LI objection should persist after save",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Legitimate Interest UI - Display Requirements",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),d(),delete window.__tcfapi}),s("LI section should display purpose names from GVL",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("LI toggle should be clearly distinguishable from consent toggle",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("Vendor details should show which purposes use LI",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})}),i("Legitimate Interest UI - Flexible Purposes",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),d(),delete window.__tcfapi}),s("Flexible purposes can use either consent or LI",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("Vendor with flexible purposes should show both consent and LI options",async()=>{r(o(c,{options:p,children:o(l,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})});
@@ -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"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_iab_consent_dialog_cjs_namespaceObject=require("../iab-consent-dialog.cjs"),localStorageMock=(()=>{let e={};return{getItem:t=>e[t]||null,setItem:(t,a)=>{e[t]=a},removeItem:t=>{delete e[t]},clear:()=>{e={}}}})();Object.defineProperty(window,"localStorage",{value:localStorageMock});const mockGVL={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies, device identifiers...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising can be presented...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"Information about your activity...",illustrations:[]},4:{id:4,name:"Use profiles to select personalised advertising",description:"",illustrations:[]},5:{id:5,name:"Create profiles to personalise content",description:"",illustrations:[]},6:{id:6,name:"Use profiles to select personalised content",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]},11:{id:11,name:"Use limited data to select content",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent fraud",description:"",illustrations:[]},2:{id:2,name:"Deliver content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]},3:{id:3,name:"Identify devices",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"",illustrations:[]},2:{id:2,name:"Actively scan device characteristics",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor 1",purposes:[1,2,3],legIntPurposes:[7,8],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://test.com/privacy"}]},755:{id:755,name:"Google Advertising",purposes:[1,2,3,4,5,6,7,8,9,10,11],legIntPurposes:[],specialPurposes:[1,2],features:[1,2,3],specialFeatures:[1,2],flexiblePurposes:[2,7,9,10,11],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]},2:{id:2,name:"Content personalisation",description:"",purposes:[5,6,11],specialFeatures:[]}}};globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>Promise.resolve(new Response(JSON.stringify(mockGVL),{status:200,headers:{"Content-Type":"application/json"}})));const defaultIABOptions={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("IAB Consent Dialog Unit Tests",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{for(let e of(window.localStorage.clear(),document.cookie.split(";"))){let t=e.split("=")[0]?.trim();t&&(document.cookie=`${t}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`)}external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.describe)("Component Rendering",()=>{(0,external_vitest_namespaceObject.test)("should render when open=true",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should render card container",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-card"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Tab Navigation",()=>{(0,external_vitest_namespaceObject.test)("should display tab buttons",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button[data-state]');(0,external_vitest_namespaceObject.expect)(e.length).toBeGreaterThan(0)},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should have purposes tab",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e?.textContent?.toLowerCase()).toContain("purpose")},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should have vendors tab",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e?.textContent?.toLowerCase()).toContain("vendor")},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Accessibility",()=>{(0,external_vitest_namespaceObject.test)("should have dialog role",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-card"]');(0,external_vitest_namespaceObject.expect)(e?.getAttribute("role")).toBe("dialog")},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should have aria-label",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-card"]');(0,external_vitest_namespaceObject.expect)(e?.getAttribute("aria-label")).toBeTruthy()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Action Buttons",()=>{(0,external_vitest_namespaceObject.test)("should display Accept All button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("accept all"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should display Reject All button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("reject all"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should display Save button",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("save")||e.textContent?.toLowerCase().includes("confirm"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Content Loading",()=>{(0,external_vitest_namespaceObject.test)("should display purposes after GVL loads",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Props",()=>{(0,external_vitest_namespaceObject.test)("should accept hideBranding prop",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0,hideBranding:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should accept showTrigger prop",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{showTrigger:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{(0,external_vitest_namespaceObject.expect)(document.body).toBeTruthy()},{timeout:1e3})})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- let e;import{jsx as t}from"react/jsx-runtime";import{beforeEach as o,describe as i,expect as n,test as s,vi as a}from"vitest";import{render as r}from"vitest-browser-react";import{ConsentManagerProvider as d,clearConsentRuntimeCache as l}from"../../../providers/consent-manager-provider.js";import{IABConsentDialog as c}from"../iab-consent-dialog.js";Object.defineProperty(window,"localStorage",{value:(e={},{getItem:t=>e[t]||null,setItem:(t,o)=>{e[t]=o},removeItem:t=>{delete e[t]},clear:()=>{e={}}})});let u={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies, device identifiers...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising can be presented...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"Information about your activity...",illustrations:[]},4:{id:4,name:"Use profiles to select personalised advertising",description:"",illustrations:[]},5:{id:5,name:"Create profiles to personalise content",description:"",illustrations:[]},6:{id:6,name:"Use profiles to select personalised content",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]},11:{id:11,name:"Use limited data to select content",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent fraud",description:"",illustrations:[]},2:{id:2,name:"Deliver content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]},3:{id:3,name:"Identify devices",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"",illustrations:[]},2:{id:2,name:"Actively scan device characteristics",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor 1",purposes:[1,2,3],legIntPurposes:[7,8],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://test.com/privacy"}]},755:{id:755,name:"Google Advertising",purposes:[1,2,3,4,5,6,7,8,9,10,11],legIntPurposes:[],specialPurposes:[1,2],features:[1,2,3],specialFeatures:[1,2],flexiblePurposes:[2,7,9,10,11],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]},2:{id:2,name:"Content personalisation",description:"",purposes:[5,6,11],specialFeatures:[]}}};globalThis.fetch=a.fn(()=>Promise.resolve(new Response(JSON.stringify(u),{status:200,headers:{"Content-Type":"application/json"}})));let p={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};i("IAB Consent Dialog Unit Tests",()=>{o(()=>{for(let e of(window.localStorage.clear(),document.cookie.split(";"))){let t=e.split("=")[0]?.trim();t&&(document.cookie=`${t}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`)}a.clearAllMocks(),l(),delete window.__tcfapi}),i("Component Rendering",()=>{s("should render when open=true",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("should render card container",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-card"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Tab Navigation",()=>{s("should display tab buttons",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button[data-state]').length).toBeGreaterThan(0)},{timeout:3e3})}),s("should have purposes tab",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');n(e?.textContent?.toLowerCase()).toContain("purpose")},{timeout:3e3})}),s("should have vendors tab",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');n(e?.textContent?.toLowerCase()).toContain("vendor")},{timeout:3e3})})}),i("Accessibility",()=>{s("should have dialog role",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-card"]');n(e?.getAttribute("role")).toBe("dialog")},{timeout:3e3})}),s("should have aria-label",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-card"]');n(e?.getAttribute("aria-label")).toBeTruthy()},{timeout:3e3})})}),i("Action Buttons",()=>{s("should display Accept All button",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("accept all"))).toBeDefined()},{timeout:3e3})}),s("should display Reject All button",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("reject all"))).toBeDefined()},{timeout:3e3})}),s("should display Save button",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("save")||e.textContent?.toLowerCase().includes("confirm"))).toBeDefined()},{timeout:3e3})})}),i("Content Loading",()=>{s("should display purposes after GVL loads",async()=>{r(t(d,{options:p,children:t(c,{open:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Props",()=>{s("should accept hideBranding prop",async()=>{r(t(d,{options:p,children:t(c,{open:!0,hideBranding:!0})})),await a.waitFor(()=>{n(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),s("should accept showTrigger prop",async()=>{r(t(d,{options:p,children:t(c,{showTrigger:!0})})),await a.waitFor(()=>{n(document.body).toBeTruthy()},{timeout:1e3})})})});
@@ -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"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_iab_consent_dialog_cjs_namespaceObject=require("../iab-consent-dialog.cjs"),localStorageMock=(()=>{let e={};return{getItem:t=>e[t]||null,setItem:(t,a)=>{e[t]=a},removeItem:t=>{delete e[t]},clear:()=>{e={}}}})();Object.defineProperty(window,"localStorage",{value:localStorageMock});const mockGVL={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies, device identifiers...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising can be presented...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"Information about your activity...",illustrations:[]},4:{id:4,name:"Use profiles to select personalised advertising",description:"",illustrations:[]},5:{id:5,name:"Create profiles to personalise content",description:"",illustrations:[]},6:{id:6,name:"Use profiles to select personalised content",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]},11:{id:11,name:"Use limited data to select content",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent and detect fraud, and fix errors",description:"",illustrations:[]},2:{id:2,name:"Deliver and present advertising and content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data from other data sources",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]},3:{id:3,name:"Identify devices based on information transmitted automatically",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"With your acceptance, your precise location...",illustrations:[]},2:{id:2,name:"Actively scan device characteristics for identification",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor 1",purposes:[1,2,3,7],legIntPurposes:[8,9],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[]},755:{id:755,name:"Google Advertising",purposes:[1,2,3,4,5,6,7,8,9,10,11],legIntPurposes:[],specialPurposes:[1,2],features:[1,2,3],specialFeatures:[1,2],flexiblePurposes:[2,7,9,10,11],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]},2:{id:2,name:"Content personalisation",description:"",purposes:[5,6,11],specialFeatures:[]}}};globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>Promise.resolve(new Response(JSON.stringify(mockGVL),{status:200,headers:{"Content-Type":"application/json"}})));const defaultIABOptions={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("Purposes Tab - Consent",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("Purpose 1 should be displayed",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("should display multiple purposes",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Legitimate Interest",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("should display LI section for purposes with LI vendors",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Special Purposes",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("special purposes section should exist when expanded",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Special Features",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("should display special features section",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})}),(0,external_vitest_namespaceObject.test)("special feature toggles should exist",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Purposes Tab - Stacks",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("should group purposes into stacks from GVL",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- let e;import{jsx as t}from"react/jsx-runtime";import{beforeEach as o,describe as i,expect as s,test as a,vi as n}from"vitest";import{render as r}from"vitest-browser-react";import{ConsentManagerProvider as c,clearConsentRuntimeCache as l}from"../../../providers/consent-manager-provider.js";import{IABConsentDialog as d}from"../iab-consent-dialog.js";Object.defineProperty(window,"localStorage",{value:(e={},{getItem:t=>e[t]||null,setItem:(t,o)=>{e[t]=o},removeItem:t=>{delete e[t]},clear:()=>{e={}}})});let p={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"Cookies, device identifiers...",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"Advertising can be presented...",illustrations:[]},3:{id:3,name:"Create profiles for personalised advertising",description:"Information about your activity...",illustrations:[]},4:{id:4,name:"Use profiles to select personalised advertising",description:"",illustrations:[]},5:{id:5,name:"Create profiles to personalise content",description:"",illustrations:[]},6:{id:6,name:"Use profiles to select personalised content",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},8:{id:8,name:"Measure content performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]},11:{id:11,name:"Use limited data to select content",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Ensure security, prevent and detect fraud, and fix errors",description:"",illustrations:[]},2:{id:2,name:"Deliver and present advertising and content",description:"",illustrations:[]}},features:{1:{id:1,name:"Match and combine data from other data sources",description:"",illustrations:[]},2:{id:2,name:"Link different devices",description:"",illustrations:[]},3:{id:3,name:"Identify devices based on information transmitted automatically",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Use precise geolocation data",description:"With your acceptance, your precise location...",illustrations:[]},2:{id:2,name:"Actively scan device characteristics for identification",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Test Vendor 1",purposes:[1,2,3,7],legIntPurposes:[8,9],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[]},755:{id:755,name:"Google Advertising",purposes:[1,2,3,4,5,6,7,8,9,10,11],legIntPurposes:[],specialPurposes:[1,2],features:[1,2,3],specialFeatures:[1,2],flexiblePurposes:[2,7,9,10,11],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[]}},stacks:{1:{id:1,name:"Advertising measurement",description:"",purposes:[2,7],specialFeatures:[]},2:{id:2,name:"Content personalisation",description:"",purposes:[5,6,11],specialFeatures:[]}}};globalThis.fetch=n.fn(()=>Promise.resolve(new Response(JSON.stringify(p),{status:200,headers:{"Content-Type":"application/json"}})));let u={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};i("Purposes Tab - Consent",()=>{o(()=>{window.localStorage.clear(),n.clearAllMocks(),l(),delete window.__tcfapi}),a("Purpose 1 should be displayed",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),a("should display multiple purposes",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Purposes Tab - Legitimate Interest",()=>{o(()=>{window.localStorage.clear(),n.clearAllMocks(),l(),delete window.__tcfapi}),a("should display LI section for purposes with LI vendors",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Purposes Tab - Special Purposes",()=>{o(()=>{window.localStorage.clear(),n.clearAllMocks(),l(),delete window.__tcfapi}),a("special purposes section should exist when expanded",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Purposes Tab - Special Features",()=>{o(()=>{window.localStorage.clear(),n.clearAllMocks(),l(),delete window.__tcfapi}),a("should display special features section",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})}),a("special feature toggles should exist",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Purposes Tab - Stacks",()=>{o(()=>{window.localStorage.clear(),n.clearAllMocks(),l(),delete window.__tcfapi}),a("should group purposes into stacks from GVL",async()=>{r(t(c,{options:u,children:t(d,{open:!0})})),await n.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{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"),consent_manager_provider_cjs_namespaceObject=require("../../../providers/consent-manager-provider.cjs"),external_iab_consent_dialog_cjs_namespaceObject=require("../iab-consent-dialog.cjs"),localStorageMock=(()=>{let e={};return{getItem:t=>e[t]||null,setItem:(t,a)=>{e[t]=a},removeItem:t=>{delete e[t]},clear:()=>{e={}}}})();Object.defineProperty(window,"localStorage",{value:localStorageMock});const mockGVL={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Security",description:"",illustrations:[]}},features:{1:{id:1,name:"Match data",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Geolocation",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Exponential Interactive",purposes:[1,2],legIntPurposes:[7,9,10],specialPurposes:[1],features:[1],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor1.com/privacy"}]},10:{id:10,name:"Index Exchange",purposes:[1],legIntPurposes:[2,7,9,10],specialPurposes:[1],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://indexexchange.com/privacy"}]},755:{id:755,name:"Google Advertising Products",purposes:[1,2,7,9,10],legIntPurposes:[],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2,7,9,10],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising",description:"",purposes:[2,7],specialFeatures:[]}}};globalThis.fetch=external_vitest_namespaceObject.vi.fn(()=>Promise.resolve(new Response(JSON.stringify(mockGVL),{status:200,headers:{"Content-Type":"application/json"}})));const defaultIABOptions={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};for(var __rspack_i in(0,external_vitest_namespaceObject.describe)("Vendors Tab - Display",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("should display vendor list when vendors tab is selected",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should display all GVL vendors",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()}),(0,external_vitest_namespaceObject.test)("should show vendor count in tab",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3})})}),(0,external_vitest_namespaceObject.describe)("Vendors Tab - Per-Vendor Consent",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("should display consent toggle for vendors",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Vendors Tab - Per-Vendor Legitimate Interest",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("vendors with LI purposes should have LI toggle option",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),(0,external_vitest_namespaceObject.describe)("Vendors Tab - Vendor Details",()=>{(0,external_vitest_namespaceObject.beforeEach)(()=>{window.localStorage.clear(),external_vitest_namespaceObject.vi.clearAllMocks(),(0,consent_manager_provider_cjs_namespaceObject.clearConsentRuntimeCache)(),delete window.__tcfapi}),(0,external_vitest_namespaceObject.test)("vendor details should be expandable",async()=>{(0,external_vitest_browser_react_namespaceObject.render)((0,jsx_runtime_namespaceObject.jsx)(consent_manager_provider_cjs_namespaceObject.ConsentManagerProvider,{options:defaultIABOptions,children:(0,jsx_runtime_namespaceObject.jsx)(external_iab_consent_dialog_cjs_namespaceObject.IABConsentDialog,{open:!0})})),await external_vitest_namespaceObject.vi.waitFor(()=>{let e=document.querySelector('[data-testid="iab-consent-dialog-root"]');(0,external_vitest_namespaceObject.expect)(e).toBeInTheDocument()},{timeout:3e3});let e=Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"));(0,external_vitest_namespaceObject.expect)(e).toBeDefined()})}),__webpack_exports__)exports[__rspack_i]=__webpack_exports__[__rspack_i];Object.defineProperty(exports,"__esModule",{value:!0});
@@ -1 +0,0 @@
1
- let e;import{jsx as o}from"react/jsx-runtime";import{beforeEach as t,describe as i,expect as s,test as n,vi as a}from"vitest";import{render as r}from"vitest-browser-react";import{ConsentManagerProvider as d,clearConsentRuntimeCache as l}from"../../../providers/consent-manager-provider.js";import{IABConsentDialog as c}from"../iab-consent-dialog.js";Object.defineProperty(window,"localStorage",{value:(e={},{getItem:o=>e[o]||null,setItem:(o,t)=>{e[o]=t},removeItem:o=>{delete e[o]},clear:()=>{e={}}})});let u={gvlSpecificationVersion:3,vendorListVersion:142,tcfPolicyVersion:5,lastUpdated:"2024-01-15T16:00:23Z",purposes:{1:{id:1,name:"Store and/or access information on a device",description:"",illustrations:[]},2:{id:2,name:"Use limited data to select advertising",description:"",illustrations:[]},7:{id:7,name:"Measure advertising performance",description:"",illustrations:[]},9:{id:9,name:"Understand audiences through statistics",description:"",illustrations:[]},10:{id:10,name:"Develop and improve services",description:"",illustrations:[]}},specialPurposes:{1:{id:1,name:"Security",description:"",illustrations:[]}},features:{1:{id:1,name:"Match data",description:"",illustrations:[]}},specialFeatures:{1:{id:1,name:"Geolocation",description:"",illustrations:[]}},vendors:{1:{id:1,name:"Exponential Interactive",purposes:[1,2],legIntPurposes:[7,9,10],specialPurposes:[1],features:[1],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://vendor1.com/privacy"}]},10:{id:10,name:"Index Exchange",purposes:[1],legIntPurposes:[2,7,9,10],specialPurposes:[1],features:[],specialFeatures:[],flexiblePurposes:[],cookieMaxAgeSeconds:31536e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!1,urls:[{langId:"en",privacy:"https://indexexchange.com/privacy"}]},755:{id:755,name:"Google Advertising Products",purposes:[1,2,7,9,10],legIntPurposes:[],specialPurposes:[1],features:[1],specialFeatures:[1],flexiblePurposes:[2,7,9,10],cookieMaxAgeSeconds:63072e3,usesCookies:!0,cookieRefresh:!0,usesNonCookieAccess:!0,urls:[{langId:"en",privacy:"https://policies.google.com/privacy"}]}},stacks:{1:{id:1,name:"Advertising",description:"",purposes:[2,7],specialFeatures:[]}}};globalThis.fetch=a.fn(()=>Promise.resolve(new Response(JSON.stringify(u),{status:200,headers:{"Content-Type":"application/json"}})));let p={mode:"offline",iab:{enabled:!0,cmpId:160,cmpVersion:1}};i("Vendors Tab - Display",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),l(),delete window.__tcfapi}),n("should display vendor list when vendors tab is selected",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),s(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()}),n("should display all GVL vendors",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),s(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()}),n("should show vendor count in tab",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3})})}),i("Vendors Tab - Per-Vendor Consent",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),l(),delete window.__tcfapi}),n("should display consent toggle for vendors",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),s(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})}),i("Vendors Tab - Per-Vendor Legitimate Interest",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),l(),delete window.__tcfapi}),n("vendors with LI purposes should have LI toggle option",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),s(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})}),i("Vendors Tab - Vendor Details",()=>{t(()=>{window.localStorage.clear(),a.clearAllMocks(),l(),delete window.__tcfapi}),n("vendor details should be expandable",async()=>{r(o(d,{options:p,children:o(c,{open:!0})})),await a.waitFor(()=>{s(document.querySelector('[data-testid="iab-consent-dialog-root"]')).toBeInTheDocument()},{timeout:3e3}),s(Array.from(document.querySelectorAll('[data-testid="iab-consent-dialog-root"] button')).find(e=>e.textContent?.toLowerCase().includes("vendor"))).toBeDefined()})});
@@ -1 +0,0 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-dialog/atoms/card.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,SAAS,EAId,MAAM,OAAO,CAAC;AAQf,UAAU,yBAA0B,SAAQ,cAAc,CAAC,cAAc,CAAC;IACzE,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,oBAAoB,sHA6CxB,CAAC;AAIH,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-dialog/atoms/content.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAExE,UAAU,4BAA6B,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC5E,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,uBAAuB,yHAa3B,CAAC;AAIH,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../../src/components/iab-consent-dialog/atoms/footer.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAOxE,UAAU,2BAA4B,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,sBAAsB,wHAsE1B,CAAC;AAIH,OAAO,EAAE,sBAAsB,EAAE,CAAC"}