diff --git a/package.json b/package.json index 21e6cb7b5a0..5344def52df 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@vueuse/monorepo", "type": "module", - "version": "10.11.0", + "version": "10.11.1", "private": true, "packageManager": "pnpm@9.3.0", "description": "Collection of essential Vue Composition Utilities", diff --git a/packages/components/package.json b/packages/components/package.json index 1fa877373ca..36709fae219 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/components", - "version": "10.11.0", + "version": "10.11.1", "description": "Renderless components for VueUse", "author": "Jacob Clevenger", "license": "MIT", diff --git a/packages/core/package.json b/packages/core/package.json index 5bea0230734..d7faed647ba 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/core", - "version": "10.11.0", + "version": "10.11.1", "description": "Collection of essential Vue Composition Utilities", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/core/useDropZone/index.ts b/packages/core/useDropZone/index.ts index 7135cccfd44..49859b0d826 100644 --- a/packages/core/useDropZone/index.ts +++ b/packages/core/useDropZone/index.ts @@ -1,8 +1,8 @@ -import type { MaybeRef, Ref } from 'vue-demi' +import type { Ref } from 'vue-demi' // eslint-disable-next-line no-restricted-imports import { ref, shallowRef, unref } from 'vue-demi' -import type { MaybeRefOrGetter } from '@vueuse/shared' +import type { MaybeRef, MaybeRefOrGetter } from '@vueuse/shared' import { isClient, notNullish } from '@vueuse/shared' import { useEventListener } from '../useEventListener' diff --git a/packages/core/useEventSource/index.ts b/packages/core/useEventSource/index.ts index a770628a0d5..519c239bddc 100644 --- a/packages/core/useEventSource/index.ts +++ b/packages/core/useEventSource/index.ts @@ -1,7 +1,7 @@ -import type { MaybeRefOrGetter, Ref } from 'vue-demi' +import type { Ref } from 'vue-demi' import { ref, shallowRef, watch } from 'vue-demi' import { isClient, toRef, tryOnScopeDispose } from '@vueuse/shared' -import type { Fn } from '@vueuse/shared' +import type { Fn, MaybeRefOrGetter } from '@vueuse/shared' import { useEventListener } from '../useEventListener' export type EventSourceStatus = 'CONNECTING' | 'OPEN' | 'CLOSED' diff --git a/packages/electron/package.json b/packages/electron/package.json index e01f10bc06c..9c5f1c48c34 100644 --- a/packages/electron/package.json +++ b/packages/electron/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/electron", - "version": "10.11.0", + "version": "10.11.1", "description": "Electron renderer process modules for VueUse", "author": "Archer Gu", "license": "MIT", diff --git a/packages/firebase/package.json b/packages/firebase/package.json index 3aa605092f0..128df87ea5d 100644 --- a/packages/firebase/package.json +++ b/packages/firebase/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/firebase", - "version": "10.11.0", + "version": "10.11.1", "description": "Enables realtime bindings for Firebase", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/integrations/package.json b/packages/integrations/package.json index 07d7b4de281..79d75053a69 100644 --- a/packages/integrations/package.json +++ b/packages/integrations/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/integrations", - "version": "10.11.0", + "version": "10.11.1", "description": "Integration wrappers for utility libraries", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/integrations/useSortable/index.ts b/packages/integrations/useSortable/index.ts index ab23209dde7..0f65c2593d2 100644 --- a/packages/integrations/useSortable/index.ts +++ b/packages/integrations/useSortable/index.ts @@ -1,6 +1,7 @@ import { defaultDocument, toValue, tryOnMounted, tryOnScopeDispose, unrefElement } from '@vueuse/core' import type { ConfigurableDocument, MaybeRefOrGetter } from '@vueuse/core' import Sortable, { type Options } from 'sortablejs' +import type { MaybeRef } from 'vue-demi' import { isRef, nextTick } from 'vue-demi' export interface UseSortableReturn { @@ -94,7 +95,7 @@ export function moveArrayElement( array.splice(to, 0, element) // When list is ref, assign array to list.value if (_valueIsRef) - list.value = array + (list as MaybeRef).value = array }) } } diff --git a/packages/math/package.json b/packages/math/package.json index d04e4ad9a33..6f2b719b8c6 100644 --- a/packages/math/package.json +++ b/packages/math/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/math", - "version": "10.11.0", + "version": "10.11.1", "description": "Math functions for VueUse", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/metadata/package.json b/packages/metadata/package.json index 1fbaf519759..69ee3f4659d 100644 --- a/packages/metadata/package.json +++ b/packages/metadata/package.json @@ -1,7 +1,7 @@ { "name": "@vueuse/metadata", "type": "module", - "version": "10.11.0", + "version": "10.11.1", "description": "Metadata for VueUse functions", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/nuxt/package.json b/packages/nuxt/package.json index 2ac42c68859..c2b61fc7320 100644 --- a/packages/nuxt/package.json +++ b/packages/nuxt/package.json @@ -1,7 +1,7 @@ { "name": "@vueuse/nuxt", "type": "module", - "version": "10.11.0", + "version": "10.11.1", "description": "VueUse Nuxt Module", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/router/package.json b/packages/router/package.json index 78416213126..f6365d33114 100644 --- a/packages/router/package.json +++ b/packages/router/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/router", - "version": "10.11.0", + "version": "10.11.1", "description": "Utilities for vue-router", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/rxjs/package.json b/packages/rxjs/package.json index 6cc8a508497..601c80cc997 100644 --- a/packages/rxjs/package.json +++ b/packages/rxjs/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/rxjs", - "version": "10.11.0", + "version": "10.11.1", "description": "Enables RxJS reactive functions in Vue", "author": "Anthony Fu ", "license": "MIT", diff --git a/packages/shared/package.json b/packages/shared/package.json index 28e86ca820d..bc8fd9ce3bc 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -1,6 +1,6 @@ { "name": "@vueuse/shared", - "version": "10.11.0", + "version": "10.11.1", "author": "Anthony Fu ", "license": "MIT", "funding": "https://github.com/sponsors/antfu", diff --git a/packages/shared/useCounter/index.ts b/packages/shared/useCounter/index.ts index bac44647595..d049501e851 100644 --- a/packages/shared/useCounter/index.ts +++ b/packages/shared/useCounter/index.ts @@ -1,7 +1,6 @@ // eslint-disable-next-line no-restricted-imports import { ref, unref } from 'vue-demi' - -import type { MaybeRef } from 'vue-demi' +import type { MaybeRef } from '../utils' export interface UseCounterOptions { min?: number diff --git a/packages/shared/utils/types.ts b/packages/shared/utils/types.ts index cde7bc8a68c..ed3d3462432 100644 --- a/packages/shared/utils/types.ts +++ b/packages/shared/utils/types.ts @@ -1,4 +1,4 @@ -import type { ComputedRef, Ref, WatchOptions, WatchSource } from 'vue-demi' +import type { ComputedRef, Ref, ShallowRef, WatchOptions, WatchSource, WritableComputedRef } from 'vue-demi' /** * Void function @@ -18,23 +18,23 @@ export type RemovableRef = Omit, 'value'> & { set value(value: T | null | undefined) } +// Vue 2 does not expose `MaybeRef` and `MaybeRefOrGetter` types, +// so we need to maintain these types within vueuse. +// Ensure they are kept in sync with Vue 3 updates. + /** - * Maybe it's a ref, or a plain value - * - * ```ts - * type MaybeRef = T | Ref - * ``` + * Maybe it's a ref, or a plain value. */ -export type MaybeRef = T | Ref +export type MaybeRef = + | T + | Ref + | ShallowRef + | WritableComputedRef /** - * Maybe it's a ref, or a plain value, or a getter function - * - * ```ts - * type MaybeRefOrGetter = (() => T) | T | Ref | ComputedRef - * ``` + * Maybe it's a ref, or a plain value, or a getter function. */ -export type MaybeRefOrGetter = MaybeRef | (() => T) +export type MaybeRefOrGetter = MaybeRef | ComputedRef | (() => T) /** * Maybe it's a computed ref, or a readonly value, or a getter function