@c15t/scripts 3.0.0-alpha.1 → 3.0.0-alpha.3

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 -59
  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 -137
  13. package/dist/engine/compile.js +2 -89
  14. package/dist/engine/runtime.js +2 -448
  15. package/dist/events.js +2 -0
  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 -392
  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 -0
  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 -66
  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 -0
  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 -56
  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 -0
  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 -59
  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 -0
  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 -458
  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 -0
  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 -93
  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 -0
  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 -158
  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 -0
  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 -94
  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 -59
  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/concepts/consent-state.md +357 -0
  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 -33
  207. package/docs/customization/recipes.md +839 -47
  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 +166 -36
  212. package/docs/customization/translations.md +61 -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 +146 -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 +119 -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 +137 -0
  232. package/docs/frameworks/sveltekit/embeds.md +103 -0
  233. package/docs/frameworks/sveltekit/network-blocker.md +149 -0
  234. package/docs/frameworks/sveltekit/scripts.md +141 -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 +168 -160
  245. package/docs/integrations/ahrefs-analytics.md +153 -155
  246. package/docs/integrations/amplitude.md +163 -157
  247. package/docs/integrations/building-integrations.md +136 -37
  248. package/docs/integrations/clearbit.md +155 -155
  249. package/docs/integrations/cloudflare-web-analytics.md +157 -157
  250. package/docs/integrations/cloudflare-zaraz.md +210 -262
  251. package/docs/integrations/crisp.md +165 -159
  252. package/docs/integrations/databuddy.md +158 -174
  253. package/docs/integrations/fathom-analytics.md +159 -157
  254. package/docs/integrations/front-chat.md +322 -0
  255. package/docs/integrations/google-maps.md +119 -84
  256. package/docs/integrations/google-tag-manager.md +179 -164
  257. package/docs/integrations/google-tag.md +164 -161
  258. package/docs/integrations/heap.md +164 -156
  259. package/docs/integrations/hightouch.md +162 -158
  260. package/docs/integrations/hotjar.md +160 -156
  261. package/docs/integrations/intercom.md +184 -154
  262. package/docs/integrations/klaviyo.md +486 -0
  263. package/docs/integrations/linkedin-insights.md +175 -151
  264. package/docs/integrations/logrocket.md +161 -157
  265. package/docs/integrations/matomo-analytics.md +189 -179
  266. package/docs/integrations/meta-pixel.md +189 -151
  267. package/docs/integrations/microsoft-clarity.md +164 -156
  268. package/docs/integrations/microsoft-uet.md +149 -155
  269. package/docs/integrations/mixpanel-analytics.md +156 -161
  270. package/docs/integrations/one-dollar-stats.md +306 -0
  271. package/docs/integrations/openai-pixel.md +205 -302
  272. package/docs/integrations/overview.md +143 -83
  273. package/docs/integrations/pinterest-tag.md +329 -0
  274. package/docs/integrations/pirsch.md +170 -160
  275. package/docs/integrations/plausible-analytics.md +173 -159
  276. package/docs/integrations/posthog.md +227 -242
  277. package/docs/integrations/promptwatch.md +155 -155
  278. package/docs/integrations/reddit-pixel.md +186 -158
  279. package/docs/integrations/rudderstack.md +202 -187
  280. package/docs/integrations/rybbit-analytics.md +172 -161
  281. package/docs/integrations/segment.md +183 -155
  282. package/docs/integrations/snapchat-pixel.md +187 -157
  283. package/docs/integrations/tiktok-pixel.md +172 -151
  284. package/docs/integrations/umami-analytics.md +164 -159
  285. package/docs/integrations/vercel-analytics.md +167 -158
  286. package/docs/integrations/x-pixel.md +177 -151
  287. package/docs/integrations/youtube.md +122 -87
  288. package/docs/upgrade-v3.md +490 -354
  289. package/package.json +12 -236
  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 -94
  295. package/docs/frameworks/next/script-loader.md +0 -210
  296. package/docs/frameworks/react/script-loader.md +0 -63
  297. package/docs/guides/consent-state.md +0 -60
  298. package/docs/guides/deployment-modes.md +0 -75
  299. package/docs/integrations/clear-on-revocation.md +0 -167
  300. package/docs/integrations/granular-consent.md +0 -208
