@nuxt/scripts 1.0.0-beta.7 → 1.0.0-rc.1

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 (256) hide show
  1. package/dist/devtools-client/200.html +1 -0
  2. package/dist/devtools-client/404.html +1 -0
  3. package/dist/devtools-client/_fonts/4ppnHhMi-pBsWSPo7mY0avYxlDoAg1N3PTzCwXLZ5rA-d9oibkGnTd1JL3tc_xnaVgBLYmOB8kjrK2cvZaqwj9s.woff2 +0 -0
  4. package/dist/devtools-client/_fonts/4qBuU9MRVUlPZNPSF7Xom_sK8RBEnfYu-9VXFrdq8A8-8TDwLE1HAj1sQn7XxVWtM_7sIaPM-DTdO3Pf8U2DF1U.woff2 +0 -0
  5. package/dist/devtools-client/_fonts/6dYsbWUd_BpKJ7mdDihgOcya1gHXLpJBuMYXux3WMjE-q3fYNS8YbW5n7ZeXI2vSNgkRWW5VDPKAl51SNTjG2qk.woff2 +0 -0
  6. package/dist/devtools-client/_fonts/Lr-hqqZZsYmCt0ITUlr1CUrWim9fsKvoDFZliMxgNHY-iTa_Yt_PzhOY9TX7ZXdSlEPim6iRt92xhECwaxWxd5w.woff2 +0 -0
  7. package/dist/devtools-client/_fonts/OknHvWI6KtYn1JQBzX7eSpNDBQ8520F9TvSUJYkVf6A-xeZn9253svK_8Q2LD0XEruY_MnEsuCRO5LenPoggC0Y.woff2 +0 -0
  8. package/dist/devtools-client/_fonts/PV2hrQG6wq5BlIPDjdL1IcOflycaghyt5MHzlBqZtlo-lb_WexLz3VZqfTN0oi554iBH5tT2j2UFEV-XErCAS3E.woff2 +0 -0
  9. package/dist/devtools-client/_fonts/UA7OtwYHwGN_HjcVGTdmiQxUit7FlqkCwxVUWSeXVnQ-B4OXCFOL_tWrYODpQTc07aMaj0c2cewTOmBRWR9tD-A.woff2 +0 -0
  10. package/dist/devtools-client/_fonts/VE4cDVCv5MxbFM7ZLoLCGbIpNd71zhp7MDI9lmN5Y7I-xZyDYCUVrd6LV8eVGF3Um3UZjBFuUtDGtvdyTBBRYBo.woff2 +0 -0
  11. package/dist/devtools-client/_fonts/fVoGbnMbBFd5L9BBp9fUPavUSkZ_EmsQNSyadkT-108-U4T0khaeLQSIhtt9eVvaCEKJjtWJ4ioRJOf8hvqkWY0.woff2 +0 -0
  12. package/dist/devtools-client/_fonts/lQAxeCEs1R0Lw-H9XRU1RlOARQN8J6npRsPjyEDMe5s-_DUSLEkO3tKTuun_gSnDLoQPVEnpOnyqZMOw0ByZ6PA.woff2 +0 -0
  13. package/dist/devtools-client/_fonts/lntlqNHKLV2n82yTwMde70QqOjcfLE2XJ5oKZ3vRPWc-z6TxpIZQdWXztWLr9_OFWqt_WJJoeGtuK_-XQMZGQwE.woff2 +0 -0
  14. package/dist/devtools-client/_fonts/qxAYvKsXWeYv731eb-h5TRurcdIP_W44mpNdX-HABAk-zUDeMEFlNtNbrwvT9JxLEBg0TphGy70O6RfIoIX_ZwU.woff2 +0 -0
  15. package/dist/devtools-client/_nuxt/B3kN3DAy.js +1 -0
  16. package/dist/devtools-client/_nuxt/B8PEiB0p.js +1 -0
  17. package/dist/devtools-client/_nuxt/C8jhSQ8l.js +1 -0
  18. package/dist/devtools-client/_nuxt/CJD6wrkT.js +188 -0
  19. package/dist/devtools-client/_nuxt/CfOsp0mU.js +1 -0
  20. package/dist/devtools-client/_nuxt/DKL6PHO3.js +1 -0
  21. package/dist/devtools-client/_nuxt/ajngqPCs.js +1 -0
  22. package/dist/devtools-client/_nuxt/builds/latest.json +1 -0
  23. package/dist/devtools-client/_nuxt/builds/meta/b800a0be-5cab-4ea6-89e3-dd3a85690a73.json +1 -0
  24. package/dist/devtools-client/_nuxt/dlaR8P-P.js +1 -0
  25. package/dist/devtools-client/_nuxt/entry.BwpOBArY.css +1 -0
  26. package/dist/devtools-client/_nuxt/error-404.CvOVjXeC.css +1 -0
  27. package/dist/devtools-client/_nuxt/error-500.BIm53nmx.css +1 -0
  28. package/dist/devtools-client/_nuxt/first-party.C8Ha4JLM.css +1 -0
  29. package/dist/devtools-client/_nuxt/index.CA-OpSj0.css +1 -0
  30. package/dist/devtools-client/_nuxt/registry.B9lnjF_b.css +1 -0
  31. package/dist/devtools-client/_nuxt/wDzz0qaB.js +1 -0
  32. package/dist/devtools-client/docs/index.html +1 -0
  33. package/dist/devtools-client/first-party/index.html +1 -0
  34. package/dist/devtools-client/index.html +1 -0
  35. package/dist/devtools-client/registry/index.html +1 -0
  36. package/dist/module.d.mts +29 -84
  37. package/dist/module.d.ts +121 -0
  38. package/dist/module.json +1 -1
  39. package/dist/module.mjs +939 -755
  40. package/dist/registry.d.mts +91 -4
  41. package/dist/registry.d.ts +93 -0
  42. package/dist/registry.mjs +668 -326
  43. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.d.vue.ts +15 -79
  44. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue +78 -180
  45. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue.d.ts +15 -79
  46. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.d.vue.ts +6 -55
  47. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue +12 -83
  48. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue.d.ts +6 -55
  49. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.d.vue.ts +5 -1
  50. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue +24 -38
  51. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue.d.ts +5 -1
  52. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.d.vue.ts +43 -0
  53. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue +60 -0
  54. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue.d.ts +43 -0
  55. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.d.vue.ts +4 -0
  56. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue +22 -26
  57. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue.d.ts +4 -0
  58. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.d.vue.ts +9 -5
  59. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue +56 -57
  60. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue.d.ts +9 -5
  61. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.d.vue.ts +24 -41
  62. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue +69 -73
  63. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue.d.ts +24 -41
  64. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.d.vue.ts +36 -4
  65. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue +82 -37
  66. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue.d.ts +36 -4
  67. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.d.vue.ts +78 -0
  68. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue +222 -0
  69. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue.d.ts +78 -0
  70. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.d.vue.ts +10 -3
  71. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue +9 -41
  72. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue.d.ts +10 -3
  73. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.d.vue.ts +7 -3
  74. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue +23 -38
  75. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue.d.ts +7 -3
  76. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.d.vue.ts +7 -3
  77. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue +23 -38
  78. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue.d.ts +7 -3
  79. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.d.vue.ts +7 -3
  80. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue +24 -38
  81. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue.d.ts +7 -3
  82. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.d.vue.ts +200 -0
  83. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue +165 -0
  84. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue.d.ts +200 -0
  85. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.d.ts +13 -0
  86. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.js +8 -0
  87. package/dist/runtime/components/GoogleMaps/injectionKeys.d.ts +10 -0
  88. package/dist/runtime/components/GoogleMaps/injectionKeys.js +2 -0
  89. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.d.ts +48 -0
  90. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.js +51 -0
  91. package/dist/runtime/components/ScriptBlueskyEmbed.d.vue.ts +85 -0
  92. package/dist/runtime/components/ScriptBlueskyEmbed.vue +88 -0
  93. package/dist/runtime/components/ScriptBlueskyEmbed.vue.d.ts +85 -0
  94. package/dist/runtime/components/ScriptCrisp.vue +1 -1
  95. package/dist/runtime/components/ScriptGoogleAdsense.vue +1 -1
  96. package/dist/runtime/components/ScriptGravatar.d.vue.ts +22 -0
  97. package/dist/runtime/components/ScriptGravatar.vue +46 -0
  98. package/dist/runtime/components/ScriptGravatar.vue.d.ts +22 -0
  99. package/dist/runtime/components/ScriptInstagramEmbed.d.vue.ts +1 -2
  100. package/dist/runtime/components/ScriptInstagramEmbed.vue +8 -3
  101. package/dist/runtime/components/ScriptInstagramEmbed.vue.d.ts +1 -2
  102. package/dist/runtime/components/ScriptIntercom.vue +4 -3
  103. package/dist/runtime/components/ScriptPayPalButtons.d.vue.ts +43 -32
  104. package/dist/runtime/components/ScriptPayPalButtons.vue +48 -79
  105. package/dist/runtime/components/ScriptPayPalButtons.vue.d.ts +43 -32
  106. package/dist/runtime/components/ScriptPayPalMessages.d.vue.ts +37 -23
  107. package/dist/runtime/components/ScriptPayPalMessages.vue +46 -50
  108. package/dist/runtime/components/ScriptPayPalMessages.vue.d.ts +37 -23
  109. package/dist/runtime/components/ScriptStripePricingTable.vue +2 -2
  110. package/dist/runtime/components/ScriptVimeoPlayer.d.vue.ts +9 -0
  111. package/dist/runtime/components/ScriptVimeoPlayer.vue +13 -10
  112. package/dist/runtime/components/ScriptVimeoPlayer.vue.d.ts +9 -0
  113. package/dist/runtime/components/ScriptXEmbed.d.vue.ts +0 -2
  114. package/dist/runtime/components/ScriptXEmbed.vue +14 -8
  115. package/dist/runtime/components/ScriptXEmbed.vue.d.ts +0 -2
  116. package/dist/runtime/components/ScriptYouTubePlayer.d.vue.ts +2 -2
  117. package/dist/runtime/components/ScriptYouTubePlayer.vue +11 -5
  118. package/dist/runtime/components/ScriptYouTubePlayer.vue.d.ts +2 -2
  119. package/dist/runtime/composables/useScript.js +148 -8
  120. package/dist/runtime/composables/useScriptEventPage.js +2 -2
  121. package/dist/runtime/composables/useScriptTriggerConsent.d.ts +10 -0
  122. package/dist/runtime/composables/useScriptTriggerConsent.js +33 -20
  123. package/dist/runtime/composables/useScriptTriggerElement.js +1 -1
  124. package/dist/runtime/composables/useScriptTriggerIdleTimeout.js +1 -1
  125. package/dist/runtime/devtools-standalone-bridge.client.d.ts +8 -0
  126. package/dist/runtime/devtools-standalone-bridge.client.js +50 -0
  127. package/dist/runtime/registry/bing-uet.d.ts +20 -0
  128. package/dist/runtime/registry/bing-uet.js +29 -0
  129. package/dist/runtime/registry/bluesky-embed.d.ts +116 -0
  130. package/dist/runtime/registry/bluesky-embed.js +72 -0
  131. package/dist/runtime/registry/clarity.d.ts +10 -15
  132. package/dist/runtime/registry/clarity.js +22 -31
  133. package/dist/runtime/registry/cloudflare-web-analytics.d.ts +2 -13
  134. package/dist/runtime/registry/cloudflare-web-analytics.js +2 -14
  135. package/dist/runtime/registry/crisp.d.ts +10 -40
  136. package/dist/runtime/registry/crisp.js +2 -33
  137. package/dist/runtime/registry/databuddy-analytics.d.ts +2 -35
  138. package/dist/runtime/registry/databuddy-analytics.js +20 -45
  139. package/dist/runtime/registry/fathom-analytics.d.ts +7 -26
  140. package/dist/runtime/registry/fathom-analytics.js +3 -25
  141. package/dist/runtime/registry/google-adsense.d.ts +3 -11
  142. package/dist/runtime/registry/google-adsense.js +2 -11
  143. package/dist/runtime/registry/google-analytics.d.ts +3 -5
  144. package/dist/runtime/registry/google-analytics.js +3 -8
  145. package/dist/runtime/registry/google-maps.d.ts +3 -9
  146. package/dist/runtime/registry/google-maps.js +2 -8
  147. package/dist/runtime/registry/google-recaptcha.d.ts +2 -6
  148. package/dist/runtime/registry/google-recaptcha.js +4 -12
  149. package/dist/runtime/registry/google-sign-in.d.ts +2 -13
  150. package/dist/runtime/registry/google-sign-in.js +2 -22
  151. package/dist/runtime/registry/google-tag-manager.d.ts +3 -28
  152. package/dist/runtime/registry/google-tag-manager.js +4 -27
  153. package/dist/runtime/registry/gravatar.d.ts +26 -0
  154. package/dist/runtime/registry/gravatar.js +36 -0
  155. package/dist/runtime/registry/hotjar.d.ts +4 -6
  156. package/dist/runtime/registry/hotjar.js +2 -5
  157. package/dist/runtime/registry/instagram-embed.d.ts +3 -18
  158. package/dist/runtime/registry/instagram-embed.js +4 -19
  159. package/dist/runtime/registry/intercom.d.ts +5 -13
  160. package/dist/runtime/registry/intercom.js +2 -12
  161. package/dist/runtime/registry/matomo-analytics.d.ts +3 -12
  162. package/dist/runtime/registry/matomo-analytics.js +3 -12
  163. package/dist/runtime/registry/meta-pixel.d.ts +4 -6
  164. package/dist/runtime/registry/meta-pixel.js +2 -4
  165. package/dist/runtime/registry/mixpanel-analytics.d.ts +22 -0
  166. package/dist/runtime/registry/mixpanel-analytics.js +46 -0
  167. package/dist/runtime/registry/npm.d.ts +3 -7
  168. package/dist/runtime/registry/npm.js +2 -9
  169. package/dist/runtime/registry/paypal.d.ts +4 -25
  170. package/dist/runtime/registry/paypal.js +3 -66
  171. package/dist/runtime/registry/plausible-analytics.js +19 -14
  172. package/dist/runtime/registry/posthog.d.ts +10 -12
  173. package/dist/runtime/registry/posthog.js +3 -12
  174. package/dist/runtime/registry/reddit-pixel.d.ts +5 -6
  175. package/dist/runtime/registry/reddit-pixel.js +2 -4
  176. package/dist/runtime/registry/rybbit-analytics.d.ts +2 -14
  177. package/dist/runtime/registry/rybbit-analytics.js +10 -20
  178. package/dist/runtime/registry/schemas.d.ts +982 -0
  179. package/dist/runtime/registry/schemas.js +937 -0
  180. package/dist/runtime/registry/segment.d.ts +2 -5
  181. package/dist/runtime/registry/segment.js +2 -5
  182. package/dist/runtime/registry/snapchat-pixel.d.ts +5 -34
  183. package/dist/runtime/registry/snapchat-pixel.js +2 -20
  184. package/dist/runtime/registry/stripe.d.ts +3 -4
  185. package/dist/runtime/registry/stripe.js +2 -4
  186. package/dist/runtime/registry/tiktok-pixel.d.ts +4 -7
  187. package/dist/runtime/registry/tiktok-pixel.js +2 -6
  188. package/dist/runtime/registry/umami-analytics.d.ts +2 -31
  189. package/dist/runtime/registry/umami-analytics.js +2 -36
  190. package/dist/runtime/registry/vercel-analytics.d.ts +29 -0
  191. package/dist/runtime/registry/vercel-analytics.js +84 -0
  192. package/dist/runtime/registry/vimeo-player.d.ts +2 -2
  193. package/dist/runtime/registry/vimeo-player.js +1 -1
  194. package/dist/runtime/registry/x-embed.d.ts +3 -17
  195. package/dist/runtime/registry/x-embed.js +3 -18
  196. package/dist/runtime/registry/x-pixel.d.ts +4 -7
  197. package/dist/runtime/registry/x-pixel.js +2 -5
  198. package/dist/runtime/registry/youtube-player.d.ts +7 -7
  199. package/dist/runtime/registry/youtube-player.js +1 -1
  200. package/dist/runtime/server/bluesky-embed-image.d.ts +2 -0
  201. package/dist/runtime/server/bluesky-embed-image.js +7 -0
  202. package/dist/runtime/server/bluesky-embed.d.ts +16 -0
  203. package/dist/runtime/server/bluesky-embed.js +59 -0
  204. package/dist/runtime/server/google-maps-geocode-proxy.d.ts +2 -0
  205. package/dist/runtime/server/google-maps-geocode-proxy.js +34 -0
  206. package/dist/runtime/server/google-static-maps-proxy.js +2 -13
  207. package/dist/runtime/server/gravatar-proxy.d.ts +2 -0
  208. package/dist/runtime/server/gravatar-proxy.js +46 -0
  209. package/dist/runtime/server/instagram-embed-asset.js +8 -41
  210. package/dist/runtime/server/instagram-embed-image.js +6 -53
  211. package/dist/runtime/server/instagram-embed.d.ts +16 -0
  212. package/dist/runtime/server/instagram-embed.js +176 -35
  213. package/dist/runtime/server/proxy-handler.js +101 -83
  214. package/dist/runtime/server/utils/image-proxy.d.ts +12 -0
  215. package/dist/runtime/server/utils/image-proxy.js +70 -0
  216. package/dist/runtime/server/utils/privacy.d.ts +1 -10
  217. package/dist/runtime/server/utils/privacy.js +60 -40
  218. package/dist/runtime/server/x-embed-image.js +5 -49
  219. package/dist/runtime/server/x-embed.js +3 -2
  220. package/dist/runtime/types.d.ts +272 -51
  221. package/dist/runtime/types.js +0 -2
  222. package/dist/runtime/utils/pure.d.ts +1 -1
  223. package/dist/runtime/utils.d.ts +6 -4
  224. package/dist/runtime/utils.js +31 -14
  225. package/dist/stats.d.mts +202 -0
  226. package/dist/stats.d.ts +202 -0
  227. package/dist/stats.mjs +3875 -0
  228. package/dist/types-source.d.mts +17 -0
  229. package/dist/types-source.d.ts +17 -0
  230. package/dist/types-source.mjs +3414 -0
  231. package/dist/types.d.mts +4 -2
  232. package/package.json +35 -61
  233. package/README.md +0 -86
  234. package/dist/client/200.html +0 -1
  235. package/dist/client/404.html +0 -1
  236. package/dist/client/_nuxt/BJa0m50V.js +0 -1
  237. package/dist/client/_nuxt/BPQ3VLAy.js +0 -1
  238. package/dist/client/_nuxt/Ci5iXYuB.js +0 -1
  239. package/dist/client/_nuxt/DaI2y8Uz.js +0 -162
  240. package/dist/client/_nuxt/builds/latest.json +0 -1
  241. package/dist/client/_nuxt/builds/meta/9b4fb16a-3c62-48b0-8295-126cb077b5d3.json +0 -1
  242. package/dist/client/_nuxt/entry.D45OuV0w.css +0 -1
  243. package/dist/client/_nuxt/error-404.B57D-jUQ.css +0 -1
  244. package/dist/client/_nuxt/error-500.DTHUW7BI.css +0 -1
  245. package/dist/client/_nuxt/vPLZfVXe.js +0 -1
  246. package/dist/client/index.html +0 -1
  247. package/dist/runtime/components/ScriptPayPalMarks.d.vue.ts +0 -52
  248. package/dist/runtime/components/ScriptPayPalMarks.vue +0 -69
  249. package/dist/runtime/components/ScriptPayPalMarks.vue.d.ts +0 -52
  250. package/dist/runtime/validation/mock.d.ts +0 -42
  251. package/dist/runtime/validation/mock.js +0 -21
  252. package/dist/runtime/validation/valibot.d.ts +0 -1
  253. package/dist/runtime/validation/valibot.js +0 -1
  254. /package/dist/{client → devtools-client}/_nuxt/CVO1_9PV.js +0 -0
  255. /package/dist/{client → devtools-client}/_nuxt/Cp-IABpG.js +0 -0
  256. /package/dist/{client → devtools-client}/_nuxt/D0r3Knsf.js +0 -0
