@nuxt/scripts 1.0.0-beta.14 → 1.0.0-beta.17

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 (115) hide show
  1. package/README.md +3 -3
  2. package/dist/client/200.html +1 -1
  3. package/dist/client/404.html +1 -1
  4. package/dist/client/_nuxt/{C4oLgKn5.js → BW6d1nfL.js} +1 -1
  5. package/dist/client/_nuxt/{C4LyqEA2.js → C8R4dwAP.js} +1 -1
  6. package/dist/client/_nuxt/{CSWa0Nc-.js → DI7VRsfF.js} +1 -1
  7. package/dist/client/_nuxt/{CAywURt7.js → NbccNBFl.js} +13 -13
  8. package/dist/client/_nuxt/builds/latest.json +1 -1
  9. package/dist/client/_nuxt/builds/meta/54747b43-880a-49d1-91ff-d00dbcdf3ad7.json +1 -0
  10. package/dist/client/_nuxt/error-404.Cqp3ffuH.css +1 -0
  11. package/dist/client/_nuxt/error-500.B9hH8BAi.css +1 -0
  12. package/dist/client/index.html +1 -1
  13. package/dist/module.json +1 -1
  14. package/dist/module.mjs +24 -9
  15. package/dist/registry.mjs +22 -0
  16. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.d.vue.ts +1 -1
  17. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue.d.ts +1 -1
  18. package/dist/runtime/components/ScriptGravatar.d.vue.ts +22 -0
  19. package/dist/runtime/components/ScriptGravatar.vue +46 -0
  20. package/dist/runtime/components/ScriptGravatar.vue.d.ts +22 -0
  21. package/dist/runtime/components/ScriptLoadingIndicator.d.vue.ts +1 -1
  22. package/dist/runtime/components/ScriptLoadingIndicator.vue.d.ts +1 -1
  23. package/dist/runtime/components/ScriptPayPalButtons.d.vue.ts +42 -31
  24. package/dist/runtime/components/ScriptPayPalButtons.vue +43 -76
  25. package/dist/runtime/components/ScriptPayPalButtons.vue.d.ts +42 -31
  26. package/dist/runtime/components/ScriptPayPalMessages.d.vue.ts +36 -22
  27. package/dist/runtime/components/ScriptPayPalMessages.vue +41 -47
  28. package/dist/runtime/components/ScriptPayPalMessages.vue.d.ts +36 -22
  29. package/dist/runtime/components/ScriptVimeoPlayer.d.vue.ts +9 -0
  30. package/dist/runtime/components/ScriptVimeoPlayer.vue +12 -9
  31. package/dist/runtime/components/ScriptVimeoPlayer.vue.d.ts +9 -0
  32. package/dist/runtime/components/ScriptXEmbed.d.vue.ts +1 -1
  33. package/dist/runtime/components/ScriptXEmbed.vue.d.ts +1 -1
  34. package/dist/runtime/components/ScriptYouTubePlayer.d.vue.ts +2 -2
  35. package/dist/runtime/components/ScriptYouTubePlayer.vue +2 -0
  36. package/dist/runtime/components/ScriptYouTubePlayer.vue.d.ts +2 -2
  37. package/dist/runtime/registry/clarity.d.ts +2 -7
  38. package/dist/runtime/registry/clarity.js +2 -7
  39. package/dist/runtime/registry/cloudflare-web-analytics.d.ts +2 -13
  40. package/dist/runtime/registry/cloudflare-web-analytics.js +2 -14
  41. package/dist/runtime/registry/crisp.d.ts +2 -32
  42. package/dist/runtime/registry/crisp.js +2 -33
  43. package/dist/runtime/registry/databuddy-analytics.d.ts +2 -35
  44. package/dist/runtime/registry/databuddy-analytics.js +2 -45
  45. package/dist/runtime/registry/fathom-analytics.d.ts +2 -22
  46. package/dist/runtime/registry/fathom-analytics.js +2 -23
  47. package/dist/runtime/registry/google-adsense.d.ts +2 -10
  48. package/dist/runtime/registry/google-adsense.js +2 -11
  49. package/dist/runtime/registry/google-analytics.d.ts +2 -4
  50. package/dist/runtime/registry/google-analytics.js +2 -7
  51. package/dist/runtime/registry/google-maps.d.ts +2 -8
  52. package/dist/runtime/registry/google-maps.js +2 -8
  53. package/dist/runtime/registry/google-recaptcha.d.ts +2 -6
  54. package/dist/runtime/registry/google-recaptcha.js +2 -10
  55. package/dist/runtime/registry/google-sign-in.d.ts +2 -13
  56. package/dist/runtime/registry/google-sign-in.js +2 -22
  57. package/dist/runtime/registry/google-tag-manager.d.ts +2 -27
  58. package/dist/runtime/registry/google-tag-manager.js +2 -25
  59. package/dist/runtime/registry/gravatar.d.ts +25 -0
  60. package/dist/runtime/registry/gravatar.js +32 -0
  61. package/dist/runtime/registry/hotjar.d.ts +2 -4
  62. package/dist/runtime/registry/hotjar.js +2 -5
  63. package/dist/runtime/registry/instagram-embed.d.ts +2 -17
  64. package/dist/runtime/registry/instagram-embed.js +2 -18
  65. package/dist/runtime/registry/intercom.d.ts +2 -10
  66. package/dist/runtime/registry/intercom.js +2 -12
  67. package/dist/runtime/registry/matomo-analytics.d.ts +2 -11
  68. package/dist/runtime/registry/matomo-analytics.js +2 -11
  69. package/dist/runtime/registry/meta-pixel.d.ts +2 -4
  70. package/dist/runtime/registry/meta-pixel.js +2 -4
  71. package/dist/runtime/registry/npm.d.ts +2 -6
  72. package/dist/runtime/registry/npm.js +2 -9
  73. package/dist/runtime/registry/paypal.d.ts +4 -25
  74. package/dist/runtime/registry/paypal.js +3 -66
  75. package/dist/runtime/registry/posthog.d.ts +10 -12
  76. package/dist/runtime/registry/posthog.js +2 -11
  77. package/dist/runtime/registry/reddit-pixel.d.ts +2 -4
  78. package/dist/runtime/registry/reddit-pixel.js +2 -4
  79. package/dist/runtime/registry/rybbit-analytics.d.ts +2 -14
  80. package/dist/runtime/registry/rybbit-analytics.js +2 -16
  81. package/dist/runtime/registry/schemas.d.ts +940 -0
  82. package/dist/runtime/registry/schemas.js +895 -0
  83. package/dist/runtime/registry/segment.d.ts +2 -5
  84. package/dist/runtime/registry/segment.js +2 -5
  85. package/dist/runtime/registry/snapchat-pixel.d.ts +2 -31
  86. package/dist/runtime/registry/snapchat-pixel.js +2 -20
  87. package/dist/runtime/registry/stripe.d.ts +2 -3
  88. package/dist/runtime/registry/stripe.js +2 -4
  89. package/dist/runtime/registry/tiktok-pixel.d.ts +2 -5
  90. package/dist/runtime/registry/tiktok-pixel.js +2 -6
  91. package/dist/runtime/registry/umami-analytics.d.ts +2 -31
  92. package/dist/runtime/registry/umami-analytics.js +2 -36
  93. package/dist/runtime/registry/vercel-analytics.d.ts +29 -0
  94. package/dist/runtime/registry/vercel-analytics.js +84 -0
  95. package/dist/runtime/registry/x-embed.d.ts +2 -16
  96. package/dist/runtime/registry/x-embed.js +2 -17
  97. package/dist/runtime/registry/x-pixel.d.ts +2 -5
  98. package/dist/runtime/registry/x-pixel.js +2 -5
  99. package/dist/runtime/server/gravatar-proxy.d.ts +2 -0
  100. package/dist/runtime/server/gravatar-proxy.js +62 -0
  101. package/dist/runtime/types.d.ts +8 -2
  102. package/dist/runtime/utils.d.ts +2 -2
  103. package/dist/runtime/utils.js +3 -2
  104. package/dist/shared/{scripts.DLRgvHQg.mjs → scripts.Bg4pl9Yo.mjs} +22 -0
  105. package/dist/stats.mjs +152 -94
  106. package/dist/types-source.d.mts +19 -0
  107. package/dist/types-source.d.ts +19 -0
  108. package/dist/types-source.mjs +964 -0
  109. package/package.json +10 -5
  110. package/dist/client/_nuxt/builds/meta/81fbc914-9f01-4832-9c96-85b1271cfe15.json +0 -1
  111. package/dist/client/_nuxt/error-404.B57D-jUQ.css +0 -1
  112. package/dist/client/_nuxt/error-500.DTHUW7BI.css +0 -1
  113. package/dist/runtime/components/ScriptPayPalMarks.d.vue.ts +0 -52
  114. package/dist/runtime/components/ScriptPayPalMarks.vue +0 -71
  115. package/dist/runtime/components/ScriptPayPalMarks.vue.d.ts +0 -52