@@ -1,458 +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: 'hotjar';
199
- readonly hint: 'Heatmaps and session recordings';
200
- readonly integrationCategory: 'analytics';
201
- readonly key: 'hotjar';
202
- readonly label: 'Hotjar';
203
- readonly packageSubpath: 'hotjar';
204
- readonly vendor: 'hotjar';
205
- }, {
206
- readonly consentCategory: 'measurement';
207
- readonly docsSlug: 'hightouch';
208
- readonly hint: 'Customer data platform events';
209
- readonly integrationCategory: 'analytics';
210
- readonly key: 'hightouch';
211
- readonly label: 'Hightouch';
212
- readonly packageSubpath: 'hightouch';
213
- readonly vendor: 'hightouch';
214
- }, {
215
- readonly consentCategory: 'measurement';
216
- readonly docsSlug: 'rudderstack';
217
- readonly hint: 'Customer data platform events';
218
- readonly integrationCategory: 'analytics';
219
- readonly key: 'rudderstack';
220
- readonly label: 'RudderStack';
221
- readonly packageSubpath: 'rudderstack';
222
- readonly vendor: 'rudderstack';
223
- }, {
224
- readonly consentCategory: 'measurement';
225
- readonly docsSlug: 'logrocket';
226
- readonly hint: 'Session replay and monitoring';
227
- readonly integrationCategory: 'analytics';
228
- readonly key: 'logRocket';
229
- readonly label: 'LogRocket';
230
- readonly packageSubpath: 'logrocket';
231
- readonly vendor: 'logrocket';
232
- }, {
233
- readonly consentCategory: 'measurement';
234
- readonly docsSlug: 'matomo-analytics';
235
- readonly hint: 'Self-hosted privacy analytics';
236
- readonly integrationCategory: 'analytics';
237
- readonly key: 'matomoAnalytics';
238
- readonly label: 'Matomo Analytics';
239
- readonly packageSubpath: 'matomo-analytics';
240
- readonly vendor: 'matomo-analytics';
241
- }, {
242
- readonly consentCategory: 'measurement';
243
- readonly docsSlug: 'posthog';
244
- readonly hint: 'Product analytics';
245
- readonly integrationCategory: 'analytics';
246
- readonly key: 'posthog';
247
- readonly label: 'PostHog';
248
- readonly packageSubpath: 'posthog';
249
- readonly vendor: 'posthog';
250
- }, {
251
- readonly consentCategory: 'measurement';
252
- readonly docsSlug: 'promptwatch';
253
- readonly hint: 'AI traffic analytics';
254
- readonly integrationCategory: 'analytics';
255
- readonly key: 'promptwatch';
256
- readonly label: 'Promptwatch';
257
- readonly packageSubpath: 'promptwatch';
258
- readonly vendor: 'promptwatch';
259
- }, {
260
- readonly consentCategory: 'measurement';
261
- readonly docsSlug: 'pirsch';
262
- readonly hint: 'Privacy-friendly cookieless analytics';
263
- readonly integrationCategory: 'analytics';
264
- readonly key: 'pirsch';
265
- readonly label: 'Pirsch';
266
- readonly packageSubpath: 'pirsch';
267
- readonly vendor: 'pirsch';
268
- }, {
269
- readonly consentCategory: 'measurement';
270
- readonly docsSlug: 'segment';
271
- readonly hint: 'Customer data platform';
272
- readonly integrationCategory: 'analytics';
273
- readonly key: 'segment';
274
- readonly label: 'Segment';
275
- readonly packageSubpath: 'segment';
276
- readonly vendor: 'segment';
277
- }, {
278
- readonly consentCategory: 'measurement';
279
- readonly docsSlug: 'rybbit-analytics';
280
- readonly hint: 'Privacy-friendly web analytics';
281
- readonly integrationCategory: 'analytics';
282
- readonly key: 'rybbitAnalytics';
283
- readonly label: 'Rybbit Analytics';
284
- readonly packageSubpath: 'rybbit-analytics';
285
- readonly vendor: 'rybbit-analytics';
286
- }, {
287
- readonly consentCategory: 'measurement';
288
- readonly docsSlug: 'plausible-analytics';
289
- readonly hint: 'Privacy-friendly cookieless analytics';
290
- readonly integrationCategory: 'analytics';
291
- readonly key: 'plausibleAnalytics';
292
- readonly label: 'Plausible Analytics';
293
- readonly packageSubpath: 'plausible-analytics';
294
- readonly vendor: 'plausible-analytics';
295
- }, {
296
- readonly consentCategory: 'measurement';
297
- readonly docsSlug: 'umami-analytics';
298
- readonly hint: 'Open-source cookieless analytics';
299
- readonly integrationCategory: 'analytics';
300
- readonly key: 'umamiAnalytics';
301
- readonly label: 'Umami Analytics';
302
- readonly packageSubpath: 'umami-analytics';
303
- readonly vendor: 'umami-analytics';
304
- }, {
305
- readonly consentCategory: 'measurement';
306
- readonly docsSlug: 'vercel-analytics';
307
- readonly hint: 'Vercel web analytics';
308
- readonly integrationCategory: 'analytics';
309
- readonly key: 'vercelAnalytics';
310
- readonly label: 'Vercel Analytics';
311
- readonly packageSubpath: 'vercel-analytics';
312
- readonly vendor: 'vercel-analytics';
313
- }, {
314
- readonly consentCategory: 'functionality';
315
- readonly docsSlug: 'crisp';
316
- readonly hint: 'Live chat widget';
317
- readonly integrationCategory: 'functional';
318
- readonly key: 'crisp';
319
- readonly label: 'Crisp';
320
- readonly packageSubpath: 'crisp';
321
- readonly vendor: 'crisp';
322
- }, {
323
- readonly consentCategory: 'functionality';
324
- readonly docsSlug: 'intercom';
325
- readonly hint: 'Messenger and live chat widget';
326
- readonly integrationCategory: 'functional';
327
- readonly key: 'intercom';
328
- readonly label: 'Intercom';
329
- readonly packageSubpath: 'intercom';
330
- readonly vendor: 'intercom';
331
- }, {
332
- readonly consentCategory: 'marketing';
333
- readonly docsSlug: 'meta-pixel';
334
- readonly hint: 'Facebook/Instagram tracking';
335
- readonly integrationCategory: 'ads-and-pixels';
336
- readonly key: 'metaPixel';
337
- readonly label: 'Meta Pixel';
338
- readonly packageSubpath: 'meta-pixel';
339
- readonly vendor: 'meta-pixel';
340
- }, {
341
- readonly consentCategory: 'marketing';
342
- readonly docsSlug: 'openai-pixel';
343
- readonly hint: 'ChatGPT Ads conversion measurement';
344
- readonly integrationCategory: 'ads-and-pixels';
345
- readonly key: 'openaiPixel';
346
- readonly label: 'OpenAI Pixel (ChatGPT Ads)';
347
- readonly packageSubpath: 'openai-pixel';
348
- readonly vendor: 'openai-pixel';
349
- }, {
350
- readonly consentCategory: 'marketing';
351
- readonly docsSlug: 'reddit-pixel';
352
- readonly hint: 'Reddit ads tracking';
353
- readonly integrationCategory: 'ads-and-pixels';
354
- readonly key: 'redditPixel';
355
- readonly label: 'Reddit Pixel';
356
- readonly packageSubpath: 'reddit-pixel';
357
- readonly vendor: 'reddit-pixel';
358
- }, {
359
- readonly consentCategory: 'marketing';
360
- readonly docsSlug: 'tiktok-pixel';
361
- readonly hint: 'TikTok ads tracking';
362
- readonly integrationCategory: 'ads-and-pixels';
363
- readonly key: 'tiktokPixel';
364
- readonly label: 'TikTok Pixel';
365
- readonly packageSubpath: 'tiktok-pixel';
366
- readonly vendor: 'tiktok-pixel';
367
- }, {
368
- readonly consentCategory: 'marketing';
369
- readonly docsSlug: 'linkedin-insights';
370
- readonly hint: 'LinkedIn conversion tracking';
371
- readonly integrationCategory: 'ads-and-pixels';
372
- readonly key: 'linkedinInsights';
373
- readonly label: 'LinkedIn Insight Tag';
374
- readonly packageSubpath: 'linkedin-insights';
375
- readonly vendor: 'linkedin-insights';
376
- }, {
377
- readonly consentCategory: 'marketing';
378
- readonly docsSlug: 'microsoft-uet';
379
- readonly hint: 'Bing Ads tracking';
380
- readonly integrationCategory: 'ads-and-pixels';
381
- readonly key: 'microsoftUet';
382
- readonly label: 'Microsoft UET';
383
- readonly packageSubpath: 'microsoft-uet';
384
- readonly vendor: 'microsoft-uet';
385
- }, {
386
- readonly consentCategory: 'marketing';
387
- readonly docsSlug: 'snapchat-pixel';
388
- readonly hint: 'Snapchat ads tracking';
389
- readonly integrationCategory: 'ads-and-pixels';
390
- readonly key: 'snapchatPixel';
391
- readonly label: 'Snapchat Pixel';
392
- readonly packageSubpath: 'snapchat-pixel';
393
- readonly vendor: 'snapchat-pixel';
394
- }, {
395
- readonly consentCategory: 'marketing';
396
- readonly docsSlug: 'x-pixel';
397
- readonly hint: 'X/Twitter conversion tracking';
398
- readonly integrationCategory: 'ads-and-pixels';
399
- readonly key: 'xPixel';
400
- readonly label: 'X (Twitter) Pixel';
401
- readonly packageSubpath: 'x-pixel';
402
- readonly vendor: 'x-pixel';
403
- }];
404
- /**
405
- * Concrete registry entry type inferred from `builtInScriptIntegrations`.
406
- */
407
- export type BuiltInScriptIntegration = (typeof builtInScriptIntegrations)[number];
408
- /**
409
- * Union of stable keys for built-in integrations.
410
- */
411
- export type BuiltInScriptIntegrationKey = BuiltInScriptIntegration['key'];
412
- /**
413
- * Union of public package subpaths for built-in integrations.
414
- */
415
- export type BuiltInScriptIntegrationSubpath = BuiltInScriptIntegration['packageSubpath'];
416
- /**
417
- * Looks up a built-in integration by its registry key.
418
- *
419
- * @param key - Stable integration key.
420
- * @returns The matching built-in integration entry.
421
- * @throws {Error}("Unknown built-in script integration: <key>")` when the key is
422
- * not present. Catch this when accepting untrusted or user-provided keys.
423
- *
424
- * @example
425
- * ```ts
426
- * const integration = getBuiltInScriptIntegration('metaPixel');
427
- * console.log(integration.packageSubpath); // "meta-pixel"
428
- * ```
429
- */
430
- export declare const getBuiltInScriptIntegration: (key: BuiltInScriptIntegrationKey) => BuiltInScriptIntegration;
431
- /**
432
- * Finds a built-in integration by its public package subpath.
433
- *
434
- * @param subpath - Kebab-case subpath such as `google-tag`.
435
- * @returns The matching integration, or `undefined` when no entry matches.
436
- *
437
- * @example
438
- * ```ts
439
- * const integration = getBuiltInScriptIntegrationBySubpath('meta-pixel');
440
- * console.log(integration?.label); // "Meta Pixel"
441
- * ```
442
- */
443
- export declare const getBuiltInScriptIntegrationBySubpath: (subpath: string) => BuiltInScriptIntegration | undefined;
444
- /**
445
- * Finds a built-in integration by the emitted script vendor id.
446
- *
447
- * Use this to connect a resolved manifest/script id back to registry metadata.
448
- *
449
- * @param vendor - Vendor id emitted as `Script.id`.
450
- * @returns The matching integration, or `undefined` when no entry matches.
451
- *
452
- * @example
453
- * ```ts
454
- * const integration = getBuiltInScriptIntegrationByVendor('google-tag-manager');
455
- * console.log(integration?.label); // "Google Tag Manager"
456
- * ```
457
- */
458
- 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';