From 14259227b6e32f3b1b06f14426d3a9b9cd76e4f2 Mon Sep 17 00:00:00 2001 From: julien huang Date: Tue, 30 Apr 2024 23:13:03 +0200 Subject: [PATCH 1/2] fix: fix type issue in useElementScriptTrigger --- src/runtime/composables/useElementScriptTrigger.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/runtime/composables/useElementScriptTrigger.ts b/src/runtime/composables/useElementScriptTrigger.ts index 0ff4d6f5..12d544b4 100644 --- a/src/runtime/composables/useElementScriptTrigger.ts +++ b/src/runtime/composables/useElementScriptTrigger.ts @@ -9,5 +9,5 @@ export function useElementScriptTrigger(trigger: ElementScriptTrigger | undefine return new Promise(() => {}) const activeRef = trigger ? (trigger === 'mouseover' ? useElementHover(el) : useElementVisibility(el)) : ref(false) - return trigger ? new Promise(resolve => watchOnce(activeRef, resolve)) : Promise.resolve() + return trigger ? new Promise(resolve => watchOnce([activeRef], () => resolve())) : Promise.resolve() } From f8f7d6cf35dba0c7933c9745febd43f4dca0ae2d Mon Sep 17 00:00:00 2001 From: julien huang Date: Tue, 30 Apr 2024 23:20:30 +0200 Subject: [PATCH 2/2] more type fix --- src/runtime/composables/createScriptConsentTrigger.ts | 2 +- src/runtime/composables/useAnalyticsPageEvent.ts | 2 +- src/runtime/types.ts | 4 ++-- src/runtime/utils.ts | 1 - 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/runtime/composables/createScriptConsentTrigger.ts b/src/runtime/composables/createScriptConsentTrigger.ts index 886f7756..0295d0e6 100644 --- a/src/runtime/composables/createScriptConsentTrigger.ts +++ b/src/runtime/composables/createScriptConsentTrigger.ts @@ -37,7 +37,7 @@ export function createScriptConsentTrigger(options?: ConsentPromiseOptions): Cre }, { immediate: true }) } } - }) + }) as CreateScriptConsentTriggerApi // we augment the promise with a consent API promise.accept = () => { consented.value = true diff --git a/src/runtime/composables/useAnalyticsPageEvent.ts b/src/runtime/composables/useAnalyticsPageEvent.ts index ede055e2..2ddcdfdd 100644 --- a/src/runtime/composables/useAnalyticsPageEvent.ts +++ b/src/runtime/composables/useAnalyticsPageEvent.ts @@ -20,7 +20,7 @@ export function useAnalyticsPageEvent(onChange?: (payload: TrackedPage) => void) Promise.race([ // possibly no head update is needed new Promise(resolve => setTimeout(resolve, 100)), - new Promise((resolve) => { + new Promise((resolve) => { stopDomWatcher = head.hooks.hook('dom:rendered', () => resolve()) }), ]).finally(() => { diff --git a/src/runtime/types.ts b/src/runtime/types.ts index e56e00c6..37187b0d 100644 --- a/src/runtime/types.ts +++ b/src/runtime/types.ts @@ -15,7 +15,7 @@ import type { GoogleMapsInput } from '~/src/runtime/registry/google-maps' import type { GoogleTagManagerInput } from '~/src/runtime/registry/google-tag-manager' import type { MatomoAnalyticsInput } from '~/src/runtime/registry/matomo-analytics' import type { StripeInput } from '~/src/runtime/registry/stripe' -import type { VimeoInput } from '~/src/runtime/registry/vimeo' +import type { VimeoPlayerInput } from '~/src/runtime/registry/vimeo-player' import type { XPixelInput } from '~/src/runtime/registry/x-pixel' export type NuxtUseScriptOptions = Omit, 'trigger'> & { @@ -87,7 +87,7 @@ export interface ScriptRegistry { matomoAnalytics?: ScriptRegistryEntry segment?: ScriptRegistryEntry stripe?: ScriptRegistryEntry - vimeo?: ScriptRegistryEntry + vimeo?: ScriptRegistryEntry xPixel?: ScriptRegistryEntry } diff --git a/src/runtime/utils.ts b/src/runtime/utils.ts index dddacfcc..2b43ea4b 100644 --- a/src/runtime/utils.ts +++ b/src/runtime/utils.ts @@ -35,7 +35,6 @@ type OptionsFn> = (options: Input) => ({ export function registryScript, O extends ObjectSchema>(key: string, optionsFn: OptionsFn, _userOptions?: RegistryScriptInput) { const runtimeConfig = useRuntimeConfig().public.scripts || {} - // @ts-expect-error untyped const runtimeOptions = runtimeConfig[key] const userOptions = Object.assign(_userOptions || {}, runtimeOptions || {}) const options = optionsFn(userOptions)