@@ -1,21 +1,6 @@
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>;
2
+ import { InstagramEmbedOptions } from './schemas.js';
3
+ export { InstagramEmbedOptions };
19
4
  export type InstagramEmbedInput = RegistryScriptInput<typeof InstagramEmbedOptions, false, false, false>;
20
5
  /**
21
6
  * Extract the post shortcode from an Instagram URL
@@ -1,21 +1,5 @@
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 };
19
3
  export function extractInstagramShortcode(url) {
20
4
  const match = url.match(/instagram\.com\/(?:p|reel|tv)\/([^/?]+)/);
21
5
  return match?.[1];
@@ -1,15 +1,7 @@
1
1
  import type { InferInput } from '#nuxt-scripts-validator';
2
2
  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>;
3
+ import { IntercomOptions } from './schemas.js';
4
+ export { IntercomOptions };
13
5
  export type IntercomInput = RegistryScriptInput<typeof IntercomOptions, true, false, false>;
14
6
  export interface IntercomApi {
15
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);
@@ -1,17 +1,7 @@
1
- import { literal, number, object, optional, string, union } from "#nuxt-scripts-validator";
2
1
  import { joinURL } from "ufo";
3
2
  import { useRegistryScript } from "../utils.js";
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,14 +1,6 @@
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>;
2
+ import { MatomoAnalyticsOptions } from './schemas.js';
3
+ export { MatomoAnalyticsOptions };
12
4
  export type MatomoAnalyticsInput = RegistryScriptInput<typeof MatomoAnalyticsOptions, false, false, false>;
13
5
  interface MatomoAnalyticsApi {
14
6
  _paq: unknown[];
@@ -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
- import { boolean, number, object, optional, string, union } from "#nuxt-scripts-validator";
2
1
  import { withBase, withHttps, withoutProtocol, withoutTrailingSlash } from "ufo";
3
2
  import { useScriptEventPage } from "../composables/useScriptEventPage.js";
4
3
  import { logger } from "../logger.js";
5
4
  import { useRegistryScript } from "../utils.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
- });
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;
@@ -1,4 +1,5 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { MetaPixelOptions } from './schemas.js';
2
3
  type StandardEvents = 'AddPaymentInfo' | 'AddToCart' | 'AddToWishlist' | 'CompleteRegistration' | 'Contact' | 'CustomizeProduct' | 'Donate' | 'FindLocation' | 'InitiateCheckout' | 'Lead' | 'Purchase' | 'Schedule' | 'Search' | 'StartTrial' | 'SubmitApplication' | 'Subscribe' | 'ViewContent';
3
4
  interface EventObjectProperties {
4
5
  content_category?: string;
@@ -35,9 +36,6 @@ declare global {
35
36
  interface Window extends MetaPixelApi {
36
37
  }
37
38
  }
38
- export declare const MetaPixelOptions: import("valibot").ObjectSchema<{
39
- readonly id: import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").NumberSchema<undefined>], undefined>;
40
- }, undefined>;
39
+ export { MetaPixelOptions };
41
40
  export type MetaPixelInput = RegistryScriptInput<typeof MetaPixelOptions, true, false, false>;
42
41
  export declare function useScriptMetaPixel<T extends MetaPixelApi>(_options?: MetaPixelInput): import("#nuxt-scripts/types").UseScriptContext<T>;
43
- export {};
@@ -1,8 +1,6 @@
1
- import { number, object, string, union } from "#nuxt-scripts-validator";
2
1
  import { useRegistryScript } from "../utils.js";
3
- export const MetaPixelOptions = object({
4
- id: union([string(), number()])
5
- });
2
+ import { MetaPixelOptions } from "./schemas.js";
3
+ export { MetaPixelOptions };
6
4
  export function useScriptMetaPixel(_options) {
7
5
  return useRegistryScript("metaPixel", (options) => ({
8
6
  scriptInput: {
@@ -1,9 +1,5 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const NpmOptions: import("valibot").ObjectSchema<{
3
- readonly packageName: import("valibot").StringSchema<undefined>;
4
- readonly file: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
5
- readonly version: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
6
- readonly provider: import("valibot").OptionalSchema<import("valibot").UnionSchema<import("valibot").LiteralSchema<"jsdelivr" | "cdnjs" | "unpkg", undefined>[], undefined>, undefined>;
7
- }, undefined>;
2
+ import { NpmOptions } from './schemas.js';
3
+ export { NpmOptions };
8
4
  export type NpmInput = RegistryScriptInput<typeof NpmOptions, true, true, false>;
9
5
  export declare function useScriptNpm<T extends Record<string | symbol, any>>(_options: NpmInput): import("#nuxt-scripts/types").UseScriptContext<T>;
@@ -1,14 +1,7 @@
1
- import { literal, object, optional, string, union } from "#nuxt-scripts-validator";
2
1
  import { withBase } from "ufo";
3
2
  import { useRegistryScript } from "../utils.js";
4
- const PROVIDERS = ["jsdelivr", "cdnjs", "unpkg"];
5
- const providerValidator = union(PROVIDERS.map((provider) => literal(provider)));
6
- export const NpmOptions = object({
7
- packageName: string(),
8
- file: optional(string()),
9
- version: optional(string()),
10
- provider: optional(providerValidator)
11
- });
3
+ import { NpmOptions } from "./schemas.js";
4
+ export { NpmOptions };
12
5
  export function useScriptNpm(_options) {
13
6
  return useRegistryScript(`${_options.packageName}-npm`, (options) => {
14
7
  const baseUrl = getProviderBaseUrl(options.provider, options.packageName, options.version);
@@ -1,34 +1,13 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- import type { PayPalNamespace } from '@paypal/paypal-js';
2
+ import type { PayPalV6Namespace } from '@paypal/paypal-js/sdk-v6';
3
+ import { PayPalOptions } from './schemas.js';
4
+ export { PayPalOptions };
3
5
  export interface PayPalApi {
4
- paypal: PayPalNamespace;
6
+ paypal: PayPalV6Namespace;
5
7
  }
6
8
  declare global {
7
9
  interface Window extends PayPalApi {
8
10
  }
9
11
  }
10
- export declare const PayPalOptions: import("valibot").ObjectSchema<{
11
- readonly clientId: import("valibot").StringSchema<undefined>;
12
- readonly buyerCountry: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
13
- readonly commit: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
14
- readonly components: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>], undefined>, undefined>;
15
- readonly currency: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
16
- readonly debug: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").BooleanSchema<undefined>], undefined>, undefined>;
17
- readonly disableFunding: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>], undefined>, undefined>;
18
- readonly enableFunding: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>], undefined>, undefined>;
19
- readonly integrationDate: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
20
- readonly intent: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
21
- readonly locale: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
22
- /**
23
- * loadScript() supports an array for merchantId, even though
24
- * merchant-id technically may not contain multiple values.
25
- * For an array with a length of > 1 it automatically sets
26
- * merchantId to "*" and moves the actual values to dataMerchantId
27
- */
28
- readonly merchantId: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>], undefined>, undefined>;
29
- readonly partnerAttributionId: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
30
- readonly vault: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").BooleanSchema<undefined>], undefined>, undefined>;
31
- readonly sandbox: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
32
- }, undefined>;
33
12
  export type PayPalInput = RegistryScriptInput<typeof PayPalOptions>;