@@ -1,35 +1,13 @@
1
1
  import { useRegistryScript } from "../utils.js";
2
- import { boolean, literal, object, optional, string, union } from "#nuxt-scripts-validator";
3
- export const FathomAnalyticsOptions = object({
4
- /**
5
- * The Fathom Analytics site ID.
6
- */
7
- site: string(),
8
- /**
9
- * The Fathom Analytics tracking mode.
10
- */
11
- spa: optional(union([literal("auto"), literal("history"), literal("hash")])),
12
- /**
13
- * Automatically track page views.
14
- */
15
- auto: optional(boolean()),
16
- /**
17
- * Enable canonical URL tracking.
18
- */
19
- canonical: optional(boolean()),
20
- /**
21
- * Honor Do Not Track requests.
22
- */
23
- honorDnt: optional(boolean())
24
- });
2
+ import { FathomAnalyticsOptions } from "./schemas.js";
3
+ export { FathomAnalyticsOptions };
25
4
  export function useScriptFathomAnalytics(_options) {
26
5
  return useRegistryScript("fathomAnalytics", (options) => ({
27
6
  scriptInput: {
28
7
  src: "https://cdn.usefathom.com/script.js",
29
- // can't be bundled
30
8
  // append the data attr's
31
9
  ...Object.entries(options).filter(([key]) => ["site", "spa", "auto", "canonical", "honorDnt"].includes(key)).reduce((acc, [_key, value]) => {
32
- const key = _key === "honourDnt" ? "honor-dnt" : _key;
10
+ const key = _key === "honorDnt" ? "honor-dnt" : _key;
33
11
  acc[`data-${key}`] = value;
34
12
  return acc;
35
13
  }, {})
@@ -1,15 +1,7 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const GoogleAdsenseOptions: import("valibot").ObjectSchema<{
3
- /**
4
- * The Google Adsense ID.
5
- */
6
- readonly client: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- /**
8
- * Enable or disable Auto Ads.
9
- */
10
- readonly autoAds: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
11
- }, undefined>;
12
- export type GoogleAdsenseInput = RegistryScriptInput<typeof GoogleAdsenseOptions, true, false, false>;
2
+ import { GoogleAdsenseOptions } from './schemas.js';
3
+ export { GoogleAdsenseOptions };
4
+ export type GoogleAdsenseInput = RegistryScriptInput<typeof GoogleAdsenseOptions, true, false>;
13
5
  export interface GoogleAdsenseApi {
14
6
  /**
15
7
  * The Google Adsense API.
@@ -1,16 +1,7 @@
1
1
  import { useHead } from "nuxt/app";
2
2
  import { useRegistryScript } from "../utils.js";
3
- import { object, string, optional, boolean } from "#nuxt-scripts-validator";
4
- export const GoogleAdsenseOptions = object({
5
- /**
6
- * The Google Adsense ID.
7
- */
8
- client: optional(string()),
9
- /**
10
- * Enable or disable Auto Ads.
11
- */
12
- autoAds: optional(boolean())
13
- });
3
+ import { GoogleAdsenseOptions } from "./schemas.js";
4
+ export { GoogleAdsenseOptions };
14
5
  export function useScriptGoogleAdsense(_options) {
15
6
  return useRegistryScript("googleAdsense", (options) => ({
16
7
  scriptInput: {
@@ -1,4 +1,5 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { GoogleAnalyticsOptions } from './schemas.js';
2
3
  export type GtagCustomParams = Record<string, any>;
3
4
  export type ConsentStatus = 'granted' | 'denied';
4
5
  export interface ConsentOptions {
@@ -37,7 +38,7 @@ export interface EventParameters extends GtagCustomParams {
37
38
  }>;
38
39
  [key: string]: any;
39
40
  }
40
- export type DefaultEventName = 'add_payment_info' | 'add_shipping_info' | 'add_to_cart' | 'add_to_wishlist' | 'begin_checkout' | 'purchase' | 'refund' | 'remove_from_cart' | 'select_item' | 'select_promotion' | 'view_cart' | 'view_item' | 'view_item_list' | 'view_promotion' | 'login' | 'sign_up' | 'search' | 'page_view' | 'screen_view' | string;
41
+ export type DefaultEventName = 'add_payment_info' | 'add_shipping_info' | 'add_to_cart' | 'add_to_wishlist' | 'begin_checkout' | 'purchase' | 'refund' | 'remove_from_cart' | 'select_item' | 'select_promotion' | 'view_cart' | 'view_item' | 'view_item_list' | 'view_promotion' | 'login' | 'sign_up' | 'search' | 'page_view' | 'screen_view' | (string & {});
41
42
  export interface GTag {
42
43
  (command: 'js', value: Date): void;
43
44
  (command: 'config', targetId: string, configParams?: ConfigParams): void;
@@ -55,10 +56,7 @@ export interface GoogleAnalyticsApi {
55
56
  gtag: GTag;
56
57
  dataLayer: DataLayer;
57
58
  }
58
- export declare const GoogleAnalyticsOptions: import("valibot").ObjectSchema<{
59
- readonly id: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
60
- readonly l: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
61
- }, undefined>;
59
+ export { GoogleAnalyticsOptions };
62
60
  export type GoogleAnalyticsInput = RegistryScriptInput<typeof GoogleAnalyticsOptions>;
63
61
  export declare function useScriptGoogleAnalytics<T extends GoogleAnalyticsApi>(_options?: GoogleAnalyticsInput & {
64
62
  onBeforeGtagStart?: (gtag: GTag) => void;
@@ -1,12 +1,7 @@
1
- import { withQuery } from "ufo";
2
1
  import { useRegistryScript } from "#nuxt-scripts/utils";
3
- import { object, string, optional } from "#nuxt-scripts-validator";
4
- export const GoogleAnalyticsOptions = object({
5
- id: optional(string()),
6
- // The GA4 measurement ID (format: G-XXXXXXXX)
7
- l: optional(string())
8
- // Optional global name for dataLayer (defaults to 'dataLayer')
9
- });
2
+ import { withQuery } from "ufo";
3
+ import { GoogleAnalyticsOptions } from "./schemas.js";
4
+ export { GoogleAnalyticsOptions };
10
5
  export function useScriptGoogleAnalytics(_options) {
11
6
  return useRegistryScript(_options?.key || "googleAnalytics", (options) => {
12
7
  const dataLayerName = options?.l ?? "dataLayer";
@@ -1,11 +1,6 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const GoogleMapsOptions: import("valibot").ObjectSchema<{
3
- readonly apiKey: import("valibot").StringSchema<undefined>;
4
- readonly libraries: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
5
- readonly language: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
6
- readonly region: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- readonly v: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"weekly", undefined>, import("valibot").LiteralSchema<"quarterly", undefined>, import("valibot").LiteralSchema<"beta", undefined>, import("valibot").LiteralSchema<"alpha", undefined>, import("valibot").StringSchema<undefined>], undefined>, undefined>;
8
- }, undefined>;
2
+ import { GoogleMapsOptions } from './schemas.js';
3
+ export { GoogleMapsOptions };
9
4
  export type GoogleMapsInput = RegistryScriptInput<typeof GoogleMapsOptions>;
10
5
  type MapsNamespace = typeof window.google.maps;
11
6
  export interface GoogleMapsApi {
@@ -15,10 +10,9 @@ declare global {
15
10
  interface Window {
16
11
  google: {
17
12
  maps: {
18
- __ib__(): void;
13
+ __ib__: () => void;
19
14
  };
20
15
  };
21
16
  }
22
17
  }
23
18
  export declare function useScriptGoogleMaps<T extends GoogleMapsApi>(_options?: GoogleMapsInput): import("#nuxt-scripts/types").UseScriptContext<T>;
24
- export {};
@@ -1,13 +1,7 @@
1
1
  import { withQuery } from "ufo";
2
2
  import { useRegistryScript } from "../utils.js";
3
- import { array, literal, object, optional, string, union } from "#nuxt-scripts-validator";
4
- export const GoogleMapsOptions = object({
5
- apiKey: string(),
6
- libraries: optional(array(string())),
7
- language: optional(string()),
8
- region: optional(string()),
9
- v: optional(union([literal("weekly"), literal("quarterly"), literal("beta"), literal("alpha"), string()]))
10
- });
3
+ import { GoogleMapsOptions } from "./schemas.js";
4
+ export { GoogleMapsOptions };
11
5
  export function useScriptGoogleMaps(_options) {
12
6
  let readyPromise = Promise.resolve();
13
7
  return useRegistryScript("googleMaps", (options) => {
@@ -1,10 +1,6 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const GoogleRecaptchaOptions: import("valibot").ObjectSchema<{
3
- readonly siteKey: import("valibot").StringSchema<undefined>;
4
- readonly enterprise: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
5
- readonly recaptchaNet: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
6
- readonly hl: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- }, undefined>;
2
+ import { GoogleRecaptchaOptions } from './schemas.js';
3
+ export { GoogleRecaptchaOptions };
8
4
  export type GoogleRecaptchaInput = RegistryScriptInput<typeof GoogleRecaptchaOptions>;
9
5
  export interface GoogleRecaptchaApi {
10
6
  grecaptcha: {
@@ -1,15 +1,7 @@
1
- import { withQuery } from "ufo";
2
1
  import { useRegistryScript } from "#nuxt-scripts/utils";
3
- import { object, string, optional, boolean } from "#nuxt-scripts-validator";
4
- export const GoogleRecaptchaOptions = object({
5
- siteKey: string(),
6
- // Use enterprise.js instead of api.js
7
- enterprise: optional(boolean()),
8
- // Use recaptcha.net (works in China)
9
- recaptchaNet: optional(boolean()),
10
- // Language code
11
- hl: optional(string())
12
- });
2
+ import { withQuery } from "ufo";
3
+ import { GoogleRecaptchaOptions } from "./schemas.js";
4
+ export { GoogleRecaptchaOptions };
13
5
  export function useScriptGoogleRecaptcha(_options) {
14
6
  return useRegistryScript(_options?.key || "googleRecaptcha", (options) => {
15
7
  const baseUrl = options?.recaptchaNet ? "https://www.recaptcha.net/recaptcha" : "https://www.google.com/recaptcha";
@@ -32,7 +24,7 @@ export function useScriptGoogleRecaptcha(_options) {
32
24
  const w = window;
33
25
  w.grecaptcha = w.grecaptcha || {};
34
26
  const readyFn = function(cb) {
35
- (w.___grecaptcha_cfg = w.___grecaptcha_cfg || {}).fns = (w.___grecaptcha_cfg.fns || []).concat([cb]);
27
+ (w.___grecaptcha_cfg = w.___grecaptcha_cfg || {}).fns = [...w.___grecaptcha_cfg.fns || [], ...[cb]];
36
28
  };
37
29
  w.grecaptcha.ready = w.grecaptcha.ready || readyFn;
38
30
  if (options?.enterprise) {
@@ -1,4 +1,5 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { GoogleSignInOptions } from './schemas.js';
2
3
  export interface CredentialResponse {
3
4
  credential: string;
4
5
  select_by: 'auto' | 'user' | 'user_1tap' | 'user_2tap' | 'btn' | 'btn_confirm' | 'btn_add_session' | 'btn_confirm_add_session';
@@ -67,18 +68,6 @@ type AccountsNamespace = typeof google.accounts;
67
68
  export interface GoogleSignInApi {
68
69
  accounts: AccountsNamespace;
69
70
  }
70
- export declare const GoogleSignInOptions: import("valibot").ObjectSchema<{
71
- readonly clientId: import("valibot").StringSchema<undefined>;
72
- readonly autoSelect: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
73
- readonly context: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"signin", undefined>, import("valibot").LiteralSchema<"signup", undefined>, import("valibot").LiteralSchema<"use", undefined>], undefined>, undefined>;
74
- readonly useFedcmForPrompt: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
75
- readonly cancelOnTapOutside: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
76
- readonly uxMode: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"popup", undefined>, import("valibot").LiteralSchema<"redirect", undefined>], undefined>, undefined>;
77
- readonly loginUri: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
78
- readonly itpSupport: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
79
- readonly allowedParentOrigin: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>], undefined>, undefined>;
80
- readonly hd: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
81
- }, undefined>;
71
+ export { GoogleSignInOptions };
82
72
  export type GoogleSignInInput = RegistryScriptInput<typeof GoogleSignInOptions>;
83
73
  export declare function useScriptGoogleSignIn<T extends GoogleSignInApi>(_options?: GoogleSignInInput): import("#nuxt-scripts/types").UseScriptContext<T>;
84
- export {};
@@ -1,26 +1,6 @@
1
1
  import { useRegistryScript } from "#nuxt-scripts/utils";
2
- import { object, string, optional, boolean, array, union, literal } from "#nuxt-scripts-validator";
3
- export const GoogleSignInOptions = object({
4
- clientId: string(),
5
- // Auto-select credentials if only one is available
6
- autoSelect: optional(boolean()),
7
- // Context for One Tap (signin, signup, or use)
8
- context: optional(union([literal("signin"), literal("signup"), literal("use")])),
9
- // FedCM API support (Privacy Sandbox) - mandatory from August 2025
10
- useFedcmForPrompt: optional(boolean()),
11
- // Cancel One Tap if user clicks outside
12
- cancelOnTapOutside: optional(boolean()),
13
- // UX mode: popup or redirect
14
- uxMode: optional(union([literal("popup"), literal("redirect")])),
15
- // Login URI for redirect flow
16
- loginUri: optional(string()),
17
- // ITP (Intelligent Tracking Prevention) support
18
- itpSupport: optional(boolean()),
19
- // Allowed parent origins for iframe embedding
20
- allowedParentOrigin: optional(union([string(), array(string())])),
21
- // Hosted domain - restrict to specific Google Workspace domain
22
- hd: optional(string())
23
- });
2
+ import { GoogleSignInOptions } from "./schemas.js";
3
+ export { GoogleSignInOptions };
24
4
  export function useScriptGoogleSignIn(_options) {
25
5
  return useRegistryScript(_options?.key || "googleSignIn", () => {
26
6
  return {
@@ -1,5 +1,6 @@
1
- import type { GTag } from './google-analytics.js';
2
1
  import type { NuxtUseScriptOptions, RegistryScriptInput, UseFunctionType, UseScriptContext } from '#nuxt-scripts/types';
2
+ import type { GTag } from './google-analytics.js';
3
+ import { GoogleTagManagerOptions } from './schemas.js';
3
4
  /**
4
5
  * Improved DataLayer type that better reflects GTM's capabilities
5
6
  * Can contain either gtag event parameters or custom data objects
@@ -65,33 +66,7 @@ declare global {
65
66
  interface Window extends GoogleTagManagerApi {
66
67
  }
67
68
  }
68
- /**
69
- * GTM configuration options with improved documentation
70
- */
71
- export declare const GoogleTagManagerOptions: import("valibot").ObjectSchema<{
72
- /** GTM container ID (format: GTM-XXXXXX) */
73
- readonly id: import("valibot").StringSchema<undefined>;
74
- /** Optional dataLayer variable name */
75
- readonly l: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
76
- /** Authentication token for environment-specific container versions */
77
- readonly auth: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
78
- /** Preview environment name */
79
- readonly preview: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
80
- /** Forces GTM cookies to take precedence when true */
81
- readonly cookiesWin: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").BooleanSchema<undefined>, import("valibot").LiteralSchema<"x", undefined>], undefined>, undefined>;
82
- /** Enables debug mode when true */
83
- readonly debug: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").BooleanSchema<undefined>, import("valibot").LiteralSchema<"x", undefined>], undefined>, undefined>;
84
- /** No Personal Advertising - disables advertising features when true */
85
- readonly npa: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").BooleanSchema<undefined>, import("valibot").LiteralSchema<"1", undefined>], undefined>, undefined>;
86
- /** Custom dataLayer name (alternative to "l" property) */
87
- readonly dataLayer: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
88
- /** Environment name for environment-specific container */
89
- readonly envName: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
90
- /** Referrer policy for analytics requests */
91
- readonly authReferrerPolicy: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
92
- /** Default consent settings for GTM */
93
- readonly defaultConsent: import("valibot").OptionalSchema<import("valibot").RecordSchema<import("valibot").StringSchema<undefined>, import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").NumberSchema<undefined>], undefined>, undefined>, undefined>;
94
- }, undefined>;
69
+ export { GoogleTagManagerOptions };
95
70
  export type GoogleTagManagerInput = RegistryScriptInput<typeof GoogleTagManagerOptions>;
96
71
  /**
97
72
  * Hook to use Google Tag Manager in Nuxt applications
@@ -1,30 +1,7 @@
1
- import { withQuery } from "ufo";
2
1
  import { useRegistryScript } from "#nuxt-scripts/utils";
3
- import { object, string, optional, boolean, union, literal, record, number } from "#nuxt-scripts-validator";
4
- export const GoogleTagManagerOptions = object({
5
- /** GTM container ID (format: GTM-XXXXXX) */
6
- id: string(),
7
- /** Optional dataLayer variable name */
8
- l: optional(string()),
9
- /** Authentication token for environment-specific container versions */
10
- auth: optional(string()),
11
- /** Preview environment name */
12
- preview: optional(string()),
13
- /** Forces GTM cookies to take precedence when true */
14
- cookiesWin: optional(union([boolean(), literal("x")])),
15
- /** Enables debug mode when true */
16
- debug: optional(union([boolean(), literal("x")])),
17
- /** No Personal Advertising - disables advertising features when true */
18
- npa: optional(union([boolean(), literal("1")])),
19
- /** Custom dataLayer name (alternative to "l" property) */
20
- dataLayer: optional(string()),
21
- /** Environment name for environment-specific container */
22
- envName: optional(string()),
23
- /** Referrer policy for analytics requests */
24
- authReferrerPolicy: optional(string()),
25
- /** Default consent settings for GTM */
26
- defaultConsent: optional(record(string(), union([string(), number()])))
27
- });
2
+ import { withQuery } from "ufo";
3
+ import { GoogleTagManagerOptions } from "./schemas.js";
4
+ export { GoogleTagManagerOptions };
28
5
  export function useScriptGoogleTagManager(options) {
29
6
  const instance = useRegistryScript(
30
7
  options?.key || "googleTagManager",
@@ -64,7 +41,7 @@ export function useScriptGoogleTagManager(options) {
64
41
  if (opts.defaultConsent)
65
42
  gtag("consent", "default", opts.defaultConsent);
66
43
  window[dataLayerName].push({
67
- "gtm.start": (/* @__PURE__ */ new Date()).getTime(),
44
+ "gtm.start": Date.now(),
68
45
  "event": "gtm.js"
69
46
  });
70
47
  }
@@ -0,0 +1,26 @@
1
+ import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { GravatarOptions } from './schemas.js';
3
+ export { GravatarOptions } from './schemas.js';
4
+ export type GravatarInput = RegistryScriptInput<typeof GravatarOptions>;
5
+ export interface GravatarApi {
6
+ /**
7
+ * Get a proxied avatar URL for a given SHA256 email hash.
8
+ * When proxy mode is enabled, this routes through your server.
9
+ */
10
+ getAvatarUrl: (hash: string, options?: {
11
+ size?: number;
12
+ default?: string;
13
+ rating?: string;
14
+ }) => string;
15
+ /**
16
+ * Get a proxied avatar URL using the server-side hashing endpoint.
17
+ * The email is sent to YOUR server (not Gravatar) for hashing.
18
+ * Only available when the gravatar proxy is enabled.
19
+ */
20
+ getAvatarUrlFromEmail: (email: string, options?: {
21
+ size?: number;
22
+ default?: string;
23
+ rating?: string;
24
+ }) => string;
25
+ }
26
+ export declare function useScriptGravatar<T extends GravatarApi>(_options?: GravatarInput): import("#nuxt-scripts/types").UseScriptContext<T>;
@@ -0,0 +1,36 @@
1
+ import { scriptsPrefix, useRegistryScript } from "#nuxt-scripts/utils";
2
+ import { GravatarOptions } from "./schemas.js";
3
+ export { GravatarOptions } from "./schemas.js";
4
+ export function useScriptGravatar(_options) {
5
+ return useRegistryScript(_options?.key || "gravatar", (options) => {
6
+ const size = options?.size ?? 80;
7
+ const defaultImg = options?.default ?? "mp";
8
+ const rating = options?.rating ?? "g";
9
+ const buildQuery = (overrides) => {
10
+ const params = new URLSearchParams();
11
+ params.set("s", String(overrides?.size ?? size));
12
+ params.set("d", overrides?.default ?? defaultImg);
13
+ params.set("r", overrides?.rating ?? rating);
14
+ return params.toString();
15
+ };
16
+ return {
17
+ scriptInput: {
18
+ src: "https://secure.gravatar.com/js/gprofiles.js"
19
+ },
20
+ schema: import.meta.dev ? GravatarOptions : void 0,
21
+ scriptOptions: {
22
+ use: () => {
23
+ const prefix = scriptsPrefix();
24
+ return {
25
+ getAvatarUrl: (hash, overrides) => {
26
+ return `${prefix}/proxy/gravatar?hash=${encodeURIComponent(hash)}&${buildQuery(overrides)}`;
27
+ },
28
+ getAvatarUrlFromEmail: (email, overrides) => {
29
+ return `${prefix}/proxy/gravatar?email=${encodeURIComponent(email)}&${buildQuery(overrides)}`;
30
+ }
31
+ };
32
+ }
33
+ }
34
+ };
35
+ }, _options);
36
+ }
@@ -1,6 +1,8 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { HotjarOptions } from './schemas.js';
3
+ export { HotjarOptions };
2
4
  export interface HotjarApi {
3
- hj: ((event: 'identify', userId: string, attributes?: Record<string, any>) => void) & ((event: 'stateChange', path: string) => void) & ((event: 'event', eventName: string) => void) & ((event: string, arg?: string) => void) & ((...params: any[]) => void) & {
5
+ hj: ((event: 'identify', userId: string, attributes?: Record<string, any>) => void) & ((event: 'stateChange', path: string) => void) & ((event: 'vPageView', path: string) => void) & ((event: 'event', eventName: string) => void) & ((event: (string & {}), ...args: any[]) => void) & {
4
6
  q: any[];
5
7
  };
6
8
  }
@@ -12,9 +14,5 @@ declare global {
12
14
  };
13
15
  }
14
16
  }
15
- export declare const HotjarOptions: import("valibot").ObjectSchema<{
16
- readonly id: import("valibot").NumberSchema<undefined>;
17
- readonly sv: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
18
- }, undefined>;
19
- export type HotjarInput = RegistryScriptInput<typeof HotjarOptions, true, false, false>;
17
+ export type HotjarInput = RegistryScriptInput<typeof HotjarOptions, true, false>;
20
18
  export declare function useScriptHotjar<T extends HotjarApi>(_options?: HotjarInput): import("#nuxt-scripts/types").UseScriptContext<T>;
@@ -1,9 +1,6 @@
1
1
  import { useRegistryScript } from "../utils.js";
2
- import { number, object, optional } from "#nuxt-scripts-validator";
3
- export const HotjarOptions = object({
4
- id: number(),
5
- sv: optional(number())
6
- });
2
+ import { HotjarOptions } from "./schemas.js";
3
+ export { HotjarOptions };
7
4
  export function useScriptHotjar(_options) {
8
5
  return useRegistryScript("hotjar", (options) => ({
9
6
  scriptInput: {
@@ -1,22 +1,7 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const InstagramEmbedOptions: import("valibot").ObjectSchema<{
3
- /**
4
- * The Instagram post URL to embed
5
- * e.g., https://www.instagram.com/p/ABC123/
6
- */
7
- readonly postUrl: import("valibot").StringSchema<undefined>;
8
- /**
9
- * Whether to include captions in the embed
10
- * @default true
11
- */
12
- readonly captions: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
13
- /**
14
- * Custom API endpoint for fetching embed HTML
15
- * @default '/api/_scripts/instagram-embed'
16
- */
17
- readonly apiEndpoint: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
18
- }, undefined>;
19
- export type InstagramEmbedInput = RegistryScriptInput<typeof InstagramEmbedOptions, false, false, false>;
2
+ import { InstagramEmbedOptions } from './schemas.js';
3
+ export { InstagramEmbedOptions };
4
+ export type InstagramEmbedInput = RegistryScriptInput<typeof InstagramEmbedOptions, false, false>;
20
5
  /**
21
6
  * Extract the post shortcode from an Instagram URL
22
7
  */
@@ -1,22 +1,7 @@
1
- import { boolean, object, optional, string } from "#nuxt-scripts-validator";
2
- export const InstagramEmbedOptions = object({
3
- /**
4
- * The Instagram post URL to embed
5
- * e.g., https://www.instagram.com/p/ABC123/
6
- */
7
- postUrl: string(),
8
- /**
9
- * Whether to include captions in the embed
10
- * @default true
11
- */
12
- captions: optional(boolean()),
13
- /**
14
- * Custom API endpoint for fetching embed HTML
15
- * @default '/api/_scripts/instagram-embed'
16
- */
17
- apiEndpoint: optional(string())
18
- });
1
+ import { InstagramEmbedOptions } from "./schemas.js";
2
+ export { InstagramEmbedOptions };
3
+ const INSTAGRAM_SHORTCODE_RE = /instagram\.com\/(?:p|reel|tv)\/([^/?]+)/;
19
4
  export function extractInstagramShortcode(url) {
20
- const match = url.match(/instagram\.com\/(?:p|reel|tv)\/([^/?]+)/);
5
+ const match = url.match(INSTAGRAM_SHORTCODE_RE);
21
6
  return match?.[1];
22
7
  }
@@ -1,18 +1,10 @@
1
- import type { InferInput } from '#nuxt-scripts-validator';
2
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
3
- export declare const IntercomOptions: import("valibot").ObjectSchema<{
4
- readonly app_id: import("valibot").StringSchema<undefined>;
5
- readonly api_base: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"https://api-iam.intercom.io", undefined>, import("valibot").LiteralSchema<"https://api-iam.eu.intercom.io", undefined>, import("valibot").LiteralSchema<"https://api-iam.au.intercom.io", undefined>], undefined>, undefined>;
6
- readonly name: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- readonly email: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
8
- readonly user_id: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
9
- readonly alignment: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"left", undefined>, import("valibot").LiteralSchema<"right", undefined>], undefined>, undefined>;
10
- readonly horizontal_padding: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
11
- readonly vertical_padding: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
12
- }, undefined>;
13
- export type IntercomInput = RegistryScriptInput<typeof IntercomOptions, true, false, false>;
2
+ import type { InferInput } from 'valibot';
3
+ import { IntercomOptions } from './schemas.js';
4
+ export { IntercomOptions };
5
+ export type IntercomInput = RegistryScriptInput<typeof IntercomOptions, true, false>;
14
6
  export interface IntercomApi {
15
- Intercom: ((event: 'boot', data?: InferInput<typeof IntercomOptions>) => void) & ((event: 'shutdown') => void) & ((event: 'update', options?: InferInput<typeof IntercomOptions>) => void) & ((event: 'hide') => void) & ((event: 'show') => void) & ((event: 'showSpace', spaceName: 'home' | 'messages' | 'help' | 'news' | 'tasks' | 'tickets' | string) => void) & ((event: 'showMessages') => void) & ((event: 'showNewMessage', content?: string) => void) & ((event: 'onHide', fn: () => void) => void) & ((event: 'onShow', fn: () => void) => void) & ((event: 'onUnreadCountChange', fn: () => void) => void) & ((event: 'trackEvent', eventName: string, metadata?: Record<string, any>) => void) & ((event: 'getVisitorId') => Promise<string>) & ((event: 'startTour', tourId: string | number) => void) & ((event: 'showArticle', articleId: string | number) => void) & ((event: 'showNews', newsItemId: string | number) => void) & ((event: 'startSurvey', surveyId: string | number) => void) & ((event: 'startChecklist', checklistId: string | number) => void) & ((event: 'showTicket', ticketId: string | number) => void) & ((event: 'showConversation', conversationId: string | number) => void) & ((event: 'onUserEmailSupplied', fn: () => void) => void) & ((event: string, ...params: any[]) => void);
7
+ Intercom: ((event: 'boot', data?: InferInput<typeof IntercomOptions>) => void) & ((event: 'shutdown') => void) & ((event: 'update', options?: InferInput<typeof IntercomOptions>) => void) & ((event: 'hide') => void) & ((event: 'show') => void) & ((event: 'showSpace', spaceName: 'home' | 'messages' | 'help' | 'news' | 'tasks' | 'tickets' | (string & {})) => void) & ((event: 'showMessages') => void) & ((event: 'showNewMessage', content?: string) => void) & ((event: 'onHide', fn: () => void) => void) & ((event: 'onShow', fn: () => void) => void) & ((event: 'onUnreadCountChange', fn: () => void) => void) & ((event: 'trackEvent', eventName: string, metadata?: Record<string, any>) => void) & ((event: 'getVisitorId') => Promise<string>) & ((event: 'startTour', tourId: string | number) => void) & ((event: 'showArticle', articleId: string | number) => void) & ((event: 'showNews', newsItemId: string | number) => void) & ((event: 'startSurvey', surveyId: string | number) => void) & ((event: 'startChecklist', checklistId: string | number) => void) & ((event: 'showTicket', ticketId: string | number) => void) & ((event: 'showConversation', conversationId: string | number) => void) & ((event: 'onUserEmailSupplied', fn: () => void) => void) & ((event: (string & {}), ...params: any[]) => void);
16
8
  }
17
9
  declare global {
18
10
  interface Window extends IntercomApi {
@@ -1,17 +1,7 @@
1
1
  import { joinURL } from "ufo";
2
2
  import { useRegistryScript } from "../utils.js";
3
- import { literal, number, object, optional, string, union } from "#nuxt-scripts-validator";
4
- export const IntercomOptions = object({
5
- app_id: string(),
6
- api_base: optional(union([literal("https://api-iam.intercom.io"), literal("https://api-iam.eu.intercom.io"), literal("https://api-iam.au.intercom.io")])),
7
- name: optional(string()),
8
- email: optional(string()),
9
- user_id: optional(string()),
10
- // customizing the messenger
11
- alignment: optional(union([literal("left"), literal("right")])),
12
- horizontal_padding: optional(number()),
13
- vertical_padding: optional(number())
14
- });
3
+ import { IntercomOptions } from "./schemas.js";
4
+ export { IntercomOptions };
15
5
  export function useScriptIntercom(_options) {
16
6
  return useRegistryScript("intercom", (options) => ({
17
7
  scriptInput: {
@@ -1,15 +1,7 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const MatomoAnalyticsOptions: import("valibot").ObjectSchema<{
3
- readonly matomoUrl: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
4
- readonly siteId: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").NumberSchema<undefined>], undefined>, undefined>;
5
- readonly cloudId: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
6
- readonly trackerUrl: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- readonly trackPageView: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
8
- readonly enableLinkTracking: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
9
- readonly disableCookies: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
10
- readonly watch: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
11
- }, undefined>;
12
- export type MatomoAnalyticsInput = RegistryScriptInput<typeof MatomoAnalyticsOptions, false, false, false>;
2
+ import { MatomoAnalyticsOptions } from './schemas.js';
3
+ export { MatomoAnalyticsOptions };
4
+ export type MatomoAnalyticsInput = RegistryScriptInput<typeof MatomoAnalyticsOptions, false, false>;
13
5
  interface MatomoAnalyticsApi {
14
6
  _paq: unknown[];
15
7
  }
@@ -18,4 +10,3 @@ declare global {
18
10
  }
19
11
  }
20
12
  export declare function useScriptMatomoAnalytics<T extends MatomoAnalyticsApi>(_options?: MatomoAnalyticsInput): import("#nuxt-scripts/types").UseScriptContext<T>;
21
- export {};
@@ -1,18 +1,9 @@
1
1
  import { withBase, withHttps, withoutProtocol, withoutTrailingSlash } from "ufo";
2
- import { useRegistryScript } from "../utils.js";
3
2
  import { useScriptEventPage } from "../composables/useScriptEventPage.js";
4
- import { boolean, object, optional, string, number, union } from "#nuxt-scripts-validator";
5
3
  import { logger } from "../logger.js";
6
- export const MatomoAnalyticsOptions = object({
7
- matomoUrl: optional(string()),
8
- siteId: optional(union([string(), number()])),
9
- cloudId: optional(string()),
10
- trackerUrl: optional(string()),
11
- trackPageView: optional(boolean()),
12
- enableLinkTracking: optional(boolean()),
13
- disableCookies: optional(boolean()),
14
- watch: optional(boolean())
15
- });
4
+ import { useRegistryScript } from "../utils.js";
5
+ import { MatomoAnalyticsOptions } from "./schemas.js";
6
+ export { MatomoAnalyticsOptions };
16
7
  export function useScriptMatomoAnalytics(_options) {
17
8
  return useRegistryScript("matomoAnalytics", (options) => {
18
9
  const normalizedCloudId = options?.cloudId ? withoutTrailingSlash(withoutProtocol(options.cloudId)) : void 0;