@c15t/scripts 3.0.0-alpha.2 → 3.0.0-alpha.4

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 (300) hide show
  1. package/AGENTS.md +129 -63
  2. package/README.md +8 -29
  3. package/SKILL.md +33 -0
  4. package/dist/adobe-analytics.js +2 -0
  5. package/dist/ahrefs-analytics.js +2 -0
  6. package/dist/amplitude.js +2 -0
  7. package/dist/clearbit.js +2 -0
  8. package/dist/cloudflare-web-analytics.js +2 -0
  9. package/dist/cloudflare-zaraz.js +2 -0
  10. package/dist/crisp.js +2 -0
  11. package/dist/databuddy.js +2 -0
  12. package/dist/e2e-test-utils.js +2 -139
  13. package/dist/engine/compile.js +2 -89
  14. package/dist/engine/runtime.js +2 -448
  15. package/dist/events.js +2 -218
  16. package/dist/fathom-analytics.js +2 -0
  17. package/dist/front-chat.js +2 -0
  18. package/dist/google-tag-manager.js +2 -0
  19. package/dist/google-tag.js +2 -0
  20. package/dist/heap.js +2 -0
  21. package/dist/hightouch.js +2 -0
  22. package/dist/hotjar.js +2 -0
  23. package/dist/intercom.js +2 -0
  24. package/dist/klaviyo.js +2 -0
  25. package/dist/linkedin-insights.js +2 -0
  26. package/dist/logrocket.js +2 -0
  27. package/dist/matomo-analytics.js +2 -0
  28. package/dist/meta-pixel.js +2 -0
  29. package/dist/microsoft-clarity.js +2 -0
  30. package/dist/microsoft-uet.js +2 -0
  31. package/dist/mixpanel-analytics.js +2 -0
  32. package/dist/one-dollar-stats.js +2 -0
  33. package/dist/openai-pixel.js +2 -0
  34. package/dist/pinterest-tag.js +2 -0
  35. package/dist/pirsch.js +2 -0
  36. package/dist/plausible-analytics.js +2 -0
  37. package/dist/posthog.js +2 -0
  38. package/dist/promptwatch.js +2 -0
  39. package/dist/reddit-pixel.js +2 -0
  40. package/dist/registry.js +2 -422
  41. package/dist/resolve.js +2 -33
  42. package/dist/rudderstack.js +2 -0
  43. package/dist/rybbit-analytics.js +2 -0
  44. package/dist/segment.js +2 -0
  45. package/dist/snapchat-pixel.js +2 -0
  46. package/dist/tiktok-pixel.js +2 -0
  47. package/dist/types.js +2 -16
  48. package/dist/umami-analytics.js +2 -0
  49. package/dist/vendors/_shared/attributes.js +2 -14
  50. package/dist/vendors/_shared/google-consent.js +2 -27
  51. package/dist/vendors/_shared/install-builders.js +2 -21
  52. package/dist/vendors/_shared/required-id.js +2 -0
  53. package/dist/vendors/_shared/script-url.js +2 -28
  54. package/dist/vendors/ads-and-pixels/linkedin-insights.js +2 -48
  55. package/dist/vendors/ads-and-pixels/meta-pixel.js +2 -153
  56. package/dist/vendors/ads-and-pixels/microsoft-uet.js +2 -110
  57. package/dist/vendors/ads-and-pixels/openai-pixel.js +2 -88
  58. package/dist/vendors/ads-and-pixels/pinterest-tag.js +2 -123
  59. package/dist/vendors/ads-and-pixels/reddit-pixel.js +2 -107
  60. package/dist/vendors/ads-and-pixels/snapchat-pixel.js +2 -87
  61. package/dist/vendors/ads-and-pixels/tiktok-pixel.js +2 -89
  62. package/dist/vendors/ads-and-pixels/x-pixel.js +2 -48
  63. package/dist/vendors/analytics/adobe-analytics.js +2 -49
  64. package/dist/vendors/analytics/ahrefs-analytics.js +2 -27
  65. package/dist/vendors/analytics/amplitude.js +2 -134
  66. package/dist/vendors/analytics/clearbit.js +2 -28
  67. package/dist/vendors/analytics/cloudflare-web-analytics.js +2 -32
  68. package/dist/vendors/analytics/databuddy.js +2 -103
  69. package/dist/vendors/analytics/fathom-analytics.js +2 -35
  70. package/dist/vendors/analytics/google-tag.js +2 -78
  71. package/dist/vendors/analytics/heap.js +2 -134
  72. package/dist/vendors/analytics/hightouch.js +2 -109
  73. package/dist/vendors/analytics/hotjar.js +2 -44
  74. package/dist/vendors/analytics/logrocket.js +2 -58
  75. package/dist/vendors/analytics/matomo-analytics.js +2 -191
  76. package/dist/vendors/analytics/microsoft-clarity.js +2 -100
  77. package/dist/vendors/analytics/mixpanel-analytics.js +2 -93
  78. package/dist/vendors/analytics/one-dollar-stats.js +2 -30
  79. package/dist/vendors/analytics/pirsch.js +2 -67
  80. package/dist/vendors/analytics/plausible-analytics.js +2 -81
  81. package/dist/vendors/analytics/posthog.js +2 -200
  82. package/dist/vendors/analytics/promptwatch.js +2 -29
  83. package/dist/vendors/analytics/rudderstack.js +2 -183
  84. package/dist/vendors/analytics/rybbit-analytics.js +2 -63
  85. package/dist/vendors/analytics/segment.js +2 -65
  86. package/dist/vendors/analytics/umami-analytics.js +2 -39
  87. package/dist/vendors/analytics/vercel-analytics.js +2 -53
  88. package/dist/vendors/email-and-sms/klaviyo.js +2 -0
  89. package/dist/vendors/functional/crisp.js +2 -100
  90. package/dist/vendors/functional/front-chat.js +2 -64
  91. package/dist/vendors/functional/intercom.js +2 -45
  92. package/dist/vendors/tag-managers/cloudflare-zaraz.js +2 -98
  93. package/dist/vendors/tag-managers/google-tag-manager.js +2 -73
  94. package/dist/vercel-analytics.js +2 -0
  95. package/dist/x-pixel.js +2 -0
  96. package/dist-types/adobe-analytics.d.ts +2 -0
  97. package/dist-types/ahrefs-analytics.d.ts +2 -0
  98. package/dist-types/amplitude.d.ts +2 -0
  99. package/dist-types/clearbit.d.ts +2 -0
  100. package/dist-types/cloudflare-web-analytics.d.ts +2 -0
  101. package/dist-types/cloudflare-zaraz.d.ts +2 -0
  102. package/dist-types/crisp.d.ts +2 -0
  103. package/dist-types/databuddy.d.ts +2 -0
  104. package/dist-types/e2e-test-utils.d.ts +2 -0
  105. package/dist-types/engine/compile.d.ts +2 -3
  106. package/dist-types/engine/runtime.d.ts +2 -3
  107. package/dist-types/events.d.ts +2 -46
  108. package/dist-types/fathom-analytics.d.ts +2 -0
  109. package/dist-types/front-chat.d.ts +2 -0
  110. package/dist-types/google-tag-manager.d.ts +2 -0
  111. package/dist-types/google-tag.d.ts +2 -0
  112. package/dist-types/heap.d.ts +2 -0
  113. package/dist-types/hightouch.d.ts +2 -0
  114. package/dist-types/hotjar.d.ts +2 -0
  115. package/dist-types/intercom.d.ts +2 -0
  116. package/dist-types/klaviyo.d.ts +2 -0
  117. package/dist-types/linkedin-insights.d.ts +2 -0
  118. package/dist-types/logrocket.d.ts +2 -0
  119. package/dist-types/matomo-analytics.d.ts +2 -0
  120. package/dist-types/meta-pixel.d.ts +2 -0
  121. package/dist-types/microsoft-clarity.d.ts +2 -0
  122. package/dist-types/microsoft-uet.d.ts +2 -0
  123. package/dist-types/mixpanel-analytics.d.ts +2 -0
  124. package/dist-types/one-dollar-stats.d.ts +2 -0
  125. package/dist-types/openai-pixel.d.ts +2 -0
  126. package/dist-types/pinterest-tag.d.ts +2 -0
  127. package/dist-types/pirsch.d.ts +2 -0
  128. package/dist-types/plausible-analytics.d.ts +2 -0
  129. package/dist-types/posthog.d.ts +2 -0
  130. package/dist-types/promptwatch.d.ts +2 -0
  131. package/dist-types/reddit-pixel.d.ts +2 -0
  132. package/dist-types/registry.d.ts +2 -485
  133. package/dist-types/resolve.d.ts +2 -9
  134. package/dist-types/rudderstack.d.ts +2 -0
  135. package/dist-types/rybbit-analytics.d.ts +2 -0
  136. package/dist-types/segment.d.ts +2 -0
  137. package/dist-types/snapchat-pixel.d.ts +2 -0
  138. package/dist-types/tiktok-pixel.d.ts +2 -0
  139. package/dist-types/types.d.ts +2 -314
  140. package/dist-types/umami-analytics.d.ts +2 -0
  141. package/dist-types/vendors/_shared/attributes.d.ts +2 -35
  142. package/dist-types/vendors/_shared/google-consent.d.ts +2 -47
  143. package/dist-types/vendors/_shared/install-builders.d.ts +2 -30
  144. package/dist-types/vendors/_shared/required-id.d.ts +2 -0
  145. package/dist-types/vendors/_shared/script-url.d.ts +2 -75
  146. package/dist-types/vendors/ads-and-pixels/linkedin-insights.d.ts +2 -92
  147. package/dist-types/vendors/ads-and-pixels/meta-pixel.d.ts +2 -289
  148. package/dist-types/vendors/ads-and-pixels/microsoft-uet.d.ts +2 -105
  149. package/dist-types/vendors/ads-and-pixels/openai-pixel.d.ts +2 -211
  150. package/dist-types/vendors/ads-and-pixels/pinterest-tag.d.ts +2 -295
  151. package/dist-types/vendors/ads-and-pixels/reddit-pixel.d.ts +2 -210
  152. package/dist-types/vendors/ads-and-pixels/snapchat-pixel.d.ts +2 -171
  153. package/dist-types/vendors/ads-and-pixels/tiktok-pixel.d.ts +2 -106
  154. package/dist-types/vendors/ads-and-pixels/x-pixel.d.ts +2 -183
  155. package/dist-types/vendors/analytics/adobe-analytics.d.ts +2 -75
  156. package/dist-types/vendors/analytics/ahrefs-analytics.d.ts +2 -62
  157. package/dist-types/vendors/analytics/amplitude.d.ts +2 -234
  158. package/dist-types/vendors/analytics/clearbit.d.ts +2 -60
  159. package/dist-types/vendors/analytics/cloudflare-web-analytics.d.ts +2 -67
  160. package/dist-types/vendors/analytics/databuddy.d.ts +2 -147
  161. package/dist-types/vendors/analytics/fathom-analytics.d.ts +2 -90
  162. package/dist-types/vendors/analytics/google-tag.d.ts +2 -95
  163. package/dist-types/vendors/analytics/heap.d.ts +2 -316
  164. package/dist-types/vendors/analytics/hightouch.d.ts +2 -285
  165. package/dist-types/vendors/analytics/hotjar.d.ts +2 -73
  166. package/dist-types/vendors/analytics/logrocket.d.ts +2 -101
  167. package/dist-types/vendors/analytics/matomo-analytics.d.ts +2 -41
  168. package/dist-types/vendors/analytics/microsoft-clarity.d.ts +2 -97
  169. package/dist-types/vendors/analytics/mixpanel-analytics.d.ts +2 -113
  170. package/dist-types/vendors/analytics/one-dollar-stats.d.ts +2 -39
  171. package/dist-types/vendors/analytics/pirsch.d.ts +2 -96
  172. package/dist-types/vendors/analytics/plausible-analytics.d.ts +2 -122
  173. package/dist-types/vendors/analytics/posthog.d.ts +2 -175
  174. package/dist-types/vendors/analytics/promptwatch.d.ts +2 -36
  175. package/dist-types/vendors/analytics/rudderstack.d.ts +2 -330
  176. package/dist-types/vendors/analytics/rybbit-analytics.d.ts +2 -82
  177. package/dist-types/vendors/analytics/segment.d.ts +2 -164
  178. package/dist-types/vendors/analytics/umami-analytics.d.ts +2 -93
  179. package/dist-types/vendors/analytics/vercel-analytics.d.ts +2 -66
  180. package/dist-types/vendors/email-and-sms/klaviyo.d.ts +2 -0
  181. package/dist-types/vendors/functional/crisp.d.ts +2 -78
  182. package/dist-types/vendors/functional/front-chat.d.ts +2 -62
  183. package/dist-types/vendors/functional/intercom.d.ts +2 -135
  184. package/dist-types/vendors/tag-managers/cloudflare-zaraz.d.ts +2 -39
  185. package/dist-types/vendors/tag-managers/google-tag-manager.d.ts +2 -96
  186. package/dist-types/vercel-analytics.d.ts +2 -0
  187. package/dist-types/x-pixel.d.ts +2 -0
  188. package/docs/README.md +129 -63
  189. package/docs/assets/v3/bottom-bar.png +0 -0
  190. package/docs/assets/v3/brand-card.png +0 -0
  191. package/docs/assets/v3/brand-preferences.png +0 -0
  192. package/docs/assets/v3/choice-wall.png +0 -0
  193. package/docs/assets/v3/headless-bar-html.png +0 -0
  194. package/docs/assets/v3/headless-bar-mobile.png +0 -0
  195. package/docs/assets/v3/headless-bar.png +0 -0
  196. package/docs/assets/v3/slim-bar.png +0 -0
  197. package/docs/concepts/choose-your-setup.md +87 -0
  198. package/docs/concepts/consent-categories.md +84 -0
  199. package/docs/{guides → concepts}/consent-state.md +89 -105
  200. package/docs/{guides → concepts}/data-fetching.md +31 -27
  201. package/docs/concepts/how-consent-works.md +123 -0
  202. package/docs/concepts/policies.md +71 -0
  203. package/docs/customization/class-names.md +202 -0
  204. package/docs/customization/dark-mode.md +157 -0
  205. package/docs/customization/motion.md +119 -0
  206. package/docs/customization/overview.md +67 -34
  207. package/docs/customization/recipes.md +839 -49
  208. package/docs/customization/slots.md +216 -35
  209. package/docs/customization/stylesheets.md +147 -0
  210. package/docs/customization/tailwind.md +842 -0
  211. package/docs/customization/tokens.md +163 -96
  212. package/docs/customization/translations.md +60 -3
  213. package/docs/frameworks/astro/embeds.md +160 -0
  214. package/docs/frameworks/astro/network-blocker.md +86 -0
  215. package/docs/frameworks/astro/scripts.md +155 -0
  216. package/docs/frameworks/html/embeds.md +142 -0
  217. package/docs/frameworks/html/network-blocker.md +105 -0
  218. package/docs/frameworks/html/scripts.md +164 -0
  219. package/docs/frameworks/javascript/scripts.md +137 -0
  220. package/docs/frameworks/next/embeds.md +90 -0
  221. package/docs/frameworks/next/network-blocker.md +153 -0
  222. package/docs/frameworks/next/scripts.md +196 -0
  223. package/docs/frameworks/nuxt/embeds.md +81 -0
  224. package/docs/frameworks/nuxt/network-blocker.md +97 -0
  225. package/docs/frameworks/nuxt/scripts.md +89 -0
  226. package/docs/frameworks/react/embeds.md +89 -0
  227. package/docs/frameworks/react/network-blocker.md +140 -0
  228. package/docs/frameworks/react/scripts.md +115 -0
  229. package/docs/frameworks/svelte/embeds.md +96 -0
  230. package/docs/frameworks/svelte/network-blocker.md +141 -0
  231. package/docs/frameworks/svelte/scripts.md +144 -0
  232. package/docs/frameworks/sveltekit/embeds.md +103 -0
  233. package/docs/frameworks/sveltekit/network-blocker.md +159 -0
  234. package/docs/frameworks/sveltekit/scripts.md +172 -0
  235. package/docs/frameworks/tanstack-start/embeds.md +96 -0
  236. package/docs/frameworks/tanstack-start/network-blocker.md +145 -0
  237. package/docs/frameworks/tanstack-start/scripts.md +103 -0
  238. package/docs/frameworks/vue/embeds.md +84 -0
  239. package/docs/frameworks/vue/network-blocker.md +99 -0
  240. package/docs/frameworks/vue/scripts.md +93 -0
  241. package/docs/guides/banner-experiments.md +654 -0
  242. package/docs/guides/troubleshooting.md +120 -47
  243. package/docs/guides/verify-consent.md +81 -49
  244. package/docs/integrations/adobe-analytics.md +167 -159
  245. package/docs/integrations/ahrefs-analytics.md +152 -154
  246. package/docs/integrations/amplitude.md +162 -156
  247. package/docs/integrations/building-integrations.md +136 -37
  248. package/docs/integrations/clearbit.md +154 -154
  249. package/docs/integrations/cloudflare-web-analytics.md +156 -156
  250. package/docs/integrations/cloudflare-zaraz.md +209 -261
  251. package/docs/integrations/crisp.md +164 -158
  252. package/docs/integrations/databuddy.md +157 -173
  253. package/docs/integrations/fathom-analytics.md +158 -156
  254. package/docs/integrations/front-chat.md +167 -167
  255. package/docs/integrations/google-maps.md +118 -83
  256. package/docs/integrations/google-tag-manager.md +178 -163
  257. package/docs/integrations/google-tag.md +163 -160
  258. package/docs/integrations/heap.md +163 -155
  259. package/docs/integrations/hightouch.md +161 -157
  260. package/docs/integrations/hotjar.md +159 -155
  261. package/docs/integrations/intercom.md +183 -153
  262. package/docs/integrations/klaviyo.md +486 -0
  263. package/docs/integrations/linkedin-insights.md +174 -150
  264. package/docs/integrations/logrocket.md +160 -156
  265. package/docs/integrations/matomo-analytics.md +188 -178
  266. package/docs/integrations/meta-pixel.md +188 -150
  267. package/docs/integrations/microsoft-clarity.md +163 -155
  268. package/docs/integrations/microsoft-uet.md +148 -154
  269. package/docs/integrations/mixpanel-analytics.md +155 -160
  270. package/docs/integrations/one-dollar-stats.md +166 -165
  271. package/docs/integrations/openai-pixel.md +204 -301
  272. package/docs/integrations/overview.md +137 -80
  273. package/docs/integrations/pinterest-tag.md +191 -183
  274. package/docs/integrations/pirsch.md +169 -159
  275. package/docs/integrations/plausible-analytics.md +172 -158
  276. package/docs/integrations/posthog.md +313 -240
  277. package/docs/integrations/promptwatch.md +154 -154
  278. package/docs/integrations/reddit-pixel.md +185 -157
  279. package/docs/integrations/rudderstack.md +201 -186
  280. package/docs/integrations/rybbit-analytics.md +171 -160
  281. package/docs/integrations/segment.md +182 -154
  282. package/docs/integrations/snapchat-pixel.md +186 -156
  283. package/docs/integrations/tiktok-pixel.md +171 -150
  284. package/docs/integrations/umami-analytics.md +163 -158
  285. package/docs/integrations/vercel-analytics.md +166 -157
  286. package/docs/integrations/x-pixel.md +176 -150
  287. package/docs/integrations/youtube.md +121 -86
  288. package/docs/upgrade-v3.md +496 -467
  289. package/package.json +10 -257
  290. package/dist-types/__tests__/helpers.d.ts +0 -141
  291. package/docs/assets/v3/brand-bar.png +0 -0
  292. package/docs/assets/v3/mobile-card.png +0 -0
  293. package/docs/assets/v3/preferences.png +0 -0
  294. package/docs/frameworks/javascript/script-loader.md +0 -100
  295. package/docs/frameworks/next/script-loader.md +0 -216
  296. package/docs/frameworks/react/script-loader.md +0 -69
  297. package/docs/guides/deployment-modes.md +0 -75
  298. package/docs/guides/shared-consent-controls.md +0 -158
  299. package/docs/integrations/clear-on-revocation.md +0 -167
  300. package/docs/integrations/granular-consent.md +0 -210
