@vueuse/shared 8.2.6 → 8.4.0

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/index.cjs CHANGED
@@ -307,6 +307,9 @@ function refAutoReset(defaultValue, afterMs = 1e4) {
307
307
  value = defaultValue;
308
308
  trigger();
309
309
  }, vueDemi.unref(afterMs));
310
+ tryOnScopeDispose(() => {
311
+ clearTimeout(timer);
312
+ });
310
313
  return {
311
314
  get() {
312
315
  track();
@@ -1006,20 +1009,26 @@ function useTimeout(interval = 1e3, options = {}) {
1006
1009
  }
1007
1010
  }
1008
1011
 
1009
- function useToggle(initialValue = false) {
1010
- if (vueDemi.isRef(initialValue)) {
1011
- return (value) => {
1012
- initialValue.value = typeof value === "boolean" ? value : !initialValue.value;
1013
- return initialValue.value;
1014
- };
1015
- } else {
1016
- const boolean = vueDemi.ref(initialValue);
1017
- const toggle = (value) => {
1018
- boolean.value = typeof value === "boolean" ? value : !boolean.value;
1019
- return boolean.value;
1020
- };
1021
- return [boolean, toggle];
1012
+ function useToggle(initialValue = false, options = {}) {
1013
+ const {
1014
+ truthyValue = true,
1015
+ falsyValue = false
1016
+ } = options;
1017
+ const valueIsRef = vueDemi.isRef(initialValue);
1018
+ const innerValue = vueDemi.ref(initialValue);
1019
+ function toggle(value) {
1020
+ if (arguments.length) {
1021
+ innerValue.value = value;
1022
+ return innerValue.value;
1023
+ } else {
1024
+ innerValue.value = innerValue.value === vueDemi.unref(truthyValue) ? vueDemi.unref(falsyValue) : vueDemi.unref(truthyValue);
1025
+ return innerValue.value;
1026
+ }
1022
1027
  }
1028
+ if (valueIsRef)
1029
+ return toggle;
1030
+ else
1031
+ return [innerValue, toggle];
1023
1032
  }
1024
1033
 
1025
1034
  var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
package/index.d.ts CHANGED
@@ -760,14 +760,12 @@ declare function useTimeout(interval: number, options: TimeoutOptions<true>): {
760
760
  ready: ComputedRef<boolean>;
761
761
  } & Stoppable;
762
762
 
763
- /**
764
- * A boolean ref with a toggler
765
- *
766
- * @see https://vueuse.org/useToggle
767
- * @param [initialValue=false]
768
- */
769
- declare function useToggle(value: Ref<boolean>): (value?: boolean) => boolean;
770
- declare function useToggle(initialValue?: boolean): [Ref<boolean>, (value?: boolean) => boolean];
763
+ interface UseToggleOptions<Truthy, Falsy> {
764
+ truthyValue?: MaybeRef<Truthy>;
765
+ falsyValue?: MaybeRef<Falsy>;
766
+ }
767
+ declare function useToggle<Truthy, Falsy, T = Truthy | Falsy>(initialValue: Ref<T>, options?: UseToggleOptions<Truthy, Falsy>): (value?: T) => T;
768
+ declare function useToggle<Truthy = true, Falsy = false, T = Truthy | Falsy>(initialValue?: T, options?: UseToggleOptions<Truthy, Falsy>): [Ref<T>, (value?: T) => T];
771
769
 
772
770
  interface WatchWithFilterOptions<Immediate> extends WatchOptions<Immediate>, ConfigurableEventFilter {
773
771
  }
@@ -830,4 +828,4 @@ declare function watchThrottled<T extends object, Immediate extends Readonly<boo
830
828
  */
831
829
  declare function whenever<T>(source: WatchSource<T | false | null | undefined>, cb: WatchCallback<T>, options?: WatchOptions): vue_demi.WatchStopHandle;
832
830
 
833
- export { Awaitable, ConfigurableEventFilter, ConfigurableFlush, ConfigurableFlushSync, ControlledRefOptions, CreateGlobalStateReturn, DateLike, DebounceFilterOptions, DeepMaybeRef, ElementOf, EventFilter, EventHook, EventHookOff, EventHookOn, EventHookTrigger, ExtendRefOptions, Fn, FunctionArgs, FunctionWrapperOptions, IgnoredUpdater, IntervalFnOptions, IntervalOptions, MapOldSources, MapSources, MaybeRef, Pausable, Reactify, ReactifyNested, ReactifyObjectOptions, RemovableRef, RemoveableRef, ShallowUnwrapRef, SingletonPromiseReturn, Stopable, Stoppable, SyncRefOptions, SyncRefsOptions, TimeoutFnOptions, TimeoutOptions, UntilArrayInstance, UntilBaseInstance, UntilToMatchOptions, UntilValueInstance, UseCounterOptions, UseDateFormatReturn, UseLastChangedOptions, WatchAtMostOptions, WatchAtMostReturn, WatchDebouncedOptions, WatchIgnorableReturn, WatchPausableReturn, WatchThrottledOptions, WatchWithFilterOptions, __onlyVue3, logicAnd as and, assert, refAutoReset as autoResetRef, bypassFilter, clamp, computedEager, computedWithControl, containsProp, computedWithControl as controlledComputed, controlledRef, createEventHook, createFilterWrapper, createGlobalState, createInjectionState, reactify as createReactiveFn, createSharedComposable, createSingletonPromise, debounceFilter, refDebounced as debouncedRef, watchDebounced as debouncedWatch, directiveHooks, computedEager as eagerComputed, extendRef, formatDate, get, identity, watchIgnorable as ignorableWatch, increaseWithUnit, invoke, isBoolean, isClient, isDef, isDefined, isFunction, isNumber, isObject, isString, isWindow, logicAnd, logicNot, logicOr, makeDestructurable, noop, normalizeDate, logicNot as not, now, objectPick, logicOr as or, pausableFilter, watchPausable as pausableWatch, promiseTimeout, rand, reactify, reactifyObject, reactiveComputed, reactiveOmit, reactivePick, refAutoReset, refDebounced, refDefault, refThrottled, refWithControl, set, syncRef, syncRefs, throttleFilter, refThrottled as throttledRef, watchThrottled as throttledWatch, timestamp, toReactive, toRefs, tryOnBeforeMount, tryOnBeforeUnmount, tryOnMounted, tryOnScopeDispose, tryOnUnmounted, until, useCounter, useDateFormat, refDebounced as useDebounce, useDebounceFn, useInterval, useIntervalFn, useLastChanged, refThrottled as useThrottle, useThrottleFn, useTimeout, useTimeoutFn, useToggle, watchAtMost, watchDebounced, watchIgnorable, watchOnce, watchPausable, watchThrottled, watchWithFilter, whenever };
831
+ export { Awaitable, ConfigurableEventFilter, ConfigurableFlush, ConfigurableFlushSync, ControlledRefOptions, CreateGlobalStateReturn, DateLike, DebounceFilterOptions, DeepMaybeRef, ElementOf, EventFilter, EventHook, EventHookOff, EventHookOn, EventHookTrigger, ExtendRefOptions, Fn, FunctionArgs, FunctionWrapperOptions, IgnoredUpdater, IntervalFnOptions, IntervalOptions, MapOldSources, MapSources, MaybeRef, Pausable, Reactify, ReactifyNested, ReactifyObjectOptions, RemovableRef, RemoveableRef, ShallowUnwrapRef, SingletonPromiseReturn, Stopable, Stoppable, SyncRefOptions, SyncRefsOptions, TimeoutFnOptions, TimeoutOptions, UntilArrayInstance, UntilBaseInstance, UntilToMatchOptions, UntilValueInstance, UseCounterOptions, UseDateFormatReturn, UseLastChangedOptions, UseToggleOptions, WatchAtMostOptions, WatchAtMostReturn, WatchDebouncedOptions, WatchIgnorableReturn, WatchPausableReturn, WatchThrottledOptions, WatchWithFilterOptions, __onlyVue3, logicAnd as and, assert, refAutoReset as autoResetRef, bypassFilter, clamp, computedEager, computedWithControl, containsProp, computedWithControl as controlledComputed, controlledRef, createEventHook, createFilterWrapper, createGlobalState, createInjectionState, reactify as createReactiveFn, createSharedComposable, createSingletonPromise, debounceFilter, refDebounced as debouncedRef, watchDebounced as debouncedWatch, directiveHooks, computedEager as eagerComputed, extendRef, formatDate, get, identity, watchIgnorable as ignorableWatch, increaseWithUnit, invoke, isBoolean, isClient, isDef, isDefined, isFunction, isNumber, isObject, isString, isWindow, logicAnd, logicNot, logicOr, makeDestructurable, noop, normalizeDate, logicNot as not, now, objectPick, logicOr as or, pausableFilter, watchPausable as pausableWatch, promiseTimeout, rand, reactify, reactifyObject, reactiveComputed, reactiveOmit, reactivePick, refAutoReset, refDebounced, refDefault, refThrottled, refWithControl, set, syncRef, syncRefs, throttleFilter, refThrottled as throttledRef, watchThrottled as throttledWatch, timestamp, toReactive, toRefs, tryOnBeforeMount, tryOnBeforeUnmount, tryOnMounted, tryOnScopeDispose, tryOnUnmounted, until, useCounter, useDateFormat, refDebounced as useDebounce, useDebounceFn, useInterval, useIntervalFn, useLastChanged, refThrottled as useThrottle, useThrottleFn, useTimeout, useTimeoutFn, useToggle, watchAtMost, watchDebounced, watchIgnorable, watchOnce, watchPausable, watchThrottled, watchWithFilter, whenever };
package/index.iife.js CHANGED
@@ -366,6 +366,9 @@
366
366
  value = defaultValue;
367
367
  trigger();
368
368
  }, vueDemi.unref(afterMs));
369
+ tryOnScopeDispose(() => {
370
+ clearTimeout(timer);
371
+ });
369
372
  return {
370
373
  get() {
371
374
  track();
@@ -1065,20 +1068,26 @@
1065
1068
  }
1066
1069
  }
1067
1070
 
1068
- function useToggle(initialValue = false) {
1069
- if (vueDemi.isRef(initialValue)) {
1070
- return (value) => {
1071
- initialValue.value = typeof value === "boolean" ? value : !initialValue.value;
1072
- return initialValue.value;
1073
- };
1074
- } else {
1075
- const boolean = vueDemi.ref(initialValue);
1076
- const toggle = (value) => {
1077
- boolean.value = typeof value === "boolean" ? value : !boolean.value;
1078
- return boolean.value;
1079
- };
1080
- return [boolean, toggle];
1071
+ function useToggle(initialValue = false, options = {}) {
1072
+ const {
1073
+ truthyValue = true,
1074
+ falsyValue = false
1075
+ } = options;
1076
+ const valueIsRef = vueDemi.isRef(initialValue);
1077
+ const innerValue = vueDemi.ref(initialValue);
1078
+ function toggle(value) {
1079
+ if (arguments.length) {
1080
+ innerValue.value = value;
1081
+ return innerValue.value;
1082
+ } else {
1083
+ innerValue.value = innerValue.value === vueDemi.unref(truthyValue) ? vueDemi.unref(falsyValue) : vueDemi.unref(truthyValue);
1084
+ return innerValue.value;
1085
+ }
1081
1086
  }
1087
+ if (valueIsRef)
1088
+ return toggle;
1089
+ else
1090
+ return [innerValue, toggle];
1082
1091
  }
1083
1092
 
1084
1093
  var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
package/index.iife.min.js CHANGED
@@ -1 +1 @@
1
- var VueDemi=function(o,a,b){if(o.install)return o;if(a)if(a.version.slice(0,2)==="2.")if(b){for(var P in b)o[P]=b[P];o.isVue2=!0,o.isVue3=!1,o.install=function(){},o.Vue=a,o.Vue2=a,o.version=a.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(a.version.slice(0,2)==="3."){for(var P in a)o[P]=a[P];o.isVue2=!1,o.isVue3=!0,o.install=function(){},o.Vue=a,o.Vue2=void 0,o.version=a.version,o.set=function(h,v,g){return Array.isArray(h)?(h.length=Math.max(h.length,v),h.splice(v,1,g),g):(h[v]=g,g)},o.del=function(h,v){if(Array.isArray(h)){h.splice(v,1);return}delete h[v]}}else console.error("[vue-demi] Vue version "+a.version+" is unsupported.");else console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`.");return o}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(o,a){"use strict";var b=Object.defineProperty,P=Object.defineProperties,h=Object.getOwnPropertyDescriptors,v=Object.getOwnPropertySymbols,g=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable,U=(t,e,r)=>e in t?b(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Nt=(t,e)=>{for(var r in e||(e={}))g.call(e,r)&&U(t,r,e[r]);if(v)for(var r of v(e))Mt.call(e,r)&&U(t,r,e[r]);return t},Wt=(t,e)=>P(t,h(e));function H(t,e){var r;const n=a.shallowRef();return a.watchEffect(()=>{n.value=t()},Wt(Nt({},e),{flush:(r=e==null?void 0:e.flush)!=null?r:"sync"})),a.readonly(n)}function Y(t,e){let r,n,i;const c=a.ref(!0);return a.watch(t,()=>{c.value=!0,i()},{flush:"sync"}),a.customRef((l,u)=>(n=l,i=u,{get(){return c.value&&(r=e(),c.value=!1),n(),r},set(){}}))}function Bt(){const t=[],e=i=>{const c=t.indexOf(i);c!==-1&&t.splice(c,1)};return{on:i=>(t.push(i),{off:()=>e(i)}),off:e,trigger:i=>{t.forEach(c=>c(i))}}}function Ut(t){let e=!1,r;const n=a.effectScope(!0);return()=>(e||(r=n.run(t),e=!0),r)}function Ht(t){const e=Symbol("InjectionState");return[(...i)=>{a.provide(e,t(...i))},()=>a.inject(e)]}function m(t){return a.getCurrentScope()?(a.onScopeDispose(t),!0):!1}function Yt(t){let e=0,r,n;const i=()=>{e-=1,n&&e<=0&&(n.stop(),r=void 0,n=void 0)};return(...c)=>(e+=1,r||(n=a.effectScope(!0),r=n.run(()=>t(...c))),m(i),r)}function G(t="this function"){if(!a.isVue3)throw new Error(`[VueUse] ${t} is only works on Vue 3.`)}const Gt={mounted:a.isVue3?"mounted":"inserted",updated:a.isVue3?"updated":"componentUpdated",unmounted:a.isVue3?"unmounted":"unbind"};function V(t,e,{enumerable:r=!1,unwrap:n=!0}={}){G();for(const[i,c]of Object.entries(e))i!=="value"&&(a.isRef(c)&&n?Object.defineProperty(t,i,{get(){return c.value},set(l){c.value=l},enumerable:r}):Object.defineProperty(t,i,{value:c,enumerable:r}));return t}function Vt(t,e){return e==null?a.unref(t):a.unref(t)[e]}function zt(t){return a.unref(t)!=null}function z(...t){return a.computed(()=>t.every(e=>a.unref(e)))}function L(t){return a.computed(()=>!a.unref(t))}function X(...t){return a.computed(()=>t.some(e=>a.unref(e)))}var Lt=Object.defineProperty,Z=Object.getOwnPropertySymbols,Xt=Object.prototype.hasOwnProperty,Zt=Object.prototype.propertyIsEnumerable,k=(t,e,r)=>e in t?Lt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,kt=(t,e)=>{for(var r in e||(e={}))Xt.call(e,r)&&k(t,r,e[r]);if(Z)for(var r of Z(e))Zt.call(e,r)&&k(t,r,e[r]);return t};function qt(t,e){if(typeof Symbol!="undefined"){const r=kt({},t);return Object.defineProperty(r,Symbol.iterator,{enumerable:!1,value(){let n=0;return{next:()=>({value:e[n++],done:n>e.length})}}}),r}else return Object.assign([...e],t)}function R(t){return function(...e){return a.computed(()=>t.apply(this,e.map(r=>a.unref(r))))}}function Jt(t,e={}){let r=[];if(Array.isArray(e))r=e;else{const{includeOwnProperties:n=!0}=e;r.push(...Object.keys(t)),n&&r.push(...Object.getOwnPropertyNames(t))}return Object.fromEntries(r.map(n=>{const i=t[n];return[n,typeof i=="function"?R(i.bind(t)):i]}))}function q(t){if(!a.isRef(t))return a.reactive(t);const e=new Proxy({},{get(r,n,i){return a.unref(Reflect.get(t.value,n,i))},set(r,n,i){return a.isRef(t.value[n])&&!a.isRef(i)?t.value[n].value=i:t.value[n]=i,!0},deleteProperty(r,n){return Reflect.deleteProperty(t.value,n)},has(r,n){return Reflect.has(t.value,n)},ownKeys(){return Object.keys(t.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return a.reactive(e)}function J(t){return q(a.computed(t))}function Qt(t,...e){return J(()=>Object.fromEntries(Object.entries(a.toRefs(t)).filter(r=>!e.includes(r[0]))))}function Kt(t,...e){return a.reactive(Object.fromEntries(e.map(r=>[r,a.toRef(t,r)])))}function Q(t,e=1e4){return a.customRef((r,n)=>{let i=t,c;const l=()=>setTimeout(()=>{i=t,n()},a.unref(e));return{get(){return r(),i},set(u){i=u,n(),clearTimeout(c),c=l()}}})}const j=typeof window!="undefined",Dt=t=>typeof t!="undefined",xt=(t,...e)=>{t||console.warn(...e)},K=Object.prototype.toString,te=t=>typeof t=="boolean",ee=t=>typeof t=="function",re=t=>typeof t=="number",ne=t=>typeof t=="string",oe=t=>K.call(t)==="[object Object]",ae=t=>typeof window!="undefined"&&K.call(t)==="[object Window]",ie=()=>Date.now(),D=()=>+Date.now(),ce=(t,e,r)=>Math.min(r,Math.max(e,t)),x=()=>{},le=(t,e)=>(t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t);function $(t,e){function r(...n){t(()=>e.apply(this,n),{fn:e,thisArg:this,args:n})}return r}const I=t=>t();function M(t,e={}){let r,n;return c=>{const l=a.unref(t),u=a.unref(e.maxWait);if(r&&clearTimeout(r),l<=0||u!==void 0&&u<=0)return n&&(clearTimeout(n),n=null),c();u&&!n&&(n=setTimeout(()=>{r&&clearTimeout(r),n=null,c()},u)),r=setTimeout(()=>{n&&clearTimeout(n),n=null,c()},l)}}function N(t,e=!0,r=!0){let n=0,i,c=!r;const l=()=>{i&&(clearTimeout(i),i=void 0)};return d=>{const _=a.unref(t),p=Date.now()-n;if(l(),_<=0)return n=Date.now(),d();p>_&&(n=Date.now(),c?c=!1:d()),e&&(i=setTimeout(()=>{n=Date.now(),r||(c=!0),l(),d()},_)),!r&&!i&&(i=setTimeout(()=>c=!0,_))}}function tt(t=I){const e=a.ref(!0);function r(){e.value=!1}function n(){e.value=!0}return{isActive:e,pause:r,resume:n,eventFilter:(...c)=>{e.value&&t(...c)}}}function et(t,e=!1,r="Timeout"){return new Promise((n,i)=>{setTimeout(e?()=>i(r):n,t)})}function ue(t){return t}function se(t){let e;function r(){return e||(e=t()),e}return r.reset=async()=>{const n=e;e=void 0,n&&await n},r}function fe(t){return t()}function de(t,...e){return e.some(r=>r in t)}function pe(t,e){var r;if(typeof t=="number")return t+e;const n=((r=t.match(/^-?[0-9]+\.?[0-9]*/))==null?void 0:r[0])||"",i=t.slice(n.length),c=parseFloat(n)+e;return Number.isNaN(c)?t:c+i}function _e(t,e,r=!1){return e.reduce((n,i)=>(i in t&&(!r||!t[i]===void 0)&&(n[i]=t[i]),n),{})}function rt(t,e=200,r={}){return $(M(e,r),t)}function W(t,e=200,r={}){if(e<=0)return t;const n=a.ref(t.value),i=rt(()=>{n.value=t.value},e,r);return a.watch(t,()=>i()),n}function ye(t,e){return a.computed({get(){var r;return(r=t.value)!=null?r:e},set(r){t.value=r}})}function nt(t,e=200,r=!0,n=!0){return $(N(e,r,n),t)}function B(t,e=200,r=!0,n=!0){if(e<=0)return t;const i=a.ref(t.value),c=nt(()=>{i.value=t.value},e,r,n);return a.watch(t,()=>c()),i}function ot(t,e={}){let r=t,n,i;const c=a.customRef((f,y)=>(n=f,i=y,{get(){return l()},set(O){u(O)}}));function l(f=!0){return f&&n(),r}function u(f,y=!0){var O,C;if(f===r)return;const w=r;((O=e.onBeforeChange)==null?void 0:O.call(e,f,w))!==!1&&(r=f,(C=e.onChanged)==null||C.call(e,f,w),y&&i())}return V(c,{get:l,set:u,untrackedGet:()=>l(!1),silentSet:f=>u(f,!1),peek:()=>l(!1),lay:f=>u(f,!1)},{enumerable:!0})}const Oe=ot;function he(...t){if(t.length===2){const[e,r]=t;e.value=r}if(t.length===3)if(a.isVue2)a.set(...t);else{const[e,r,n]=t;e[r]=n}}function ve(t,e,r={}){const{flush:n="sync",deep:i=!1,immediate:c=!0,direction:l="both"}=r;let u,d;return(l==="both"||l==="ltr")&&(u=a.watch(t,_=>e.value=_,{flush:n,deep:i,immediate:c})),(l==="both"||l==="rtl")&&(d=a.watch(e,_=>t.value=_,{flush:n,deep:i,immediate:c})),()=>{u==null||u(),d==null||d()}}function we(t,e,r={}){const{flush:n="sync",deep:i=!1,immediate:c=!0}=r;return Array.isArray(e)||(e=[e]),a.watch(t,l=>e.forEach(u=>u.value=l),{flush:n,deep:i,immediate:c})}var Pe=Object.defineProperty,ge=Object.defineProperties,be=Object.getOwnPropertyDescriptors,at=Object.getOwnPropertySymbols,me=Object.prototype.hasOwnProperty,$e=Object.prototype.propertyIsEnumerable,it=(t,e,r)=>e in t?Pe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Se=(t,e)=>{for(var r in e||(e={}))me.call(e,r)&&it(t,r,e[r]);if(at)for(var r of at(e))$e.call(e,r)&&it(t,r,e[r]);return t},je=(t,e)=>ge(t,be(e));function Ie(t){if(!a.isRef(t))return a.toRefs(t);const e=Array.isArray(t.value)?new Array(t.value.length):{};for(const r in t.value)e[r]=a.customRef(()=>({get(){return t.value[r]},set(n){if(Array.isArray(t.value)){const i=[...t.value];i[r]=n,t.value=i}else t.value=je(Se({},t.value),{[r]:n})}}));return e}function Ee(t,e=!0){a.getCurrentInstance()?a.onBeforeMount(t):e?t():a.nextTick(t)}function Te(t){a.getCurrentInstance()&&a.onBeforeUnmount(t)}function Fe(t,e=!0){a.getCurrentInstance()?a.onMounted(t):e?t():a.nextTick(t)}function Ae(t){a.getCurrentInstance()&&a.onUnmounted(t)}function Ce(t){let e=!1;function r(s,{flush:f="sync",deep:y=!1,timeout:O,throwOnTimeout:C}={}){let w=null;const Rt=[new Promise(Er=>{w=a.watch(t,Tr=>{s(Tr)===!e&&(w==null||w(),Er())},{flush:f,deep:y,immediate:!0})})];return O&&Rt.push(et(O,C).finally(()=>{w==null||w()})),Promise.race(Rt)}function n(s,f){return r(y=>y===a.unref(s),f)}function i(s){return r(f=>Boolean(f),s)}function c(s){return n(null,s)}function l(s){return n(void 0,s)}function u(s){return r(Number.isNaN,s)}function d(s,f){return r(y=>{const O=Array.from(y);return O.includes(s)||O.includes(a.unref(s))},f)}function _(s){return p(1,s)}function p(s=1,f){let y=-1;return r(()=>(y+=1,y>=s),f)}return Array.isArray(a.unref(t))?{toMatch:r,toContains:d,changed:_,changedTimes:p,get not(){return e=!e,this}}:{toMatch:r,toBe:n,toBeTruthy:i,toBeNull:c,toBeNaN:u,toBeUndefined:l,changed:_,changedTimes:p,get not(){return e=!e,this}}}function Re(t=0,e={}){const r=a.ref(t),{max:n=1/0,min:i=-1/0}=e,c=(p=1)=>r.value=Math.min(n,r.value+p),l=(p=1)=>r.value=Math.max(i,r.value-p),u=()=>r.value,d=p=>r.value=p;return{count:r,inc:c,dec:l,get:u,set:d,reset:(p=t)=>(t=p,d(p))}}const Me=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,Ne=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,ct=(t,e)=>{const r=t.getFullYear(),n=t.getMonth(),i=t.getDate(),c=t.getHours(),l=t.getMinutes(),u=t.getSeconds(),d=t.getMilliseconds(),_=t.getDay(),p={YY:String(r).slice(-2),YYYY:r,M:n+1,MM:`${n+1}`.padStart(2,"0"),D:String(i),DD:`${i}`.padStart(2,"0"),H:String(c),HH:`${c}`.padStart(2,"0"),h:`${c%12||12}`.padStart(1,"0"),hh:`${c%12||12}`.padStart(2,"0"),m:String(l),mm:`${l}`.padStart(2,"0"),s:String(u),ss:`${u}`.padStart(2,"0"),SSS:`${d}`.padStart(3,"0"),d:_};return e.replace(Ne,(s,f)=>f||p[s])},lt=t=>{if(t===null)return new Date(NaN);if(t===void 0)return new Date;if(t instanceof Date)return new Date(t);if(typeof t=="string"&&!/Z$/i.test(t)){const e=t.match(Me);if(e){const r=e[2]-1||0,n=(e[7]||"0").substring(0,3);return new Date(e[1],r,e[3]||1,e[4]||0,e[5]||0,e[6]||0,n)}}return new Date(t)};function We(t,e="HH:mm:ss"){return a.computed(()=>ct(lt(a.unref(t)),a.unref(e)))}function ut(t,e=1e3,r={}){const{immediate:n=!0,immediateCallback:i=!1}=r;let c=null;const l=a.ref(!1);function u(){c&&(clearInterval(c),c=null)}function d(){l.value=!1,u()}function _(){e<=0||(l.value=!0,i&&t(),u(),c=setInterval(t,a.unref(e)))}if(n&&j&&_(),a.isRef(e)){const p=a.watch(e,()=>{n&&j&&_()});m(p)}return m(d),{isActive:l,pause:d,resume:_}}var Be=Object.defineProperty,st=Object.getOwnPropertySymbols,Ue=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable,ft=(t,e,r)=>e in t?Be(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ye=(t,e)=>{for(var r in e||(e={}))Ue.call(e,r)&&ft(t,r,e[r]);if(st)for(var r of st(e))He.call(e,r)&&ft(t,r,e[r]);return t};function Ge(t=1e3,e={}){const{controls:r=!1,immediate:n=!0}=e,i=a.ref(0),c=ut(()=>i.value+=1,t,{immediate:n});return r?Ye({counter:i},c):i}function Ve(t,e={}){var r;const n=a.ref((r=e.initialValue)!=null?r:null);return a.watch(t,()=>n.value=D(),e),n}function dt(t,e,r={}){const{immediate:n=!0}=r,i=a.ref(!1);let c=null;function l(){c&&(clearTimeout(c),c=null)}function u(){i.value=!1,l()}function d(..._){l(),i.value=!0,c=setTimeout(()=>{i.value=!1,c=null,t(..._)},a.unref(e))}return n&&(i.value=!0,j&&d()),m(u),{isPending:i,start:d,stop:u}}var ze=Object.defineProperty,pt=Object.getOwnPropertySymbols,Le=Object.prototype.hasOwnProperty,Xe=Object.prototype.propertyIsEnumerable,_t=(t,e,r)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ze=(t,e)=>{for(var r in e||(e={}))Le.call(e,r)&&_t(t,r,e[r]);if(pt)for(var r of pt(e))Xe.call(e,r)&&_t(t,r,e[r]);return t};function ke(t=1e3,e={}){const{controls:r=!1}=e,n=dt(x,t,e),i=a.computed(()=>!n.isPending.value);return r?Ze({ready:i},n):i}function qe(t=!1){if(a.isRef(t))return e=>(t.value=typeof e=="boolean"?e:!t.value,t.value);{const e=a.ref(t);return[e,n=>(e.value=typeof n=="boolean"?n:!e.value,e.value)]}}var yt=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable,Ke=(t,e)=>{var r={};for(var n in t)Je.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&yt)for(var n of yt(t))e.indexOf(n)<0&&Qe.call(t,n)&&(r[n]=t[n]);return r};function S(t,e,r={}){const n=r,{eventFilter:i=I}=n,c=Ke(n,["eventFilter"]);return a.watch(t,$(i,e),c)}var Ot=Object.getOwnPropertySymbols,De=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable,tr=(t,e)=>{var r={};for(var n in t)De.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&Ot)for(var n of Ot(t))e.indexOf(n)<0&&xe.call(t,n)&&(r[n]=t[n]);return r};function er(t,e,r){const n=r,{count:i}=n,c=tr(n,["count"]),l=a.ref(0),u=S(t,(...d)=>{l.value+=1,l.value>=a.unref(i)&&a.nextTick(()=>u()),e(...d)},c);return{count:l,stop:u}}var rr=Object.defineProperty,nr=Object.defineProperties,or=Object.getOwnPropertyDescriptors,E=Object.getOwnPropertySymbols,ht=Object.prototype.hasOwnProperty,vt=Object.prototype.propertyIsEnumerable,wt=(t,e,r)=>e in t?rr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ar=(t,e)=>{for(var r in e||(e={}))ht.call(e,r)&&wt(t,r,e[r]);if(E)for(var r of E(e))vt.call(e,r)&&wt(t,r,e[r]);return t},ir=(t,e)=>nr(t,or(e)),cr=(t,e)=>{var r={};for(var n in t)ht.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&E)for(var n of E(t))e.indexOf(n)<0&&vt.call(t,n)&&(r[n]=t[n]);return r};function Pt(t,e,r={}){const n=r,{debounce:i=0}=n,c=cr(n,["debounce"]);return S(t,e,ir(ar({},c),{eventFilter:M(i)}))}var lr=Object.defineProperty,ur=Object.defineProperties,sr=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,gt=Object.prototype.hasOwnProperty,bt=Object.prototype.propertyIsEnumerable,mt=(t,e,r)=>e in t?lr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,fr=(t,e)=>{for(var r in e||(e={}))gt.call(e,r)&&mt(t,r,e[r]);if(T)for(var r of T(e))bt.call(e,r)&&mt(t,r,e[r]);return t},dr=(t,e)=>ur(t,sr(e)),pr=(t,e)=>{var r={};for(var n in t)gt.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&T)for(var n of T(t))e.indexOf(n)<0&&bt.call(t,n)&&(r[n]=t[n]);return r};function $t(t,e,r={}){const n=r,{eventFilter:i=I}=n,c=pr(n,["eventFilter"]),l=$(i,e);let u,d,_;if(c.flush==="sync"){const p=a.ref(!1);d=()=>{},u=s=>{p.value=!0,s(),p.value=!1},_=a.watch(t,(...s)=>{p.value||l(...s)},c)}else{const p=[],s=a.ref(0),f=a.ref(0);d=()=>{s.value=f.value},p.push(a.watch(t,()=>{f.value++},dr(fr({},c),{flush:"sync"}))),u=y=>{const O=f.value;y(),s.value+=f.value-O},p.push(a.watch(t,(...y)=>{const O=s.value>0&&s.value===f.value;s.value=0,f.value=0,!O&&l(...y)},c)),_=()=>{p.forEach(y=>y())}}return{stop:_,ignoreUpdates:u,ignorePrevAsyncUpdates:d}}function _r(t,e,r){const n=a.watch(t,(...i)=>(a.nextTick(()=>n()),e(...i)),r)}var yr=Object.defineProperty,Or=Object.defineProperties,hr=Object.getOwnPropertyDescriptors,F=Object.getOwnPropertySymbols,St=Object.prototype.hasOwnProperty,jt=Object.prototype.propertyIsEnumerable,It=(t,e,r)=>e in t?yr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vr=(t,e)=>{for(var r in e||(e={}))St.call(e,r)&&It(t,r,e[r]);if(F)for(var r of F(e))jt.call(e,r)&&It(t,r,e[r]);return t},wr=(t,e)=>Or(t,hr(e)),Pr=(t,e)=>{var r={};for(var n in t)St.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&F)for(var n of F(t))e.indexOf(n)<0&&jt.call(t,n)&&(r[n]=t[n]);return r};function Et(t,e,r={}){const n=r,{eventFilter:i}=n,c=Pr(n,["eventFilter"]),{eventFilter:l,pause:u,resume:d,isActive:_}=tt(i);return{stop:S(t,e,wr(vr({},c),{eventFilter:l})),pause:u,resume:d,isActive:_}}var gr=Object.defineProperty,br=Object.defineProperties,mr=Object.getOwnPropertyDescriptors,A=Object.getOwnPropertySymbols,Tt=Object.prototype.hasOwnProperty,Ft=Object.prototype.propertyIsEnumerable,At=(t,e,r)=>e in t?gr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$r=(t,e)=>{for(var r in e||(e={}))Tt.call(e,r)&&At(t,r,e[r]);if(A)for(var r of A(e))Ft.call(e,r)&&At(t,r,e[r]);return t},Sr=(t,e)=>br(t,mr(e)),jr=(t,e)=>{var r={};for(var n in t)Tt.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&A)for(var n of A(t))e.indexOf(n)<0&&Ft.call(t,n)&&(r[n]=t[n]);return r};function Ct(t,e,r={}){const n=r,{throttle:i=0,trailing:c=!0,leading:l=!0}=n,u=jr(n,["throttle","trailing","leading"]);return S(t,e,Sr($r({},u),{eventFilter:N(i,c,l)}))}function Ir(t,e,r){return a.watch(t,(n,i,c)=>{n&&e(n,i,c)},r)}o.__onlyVue3=G,o.and=z,o.assert=xt,o.autoResetRef=Q,o.bypassFilter=I,o.clamp=ce,o.computedEager=H,o.computedWithControl=Y,o.containsProp=de,o.controlledComputed=Y,o.controlledRef=Oe,o.createEventHook=Bt,o.createFilterWrapper=$,o.createGlobalState=Ut,o.createInjectionState=Ht,o.createReactiveFn=R,o.createSharedComposable=Yt,o.createSingletonPromise=se,o.debounceFilter=M,o.debouncedRef=W,o.debouncedWatch=Pt,o.directiveHooks=Gt,o.eagerComputed=H,o.extendRef=V,o.formatDate=ct,o.get=Vt,o.identity=ue,o.ignorableWatch=$t,o.increaseWithUnit=pe,o.invoke=fe,o.isBoolean=te,o.isClient=j,o.isDef=Dt,o.isDefined=zt,o.isFunction=ee,o.isNumber=re,o.isObject=oe,o.isString=ne,o.isWindow=ae,o.logicAnd=z,o.logicNot=L,o.logicOr=X,o.makeDestructurable=qt,o.noop=x,o.normalizeDate=lt,o.not=L,o.now=ie,o.objectPick=_e,o.or=X,o.pausableFilter=tt,o.pausableWatch=Et,o.promiseTimeout=et,o.rand=le,o.reactify=R,o.reactifyObject=Jt,o.reactiveComputed=J,o.reactiveOmit=Qt,o.reactivePick=Kt,o.refAutoReset=Q,o.refDebounced=W,o.refDefault=ye,o.refThrottled=B,o.refWithControl=ot,o.set=he,o.syncRef=ve,o.syncRefs=we,o.throttleFilter=N,o.throttledRef=B,o.throttledWatch=Ct,o.timestamp=D,o.toReactive=q,o.toRefs=Ie,o.tryOnBeforeMount=Ee,o.tryOnBeforeUnmount=Te,o.tryOnMounted=Fe,o.tryOnScopeDispose=m,o.tryOnUnmounted=Ae,o.until=Ce,o.useCounter=Re,o.useDateFormat=We,o.useDebounce=W,o.useDebounceFn=rt,o.useInterval=Ge,o.useIntervalFn=ut,o.useLastChanged=Ve,o.useThrottle=B,o.useThrottleFn=nt,o.useTimeout=ke,o.useTimeoutFn=dt,o.useToggle=qe,o.watchAtMost=er,o.watchDebounced=Pt,o.watchIgnorable=$t,o.watchOnce=_r,o.watchPausable=Et,o.watchThrottled=Ct,o.watchWithFilter=S,o.whenever=Ir,Object.defineProperty(o,"__esModule",{value:!0})})(this.VueUse=this.VueUse||{},VueDemi);
1
+ var VueDemi=function(o,a,m){if(o.install)return o;if(a)if(a.version.slice(0,2)==="2.")if(m){for(var P in m)o[P]=m[P];o.isVue2=!0,o.isVue3=!1,o.install=function(){},o.Vue=a,o.Vue2=a,o.version=a.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(a.version.slice(0,2)==="3."){for(var P in a)o[P]=a[P];o.isVue2=!1,o.isVue3=!0,o.install=function(){},o.Vue=a,o.Vue2=void 0,o.version=a.version,o.set=function(h,v,g){return Array.isArray(h)?(h.length=Math.max(h.length,v),h.splice(v,1,g),g):(h[v]=g,g)},o.del=function(h,v){if(Array.isArray(h)){h.splice(v,1);return}delete h[v]}}else console.error("[vue-demi] Vue version "+a.version+" is unsupported.");else console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`.");return o}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(o,a){"use strict";var m=Object.defineProperty,P=Object.defineProperties,h=Object.getOwnPropertyDescriptors,v=Object.getOwnPropertySymbols,g=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable,U=(t,e,r)=>e in t?m(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Nt=(t,e)=>{for(var r in e||(e={}))g.call(e,r)&&U(t,r,e[r]);if(v)for(var r of v(e))Mt.call(e,r)&&U(t,r,e[r]);return t},Wt=(t,e)=>P(t,h(e));function H(t,e){var r;const n=a.shallowRef();return a.watchEffect(()=>{n.value=t()},Wt(Nt({},e),{flush:(r=e==null?void 0:e.flush)!=null?r:"sync"})),a.readonly(n)}function V(t,e){let r,n,i;const u=a.ref(!0);return a.watch(t,()=>{u.value=!0,i()},{flush:"sync"}),a.customRef((l,c)=>(n=l,i=c,{get(){return u.value&&(r=e(),u.value=!1),n(),r},set(){}}))}function Bt(){const t=[],e=i=>{const u=t.indexOf(i);u!==-1&&t.splice(u,1)};return{on:i=>(t.push(i),{off:()=>e(i)}),off:e,trigger:i=>{t.forEach(u=>u(i))}}}function Ut(t){let e=!1,r;const n=a.effectScope(!0);return()=>(e||(r=n.run(t),e=!0),r)}function Ht(t){const e=Symbol("InjectionState");return[(...i)=>{a.provide(e,t(...i))},()=>a.inject(e)]}function b(t){return a.getCurrentScope()?(a.onScopeDispose(t),!0):!1}function Vt(t){let e=0,r,n;const i=()=>{e-=1,n&&e<=0&&(n.stop(),r=void 0,n=void 0)};return(...u)=>(e+=1,r||(n=a.effectScope(!0),r=n.run(()=>t(...u))),b(i),r)}function Y(t="this function"){if(!a.isVue3)throw new Error(`[VueUse] ${t} is only works on Vue 3.`)}const Yt={mounted:a.isVue3?"mounted":"inserted",updated:a.isVue3?"updated":"componentUpdated",unmounted:a.isVue3?"unmounted":"unbind"};function G(t,e,{enumerable:r=!1,unwrap:n=!0}={}){Y();for(const[i,u]of Object.entries(e))i!=="value"&&(a.isRef(u)&&n?Object.defineProperty(t,i,{get(){return u.value},set(l){u.value=l},enumerable:r}):Object.defineProperty(t,i,{value:u,enumerable:r}));return t}function Gt(t,e){return e==null?a.unref(t):a.unref(t)[e]}function zt(t){return a.unref(t)!=null}function z(...t){return a.computed(()=>t.every(e=>a.unref(e)))}function L(t){return a.computed(()=>!a.unref(t))}function X(...t){return a.computed(()=>t.some(e=>a.unref(e)))}var Lt=Object.defineProperty,Z=Object.getOwnPropertySymbols,Xt=Object.prototype.hasOwnProperty,Zt=Object.prototype.propertyIsEnumerable,k=(t,e,r)=>e in t?Lt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,kt=(t,e)=>{for(var r in e||(e={}))Xt.call(e,r)&&k(t,r,e[r]);if(Z)for(var r of Z(e))Zt.call(e,r)&&k(t,r,e[r]);return t};function qt(t,e){if(typeof Symbol!="undefined"){const r=kt({},t);return Object.defineProperty(r,Symbol.iterator,{enumerable:!1,value(){let n=0;return{next:()=>({value:e[n++],done:n>e.length})}}}),r}else return Object.assign([...e],t)}function R(t){return function(...e){return a.computed(()=>t.apply(this,e.map(r=>a.unref(r))))}}function Jt(t,e={}){let r=[];if(Array.isArray(e))r=e;else{const{includeOwnProperties:n=!0}=e;r.push(...Object.keys(t)),n&&r.push(...Object.getOwnPropertyNames(t))}return Object.fromEntries(r.map(n=>{const i=t[n];return[n,typeof i=="function"?R(i.bind(t)):i]}))}function q(t){if(!a.isRef(t))return a.reactive(t);const e=new Proxy({},{get(r,n,i){return a.unref(Reflect.get(t.value,n,i))},set(r,n,i){return a.isRef(t.value[n])&&!a.isRef(i)?t.value[n].value=i:t.value[n]=i,!0},deleteProperty(r,n){return Reflect.deleteProperty(t.value,n)},has(r,n){return Reflect.has(t.value,n)},ownKeys(){return Object.keys(t.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return a.reactive(e)}function J(t){return q(a.computed(t))}function Qt(t,...e){return J(()=>Object.fromEntries(Object.entries(a.toRefs(t)).filter(r=>!e.includes(r[0]))))}function Kt(t,...e){return a.reactive(Object.fromEntries(e.map(r=>[r,a.toRef(t,r)])))}function Q(t,e=1e4){return a.customRef((r,n)=>{let i=t,u;const l=()=>setTimeout(()=>{i=t,n()},a.unref(e));return b(()=>{clearTimeout(u)}),{get(){return r(),i},set(c){i=c,n(),clearTimeout(u),u=l()}}})}const j=typeof window!="undefined",Dt=t=>typeof t!="undefined",xt=(t,...e)=>{t||console.warn(...e)},K=Object.prototype.toString,te=t=>typeof t=="boolean",ee=t=>typeof t=="function",re=t=>typeof t=="number",ne=t=>typeof t=="string",oe=t=>K.call(t)==="[object Object]",ae=t=>typeof window!="undefined"&&K.call(t)==="[object Window]",ie=()=>Date.now(),D=()=>+Date.now(),ue=(t,e,r)=>Math.min(r,Math.max(e,t)),x=()=>{},le=(t,e)=>(t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t);function $(t,e){function r(...n){t(()=>e.apply(this,n),{fn:e,thisArg:this,args:n})}return r}const I=t=>t();function M(t,e={}){let r,n;return u=>{const l=a.unref(t),c=a.unref(e.maxWait);if(r&&clearTimeout(r),l<=0||c!==void 0&&c<=0)return n&&(clearTimeout(n),n=null),u();c&&!n&&(n=setTimeout(()=>{r&&clearTimeout(r),n=null,u()},c)),r=setTimeout(()=>{n&&clearTimeout(n),n=null,u()},l)}}function N(t,e=!0,r=!0){let n=0,i,u=!r;const l=()=>{i&&(clearTimeout(i),i=void 0)};return d=>{const _=a.unref(t),p=Date.now()-n;if(l(),_<=0)return n=Date.now(),d();p>_&&(n=Date.now(),u?u=!1:d()),e&&(i=setTimeout(()=>{n=Date.now(),r||(u=!0),l(),d()},_)),!r&&!i&&(i=setTimeout(()=>u=!0,_))}}function tt(t=I){const e=a.ref(!0);function r(){e.value=!1}function n(){e.value=!0}return{isActive:e,pause:r,resume:n,eventFilter:(...u)=>{e.value&&t(...u)}}}function et(t,e=!1,r="Timeout"){return new Promise((n,i)=>{setTimeout(e?()=>i(r):n,t)})}function ce(t){return t}function se(t){let e;function r(){return e||(e=t()),e}return r.reset=async()=>{const n=e;e=void 0,n&&await n},r}function fe(t){return t()}function de(t,...e){return e.some(r=>r in t)}function pe(t,e){var r;if(typeof t=="number")return t+e;const n=((r=t.match(/^-?[0-9]+\.?[0-9]*/))==null?void 0:r[0])||"",i=t.slice(n.length),u=parseFloat(n)+e;return Number.isNaN(u)?t:u+i}function _e(t,e,r=!1){return e.reduce((n,i)=>(i in t&&(!r||!t[i]===void 0)&&(n[i]=t[i]),n),{})}function rt(t,e=200,r={}){return $(M(e,r),t)}function W(t,e=200,r={}){if(e<=0)return t;const n=a.ref(t.value),i=rt(()=>{n.value=t.value},e,r);return a.watch(t,()=>i()),n}function ye(t,e){return a.computed({get(){var r;return(r=t.value)!=null?r:e},set(r){t.value=r}})}function nt(t,e=200,r=!0,n=!0){return $(N(e,r,n),t)}function B(t,e=200,r=!0,n=!0){if(e<=0)return t;const i=a.ref(t.value),u=nt(()=>{i.value=t.value},e,r,n);return a.watch(t,()=>u()),i}function ot(t,e={}){let r=t,n,i;const u=a.customRef((f,y)=>(n=f,i=y,{get(){return l()},set(O){c(O)}}));function l(f=!0){return f&&n(),r}function c(f,y=!0){var O,C;if(f===r)return;const w=r;((O=e.onBeforeChange)==null?void 0:O.call(e,f,w))!==!1&&(r=f,(C=e.onChanged)==null||C.call(e,f,w),y&&i())}return G(u,{get:l,set:c,untrackedGet:()=>l(!1),silentSet:f=>c(f,!1),peek:()=>l(!1),lay:f=>c(f,!1)},{enumerable:!0})}const Oe=ot;function he(...t){if(t.length===2){const[e,r]=t;e.value=r}if(t.length===3)if(a.isVue2)a.set(...t);else{const[e,r,n]=t;e[r]=n}}function ve(t,e,r={}){const{flush:n="sync",deep:i=!1,immediate:u=!0,direction:l="both"}=r;let c,d;return(l==="both"||l==="ltr")&&(c=a.watch(t,_=>e.value=_,{flush:n,deep:i,immediate:u})),(l==="both"||l==="rtl")&&(d=a.watch(e,_=>t.value=_,{flush:n,deep:i,immediate:u})),()=>{c==null||c(),d==null||d()}}function we(t,e,r={}){const{flush:n="sync",deep:i=!1,immediate:u=!0}=r;return Array.isArray(e)||(e=[e]),a.watch(t,l=>e.forEach(c=>c.value=l),{flush:n,deep:i,immediate:u})}var Pe=Object.defineProperty,ge=Object.defineProperties,be=Object.getOwnPropertyDescriptors,at=Object.getOwnPropertySymbols,me=Object.prototype.hasOwnProperty,$e=Object.prototype.propertyIsEnumerable,it=(t,e,r)=>e in t?Pe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Se=(t,e)=>{for(var r in e||(e={}))me.call(e,r)&&it(t,r,e[r]);if(at)for(var r of at(e))$e.call(e,r)&&it(t,r,e[r]);return t},je=(t,e)=>ge(t,be(e));function Ie(t){if(!a.isRef(t))return a.toRefs(t);const e=Array.isArray(t.value)?new Array(t.value.length):{};for(const r in t.value)e[r]=a.customRef(()=>({get(){return t.value[r]},set(n){if(Array.isArray(t.value)){const i=[...t.value];i[r]=n,t.value=i}else t.value=je(Se({},t.value),{[r]:n})}}));return e}function Te(t,e=!0){a.getCurrentInstance()?a.onBeforeMount(t):e?t():a.nextTick(t)}function Ee(t){a.getCurrentInstance()&&a.onBeforeUnmount(t)}function Fe(t,e=!0){a.getCurrentInstance()?a.onMounted(t):e?t():a.nextTick(t)}function Ae(t){a.getCurrentInstance()&&a.onUnmounted(t)}function Ce(t){let e=!1;function r(s,{flush:f="sync",deep:y=!1,timeout:O,throwOnTimeout:C}={}){let w=null;const Rt=[new Promise(Tr=>{w=a.watch(t,Er=>{s(Er)===!e&&(w==null||w(),Tr())},{flush:f,deep:y,immediate:!0})})];return O&&Rt.push(et(O,C).finally(()=>{w==null||w()})),Promise.race(Rt)}function n(s,f){return r(y=>y===a.unref(s),f)}function i(s){return r(f=>Boolean(f),s)}function u(s){return n(null,s)}function l(s){return n(void 0,s)}function c(s){return r(Number.isNaN,s)}function d(s,f){return r(y=>{const O=Array.from(y);return O.includes(s)||O.includes(a.unref(s))},f)}function _(s){return p(1,s)}function p(s=1,f){let y=-1;return r(()=>(y+=1,y>=s),f)}return Array.isArray(a.unref(t))?{toMatch:r,toContains:d,changed:_,changedTimes:p,get not(){return e=!e,this}}:{toMatch:r,toBe:n,toBeTruthy:i,toBeNull:u,toBeNaN:c,toBeUndefined:l,changed:_,changedTimes:p,get not(){return e=!e,this}}}function Re(t=0,e={}){const r=a.ref(t),{max:n=1/0,min:i=-1/0}=e,u=(p=1)=>r.value=Math.min(n,r.value+p),l=(p=1)=>r.value=Math.max(i,r.value-p),c=()=>r.value,d=p=>r.value=p;return{count:r,inc:u,dec:l,get:c,set:d,reset:(p=t)=>(t=p,d(p))}}const Me=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,Ne=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,ut=(t,e)=>{const r=t.getFullYear(),n=t.getMonth(),i=t.getDate(),u=t.getHours(),l=t.getMinutes(),c=t.getSeconds(),d=t.getMilliseconds(),_=t.getDay(),p={YY:String(r).slice(-2),YYYY:r,M:n+1,MM:`${n+1}`.padStart(2,"0"),D:String(i),DD:`${i}`.padStart(2,"0"),H:String(u),HH:`${u}`.padStart(2,"0"),h:`${u%12||12}`.padStart(1,"0"),hh:`${u%12||12}`.padStart(2,"0"),m:String(l),mm:`${l}`.padStart(2,"0"),s:String(c),ss:`${c}`.padStart(2,"0"),SSS:`${d}`.padStart(3,"0"),d:_};return e.replace(Ne,(s,f)=>f||p[s])},lt=t=>{if(t===null)return new Date(NaN);if(t===void 0)return new Date;if(t instanceof Date)return new Date(t);if(typeof t=="string"&&!/Z$/i.test(t)){const e=t.match(Me);if(e){const r=e[2]-1||0,n=(e[7]||"0").substring(0,3);return new Date(e[1],r,e[3]||1,e[4]||0,e[5]||0,e[6]||0,n)}}return new Date(t)};function We(t,e="HH:mm:ss"){return a.computed(()=>ut(lt(a.unref(t)),a.unref(e)))}function ct(t,e=1e3,r={}){const{immediate:n=!0,immediateCallback:i=!1}=r;let u=null;const l=a.ref(!1);function c(){u&&(clearInterval(u),u=null)}function d(){l.value=!1,c()}function _(){e<=0||(l.value=!0,i&&t(),c(),u=setInterval(t,a.unref(e)))}if(n&&j&&_(),a.isRef(e)){const p=a.watch(e,()=>{n&&j&&_()});b(p)}return b(d),{isActive:l,pause:d,resume:_}}var Be=Object.defineProperty,st=Object.getOwnPropertySymbols,Ue=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable,ft=(t,e,r)=>e in t?Be(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ve=(t,e)=>{for(var r in e||(e={}))Ue.call(e,r)&&ft(t,r,e[r]);if(st)for(var r of st(e))He.call(e,r)&&ft(t,r,e[r]);return t};function Ye(t=1e3,e={}){const{controls:r=!1,immediate:n=!0}=e,i=a.ref(0),u=ct(()=>i.value+=1,t,{immediate:n});return r?Ve({counter:i},u):i}function Ge(t,e={}){var r;const n=a.ref((r=e.initialValue)!=null?r:null);return a.watch(t,()=>n.value=D(),e),n}function dt(t,e,r={}){const{immediate:n=!0}=r,i=a.ref(!1);let u=null;function l(){u&&(clearTimeout(u),u=null)}function c(){i.value=!1,l()}function d(..._){l(),i.value=!0,u=setTimeout(()=>{i.value=!1,u=null,t(..._)},a.unref(e))}return n&&(i.value=!0,j&&d()),b(c),{isPending:i,start:d,stop:c}}var ze=Object.defineProperty,pt=Object.getOwnPropertySymbols,Le=Object.prototype.hasOwnProperty,Xe=Object.prototype.propertyIsEnumerable,_t=(t,e,r)=>e in t?ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ze=(t,e)=>{for(var r in e||(e={}))Le.call(e,r)&&_t(t,r,e[r]);if(pt)for(var r of pt(e))Xe.call(e,r)&&_t(t,r,e[r]);return t};function ke(t=1e3,e={}){const{controls:r=!1}=e,n=dt(x,t,e),i=a.computed(()=>!n.isPending.value);return r?Ze({ready:i},n):i}function qe(t=!1,e={}){const{truthyValue:r=!0,falsyValue:n=!1}=e,i=a.isRef(t),u=a.ref(t);function l(c){return arguments.length?(u.value=c,u.value):(u.value=u.value===a.unref(r)?a.unref(n):a.unref(r),u.value)}return i?l:[u,l]}var yt=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable,Ke=(t,e)=>{var r={};for(var n in t)Je.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&yt)for(var n of yt(t))e.indexOf(n)<0&&Qe.call(t,n)&&(r[n]=t[n]);return r};function S(t,e,r={}){const n=r,{eventFilter:i=I}=n,u=Ke(n,["eventFilter"]);return a.watch(t,$(i,e),u)}var Ot=Object.getOwnPropertySymbols,De=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable,tr=(t,e)=>{var r={};for(var n in t)De.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&Ot)for(var n of Ot(t))e.indexOf(n)<0&&xe.call(t,n)&&(r[n]=t[n]);return r};function er(t,e,r){const n=r,{count:i}=n,u=tr(n,["count"]),l=a.ref(0),c=S(t,(...d)=>{l.value+=1,l.value>=a.unref(i)&&a.nextTick(()=>c()),e(...d)},u);return{count:l,stop:c}}var rr=Object.defineProperty,nr=Object.defineProperties,or=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,ht=Object.prototype.hasOwnProperty,vt=Object.prototype.propertyIsEnumerable,wt=(t,e,r)=>e in t?rr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ar=(t,e)=>{for(var r in e||(e={}))ht.call(e,r)&&wt(t,r,e[r]);if(T)for(var r of T(e))vt.call(e,r)&&wt(t,r,e[r]);return t},ir=(t,e)=>nr(t,or(e)),ur=(t,e)=>{var r={};for(var n in t)ht.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&T)for(var n of T(t))e.indexOf(n)<0&&vt.call(t,n)&&(r[n]=t[n]);return r};function Pt(t,e,r={}){const n=r,{debounce:i=0}=n,u=ur(n,["debounce"]);return S(t,e,ir(ar({},u),{eventFilter:M(i)}))}var lr=Object.defineProperty,cr=Object.defineProperties,sr=Object.getOwnPropertyDescriptors,E=Object.getOwnPropertySymbols,gt=Object.prototype.hasOwnProperty,bt=Object.prototype.propertyIsEnumerable,mt=(t,e,r)=>e in t?lr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,fr=(t,e)=>{for(var r in e||(e={}))gt.call(e,r)&&mt(t,r,e[r]);if(E)for(var r of E(e))bt.call(e,r)&&mt(t,r,e[r]);return t},dr=(t,e)=>cr(t,sr(e)),pr=(t,e)=>{var r={};for(var n in t)gt.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&E)for(var n of E(t))e.indexOf(n)<0&&bt.call(t,n)&&(r[n]=t[n]);return r};function $t(t,e,r={}){const n=r,{eventFilter:i=I}=n,u=pr(n,["eventFilter"]),l=$(i,e);let c,d,_;if(u.flush==="sync"){const p=a.ref(!1);d=()=>{},c=s=>{p.value=!0,s(),p.value=!1},_=a.watch(t,(...s)=>{p.value||l(...s)},u)}else{const p=[],s=a.ref(0),f=a.ref(0);d=()=>{s.value=f.value},p.push(a.watch(t,()=>{f.value++},dr(fr({},u),{flush:"sync"}))),c=y=>{const O=f.value;y(),s.value+=f.value-O},p.push(a.watch(t,(...y)=>{const O=s.value>0&&s.value===f.value;s.value=0,f.value=0,!O&&l(...y)},u)),_=()=>{p.forEach(y=>y())}}return{stop:_,ignoreUpdates:c,ignorePrevAsyncUpdates:d}}function _r(t,e,r){const n=a.watch(t,(...i)=>(a.nextTick(()=>n()),e(...i)),r)}var yr=Object.defineProperty,Or=Object.defineProperties,hr=Object.getOwnPropertyDescriptors,F=Object.getOwnPropertySymbols,St=Object.prototype.hasOwnProperty,jt=Object.prototype.propertyIsEnumerable,It=(t,e,r)=>e in t?yr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vr=(t,e)=>{for(var r in e||(e={}))St.call(e,r)&&It(t,r,e[r]);if(F)for(var r of F(e))jt.call(e,r)&&It(t,r,e[r]);return t},wr=(t,e)=>Or(t,hr(e)),Pr=(t,e)=>{var r={};for(var n in t)St.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&F)for(var n of F(t))e.indexOf(n)<0&&jt.call(t,n)&&(r[n]=t[n]);return r};function Tt(t,e,r={}){const n=r,{eventFilter:i}=n,u=Pr(n,["eventFilter"]),{eventFilter:l,pause:c,resume:d,isActive:_}=tt(i);return{stop:S(t,e,wr(vr({},u),{eventFilter:l})),pause:c,resume:d,isActive:_}}var gr=Object.defineProperty,br=Object.defineProperties,mr=Object.getOwnPropertyDescriptors,A=Object.getOwnPropertySymbols,Et=Object.prototype.hasOwnProperty,Ft=Object.prototype.propertyIsEnumerable,At=(t,e,r)=>e in t?gr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$r=(t,e)=>{for(var r in e||(e={}))Et.call(e,r)&&At(t,r,e[r]);if(A)for(var r of A(e))Ft.call(e,r)&&At(t,r,e[r]);return t},Sr=(t,e)=>br(t,mr(e)),jr=(t,e)=>{var r={};for(var n in t)Et.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&A)for(var n of A(t))e.indexOf(n)<0&&Ft.call(t,n)&&(r[n]=t[n]);return r};function Ct(t,e,r={}){const n=r,{throttle:i=0,trailing:u=!0,leading:l=!0}=n,c=jr(n,["throttle","trailing","leading"]);return S(t,e,Sr($r({},c),{eventFilter:N(i,u,l)}))}function Ir(t,e,r){return a.watch(t,(n,i,u)=>{n&&e(n,i,u)},r)}o.__onlyVue3=Y,o.and=z,o.assert=xt,o.autoResetRef=Q,o.bypassFilter=I,o.clamp=ue,o.computedEager=H,o.computedWithControl=V,o.containsProp=de,o.controlledComputed=V,o.controlledRef=Oe,o.createEventHook=Bt,o.createFilterWrapper=$,o.createGlobalState=Ut,o.createInjectionState=Ht,o.createReactiveFn=R,o.createSharedComposable=Vt,o.createSingletonPromise=se,o.debounceFilter=M,o.debouncedRef=W,o.debouncedWatch=Pt,o.directiveHooks=Yt,o.eagerComputed=H,o.extendRef=G,o.formatDate=ut,o.get=Gt,o.identity=ce,o.ignorableWatch=$t,o.increaseWithUnit=pe,o.invoke=fe,o.isBoolean=te,o.isClient=j,o.isDef=Dt,o.isDefined=zt,o.isFunction=ee,o.isNumber=re,o.isObject=oe,o.isString=ne,o.isWindow=ae,o.logicAnd=z,o.logicNot=L,o.logicOr=X,o.makeDestructurable=qt,o.noop=x,o.normalizeDate=lt,o.not=L,o.now=ie,o.objectPick=_e,o.or=X,o.pausableFilter=tt,o.pausableWatch=Tt,o.promiseTimeout=et,o.rand=le,o.reactify=R,o.reactifyObject=Jt,o.reactiveComputed=J,o.reactiveOmit=Qt,o.reactivePick=Kt,o.refAutoReset=Q,o.refDebounced=W,o.refDefault=ye,o.refThrottled=B,o.refWithControl=ot,o.set=he,o.syncRef=ve,o.syncRefs=we,o.throttleFilter=N,o.throttledRef=B,o.throttledWatch=Ct,o.timestamp=D,o.toReactive=q,o.toRefs=Ie,o.tryOnBeforeMount=Te,o.tryOnBeforeUnmount=Ee,o.tryOnMounted=Fe,o.tryOnScopeDispose=b,o.tryOnUnmounted=Ae,o.until=Ce,o.useCounter=Re,o.useDateFormat=We,o.useDebounce=W,o.useDebounceFn=rt,o.useInterval=Ye,o.useIntervalFn=ct,o.useLastChanged=Ge,o.useThrottle=B,o.useThrottleFn=nt,o.useTimeout=ke,o.useTimeoutFn=dt,o.useToggle=qe,o.watchAtMost=er,o.watchDebounced=Pt,o.watchIgnorable=$t,o.watchOnce=_r,o.watchPausable=Tt,o.watchThrottled=Ct,o.watchWithFilter=S,o.whenever=Ir,Object.defineProperty(o,"__esModule",{value:!0})})(this.VueUse=this.VueUse||{},VueDemi);
package/index.mjs CHANGED
@@ -303,6 +303,9 @@ function refAutoReset(defaultValue, afterMs = 1e4) {
303
303
  value = defaultValue;
304
304
  trigger();
305
305
  }, unref(afterMs));
306
+ tryOnScopeDispose(() => {
307
+ clearTimeout(timer);
308
+ });
306
309
  return {
307
310
  get() {
308
311
  track();
@@ -1002,20 +1005,26 @@ function useTimeout(interval = 1e3, options = {}) {
1002
1005
  }
1003
1006
  }
1004
1007
 
1005
- function useToggle(initialValue = false) {
1006
- if (isRef(initialValue)) {
1007
- return (value) => {
1008
- initialValue.value = typeof value === "boolean" ? value : !initialValue.value;
1009
- return initialValue.value;
1010
- };
1011
- } else {
1012
- const boolean = ref(initialValue);
1013
- const toggle = (value) => {
1014
- boolean.value = typeof value === "boolean" ? value : !boolean.value;
1015
- return boolean.value;
1016
- };
1017
- return [boolean, toggle];
1008
+ function useToggle(initialValue = false, options = {}) {
1009
+ const {
1010
+ truthyValue = true,
1011
+ falsyValue = false
1012
+ } = options;
1013
+ const valueIsRef = isRef(initialValue);
1014
+ const innerValue = ref(initialValue);
1015
+ function toggle(value) {
1016
+ if (arguments.length) {
1017
+ innerValue.value = value;
1018
+ return innerValue.value;
1019
+ } else {
1020
+ innerValue.value = innerValue.value === unref(truthyValue) ? unref(falsyValue) : unref(truthyValue);
1021
+ return innerValue.value;
1022
+ }
1018
1023
  }
1024
+ if (valueIsRef)
1025
+ return toggle;
1026
+ else
1027
+ return [innerValue, toggle];
1019
1028
  }
1020
1029
 
1021
1030
  var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vueuse/shared",
3
- "version": "8.2.6",
3
+ "version": "8.4.0",
4
4
  "keywords": [
5
5
  "vue",
6
6
  "vue-use",