@nuxt/scripts 1.0.0-beta.6 → 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.
- package/dist/devtools-client/200.html +1 -0
- package/dist/devtools-client/404.html +1 -0
- package/dist/devtools-client/_fonts/4ppnHhMi-pBsWSPo7mY0avYxlDoAg1N3PTzCwXLZ5rA-d9oibkGnTd1JL3tc_xnaVgBLYmOB8kjrK2cvZaqwj9s.woff2 +0 -0
- package/dist/devtools-client/_fonts/4qBuU9MRVUlPZNPSF7Xom_sK8RBEnfYu-9VXFrdq8A8-8TDwLE1HAj1sQn7XxVWtM_7sIaPM-DTdO3Pf8U2DF1U.woff2 +0 -0
- package/dist/devtools-client/_fonts/6dYsbWUd_BpKJ7mdDihgOcya1gHXLpJBuMYXux3WMjE-q3fYNS8YbW5n7ZeXI2vSNgkRWW5VDPKAl51SNTjG2qk.woff2 +0 -0
- package/dist/devtools-client/_fonts/Lr-hqqZZsYmCt0ITUlr1CUrWim9fsKvoDFZliMxgNHY-iTa_Yt_PzhOY9TX7ZXdSlEPim6iRt92xhECwaxWxd5w.woff2 +0 -0
- package/dist/devtools-client/_fonts/OknHvWI6KtYn1JQBzX7eSpNDBQ8520F9TvSUJYkVf6A-xeZn9253svK_8Q2LD0XEruY_MnEsuCRO5LenPoggC0Y.woff2 +0 -0
- package/dist/devtools-client/_fonts/PV2hrQG6wq5BlIPDjdL1IcOflycaghyt5MHzlBqZtlo-lb_WexLz3VZqfTN0oi554iBH5tT2j2UFEV-XErCAS3E.woff2 +0 -0
- package/dist/devtools-client/_fonts/UA7OtwYHwGN_HjcVGTdmiQxUit7FlqkCwxVUWSeXVnQ-B4OXCFOL_tWrYODpQTc07aMaj0c2cewTOmBRWR9tD-A.woff2 +0 -0
- package/dist/devtools-client/_fonts/VE4cDVCv5MxbFM7ZLoLCGbIpNd71zhp7MDI9lmN5Y7I-xZyDYCUVrd6LV8eVGF3Um3UZjBFuUtDGtvdyTBBRYBo.woff2 +0 -0
- package/dist/devtools-client/_fonts/fVoGbnMbBFd5L9BBp9fUPavUSkZ_EmsQNSyadkT-108-U4T0khaeLQSIhtt9eVvaCEKJjtWJ4ioRJOf8hvqkWY0.woff2 +0 -0
- package/dist/devtools-client/_fonts/lQAxeCEs1R0Lw-H9XRU1RlOARQN8J6npRsPjyEDMe5s-_DUSLEkO3tKTuun_gSnDLoQPVEnpOnyqZMOw0ByZ6PA.woff2 +0 -0
- package/dist/devtools-client/_fonts/lntlqNHKLV2n82yTwMde70QqOjcfLE2XJ5oKZ3vRPWc-z6TxpIZQdWXztWLr9_OFWqt_WJJoeGtuK_-XQMZGQwE.woff2 +0 -0
- package/dist/devtools-client/_fonts/qxAYvKsXWeYv731eb-h5TRurcdIP_W44mpNdX-HABAk-zUDeMEFlNtNbrwvT9JxLEBg0TphGy70O6RfIoIX_ZwU.woff2 +0 -0
- package/dist/devtools-client/_nuxt/B3kN3DAy.js +1 -0
- package/dist/devtools-client/_nuxt/B8PEiB0p.js +1 -0
- package/dist/devtools-client/_nuxt/C8jhSQ8l.js +1 -0
- package/dist/devtools-client/_nuxt/CJD6wrkT.js +188 -0
- package/dist/devtools-client/_nuxt/CfOsp0mU.js +1 -0
- package/dist/devtools-client/_nuxt/DKL6PHO3.js +1 -0
- package/dist/devtools-client/_nuxt/ajngqPCs.js +1 -0
- package/dist/devtools-client/_nuxt/builds/latest.json +1 -0
- package/dist/devtools-client/_nuxt/builds/meta/b800a0be-5cab-4ea6-89e3-dd3a85690a73.json +1 -0
- package/dist/devtools-client/_nuxt/dlaR8P-P.js +1 -0
- package/dist/devtools-client/_nuxt/entry.BwpOBArY.css +1 -0
- package/dist/devtools-client/_nuxt/error-404.CvOVjXeC.css +1 -0
- package/dist/devtools-client/_nuxt/error-500.BIm53nmx.css +1 -0
- package/dist/devtools-client/_nuxt/first-party.C8Ha4JLM.css +1 -0
- package/dist/devtools-client/_nuxt/index.CA-OpSj0.css +1 -0
- package/dist/devtools-client/_nuxt/registry.B9lnjF_b.css +1 -0
- package/dist/devtools-client/_nuxt/wDzz0qaB.js +1 -0
- package/dist/devtools-client/docs/index.html +1 -0
- package/dist/devtools-client/first-party/index.html +1 -0
- package/dist/devtools-client/index.html +1 -0
- package/dist/devtools-client/registry/index.html +1 -0
- package/dist/module.d.mts +29 -84
- package/dist/module.d.ts +121 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +941 -757
- package/dist/registry.d.mts +91 -4
- package/dist/registry.d.ts +93 -0
- package/dist/registry.mjs +669 -324
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.d.vue.ts +15 -79
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue +78 -180
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue.d.ts +15 -79
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.d.vue.ts +6 -55
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue +12 -83
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue.d.ts +6 -55
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.d.vue.ts +5 -1
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue +24 -38
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue.d.ts +5 -1
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.d.vue.ts +43 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue +60 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue.d.ts +43 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.d.vue.ts +4 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue +22 -26
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue.d.ts +4 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.d.vue.ts +9 -5
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue +56 -57
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue.d.ts +9 -5
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.d.vue.ts +24 -41
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue +69 -73
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue.d.ts +24 -41
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.d.vue.ts +36 -4
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue +82 -37
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue.d.ts +36 -4
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.d.vue.ts +78 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue +222 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue.d.ts +78 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.d.vue.ts +10 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue +9 -41
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue.d.ts +10 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.d.vue.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue +23 -38
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue.d.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.d.vue.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue +23 -38
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue.d.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.d.vue.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue +24 -38
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue.d.ts +7 -3
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.d.vue.ts +200 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue +165 -0
- package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue.d.ts +200 -0
- package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.d.ts +13 -0
- package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.js +8 -0
- package/dist/runtime/components/GoogleMaps/injectionKeys.d.ts +10 -0
- package/dist/runtime/components/GoogleMaps/injectionKeys.js +2 -0
- package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.d.ts +48 -0
- package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.js +51 -0
- package/dist/runtime/components/ScriptBlueskyEmbed.d.vue.ts +85 -0
- package/dist/runtime/components/ScriptBlueskyEmbed.vue +88 -0
- package/dist/runtime/components/ScriptBlueskyEmbed.vue.d.ts +85 -0
- package/dist/runtime/components/ScriptCrisp.vue +1 -1
- package/dist/runtime/components/ScriptGoogleAdsense.vue +1 -1
- package/dist/runtime/components/ScriptGravatar.d.vue.ts +22 -0
- package/dist/runtime/components/ScriptGravatar.vue +46 -0
- package/dist/runtime/components/ScriptGravatar.vue.d.ts +22 -0
- package/dist/runtime/components/ScriptInstagramEmbed.d.vue.ts +1 -2
- package/dist/runtime/components/ScriptInstagramEmbed.vue +8 -3
- package/dist/runtime/components/ScriptInstagramEmbed.vue.d.ts +1 -2
- package/dist/runtime/components/ScriptIntercom.vue +4 -3
- package/dist/runtime/components/ScriptPayPalButtons.d.vue.ts +43 -32
- package/dist/runtime/components/ScriptPayPalButtons.vue +48 -79
- package/dist/runtime/components/ScriptPayPalButtons.vue.d.ts +43 -32
- package/dist/runtime/components/ScriptPayPalMessages.d.vue.ts +37 -23
- package/dist/runtime/components/ScriptPayPalMessages.vue +46 -50
- package/dist/runtime/components/ScriptPayPalMessages.vue.d.ts +37 -23
- package/dist/runtime/components/ScriptStripePricingTable.vue +2 -2
- package/dist/runtime/components/ScriptVimeoPlayer.d.vue.ts +9 -0
- package/dist/runtime/components/ScriptVimeoPlayer.vue +13 -10
- package/dist/runtime/components/ScriptVimeoPlayer.vue.d.ts +9 -0
- package/dist/runtime/components/ScriptXEmbed.d.vue.ts +0 -2
- package/dist/runtime/components/ScriptXEmbed.vue +14 -8
- package/dist/runtime/components/ScriptXEmbed.vue.d.ts +0 -2
- package/dist/runtime/components/ScriptYouTubePlayer.d.vue.ts +2 -2
- package/dist/runtime/components/ScriptYouTubePlayer.vue +11 -5
- package/dist/runtime/components/ScriptYouTubePlayer.vue.d.ts +2 -2
- package/dist/runtime/composables/useScript.js +148 -8
- package/dist/runtime/composables/useScriptEventPage.js +2 -2
- package/dist/runtime/composables/useScriptTriggerConsent.d.ts +10 -0
- package/dist/runtime/composables/useScriptTriggerConsent.js +33 -20
- package/dist/runtime/composables/useScriptTriggerElement.js +1 -1
- package/dist/runtime/composables/useScriptTriggerIdleTimeout.js +1 -1
- package/dist/runtime/devtools-standalone-bridge.client.d.ts +8 -0
- package/dist/runtime/devtools-standalone-bridge.client.js +50 -0
- package/dist/runtime/registry/bing-uet.d.ts +20 -0
- package/dist/runtime/registry/bing-uet.js +29 -0
- package/dist/runtime/registry/bluesky-embed.d.ts +116 -0
- package/dist/runtime/registry/bluesky-embed.js +72 -0
- package/dist/runtime/registry/clarity.d.ts +10 -15
- package/dist/runtime/registry/clarity.js +22 -31
- package/dist/runtime/registry/cloudflare-web-analytics.d.ts +2 -13
- package/dist/runtime/registry/cloudflare-web-analytics.js +2 -14
- package/dist/runtime/registry/crisp.d.ts +10 -40
- package/dist/runtime/registry/crisp.js +2 -33
- package/dist/runtime/registry/databuddy-analytics.d.ts +2 -35
- package/dist/runtime/registry/databuddy-analytics.js +20 -45
- package/dist/runtime/registry/fathom-analytics.d.ts +7 -26
- package/dist/runtime/registry/fathom-analytics.js +3 -25
- package/dist/runtime/registry/google-adsense.d.ts +3 -11
- package/dist/runtime/registry/google-adsense.js +2 -11
- package/dist/runtime/registry/google-analytics.d.ts +3 -5
- package/dist/runtime/registry/google-analytics.js +3 -8
- package/dist/runtime/registry/google-maps.d.ts +3 -9
- package/dist/runtime/registry/google-maps.js +2 -8
- package/dist/runtime/registry/google-recaptcha.d.ts +2 -6
- package/dist/runtime/registry/google-recaptcha.js +4 -12
- package/dist/runtime/registry/google-sign-in.d.ts +2 -13
- package/dist/runtime/registry/google-sign-in.js +2 -22
- package/dist/runtime/registry/google-tag-manager.d.ts +3 -28
- package/dist/runtime/registry/google-tag-manager.js +4 -27
- package/dist/runtime/registry/gravatar.d.ts +26 -0
- package/dist/runtime/registry/gravatar.js +36 -0
- package/dist/runtime/registry/hotjar.d.ts +4 -6
- package/dist/runtime/registry/hotjar.js +2 -5
- package/dist/runtime/registry/instagram-embed.d.ts +3 -18
- package/dist/runtime/registry/instagram-embed.js +4 -19
- package/dist/runtime/registry/intercom.d.ts +5 -13
- package/dist/runtime/registry/intercom.js +2 -12
- package/dist/runtime/registry/matomo-analytics.d.ts +3 -12
- package/dist/runtime/registry/matomo-analytics.js +3 -12
- package/dist/runtime/registry/meta-pixel.d.ts +4 -6
- package/dist/runtime/registry/meta-pixel.js +2 -4
- package/dist/runtime/registry/mixpanel-analytics.d.ts +22 -0
- package/dist/runtime/registry/mixpanel-analytics.js +46 -0
- package/dist/runtime/registry/npm.d.ts +3 -7
- package/dist/runtime/registry/npm.js +2 -9
- package/dist/runtime/registry/paypal.d.ts +4 -25
- package/dist/runtime/registry/paypal.js +3 -66
- package/dist/runtime/registry/plausible-analytics.js +19 -14
- package/dist/runtime/registry/posthog.d.ts +10 -12
- package/dist/runtime/registry/posthog.js +4 -13
- package/dist/runtime/registry/reddit-pixel.d.ts +5 -6
- package/dist/runtime/registry/reddit-pixel.js +2 -4
- package/dist/runtime/registry/rybbit-analytics.d.ts +2 -14
- package/dist/runtime/registry/rybbit-analytics.js +10 -20
- package/dist/runtime/registry/schemas.d.ts +982 -0
- package/dist/runtime/registry/schemas.js +937 -0
- package/dist/runtime/registry/segment.d.ts +2 -5
- package/dist/runtime/registry/segment.js +2 -5
- package/dist/runtime/registry/snapchat-pixel.d.ts +5 -34
- package/dist/runtime/registry/snapchat-pixel.js +2 -20
- package/dist/runtime/registry/stripe.d.ts +3 -4
- package/dist/runtime/registry/stripe.js +2 -4
- package/dist/runtime/registry/tiktok-pixel.d.ts +4 -7
- package/dist/runtime/registry/tiktok-pixel.js +2 -6
- package/dist/runtime/registry/umami-analytics.d.ts +2 -31
- package/dist/runtime/registry/umami-analytics.js +2 -36
- package/dist/runtime/registry/vercel-analytics.d.ts +29 -0
- package/dist/runtime/registry/vercel-analytics.js +84 -0
- package/dist/runtime/registry/vimeo-player.d.ts +2 -2
- package/dist/runtime/registry/vimeo-player.js +1 -1
- package/dist/runtime/registry/x-embed.d.ts +3 -17
- package/dist/runtime/registry/x-embed.js +3 -18
- package/dist/runtime/registry/x-pixel.d.ts +4 -7
- package/dist/runtime/registry/x-pixel.js +2 -5
- package/dist/runtime/registry/youtube-player.d.ts +7 -7
- package/dist/runtime/registry/youtube-player.js +1 -1
- package/dist/runtime/server/bluesky-embed-image.d.ts +2 -0
- package/dist/runtime/server/bluesky-embed-image.js +7 -0
- package/dist/runtime/server/bluesky-embed.d.ts +16 -0
- package/dist/runtime/server/bluesky-embed.js +59 -0
- package/dist/runtime/server/google-maps-geocode-proxy.d.ts +2 -0
- package/dist/runtime/server/google-maps-geocode-proxy.js +34 -0
- package/dist/runtime/server/google-static-maps-proxy.js +2 -13
- package/dist/runtime/server/gravatar-proxy.d.ts +2 -0
- package/dist/runtime/server/gravatar-proxy.js +46 -0
- package/dist/runtime/server/instagram-embed-asset.js +8 -41
- package/dist/runtime/server/instagram-embed-image.js +6 -53
- package/dist/runtime/server/instagram-embed.d.ts +16 -0
- package/dist/runtime/server/instagram-embed.js +176 -35
- package/dist/runtime/server/proxy-handler.js +142 -95
- package/dist/runtime/server/utils/image-proxy.d.ts +12 -0
- package/dist/runtime/server/utils/image-proxy.js +70 -0
- package/dist/runtime/server/utils/privacy.d.ts +1 -10
- package/dist/runtime/server/utils/privacy.js +60 -40
- package/dist/runtime/server/x-embed-image.js +5 -49
- package/dist/runtime/server/x-embed.js +3 -2
- package/dist/runtime/types.d.ts +272 -51
- package/dist/runtime/types.js +0 -2
- package/dist/runtime/utils/pure.d.ts +1 -1
- package/dist/runtime/utils.d.ts +6 -4
- package/dist/runtime/utils.js +31 -14
- package/dist/stats.d.mts +202 -0
- package/dist/stats.d.ts +202 -0
- package/dist/stats.mjs +3875 -0
- package/dist/types-source.d.mts +17 -0
- package/dist/types-source.d.ts +17 -0
- package/dist/types-source.mjs +3414 -0
- package/dist/types.d.mts +4 -2
- package/package.json +35 -61
- package/README.md +0 -86
- package/dist/client/200.html +0 -1
- package/dist/client/404.html +0 -1
- package/dist/client/_nuxt/BPQ3VLAy.js +0 -1
- package/dist/client/_nuxt/BpR-tlZc.js +0 -1
- package/dist/client/_nuxt/CBbMDhE2.js +0 -162
- package/dist/client/_nuxt/CEMAW3aB.js +0 -1
- package/dist/client/_nuxt/MWkREqzj.js +0 -1
- package/dist/client/_nuxt/builds/latest.json +0 -1
- package/dist/client/_nuxt/builds/meta/762d443a-0880-424f-bda8-2b32b39d43ec.json +0 -1
- package/dist/client/_nuxt/entry.D45OuV0w.css +0 -1
- package/dist/client/_nuxt/error-404.B57D-jUQ.css +0 -1
- package/dist/client/_nuxt/error-500.DTHUW7BI.css +0 -1
- package/dist/client/index.html +0 -1
- package/dist/runtime/components/ScriptPayPalMarks.d.vue.ts +0 -52
- package/dist/runtime/components/ScriptPayPalMarks.vue +0 -69
- package/dist/runtime/components/ScriptPayPalMarks.vue.d.ts +0 -52
- package/dist/runtime/validation/mock.d.ts +0 -42
- package/dist/runtime/validation/mock.js +0 -21
- package/dist/runtime/validation/valibot.d.ts +0 -1
- package/dist/runtime/validation/valibot.js +0 -1
- /package/dist/{client → devtools-client}/_nuxt/CVO1_9PV.js +0 -0
- /package/dist/{client → devtools-client}/_nuxt/Cp-IABpG.js +0 -0
- /package/dist/{client → devtools-client}/_nuxt/D0r3Knsf.js +0 -0
|
@@ -1,35 +1,13 @@
|
|
|
1
1
|
import { useRegistryScript } from "../utils.js";
|
|
2
|
-
import {
|
|
3
|
-
export
|
|
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 === "
|
|
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
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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 {
|
|
4
|
-
export
|
|
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
|
|
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 {
|
|
4
|
-
|
|
5
|
-
|
|
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
|
-
|
|
3
|
-
|
|
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__()
|
|
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 {
|
|
4
|
-
export
|
|
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
|
-
|
|
3
|
-
|
|
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 {
|
|
4
|
-
|
|
5
|
-
|
|
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 =
|
|
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
|
|
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 {
|
|
3
|
-
export
|
|
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 {
|
|
4
|
-
|
|
5
|
-
|
|
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":
|
|
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: '
|
|
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
|
|
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 {
|
|
3
|
-
export
|
|
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
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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 {
|
|
2
|
-
export
|
|
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(
|
|
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
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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 {
|
|
4
|
-
export
|
|
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
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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;
|