@@ -1,485 +1,2 @@
1
- /**
2
- * High-level product area for a built-in script integration.
3
- *
4
- * Used for discovery surfaces such as docs navigation and CLI grouping. This is
5
- * intentionally separate from a manifest consent category.
6
- */
7
- export type IntegrationCategory = 'analytics' | 'ads-and-pixels' | 'functional' | 'tag-manager';
8
- /**
9
- * Consent bucket that a built-in integration maps to by default.
10
- *
11
- * These values mirror c15t's consent categories without importing core types, so
12
- * the registry stays safe to consume from docs and CLI code.
13
- */
14
- export type IntegrationConsentCategory = 'necessary' | 'functionality' | 'experience' | 'measurement' | 'marketing';
15
- /**
16
- * Display metadata for an integration category.
17
- *
18
- * @example
19
- * ```ts
20
- * const label = BUILT_IN_INTEGRATION_CATEGORIES[0]?.label;
21
- * ```
22
- */
23
- export interface IntegrationCategoryEntry {
24
- /** Stable category key used by registry entries. */
25
- key: IntegrationCategory;
26
- /** Human-readable label for display surfaces. */
27
- label: string;
28
- }
29
- /**
30
- * Identity and discovery metadata for a built-in script integration.
31
- *
32
- * All fields are required except `hint`, which is optional short help text for
33
- * picker UIs. Do not add runtime behavior, disclosure metadata, or vendor
34
- * implementation details here.
35
- */
36
- export interface IntegrationRegistryEntry {
37
- /** Stable key used by tests and generated metadata. */
38
- key: string;
39
- /** Script id emitted by the resolved helper. */
40
- vendor: string;
41
- /** Human-readable integration name. */
42
- label: string;
43
- /** Optional short description for CLI or docs picker UIs. */
44
- hint?: string;
45
- /** Docs route slug for this integration. */
46
- docsSlug: string;
47
- /** Package subpath, e.g. `meta-pixel` for `@c15t/scripts/meta-pixel`. */
48
- packageSubpath: string;
49
- /** Product area used for grouping and discovery. */
50
- integrationCategory: IntegrationCategory;
51
- /** Default consent bucket expected from the generated script. */
52
- consentCategory: IntegrationConsentCategory;
53
- }
54
- /**
55
- * Canonical display list for built-in integration categories.
56
- *
57
- * Consumers should use this list for category labels and ordering instead of
58
- * re-declaring category names.
59
- */
60
- export declare const BUILT_IN_INTEGRATION_CATEGORIES: readonly [{
61
- readonly key: 'analytics';
62
- readonly label: 'Analytics';
63
- }, {
64
- readonly key: 'ads-and-pixels';
65
- readonly label: 'Ads & Pixels';
66
- }, {
67
- readonly key: 'functional';
68
- readonly label: 'Functional';
69
- }, {
70
- readonly key: 'tag-manager';
71
- readonly label: 'Tag Managers';
72
- }];
73
- /**
74
- * Canonical identity catalog for built-in `@c15t/scripts` integrations.
75
- *
76
- * Adding a new built-in integration should add one row here so docs, tests, and
77
- * the CLI can discover it from the same source.
78
- */
79
- export declare const builtInScriptIntegrations: readonly [{
80
- readonly consentCategory: 'necessary';
81
- readonly docsSlug: 'cloudflare-zaraz';
82
- readonly hint: 'Consent bridge for tools managed by Zaraz';
83
- readonly integrationCategory: 'tag-manager';
84
- readonly key: 'cloudflareZaraz';
85
- readonly label: 'Cloudflare Zaraz';
86
- readonly packageSubpath: 'cloudflare-zaraz';
87
- readonly vendor: 'cloudflare-zaraz';
88
- }, {
89
- readonly consentCategory: 'necessary';
90
- readonly docsSlug: 'google-tag-manager';
91
- readonly hint: 'GTM container script';
92
- readonly integrationCategory: 'tag-manager';
93
- readonly key: 'googleTagManager';
94
- readonly label: 'Google Tag Manager';
95
- readonly packageSubpath: 'google-tag-manager';
96
- readonly vendor: 'google-tag-manager';
97
- }, {
98
- readonly consentCategory: 'measurement';
99
- readonly docsSlug: 'google-tag';
100
- readonly hint: 'Google Analytics 4';
101
- readonly integrationCategory: 'analytics';
102
- readonly key: 'gtag';
103
- readonly label: 'Google Tag (gtag.js)';
104
- readonly packageSubpath: 'google-tag';
105
- readonly vendor: 'gtag';
106
- }, {
107
- readonly consentCategory: 'measurement';
108
- readonly docsSlug: 'ahrefs-analytics';
109
- readonly hint: 'Cookieless web analytics from Ahrefs';
110
- readonly integrationCategory: 'analytics';
111
- readonly key: 'ahrefsAnalytics';
112
- readonly label: 'Ahrefs Analytics';
113
- readonly packageSubpath: 'ahrefs-analytics';
114
- readonly vendor: 'ahrefs-analytics';
115
- }, {
116
- readonly consentCategory: 'measurement';
117
- readonly docsSlug: 'adobe-analytics';
118
- readonly hint: 'Adobe Experience Platform tags';
119
- readonly integrationCategory: 'analytics';
120
- readonly key: 'adobeAnalytics';
121
- readonly label: 'Adobe Analytics';
122
- readonly packageSubpath: 'adobe-analytics';
123
- readonly vendor: 'adobe-analytics';
124
- }, {
125
- readonly consentCategory: 'measurement';
126
- readonly docsSlug: 'amplitude';
127
- readonly hint: 'Product analytics';
128
- readonly integrationCategory: 'analytics';
129
- readonly key: 'amplitude';
130
- readonly label: 'Amplitude';
131
- readonly packageSubpath: 'amplitude';
132
- readonly vendor: 'amplitude';
133
- }, {
134
- readonly consentCategory: 'measurement';
135
- readonly docsSlug: 'cloudflare-web-analytics';
136
- readonly hint: 'Cookieless analytics from Cloudflare';
137
- readonly integrationCategory: 'analytics';
138
- readonly key: 'cloudflareWebAnalytics';
139
- readonly label: 'Cloudflare Web Analytics';
140
- readonly packageSubpath: 'cloudflare-web-analytics';
141
- readonly vendor: 'cloudflare-web-analytics';
142
- }, {
143
- readonly consentCategory: 'marketing';
144
- readonly docsSlug: 'clearbit';
145
- readonly hint: 'Visitor and company enrichment';
146
- readonly integrationCategory: 'analytics';
147
- readonly key: 'clearbit';
148
- readonly label: 'Clearbit';
149
- readonly packageSubpath: 'clearbit';
150
- readonly vendor: 'clearbit';
151
- }, {
152
- readonly consentCategory: 'measurement';
153
- readonly docsSlug: 'microsoft-clarity';
154
- readonly hint: 'Session replay and heatmaps';
155
- readonly integrationCategory: 'analytics';
156
- readonly key: 'microsoft-clarity';
157
- readonly label: 'Microsoft Clarity';
158
- readonly packageSubpath: 'microsoft-clarity';
159
- readonly vendor: 'microsoft-clarity';
160
- }, {
161
- readonly consentCategory: 'measurement';
162
- readonly docsSlug: 'databuddy';
163
- readonly hint: 'Data collection';
164
- readonly integrationCategory: 'analytics';
165
- readonly key: 'databuddy';
166
- readonly label: 'Databuddy';
167
- readonly packageSubpath: 'databuddy';
168
- readonly vendor: 'databuddy';
169
- }, {
170
- readonly consentCategory: 'measurement';
171
- readonly docsSlug: 'fathom-analytics';
172
- readonly hint: 'Privacy-friendly cookieless analytics';
173
- readonly integrationCategory: 'analytics';
174
- readonly key: 'fathomAnalytics';
175
- readonly label: 'Fathom Analytics';
176
- readonly packageSubpath: 'fathom-analytics';
177
- readonly vendor: 'fathom-analytics';
178
- }, {
179
- readonly consentCategory: 'measurement';
180
- readonly docsSlug: 'heap';
181
- readonly hint: 'Autocapture product analytics';
182
- readonly integrationCategory: 'analytics';
183
- readonly key: 'heap';
184
- readonly label: 'Heap';
185
- readonly packageSubpath: 'heap';
186
- readonly vendor: 'heap';
187
- }, {
188
- readonly consentCategory: 'measurement';
189
- readonly docsSlug: 'mixpanel-analytics';
190
- readonly hint: 'Product analytics and funnels';
191
- readonly integrationCategory: 'analytics';
192
- readonly key: 'mixpanelAnalytics';
193
- readonly label: 'Mixpanel Analytics';
194
- readonly packageSubpath: 'mixpanel-analytics';
195
- readonly vendor: 'mixpanel-analytics';
196
- }, {
197
- readonly consentCategory: 'measurement';
198
- readonly docsSlug: 'one-dollar-stats';
199
- readonly hint: 'Website analytics with no API key';
200
- readonly integrationCategory: 'analytics';
201
- readonly key: 'oneDollarStats';
202
- readonly label: 'OneDollarStats';
203
- readonly packageSubpath: 'one-dollar-stats';
204
- readonly vendor: 'one-dollar-stats';
205
- }, {
206
- readonly consentCategory: 'measurement';
207
- readonly docsSlug: 'hotjar';
208
- readonly hint: 'Heatmaps and session recordings';
209
- readonly integrationCategory: 'analytics';
210
- readonly key: 'hotjar';
211
- readonly label: 'Hotjar';
212
- readonly packageSubpath: 'hotjar';
213
- readonly vendor: 'hotjar';
214
- }, {
215
- readonly consentCategory: 'measurement';
216
- readonly docsSlug: 'hightouch';
217
- readonly hint: 'Customer data platform events';
218
- readonly integrationCategory: 'analytics';
219
- readonly key: 'hightouch';
220
- readonly label: 'Hightouch';
221
- readonly packageSubpath: 'hightouch';
222
- readonly vendor: 'hightouch';
223
- }, {
224
- readonly consentCategory: 'measurement';
225
- readonly docsSlug: 'rudderstack';
226
- readonly hint: 'Customer data platform events';
227
- readonly integrationCategory: 'analytics';
228
- readonly key: 'rudderstack';
229
- readonly label: 'RudderStack';
230
- readonly packageSubpath: 'rudderstack';
231
- readonly vendor: 'rudderstack';
232
- }, {
233
- readonly consentCategory: 'measurement';
234
- readonly docsSlug: 'logrocket';
235
- readonly hint: 'Session replay and monitoring';
236
- readonly integrationCategory: 'analytics';
237
- readonly key: 'logRocket';
238
- readonly label: 'LogRocket';
239
- readonly packageSubpath: 'logrocket';
240
- readonly vendor: 'logrocket';
241
- }, {
242
- readonly consentCategory: 'measurement';
243
- readonly docsSlug: 'matomo-analytics';
244
- readonly hint: 'Self-hosted privacy analytics';
245
- readonly integrationCategory: 'analytics';
246
- readonly key: 'matomoAnalytics';
247
- readonly label: 'Matomo Analytics';
248
- readonly packageSubpath: 'matomo-analytics';
249
- readonly vendor: 'matomo-analytics';
250
- }, {
251
- readonly consentCategory: 'measurement';
252
- readonly docsSlug: 'posthog';
253
- readonly hint: 'Product analytics';
254
- readonly integrationCategory: 'analytics';
255
- readonly key: 'posthog';
256
- readonly label: 'PostHog';
257
- readonly packageSubpath: 'posthog';
258
- readonly vendor: 'posthog';
259
- }, {
260
- readonly consentCategory: 'measurement';
261
- readonly docsSlug: 'promptwatch';
262
- readonly hint: 'AI traffic analytics';
263
- readonly integrationCategory: 'analytics';
264
- readonly key: 'promptwatch';
265
- readonly label: 'Promptwatch';
266
- readonly packageSubpath: 'promptwatch';
267
- readonly vendor: 'promptwatch';
268
- }, {
269
- readonly consentCategory: 'measurement';
270
- readonly docsSlug: 'pirsch';
271
- readonly hint: 'Privacy-friendly cookieless analytics';
272
- readonly integrationCategory: 'analytics';
273
- readonly key: 'pirsch';
274
- readonly label: 'Pirsch';
275
- readonly packageSubpath: 'pirsch';
276
- readonly vendor: 'pirsch';
277
- }, {
278
- readonly consentCategory: 'measurement';
279
- readonly docsSlug: 'segment';
280
- readonly hint: 'Customer data platform';
281
- readonly integrationCategory: 'analytics';
282
- readonly key: 'segment';
283
- readonly label: 'Segment';
284
- readonly packageSubpath: 'segment';
285
- readonly vendor: 'segment';
286
- }, {
287
- readonly consentCategory: 'measurement';
288
- readonly docsSlug: 'rybbit-analytics';
289
- readonly hint: 'Privacy-friendly web analytics';
290
- readonly integrationCategory: 'analytics';
291
- readonly key: 'rybbitAnalytics';
292
- readonly label: 'Rybbit Analytics';
293
- readonly packageSubpath: 'rybbit-analytics';
294
- readonly vendor: 'rybbit-analytics';
295
- }, {
296
- readonly consentCategory: 'measurement';
297
- readonly docsSlug: 'plausible-analytics';
298
- readonly hint: 'Privacy-friendly cookieless analytics';
299
- readonly integrationCategory: 'analytics';
300
- readonly key: 'plausibleAnalytics';
301
- readonly label: 'Plausible Analytics';
302
- readonly packageSubpath: 'plausible-analytics';
303
- readonly vendor: 'plausible-analytics';
304
- }, {
305
- readonly consentCategory: 'measurement';
306
- readonly docsSlug: 'umami-analytics';
307
- readonly hint: 'Open-source cookieless analytics';
308
- readonly integrationCategory: 'analytics';
309
- readonly key: 'umamiAnalytics';
310
- readonly label: 'Umami Analytics';
311
- readonly packageSubpath: 'umami-analytics';
312
- readonly vendor: 'umami-analytics';
313
- }, {
314
- readonly consentCategory: 'measurement';
315
- readonly docsSlug: 'vercel-analytics';
316
- readonly hint: 'Vercel web analytics';
317
- readonly integrationCategory: 'analytics';
318
- readonly key: 'vercelAnalytics';
319
- readonly label: 'Vercel Analytics';
320
- readonly packageSubpath: 'vercel-analytics';
321
- readonly vendor: 'vercel-analytics';
322
- }, {
323
- readonly consentCategory: 'functionality';
324
- readonly docsSlug: 'crisp';
325
- readonly hint: 'Live chat widget';
326
- readonly integrationCategory: 'functional';
327
- readonly key: 'crisp';
328
- readonly label: 'Crisp';
329
- readonly packageSubpath: 'crisp';
330
- readonly vendor: 'crisp';
331
- }, {
332
- readonly consentCategory: 'functionality';
333
- readonly docsSlug: 'front-chat';
334
- readonly hint: 'Live chat widget';
335
- readonly integrationCategory: 'functional';
336
- readonly key: 'frontChat';
337
- readonly label: 'Front Chat';
338
- readonly packageSubpath: 'front-chat';
339
- readonly vendor: 'front-chat';
340
- }, {
341
- readonly consentCategory: 'functionality';
342
- readonly docsSlug: 'intercom';
343
- readonly hint: 'Messenger and live chat widget';
344
- readonly integrationCategory: 'functional';
345
- readonly key: 'intercom';
346
- readonly label: 'Intercom';
347
- readonly packageSubpath: 'intercom';
348
- readonly vendor: 'intercom';
349
- }, {
350
- readonly consentCategory: 'marketing';
351
- readonly docsSlug: 'meta-pixel';
352
- readonly hint: 'Facebook/Instagram tracking';
353
- readonly integrationCategory: 'ads-and-pixels';
354
- readonly key: 'metaPixel';
355
- readonly label: 'Meta Pixel';
356
- readonly packageSubpath: 'meta-pixel';
357
- readonly vendor: 'meta-pixel';
358
- }, {
359
- readonly consentCategory: 'marketing';
360
- readonly docsSlug: 'openai-pixel';
361
- readonly hint: 'ChatGPT Ads conversion measurement';
362
- readonly integrationCategory: 'ads-and-pixels';
363
- readonly key: 'openaiPixel';
364
- readonly label: 'OpenAI Pixel (ChatGPT Ads)';
365
- readonly packageSubpath: 'openai-pixel';
366
- readonly vendor: 'openai-pixel';
367
- }, {
368
- readonly consentCategory: 'marketing';
369
- readonly docsSlug: 'pinterest-tag';
370
- readonly hint: 'Pinterest ads tracking';
371
- readonly integrationCategory: 'ads-and-pixels';
372
- readonly key: 'pinterestTag';
373
- readonly label: 'Pinterest Tag';
374
- readonly packageSubpath: 'pinterest-tag';
375
- readonly vendor: 'pinterest-tag';
376
- }, {
377
- readonly consentCategory: 'marketing';
378
- readonly docsSlug: 'reddit-pixel';
379
- readonly hint: 'Reddit ads tracking';
380
- readonly integrationCategory: 'ads-and-pixels';
381
- readonly key: 'redditPixel';
382
- readonly label: 'Reddit Pixel';
383
- readonly packageSubpath: 'reddit-pixel';
384
- readonly vendor: 'reddit-pixel';
385
- }, {
386
- readonly consentCategory: 'marketing';
387
- readonly docsSlug: 'tiktok-pixel';
388
- readonly hint: 'TikTok ads tracking';
389
- readonly integrationCategory: 'ads-and-pixels';
390
- readonly key: 'tiktokPixel';
391
- readonly label: 'TikTok Pixel';
392
- readonly packageSubpath: 'tiktok-pixel';
393
- readonly vendor: 'tiktok-pixel';
394
- }, {
395
- readonly consentCategory: 'marketing';
396
- readonly docsSlug: 'linkedin-insights';
397
- readonly hint: 'LinkedIn conversion tracking';
398
- readonly integrationCategory: 'ads-and-pixels';
399
- readonly key: 'linkedinInsights';
400
- readonly label: 'LinkedIn Insight Tag';
401
- readonly packageSubpath: 'linkedin-insights';
402
- readonly vendor: 'linkedin-insights';
403
- }, {
404
- readonly consentCategory: 'marketing';
405
- readonly docsSlug: 'microsoft-uet';
406
- readonly hint: 'Bing Ads tracking';
407
- readonly integrationCategory: 'ads-and-pixels';
408
- readonly key: 'microsoftUet';
409
- readonly label: 'Microsoft UET';
410
- readonly packageSubpath: 'microsoft-uet';
411
- readonly vendor: 'microsoft-uet';
412
- }, {
413
- readonly consentCategory: 'marketing';
414
- readonly docsSlug: 'snapchat-pixel';
415
- readonly hint: 'Snapchat ads tracking';
416
- readonly integrationCategory: 'ads-and-pixels';
417
- readonly key: 'snapchatPixel';
418
- readonly label: 'Snapchat Pixel';
419
- readonly packageSubpath: 'snapchat-pixel';
420
- readonly vendor: 'snapchat-pixel';
421
- }, {
422
- readonly consentCategory: 'marketing';
423
- readonly docsSlug: 'x-pixel';
424
- readonly hint: 'X/Twitter conversion tracking';
425
- readonly integrationCategory: 'ads-and-pixels';
426
- readonly key: 'xPixel';
427
- readonly label: 'X (Twitter) Pixel';
428
- readonly packageSubpath: 'x-pixel';
429
- readonly vendor: 'x-pixel';
430
- }];
431
- /**
432
- * Concrete registry entry type inferred from `builtInScriptIntegrations`.
433
- */
434
- export type BuiltInScriptIntegration = (typeof builtInScriptIntegrations)[number];
435
- /**
436
- * Union of stable keys for built-in integrations.
437
- */
438
- export type BuiltInScriptIntegrationKey = BuiltInScriptIntegration['key'];
439
- /**
440
- * Union of public package subpaths for built-in integrations.
441
- */
442
- export type BuiltInScriptIntegrationSubpath = BuiltInScriptIntegration['packageSubpath'];
443
- /**
444
- * Looks up a built-in integration by its registry key.
445
- *
446
- * @param key - Stable integration key.
447
- * @returns The matching built-in integration entry.
448
- * @throws {Error}("Unknown built-in script integration: <key>")` when the key is
449
- * not present. Catch this when accepting untrusted or user-provided keys.
450
- *
451
- * @example
452
- * ```ts
453
- * const integration = getBuiltInScriptIntegration('metaPixel');
454
- * console.log(integration.packageSubpath); // "meta-pixel"
455
- * ```
456
- */
457
- export declare const getBuiltInScriptIntegration: (key: BuiltInScriptIntegrationKey) => BuiltInScriptIntegration;
458
- /**
459
- * Finds a built-in integration by its public package subpath.
460
- *
461
- * @param subpath - Kebab-case subpath such as `google-tag`.
462
- * @returns The matching integration, or `undefined` when no entry matches.
463
- *
464
- * @example
465
- * ```ts
466
- * const integration = getBuiltInScriptIntegrationBySubpath('meta-pixel');
467
- * console.log(integration?.label); // "Meta Pixel"
468
- * ```
469
- */
470
- export declare const getBuiltInScriptIntegrationBySubpath: (subpath: string) => BuiltInScriptIntegration | undefined;
471
- /**
472
- * Finds a built-in integration by the emitted script vendor id.
473
- *
474
- * Use this to connect a resolved manifest/script id back to registry metadata.
475
- *
476
- * @param vendor - Vendor id emitted as `Script.id`.
477
- * @returns The matching integration, or `undefined` when no entry matches.
478
- *
479
- * @example
480
- * ```ts
481
- * const integration = getBuiltInScriptIntegrationByVendor('google-tag-manager');
482
- * console.log(integration?.label); // "Google Tag Manager"
483
- * ```
484
- */
485
- export declare const getBuiltInScriptIntegrationByVendor: (vendor: string) => BuiltInScriptIntegration | undefined;
1
+ /** @deprecated Use @c15t/integrations/registry. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/registry';
@@ -1,9 +1,2 @@
1
- import type { Script } from '@c15t/core';
2
- import type { VendorManifest } from './types.js';
3
- /**
4
- * Compiles a `VendorManifest` + config into a `Script` object.
5
- *
6
- * This compatibility wrapper preserves the existing public resolver API while
7
- * delegating to the new compile and runtime conversion phases internally.
8
- */
9
- export declare const resolveManifest: (manifest: VendorManifest, config?: Record<string, unknown>) => Script;
1
+ /** @deprecated Use @c15t/integrations/resolve. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/resolve';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use @c15t/integrations/rudderstack. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/rudderstack';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use @c15t/integrations/rybbit-analytics. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/rybbit-analytics';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use @c15t/integrations/segment. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/segment';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use @c15t/integrations/snapchat-pixel. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/snapchat-pixel';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use @c15t/integrations/tiktok-pixel. Compatibility ends in v4. */
2
+ export * from '@c15t/integrations/tiktok-pixel';