34
13
  export declare function useScriptPayPal<T extends PayPalApi>(_options?: PayPalInput): import("#nuxt-scripts/types").UseScriptContext<T>;
@@ -1,79 +1,16 @@
1
- import { array, boolean, object, optional, string, union } from "#nuxt-scripts-validator";
2
- import { withQuery } from "ufo";
3
1
  import { useRegistryScript } from "../utils.js";
4
- export const PayPalOptions = object({
5
- clientId: string(),
6
- buyerCountry: optional(string()),
7
- commit: optional(string()),
8
- components: optional(union([string(), array(string())])),
9
- currency: optional(string()),
10
- debug: optional(union([string(), boolean()])),
11
- disableFunding: optional(union([string(), array(string())])),
12
- enableFunding: optional(union([string(), array(string())])),
13
- integrationDate: optional(string()),
14
- intent: optional(string()),
15
- locale: optional(string()),
16
- /**
17
- * loadScript() supports an array for merchantId, even though
18
- * merchant-id technically may not contain multiple values.
19
- * For an array with a length of > 1 it automatically sets
20
- * merchantId to "*" and moves the actual values to dataMerchantId
21
- */
22
- merchantId: optional(union([string(), array(string())])),
23
- partnerAttributionId: optional(string()),
24
- vault: optional(union([string(), boolean()])),
25
- // own props
26
- sandbox: optional(boolean())
27
- });
2
+ import { PayPalOptions } from "./schemas.js";
3
+ export { PayPalOptions };
28
4
  export function useScriptPayPal(_options) {
29
5
  return useRegistryScript("paypal", (options) => {
30
- let dataMerchantId;
31
- if (Array.isArray(options?.merchantId) && options?.merchantId.length > 1) {
32
- dataMerchantId = JSON.stringify(options.merchantId);
33
- options.merchantId = "*";
34
- }
35
- if (Array.isArray(options?.components)) {
36
- options.components = options.components.join(",");
37
- }
38
- if (Array.isArray(options?.disableFunding)) {
39
- options.disableFunding = options.disableFunding.join(",");
40
- }
41
- if (Array.isArray(options?.enableFunding)) {
42
- options.enableFunding = options.enableFunding.join(",");
43
- }
44
6
  if (options?.sandbox === void 0) {
45
7
  options.sandbox = import.meta.dev;
46
8
  }
47
- let components = ["buttons", "messages", "marks", "card-fields", "funding-eligibility"].join(",");
48
- if (options.components) {
49
- if (Array.isArray(options.components)) {
50
- components = options.components.join(",");
51
- } else {
52
- components = options.components;
53
- }
54
- }
55
9
  return {
56
10
  scriptInput: {
57
- "src": withQuery(options.sandbox ? "https://www.sandbox.paypal.com/sdk/js" : "https://www.paypal.com/sdk/js", {
58
- "client-id": options.clientId,
59
- "buyer-country": options.buyerCountry,
60
- "commit": options.commit,
61
- "components": components,
62
- "currency": options.currency,
63
- "debug": options.debug,
64
- "disable-funding": options.disableFunding,
65
- "enable-funding": options.enableFunding,
66
- "integration-date": options.integrationDate,
67
- "intent": options.intent,
68
- "locale": options.locale,
69
- "vault": options.vault
70
- }),
71
- "data-merchant-id": dataMerchantId,
72
- "data-partner-attribution-id": options.partnerAttributionId
73
- // TODO: maybe nuxt specific default
11
+ src: options.sandbox ? "https://www.sandbox.paypal.com/web-sdk/v6/core" : "https://www.paypal.com/web-sdk/v6/core"
74
12
  },
75
13
  schema: import.meta.dev ? PayPalOptions : void 0,
76
- // trigger: 'client',
77
14
  scriptOptions: {
78
15
  use() {
79
16
  return {
@@ -1,16 +1,14 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- import type { PostHog } from 'posthog-js';
3
- export declare const PostHogOptions: import("valibot").ObjectSchema<{
4
- readonly apiKey: import("valibot").StringSchema<undefined>;
5
- readonly region: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").LiteralSchema<"us", undefined>, import("valibot").LiteralSchema<"eu", undefined>], undefined>, undefined>;
6
- readonly apiHost: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
7
- readonly autocapture: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
8
- readonly capturePageview: import("valibot").OptionalSchema<import("valibot").UnionSchema<[import("valibot").BooleanSchema<undefined>, import("valibot").LiteralSchema<"history_change", undefined>], undefined>, undefined>;
9
- readonly capturePageleave: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
10
- readonly disableSessionRecording: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
11
- readonly config: import("valibot").OptionalSchema<import("valibot").RecordSchema<import("valibot").StringSchema<undefined>, import("valibot").AnySchema, undefined>, undefined>;
12
- }, undefined>;
13
- export type PostHogInput = RegistryScriptInput<typeof PostHogOptions, false, true>;
2
+ import type { PostHog, PostHogConfig } from 'posthog-js';
3
+ import { PostHogOptions } from './schemas.js';
4
+ export { PostHogOptions };
5
+ export type PostHogInput = Omit<RegistryScriptInput<typeof PostHogOptions, false, true>, 'config'> & {
6
+ /**
7
+ * Additional PostHog configuration options passed directly to `posthog.init()`.
8
+ * @see https://posthog.com/docs/libraries/js/config
9
+ */
10
+ config?: Partial<PostHogConfig>;
11
+ };
14
12
  export interface PostHogApi {
15
13
  posthog: PostHog;
16
14
  }
@@ -1,16 +1,7 @@
1
- import { any, boolean, literal, object, optional, record, string, union } from "#nuxt-scripts-validator";
2
1
  import { logger } from "../logger.js";
3
2
  import { useRegistryScript } from "../utils.js";
4
- export const PostHogOptions = object({
5
- apiKey: string(),
6
- region: optional(union([literal("us"), literal("eu")])),
7
- apiHost: optional(string()),
8
- autocapture: optional(boolean()),
9
- capturePageview: optional(union([boolean(), literal("history_change")])),
10
- capturePageleave: optional(boolean()),
11
- disableSessionRecording: optional(boolean()),
12
- config: optional(record(string(), any()))
13
- });
3
+ import { PostHogOptions } from "./schemas.js";
4
+ export { PostHogOptions };
14
5
  export function useScriptPostHog(_options) {
15
6
  return useRegistryScript("posthog", (options) => {
16
7
  return {
@@ -1,4 +1,5 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
+ import { RedditPixelOptions } from './schemas.js';
2
3
  type RdtFns = ((event: 'init', id: string) => void) & ((event: 'track', eventName: string) => void);
3
4
  export interface RedditPixelApi {
4
5
  rdt: RdtFns & {
@@ -10,9 +11,6 @@ declare global {
10
11
  interface Window extends RedditPixelApi {
11
12
  }
12
13
  }
13
- export declare const RedditPixelOptions: import("valibot").ObjectSchema<{
14
- readonly id: import("valibot").StringSchema<undefined>;
15
- }, undefined>;
14
+ export { RedditPixelOptions };
16
15
  export type RedditPixelInput = RegistryScriptInput<typeof RedditPixelOptions, true, false, false>;
17
16
  export declare function useScriptRedditPixel<T extends RedditPixelApi>(_options?: RedditPixelInput): import("#nuxt-scripts/types").UseScriptContext<T>;
18
- export {};
@@ -1,8 +1,6 @@
1
- import { object, string } from "#nuxt-scripts-validator";
2
1
  import { useRegistryScript } from "../utils.js";
3
- export const RedditPixelOptions = object({
4
- id: string()
5
- });
2
+ import { RedditPixelOptions } from "./schemas.js";
3
+ export { RedditPixelOptions };
6
4
  export function useScriptRedditPixel(_options) {
7
5
  return useRegistryScript("redditPixel", (options) => {
8
6
  return {
@@ -1,18 +1,6 @@
1
1
  import type { RegistryScriptInput } from '#nuxt-scripts/types';
2
- export declare const RybbitAnalyticsOptions: import("valibot").ObjectSchema<{
3
- readonly siteId: import("valibot").UnionSchema<[import("valibot").StringSchema<undefined>, import("valibot").NumberSchema<undefined>], undefined>;
4
- readonly autoTrackPageview: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
5
- readonly trackSpa: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
6
- readonly trackQuery: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
7
- readonly trackOutbound: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
8
- readonly trackErrors: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
9
- readonly sessionReplay: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
10
- readonly webVitals: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
11
- readonly skipPatterns: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
12
- readonly maskPatterns: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").StringSchema<undefined>, undefined>, undefined>;
13
- readonly debounce: import("valibot").OptionalSchema<import("valibot").NumberSchema<undefined>, undefined>;
14
- readonly apiKey: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
15
- }, undefined>;
2
+ import { RybbitAnalyticsOptions } from './schemas.js';
3
+ export { RybbitAnalyticsOptions };
16
4
  export type RybbitAnalyticsInput = RegistryScriptInput<typeof RybbitAnalyticsOptions, false>;
17
5
  export interface RybbitAnalyticsApi {
18
6
  /**
@@ -1,20 +1,6 @@
1
- import { array, boolean, number, object, optional, string, union } from "#nuxt-scripts-validator";
2
1
  import { useRegistryScript } from "../utils.js";
3
- export const RybbitAnalyticsOptions = object({
4
- siteId: union([string(), number()]),
5
- // required
6
- autoTrackPageview: optional(boolean()),
7
- trackSpa: optional(boolean()),
8
- trackQuery: optional(boolean()),
9
- trackOutbound: optional(boolean()),
10
- trackErrors: optional(boolean()),
11
- sessionReplay: optional(boolean()),
12
- webVitals: optional(boolean()),
13
- skipPatterns: optional(array(string())),
14
- maskPatterns: optional(array(string())),
15
- debounce: optional(number()),
16
- apiKey: optional(string())
17
- });
2
+ import { RybbitAnalyticsOptions } from "./schemas.js";
3
+ export { RybbitAnalyticsOptions };
18
4
  const RYBBIT_QUEUE_KEY = Symbol.for("nuxt-scripts.rybbit-queue");
19
5
  function getRybbitState() {
20
6
  if (!import.meta.client)