@vueuse/components 9.0.1 → 9.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs CHANGED
@@ -983,6 +983,7 @@ const UseImage = vueDemi.defineComponent({
983
983
  }
984
984
  });
985
985
 
986
+ const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
986
987
  function useScroll(element, options = {}) {
987
988
  const {
988
989
  throttle = 0,
@@ -1029,7 +1030,7 @@ function useScroll(element, options = {}) {
1029
1030
  directions.left = scrollLeft < x.value;
1030
1031
  directions.right = scrollLeft > x.value;
1031
1032
  arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
1032
- arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
1033
+ arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1033
1034
  x.value = scrollLeft;
1034
1035
  let scrollTop = eventTarget.scrollTop;
1035
1036
  if (e.target === document && !scrollTop)
@@ -1037,7 +1038,7 @@ function useScroll(element, options = {}) {
1037
1038
  directions.top = scrollTop < y.value;
1038
1039
  directions.bottom = scrollTop > y.value;
1039
1040
  arrivedState.top = scrollTop <= 0 + (offset.top || 0);
1040
- arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
1041
+ arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1041
1042
  y.value = scrollTop;
1042
1043
  isScrolling.value = true;
1043
1044
  onScrollEnd(e);
@@ -1407,6 +1408,19 @@ const UsePreferredColorScheme = vueDemi.defineComponent({
1407
1408
  }
1408
1409
  });
1409
1410
 
1411
+ const UsePreferredContrast = vueDemi.defineComponent({
1412
+ name: "UsePreferredContrast",
1413
+ setup(props, { slots }) {
1414
+ const data = vueDemi.reactive({
1415
+ contrast: core.usePreferredContrast()
1416
+ });
1417
+ return () => {
1418
+ if (slots.default)
1419
+ return slots.default(data);
1420
+ };
1421
+ }
1422
+ });
1423
+
1410
1424
  const UsePreferredDark = vueDemi.defineComponent({
1411
1425
  name: "UsePreferredDark",
1412
1426
  setup(props, { slots }) {
@@ -1433,6 +1447,19 @@ const UsePreferredLanguages = vueDemi.defineComponent({
1433
1447
  }
1434
1448
  });
1435
1449
 
1450
+ const UsePreferredReducedMotion = vueDemi.defineComponent({
1451
+ name: "UsePreferredReducedMotion",
1452
+ setup(props, { slots }) {
1453
+ const data = vueDemi.reactive({
1454
+ motion: core.usePreferredReducedMotion()
1455
+ });
1456
+ return () => {
1457
+ if (slots.default)
1458
+ return slots.default(data);
1459
+ };
1460
+ }
1461
+ });
1462
+
1436
1463
  function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
1437
1464
  const variable = vueDemi.ref(initialValue);
1438
1465
  const elRef = vueDemi.computed(() => {
@@ -1796,8 +1823,10 @@ exports.UseOnline = UseOnline;
1796
1823
  exports.UsePageLeave = UsePageLeave;
1797
1824
  exports.UsePointer = UsePointer;
1798
1825
  exports.UsePreferredColorScheme = UsePreferredColorScheme;
1826
+ exports.UsePreferredContrast = UsePreferredContrast;
1799
1827
  exports.UsePreferredDark = UsePreferredDark;
1800
1828
  exports.UsePreferredLanguages = UsePreferredLanguages;
1829
+ exports.UsePreferredReducedMotion = UsePreferredReducedMotion;
1801
1830
  exports.UseScreenSafeArea = UseScreenSafeArea;
1802
1831
  exports.UseTimeAgo = UseTimeAgo;
1803
1832
  exports.UseTimestamp = UseTimestamp;
package/index.d.ts CHANGED
@@ -502,6 +502,10 @@ declare const UsePreferredColorScheme: vue_demi.DefineComponent<{}, () => vue_de
502
502
  [key: string]: any;
503
503
  }>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
504
504
 
505
+ declare const UsePreferredContrast: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
506
+ [key: string]: any;
507
+ }>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
508
+
505
509
  declare const UsePreferredDark: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
506
510
  [key: string]: any;
507
511
  }>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
@@ -510,6 +514,10 @@ declare const UsePreferredLanguages: vue_demi.DefineComponent<{}, () => vue_demi
510
514
  [key: string]: any;
511
515
  }>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
512
516
 
517
+ declare const UsePreferredReducedMotion: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
518
+ [key: string]: any;
519
+ }>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
520
+
513
521
  declare const UseScreenSafeArea: vue_demi.DefineComponent<{
514
522
  top: BooleanConstructor;
515
523
  right: BooleanConstructor;
@@ -570,4 +578,4 @@ declare const UseWindowFocus: vue_demi.DefineComponent<{}, () => vue_demi.VNode<
570
578
 
571
579
  declare const UseWindowSize: vue_demi.DefineComponent<UseWindowSizeOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, vue_demi.EmitsOptions, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseWindowSizeOptions>, {}>;
572
580
 
573
- export { OnClickOutside, OnLongPress, OnLongPressProps, UseActiveElement, UseBattery, UseBrowserLocation, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseDraggableProps, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseObjectUrlProps, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePreferredColorScheme, UsePreferredDark, UsePreferredLanguages, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseVirtualListProps, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };
581
+ export { OnClickOutside, OnLongPress, OnLongPressProps, UseActiveElement, UseBattery, UseBrowserLocation, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseDraggableProps, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseObjectUrlProps, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePreferredColorScheme, UsePreferredContrast, UsePreferredDark, UsePreferredLanguages, UsePreferredReducedMotion, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseVirtualListProps, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };
package/index.iife.js CHANGED
@@ -1051,6 +1051,7 @@
1051
1051
  }
1052
1052
  });
1053
1053
 
1054
+ const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
1054
1055
  function useScroll(element, options = {}) {
1055
1056
  const {
1056
1057
  throttle = 0,
@@ -1097,7 +1098,7 @@
1097
1098
  directions.left = scrollLeft < x.value;
1098
1099
  directions.right = scrollLeft > x.value;
1099
1100
  arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
1100
- arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
1101
+ arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1101
1102
  x.value = scrollLeft;
1102
1103
  let scrollTop = eventTarget.scrollTop;
1103
1104
  if (e.target === document && !scrollTop)
@@ -1105,7 +1106,7 @@
1105
1106
  directions.top = scrollTop < y.value;
1106
1107
  directions.bottom = scrollTop > y.value;
1107
1108
  arrivedState.top = scrollTop <= 0 + (offset.top || 0);
1108
- arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
1109
+ arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1109
1110
  y.value = scrollTop;
1110
1111
  isScrolling.value = true;
1111
1112
  onScrollEnd(e);
@@ -1475,6 +1476,19 @@
1475
1476
  }
1476
1477
  });
1477
1478
 
1479
+ const UsePreferredContrast = vueDemi.defineComponent({
1480
+ name: "UsePreferredContrast",
1481
+ setup(props, { slots }) {
1482
+ const data = vueDemi.reactive({
1483
+ contrast: core.usePreferredContrast()
1484
+ });
1485
+ return () => {
1486
+ if (slots.default)
1487
+ return slots.default(data);
1488
+ };
1489
+ }
1490
+ });
1491
+
1478
1492
  const UsePreferredDark = vueDemi.defineComponent({
1479
1493
  name: "UsePreferredDark",
1480
1494
  setup(props, { slots }) {
@@ -1501,6 +1515,19 @@
1501
1515
  }
1502
1516
  });
1503
1517
 
1518
+ const UsePreferredReducedMotion = vueDemi.defineComponent({
1519
+ name: "UsePreferredReducedMotion",
1520
+ setup(props, { slots }) {
1521
+ const data = vueDemi.reactive({
1522
+ motion: core.usePreferredReducedMotion()
1523
+ });
1524
+ return () => {
1525
+ if (slots.default)
1526
+ return slots.default(data);
1527
+ };
1528
+ }
1529
+ });
1530
+
1504
1531
  function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
1505
1532
  const variable = vueDemi.ref(initialValue);
1506
1533
  const elRef = vueDemi.computed(() => {
@@ -1864,8 +1891,10 @@
1864
1891
  exports.UsePageLeave = UsePageLeave;
1865
1892
  exports.UsePointer = UsePointer;
1866
1893
  exports.UsePreferredColorScheme = UsePreferredColorScheme;
1894
+ exports.UsePreferredContrast = UsePreferredContrast;
1867
1895
  exports.UsePreferredDark = UsePreferredDark;
1868
1896
  exports.UsePreferredLanguages = UsePreferredLanguages;
1897
+ exports.UsePreferredReducedMotion = UsePreferredReducedMotion;
1869
1898
  exports.UseScreenSafeArea = UseScreenSafeArea;
1870
1899
  exports.UseTimeAgo = UseTimeAgo;
1871
1900
  exports.UseTimestamp = UseTimestamp;
package/index.iife.min.js CHANGED
@@ -1 +1 @@
1
- var VueDemi=function(s,n,p){if(s.install)return s;if(n)if(n.version.slice(0,4)==="2.7."){for(var u in n)s[u]=n[u];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version}else if(n.version.slice(0,2)==="2.")if(p){for(var u in p)s[u]=p[u];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(n.version.slice(0,2)==="3."){for(var u in n)s[u]=n[u];s.isVue2=!1,s.isVue3=!0,s.install=function(){},s.Vue=n,s.Vue2=void 0,s.version=n.version,s.set=function(C,b,S){return Array.isArray(C)?(C.length=Math.max(C.length,b),C.splice(b,1,S),S):(C[b]=S,S)},s.del=function(C,b){if(Array.isArray(C)){C.splice(b,1);return}delete C[b]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");else console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`.");return s}(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(s,n,p,u){"use strict";const C=n.defineComponent({name:"OnClickOutside",props:["as"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return p.onClickOutside(o,a=>{r("trigger",a)}),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}});function b(t){var e;const r=u.resolveUnref(t);return(e=r==null?void 0:r.$el)!=null?e:r}const S=u.isClient?window:void 0;function $(...t){let e,r,o,a;if(u.isString(t[0])?([r,o,a]=t,e=S):[e,r,o,a]=t,!e)return u.noop;let l=u.noop;const i=n.watch(()=>b(e),f=>{l(),!!f&&(f.addEventListener(r,o,a),l=()=>{f.removeEventListener(r,o,a),l=u.noop})},{immediate:!0,flush:"post"}),c=()=>{i(),l()};return u.tryOnScopeDispose(c),c}function W(t,e,r={}){const{window:o=S,ignore:a,capture:l=!0,detectIframe:i=!1}=r;if(!o)return;const c=n.ref(!0);let f;const g=d=>{o.clearTimeout(f);const _=b(t),m=d.composedPath();!_||_===d.target||m.includes(_)||!c.value||a&&a.length>0&&a.some(P=>{const U=b(P);return U&&(d.target===U||m.includes(U))})||e(d)},v=[$(o,"click",g,{passive:!0,capture:l}),$(o,"pointerdown",d=>{const _=b(t);c.value=!!_&&!d.composedPath().includes(_)},{passive:!0}),$(o,"pointerup",d=>{if(d.button===0){const _=d.composedPath();d.composedPath=()=>_,f=o.setTimeout(()=>g(d),50)}},{passive:!0}),i&&$(o,"blur",d=>{var _;const m=b(t);((_=document.activeElement)==null?void 0:_.tagName)==="IFRAME"&&!(m==null?void 0:m.contains(document.activeElement))&&e(d)})].filter(Boolean);return()=>v.forEach(d=>d())}const k=(()=>{let t=null;return(e,r)=>{if(t){t(),t=W(e,r.value);return}t=W(e,r.value)}})(),Ie=t=>typeof t=="function"?t:typeof t=="string"?e=>e.key===t:Array.isArray(t)?e=>t.includes(e.key):t?()=>!0:()=>!1;function F(t,e,r={}){const{target:o=S,eventName:a="keydown",passive:l=!1}=r,i=Ie(t);return $(o,a,f=>{i(f)&&e(f)},l)}var Me=Object.defineProperty,K=Object.getOwnPropertySymbols,Ve=Object.prototype.hasOwnProperty,Ne=Object.prototype.propertyIsEnumerable,J=(t,e,r)=>e in t?Me(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ae=(t,e)=>{for(var r in e||(e={}))Ve.call(e,r)&&J(t,r,e[r]);if(K)for(var r of K(e))Ne.call(e,r)&&J(t,r,e[r]);return t};const Te={[u.directiveHooks.mounted](t,e){var r,o;const a=(o=(r=e.arg)==null?void 0:r.split(","))!=null?o:[];if(typeof e.value=="function")F(a,e.value,{target:t});else{const[l,i]=e.value;F(a,l,Ae({target:t},i))}}},He=500;function T(t,e,r){var o,a;const l=n.computed(()=>b(t));let i=null;function c(){i!=null&&(clearTimeout(i),i=null)}function f(v){var O,d,_,m;((O=r==null?void 0:r.modifiers)==null?void 0:O.self)&&v.target!==l.value||(c(),((d=r==null?void 0:r.modifiers)==null?void 0:d.prevent)&&v.preventDefault(),((_=r==null?void 0:r.modifiers)==null?void 0:_.stop)&&v.stopPropagation(),i=setTimeout(()=>e(v),(m=r==null?void 0:r.delay)!=null?m:He))}const g={capture:(o=r==null?void 0:r.modifiers)==null?void 0:o.capture,once:(a=r==null?void 0:r.modifiers)==null?void 0:a.once};$(l,"pointerdown",f,g),$(l,"pointerup",c,g),$(l,"pointerleave",c,g)}const ze=n.defineComponent({name:"OnLongPress",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return T(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}}),G={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?T(t,e.value,{modifiers:e.modifiers}):T(t,...e.value)}},Re=n.defineComponent({name:"UseActiveElement",setup(t,{slots:e}){const r=n.reactive({element:p.useActiveElement()});return()=>{if(e.default)return e.default(r)}}}),Be=n.defineComponent({name:"UseBattery",setup(t,{slots:e}){const r=n.reactive(p.useBattery(t));return()=>{if(e.default)return e.default(r)}}}),We=n.defineComponent({name:"UseBrowserLocation",setup(t,{slots:e}){const r=n.reactive(p.useBrowserLocation());return()=>{if(e.default)return e.default(r)}}}),H=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},z="__vueuse_ssr_handlers__";H[z]=H[z]||{};const ke=H[z];function q(t,e){return ke[t]||e}function Fe(t){return t==null?"any":t instanceof Set?"set":t instanceof Map?"map":t instanceof Date?"date":typeof t=="boolean"?"boolean":typeof t=="string"?"string":typeof t=="object"||Array.isArray(t)?"object":Number.isNaN(t)?"any":"number"}var Ke=Object.defineProperty,Q=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable,Y=(t,e,r)=>e in t?Ke(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,X=(t,e)=>{for(var r in e||(e={}))Je.call(e,r)&&Y(t,r,e[r]);if(Q)for(var r of Q(e))Ge.call(e,r)&&Y(t,r,e[r]);return t};const qe={boolean:{read:t=>t==="true",write:t=>String(t)},object:{read:t=>JSON.parse(t),write:t=>JSON.stringify(t)},number:{read:t=>Number.parseFloat(t),write:t=>String(t)},any:{read:t=>t,write:t=>String(t)},string:{read:t=>t,write:t=>String(t)},map:{read:t=>new Map(JSON.parse(t)),write:t=>JSON.stringify(Array.from(t.entries()))},set:{read:t=>new Set(JSON.parse(t)),write:t=>JSON.stringify(Array.from(t))},date:{read:t=>new Date(t),write:t=>t.toISOString()}};function Qe(t,e,r,o={}){var a;const{flush:l="pre",deep:i=!0,listenToStorageChanges:c=!0,writeDefaults:f=!0,mergeDefaults:g=!1,shallow:v,window:O=S,eventFilter:d,onError:_=y=>{console.error(y)}}=o,m=(v?n.shallowRef:n.ref)(e);if(!r)try{r=q("getDefaultStorage",()=>{var y;return(y=S)==null?void 0:y.localStorage})()}catch(y){_(y)}if(!r)return m;const P=u.resolveUnref(e),U=Fe(P),h=(a=o.serializer)!=null?a:qe[U],{pause:w,resume:j}=u.pausableWatch(m,()=>L(m.value),{flush:l,deep:i,eventFilter:d});return O&&c&&$(O,"storage",N),N(),m;function L(y){try{y==null?r.removeItem(t):r.setItem(t,h.write(y))}catch(E){_(E)}}function I(y){if(!(y&&y.key!==t)){w();try{const E=y?y.newValue:r.getItem(t);if(E==null)return f&&P!==null&&r.setItem(t,h.write(P)),P;if(!y&&g){const A=h.read(E);return u.isFunction(g)?g(A,P):U==="object"&&!Array.isArray(A)?X(X({},P),A):A}else return typeof E!="string"?E:h.read(E)}catch(E){_(E)}finally{j()}}}function N(y){y&&y.key!==t||(m.value=I(y))}}function R(t,e=!1){const r=n.ref(),o=()=>r.value=Boolean(t());return o(),u.tryOnMounted(o,e),r}function Ye(t,e={}){const{window:r=S}=e,o=R(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const l=n.ref(!1),i=()=>{!o.value||(a||(a=r.matchMedia(t)),l.value=a.matches)};return u.tryOnBeforeMount(()=>{i(),!!a&&("addEventListener"in a?a.addEventListener("change",i):a.addListener(i),u.tryOnScopeDispose(()=>{"removeEventListener"in a?a.removeEventListener("change",i):a.removeListener(i)}))}),l}function Xe(t){return Ye("(prefers-color-scheme: dark)",t)}var Ze=Object.defineProperty,Z=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,De=Object.prototype.propertyIsEnumerable,x=(t,e,r)=>e in t?Ze(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,et=(t,e)=>{for(var r in e||(e={}))xe.call(e,r)&&x(t,r,e[r]);if(Z)for(var r of Z(e))De.call(e,r)&&x(t,r,e[r]);return t};function tt(t={}){const{selector:e="html",attribute:r="class",initialValue:o="auto",window:a=S,storage:l,storageKey:i="vueuse-color-scheme",listenToStorageChanges:c=!0,storageRef:f,emitAuto:g}=t,v=et({auto:"",light:"light",dark:"dark"},t.modes||{}),O=Xe({window:a}),d=n.computed(()=>O.value?"dark":"light"),_=f||(i==null?n.ref(o):Qe(i,o,l,{window:a,listenToStorageChanges:c})),m=n.computed({get(){return _.value==="auto"&&!g?d.value:_.value},set(w){_.value=w}}),P=q("updateHTMLAttrs",(w,j,L)=>{const I=a==null?void 0:a.document.querySelector(w);if(!!I)if(j==="class"){const N=L.split(/\s/g);Object.values(v).flatMap(y=>(y||"").split(/\s/g)).filter(Boolean).forEach(y=>{N.includes(y)?I.classList.add(y):I.classList.remove(y)})}else I.setAttribute(j,L)});function U(w){var j;const L=w==="auto"?d.value:w;P(e,r,(j=v[L])!=null?j:L)}function h(w){t.onChanged?t.onChanged(w,U):U(w)}return n.watch(m,h,{flush:"post",immediate:!0}),g&&n.watch(d,()=>h(m.value),{flush:"post"}),u.tryOnMounted(()=>h(m.value)),m}const rt=n.defineComponent({name:"UseColorMode",props:["selector","attribute","modes","onChanged","storageKey","storage","emitAuto"],setup(t,{slots:e}){const r=tt(t),o=n.reactive({mode:r});return()=>{if(e.default)return e.default(o)}}}),nt=n.defineComponent({name:"UseDark",props:["selector","attribute","valueDark","valueLight","onChanged","storageKey","storage"],setup(t,{slots:e}){const r=p.useDark(t),o=n.reactive({isDark:r,toggleDark:u.useToggle(r)});return()=>{if(e.default)return e.default(o)}}}),ot=n.defineComponent({name:"UseDeviceMotion",setup(t,{slots:e}){const r=n.reactive(p.useDeviceMotion());return()=>{if(e.default)return e.default(r)}}}),at=n.defineComponent({name:"UseDeviceOrientation",setup(t,{slots:e}){const r=n.reactive(p.useDeviceOrientation());return()=>{if(e.default)return e.default(r)}}}),st=n.defineComponent({name:"UseDevicePixelRatio",setup(t,{slots:e}){const r=n.reactive({pixelRatio:p.useDevicePixelRatio()});return()=>{if(e.default)return e.default(r)}}}),lt=n.defineComponent({name:"UseDevicesList",props:["onUpdated","requestPermissions","constraints"],setup(t,{slots:e}){const r=n.reactive(p.useDevicesList(t));return()=>{if(e.default)return e.default(r)}}}),it=n.defineComponent({name:"UseDocumentVisibility",setup(t,{slots:e}){const r=n.reactive({visibility:p.useDocumentVisibility()});return()=>{if(e.default)return e.default(r)}}});var ut=Object.defineProperty,ct=Object.defineProperties,ft=Object.getOwnPropertyDescriptors,D=Object.getOwnPropertySymbols,pt=Object.prototype.hasOwnProperty,dt=Object.prototype.propertyIsEnumerable,ee=(t,e,r)=>e in t?ut(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vt=(t,e)=>{for(var r in e||(e={}))pt.call(e,r)&&ee(t,r,e[r]);if(D)for(var r of D(e))dt.call(e,r)&&ee(t,r,e[r]);return t},gt=(t,e)=>ct(t,ft(e));const _t=n.defineComponent({name:"UseDraggable",props:["storageKey","storageType","initialValue","exact","preventDefault","stopPropagation","pointerTypes","as"],setup(t,{slots:e}){const r=n.ref(),o=t.storageKey?p.useStorage(t.storageKey,u.resolveUnref(t.initialValue)||{x:0,y:0},p.isClient?t.storageType==="session"?sessionStorage:localStorage:void 0):t.initialValue||{x:0,y:0},a=n.reactive(p.useDraggable(r,gt(vt({},t),{initialValue:o})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r,style:`touch-action:none;${a.style}`},e.default(a))}}}),Ot=n.defineComponent({name:"UseElementBounding",props:["box","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(p.useElementBounding(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function mt(t){const e=n.ref(!1);return $(t,"mouseenter",()=>e.value=!0),$(t,"mouseleave",()=>e.value=!1),e}const yt={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=mt(t);n.watch(r,o=>e.value(o))}}},Pt=n.defineComponent({name:"UseElementSize",props:["width","height","box"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(p.useElementSize(r,{width:t.width,height:t.height},{box:t.box}));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var te=Object.getOwnPropertySymbols,ht=Object.prototype.hasOwnProperty,wt=Object.prototype.propertyIsEnumerable,bt=(t,e)=>{var r={};for(var o in t)ht.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&te)for(var o of te(t))e.indexOf(o)<0&&wt.call(t,o)&&(r[o]=t[o]);return r};function Ut(t,e,r={}){const o=r,{window:a=S}=o,l=bt(o,["window"]);let i;const c=R(()=>a&&"ResizeObserver"in a),f=()=>{i&&(i.disconnect(),i=void 0)},g=n.watch(()=>b(t),O=>{f(),c.value&&a&&O&&(i=new ResizeObserver(e),i.observe(O,l))},{immediate:!0,flush:"post"}),v=()=>{f(),g()};return u.tryOnScopeDispose(v),{isSupported:c,stop:v}}function St(t,e={width:0,height:0},r={}){const o=n.ref(e.width),a=n.ref(e.height);return Ut(t,([l])=>{o.value=l.contentRect.width,a.value=l.contentRect.height},r),n.watch(()=>b(t),l=>{o.value=l?e.width:0,a.value=l?e.height:0}),{width:o,height:a}}const $t={[u.directiveHooks.mounted](t,e){var r;const o=typeof e.value=="function"?e.value:(r=e.value)==null?void 0:r[0],a=typeof e.value=="function"?[]:e.value.slice(1),{width:l,height:i}=St(t,...a);n.watch([l,i],([c,f])=>o({width:c,height:f}))}},Ct=n.defineComponent({name:"UseElementVisibility",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive({isVisible:p.useElementVisibility(r)});return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function re(t,{window:e=S,scrollTarget:r}={}){const o=n.ref(!1),a=()=>{if(!e)return;const l=e.document,i=u.resolveUnref(t);if(!i)o.value=!1;else{const c=i.getBoundingClientRect();o.value=c.top<=(e.innerHeight||l.documentElement.clientHeight)&&c.left<=(e.innerWidth||l.documentElement.clientWidth)&&c.bottom>=0&&c.right>=0}};return u.tryOnMounted(a),e&&u.tryOnMounted(()=>$(()=>u.resolveUnref(r)||e,"scroll",a,{capture:!1,passive:!0})),o}const Et={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=re(t);n.watch(o,a=>r(a),{immediate:!0})}else{const[r,o]=e.value,a=re(t,o);n.watch(a,l=>r(l),{immediate:!0})}}},jt=n.defineComponent({name:"UseEyeDropper",props:{sRGBHex:String},setup(t,{slots:e}){const r=n.reactive(p.useEyeDropper());return()=>{if(e.default)return e.default(r)}}}),Lt=n.defineComponent({name:"UseFullscreen",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(p.useFullscreen(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),It=n.defineComponent({name:"UseGeolocation",props:["enableHighAccuracy","maximumAge","timeout","navigator"],setup(t,{slots:e}){const r=n.reactive(p.useGeolocation(t));return()=>{if(e.default)return e.default(r)}}}),Mt=n.defineComponent({name:"UseIdle",props:["timeout","events","listenForVisibilityChange","initialState"],setup(t,{slots:e}){const r=n.reactive(p.useIdle(t.timeout,t));return()=>{if(e.default)return e.default(r)}}});function Vt(t,e,r){const{immediate:o=!0,delay:a=0,onError:l=u.noop,resetOnExecute:i=!0,shallow:c=!0,throwError:f}=r??{},g=c?n.shallowRef(e):n.ref(e),v=n.ref(!1),O=n.ref(!1),d=n.ref(void 0);async function _(m=0,...P){i&&(g.value=e),d.value=void 0,v.value=!1,O.value=!0,m>0&&await u.promiseTimeout(m);const U=typeof t=="function"?t(...P):t;try{const h=await U;g.value=h,v.value=!0}catch(h){if(d.value=h,l(h),f)throw d}finally{O.value=!1}return g.value}return o&&_(a),{state:g,isReady:v,isLoading:O,error:d,execute:_}}var Nt=Object.defineProperty,ne=Object.getOwnPropertySymbols,At=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,oe=(t,e,r)=>e in t?Nt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ht=(t,e)=>{for(var r in e||(e={}))At.call(e,r)&&oe(t,r,e[r]);if(ne)for(var r of ne(e))Tt.call(e,r)&&oe(t,r,e[r]);return t};async function zt(t){return new Promise((e,r)=>{const o=new Image,{src:a,srcset:l,sizes:i}=t;o.src=a,l&&(o.srcset=l),i&&(o.sizes=i),o.onload=()=>e(o),o.onerror=r})}const Rt=(t,e={})=>{const r=Vt(()=>zt(u.resolveUnref(t)),void 0,Ht({resetOnExecute:!0},e));return n.watch(()=>u.resolveUnref(t),()=>r.execute(e.delay),{deep:!0}),r},Bt=n.defineComponent({name:"UseImage",props:["src","srcset","sizes","as"],setup(t,{slots:e}){const r=n.reactive(Rt(t));return()=>r.isLoading&&e.loading?e.loading(r):r.error&&e.error?e.error(r.error):e.default?e.default(r):n.h(t.as||"img",t)}});function B(t,e={}){const{throttle:r=0,idle:o=200,onStop:a=u.noop,onScroll:l=u.noop,offset:i={left:0,right:0,top:0,bottom:0},eventListenerOptions:c={capture:!1,passive:!0}}=e,f=n.ref(0),g=n.ref(0),v=n.ref(!1),O=n.reactive({left:!0,right:!1,top:!0,bottom:!1}),d=n.reactive({left:!1,right:!1,top:!1,bottom:!1}),_=u.useDebounceFn(P=>{v.value=!1,d.left=!1,d.right=!1,d.top=!1,d.bottom=!1,a(P)},r+o),m=P=>{const U=P.target===document?P.target.documentElement:P.target,h=U.scrollLeft;d.left=h<f.value,d.right=h>f.value,O.left=h<=0+(i.left||0),O.right=h+U.clientWidth>=U.scrollWidth-(i.right||0),f.value=h;let w=U.scrollTop;P.target===document&&!w&&(w=document.body.scrollTop),d.top=w<g.value,d.bottom=w>g.value,O.top=w<=0+(i.top||0),O.bottom=w+U.clientHeight>=U.scrollHeight-(i.bottom||0),g.value=w,v.value=!0,_(P),l(P)};return $(t,"scroll",r?u.useThrottleFn(m,r):m,c),{x:f,y:g,isScrolling:v,arrivedState:O,directions:d}}var Wt=Object.defineProperty,kt=Object.defineProperties,Ft=Object.getOwnPropertyDescriptors,ae=Object.getOwnPropertySymbols,Kt=Object.prototype.hasOwnProperty,Jt=Object.prototype.propertyIsEnumerable,se=(t,e,r)=>e in t?Wt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,le=(t,e)=>{for(var r in e||(e={}))Kt.call(e,r)&&se(t,r,e[r]);if(ae)for(var r of ae(e))Jt.call(e,r)&&se(t,r,e[r]);return t},Gt=(t,e)=>kt(t,Ft(e));function ie(t,e,r={}){var o,a;const l=(o=r.direction)!=null?o:"bottom",i=n.reactive(B(t,Gt(le({},r),{offset:le({[l]:(a=r.distance)!=null?a:0},r.offset)})));n.watch(()=>i.arrivedState[l],async c=>{var f,g;if(c){const v=u.resolveUnref(t),O={height:(f=v==null?void 0:v.scrollHeight)!=null?f:0,width:(g=v==null?void 0:v.scrollWidth)!=null?g:0};await e(i),r.preserveScrollPosition&&v&&n.nextTick(()=>{v.scrollTo({top:v.scrollHeight-O.height,left:v.scrollWidth-O.width})})}})}const qt={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?ie(t,e.value):ie(t,...e.value)}};function ue(t,e,r={}){const{root:o,rootMargin:a="0px",threshold:l=.1,window:i=S}=r,c=R(()=>i&&"IntersectionObserver"in i);let f=u.noop;const g=c.value?n.watch(()=>({el:b(t),root:b(o)}),({el:O,root:d})=>{if(f(),!O)return;const _=new IntersectionObserver(e,{root:d,rootMargin:a,threshold:l});_.observe(O),f=()=>{_.disconnect(),f=u.noop}},{immediate:!0,flush:"post"}):u.noop,v=()=>{f(),g()};return u.tryOnScopeDispose(v),{isSupported:c,stop:v}}const Qt={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?ue(t,e.value):ue(t,...e.value)}},Yt=n.defineComponent({name:"UseMouse",props:["touch","resetOnTouchEnds","initialValue"],setup(t,{slots:e}){const r=n.reactive(p.useMouse(t));return()=>{if(e.default)return e.default(r)}}}),Xt=n.defineComponent({name:"UseMouseElement",props:["handleOutside","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(p.useMouseInElement(r,t));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var Zt=Object.defineProperty,xt=Object.defineProperties,Dt=Object.getOwnPropertyDescriptors,ce=Object.getOwnPropertySymbols,er=Object.prototype.hasOwnProperty,tr=Object.prototype.propertyIsEnumerable,fe=(t,e,r)=>e in t?Zt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,rr=(t,e)=>{for(var r in e||(e={}))er.call(e,r)&&fe(t,r,e[r]);if(ce)for(var r of ce(e))tr.call(e,r)&&fe(t,r,e[r]);return t},nr=(t,e)=>xt(t,Dt(e));const or=n.defineComponent({name:"UseMousePressed",props:["touch","initialValue","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(p.useMousePressed(nr(rr({},t),{target:r})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),ar=n.defineComponent({name:"UseNetwork",setup(t,{slots:e}){const r=n.reactive(p.useNetwork());return()=>{if(e.default)return e.default(r)}}});var sr=Object.defineProperty,lr=Object.defineProperties,ir=Object.getOwnPropertyDescriptors,pe=Object.getOwnPropertySymbols,ur=Object.prototype.hasOwnProperty,cr=Object.prototype.propertyIsEnumerable,de=(t,e,r)=>e in t?sr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,fr=(t,e)=>{for(var r in e||(e={}))ur.call(e,r)&&de(t,r,e[r]);if(pe)for(var r of pe(e))cr.call(e,r)&&de(t,r,e[r]);return t},pr=(t,e)=>lr(t,ir(e));const dr=n.defineComponent({name:"UseNow",props:["interval"],setup(t,{slots:e}){const r=n.reactive(p.useNow(pr(fr({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}}),vr=n.defineComponent({name:"UseObjectUrl",props:["object"],setup(t,{slots:e}){const r=n.toRef(t,"object"),o=p.useObjectUrl(r);return()=>{if(e.default&&o.value)return e.default(o)}}});var gr=Object.defineProperty,_r=Object.defineProperties,Or=Object.getOwnPropertyDescriptors,ve=Object.getOwnPropertySymbols,mr=Object.prototype.hasOwnProperty,yr=Object.prototype.propertyIsEnumerable,ge=(t,e,r)=>e in t?gr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Pr=(t,e)=>{for(var r in e||(e={}))mr.call(e,r)&&ge(t,r,e[r]);if(ve)for(var r of ve(e))yr.call(e,r)&&ge(t,r,e[r]);return t},hr=(t,e)=>_r(t,Or(e));const wr=n.defineComponent({name:"UseOffsetPagination",props:["total","page","pageSize","onPageChange","onPageSizeChange","onPageCountChange"],emits:["page-change","page-size-change","page-count-change"],setup(t,{slots:e,emit:r}){const o=n.reactive(p.useOffsetPagination(hr(Pr({},t),{onPageChange(...a){var l;(l=t.onPageChange)==null||l.call(t,...a),r("page-change",...a)},onPageSizeChange(...a){var l;(l=t.onPageSizeChange)==null||l.call(t,...a),r("page-size-change",...a)},onPageCountChange(...a){var l;(l=t.onPageCountChange)==null||l.call(t,...a),r("page-count-change",...a)}})));return()=>{if(e.default)return e.default(o)}}}),br=n.defineComponent({name:"UseOnline",setup(t,{slots:e}){const r=n.reactive({isOnline:p.useOnline()});return()=>{if(e.default)return e.default(r)}}}),Ur=n.defineComponent({name:"UsePageLeave",setup(t,{slots:e}){const r=n.reactive({isLeft:p.usePageLeave()});return()=>{if(e.default)return e.default(r)}}});var Sr=Object.defineProperty,$r=Object.defineProperties,Cr=Object.getOwnPropertyDescriptors,_e=Object.getOwnPropertySymbols,Er=Object.prototype.hasOwnProperty,jr=Object.prototype.propertyIsEnumerable,Oe=(t,e,r)=>e in t?Sr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Lr=(t,e)=>{for(var r in e||(e={}))Er.call(e,r)&&Oe(t,r,e[r]);if(_e)for(var r of _e(e))jr.call(e,r)&&Oe(t,r,e[r]);return t},Ir=(t,e)=>$r(t,Cr(e));const Mr=n.defineComponent({name:"UsePointer",props:["pointerTypes","initialValue","target"],setup(t,{slots:e}){const r=n.ref(null),o=n.reactive(p.usePointer(Ir(Lr({},t),{target:t.target==="self"?r:S})));return()=>{if(e.default)return e.default(o,{ref:r})}}}),Vr=n.defineComponent({name:"UsePreferredColorScheme",setup(t,{slots:e}){const r=n.reactive({colorScheme:p.usePreferredColorScheme()});return()=>{if(e.default)return e.default(r)}}}),Nr=n.defineComponent({name:"UsePreferredDark",setup(t,{slots:e}){const r=n.reactive({prefersDark:p.usePreferredDark()});return()=>{if(e.default)return e.default(r)}}}),Ar=n.defineComponent({name:"UsePreferredLanguages",setup(t,{slots:e}){const r=n.reactive({languages:p.usePreferredLanguages()});return()=>{if(e.default)return e.default(r)}}});function M(t,e,{window:r=S,initialValue:o=""}={}){const a=n.ref(o),l=n.computed(()=>{var i;return b(e)||((i=r==null?void 0:r.document)==null?void 0:i.documentElement)});return n.watch([l,()=>u.resolveUnref(t)],([i,c])=>{var f;if(i&&r){const g=(f=r.getComputedStyle(i).getPropertyValue(c))==null?void 0:f.trim();a.value=g||o}},{immediate:!0}),n.watch(a,i=>{var c;((c=l.value)==null?void 0:c.style)&&l.value.style.setProperty(u.resolveUnref(t),i)}),a}const me="--vueuse-safe-area-top",ye="--vueuse-safe-area-right",Pe="--vueuse-safe-area-bottom",he="--vueuse-safe-area-left";function Tr(){const t=n.ref(""),e=n.ref(""),r=n.ref(""),o=n.ref("");if(u.isClient){const l=M(me),i=M(ye),c=M(Pe),f=M(he);l.value="env(safe-area-inset-top, 0px)",i.value="env(safe-area-inset-right, 0px)",c.value="env(safe-area-inset-bottom, 0px)",f.value="env(safe-area-inset-left, 0px)",a(),$("resize",u.useDebounceFn(a))}function a(){t.value=V(me),e.value=V(ye),r.value=V(Pe),o.value=V(he)}return{top:t,right:e,bottom:r,left:o,update:a}}function V(t){return getComputedStyle(document.documentElement).getPropertyValue(t)}const Hr=n.defineComponent({name:"UseScreenSafeArea",props:{top:Boolean,right:Boolean,bottom:Boolean,left:Boolean},setup(t,{slots:e}){const{top:r,right:o,bottom:a,left:l}=Tr();return()=>{if(e.default)return n.h("div",{style:{paddingTop:t.top?r.value:"",paddingRight:t.right?o.value:"",paddingBottom:t.bottom?a.value:"",paddingLeft:t.left?l.value:"",boxSizing:"border-box",maxHeight:"100vh",maxWidth:"100vw",overflow:"auto"}},e.default())}}});var zr=Object.defineProperty,Rr=Object.defineProperties,Br=Object.getOwnPropertyDescriptors,we=Object.getOwnPropertySymbols,Wr=Object.prototype.hasOwnProperty,kr=Object.prototype.propertyIsEnumerable,be=(t,e,r)=>e in t?zr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Fr=(t,e)=>{for(var r in e||(e={}))Wr.call(e,r)&&be(t,r,e[r]);if(we)for(var r of we(e))kr.call(e,r)&&be(t,r,e[r]);return t},Kr=(t,e)=>Rr(t,Br(e));const Jr={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=B(t,{onScroll(){r(o)},onStop(){r(o)}})}else{const[r,o]=e.value,a=B(t,Kr(Fr({},o),{onScroll(l){var i;(i=o.onScroll)==null||i.call(o,l),r(a)},onStop(l){var i;(i=o.onStop)==null||i.call(o,l),r(a)}}))}}};function Gr(t){const e=t||window.event;return e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)}function qr(t,e=!1){const r=n.ref(e);let o=null,a;n.watch(u.resolveRef(t),c=>{if(c){const f=c;a=f.style.overflow,r.value&&(f.style.overflow="hidden")}},{immediate:!0});const l=()=>{const c=u.resolveUnref(t);!c||r.value||(u.isIOS&&(o=$(c,"touchmove",Gr,{passive:!1})),c.style.overflow="hidden",r.value=!0)},i=()=>{const c=u.resolveUnref(t);!c||!r.value||(u.isIOS&&(o==null||o()),c.style.overflow=a,r.value=!1)};return u.tryOnScopeDispose(i),n.computed({get(){return r.value},set(c){c?l():i()}})}const Qr=(()=>{let t=!1;const e=n.ref(!1);return(r,o)=>{if(e.value=o.value,t)return;t=!0;const a=qr(r,o.value);n.watch(e,l=>a.value=l)}})();var Yr=Object.defineProperty,Xr=Object.defineProperties,Zr=Object.getOwnPropertyDescriptors,Ue=Object.getOwnPropertySymbols,xr=Object.prototype.hasOwnProperty,Dr=Object.prototype.propertyIsEnumerable,Se=(t,e,r)=>e in t?Yr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,en=(t,e)=>{for(var r in e||(e={}))xr.call(e,r)&&Se(t,r,e[r]);if(Ue)for(var r of Ue(e))Dr.call(e,r)&&Se(t,r,e[r]);return t},tn=(t,e)=>Xr(t,Zr(e));const rn=n.defineComponent({name:"UseTimeAgo",props:["time","updateInterval","max","fullDateFormatter","messages"],setup(t,{slots:e}){const r=n.reactive(p.useTimeAgo(()=>t.time,tn(en({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var nn=Object.defineProperty,on=Object.defineProperties,an=Object.getOwnPropertyDescriptors,$e=Object.getOwnPropertySymbols,sn=Object.prototype.hasOwnProperty,ln=Object.prototype.propertyIsEnumerable,Ce=(t,e,r)=>e in t?nn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,un=(t,e)=>{for(var r in e||(e={}))sn.call(e,r)&&Ce(t,r,e[r]);if($e)for(var r of $e(e))ln.call(e,r)&&Ce(t,r,e[r]);return t},cn=(t,e)=>on(t,an(e));const fn=n.defineComponent({name:"UseTimestamp",props:["immediate","interval","offset"],setup(t,{slots:e}){const r=n.reactive(p.useTimestamp(cn(un({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var pn=Object.defineProperty,Ee=Object.getOwnPropertySymbols,dn=Object.prototype.hasOwnProperty,vn=Object.prototype.propertyIsEnumerable,je=(t,e,r)=>e in t?pn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Le=(t,e)=>{for(var r in e||(e={}))dn.call(e,r)&&je(t,r,e[r]);if(Ee)for(var r of Ee(e))vn.call(e,r)&&je(t,r,e[r]);return t};const gn=n.defineComponent({name:"UseVirtualList",props:["list","options","height"],setup(t,{slots:e}){const{list:r}=n.toRefs(t),{list:o,containerProps:a,wrapperProps:l}=p.useVirtualList(r,t.options);return a.style.height=t.height||"300px",()=>n.h("div",Le({},a),[n.h("div",Le({},l.value),o.value.map(i=>n.h("div",{style:{overFlow:"hidden",height:i.height}},e.default?e.default(i):"Please set content!")))])}}),_n=n.defineComponent({name:"UseWindowFocus",setup(t,{slots:e}){const r=n.reactive({focused:p.useWindowFocus()});return()=>{if(e.default)return e.default(r)}}}),On=n.defineComponent({name:"UseWindowSize",props:["initialWidth","initialHeight"],setup(t,{slots:e}){const r=n.reactive(p.useWindowSize(t));return()=>{if(e.default)return e.default(r)}}});s.OnClickOutside=C,s.OnLongPress=ze,s.UseActiveElement=Re,s.UseBattery=Be,s.UseBrowserLocation=We,s.UseColorMode=rt,s.UseDark=nt,s.UseDeviceMotion=ot,s.UseDeviceOrientation=at,s.UseDevicePixelRatio=st,s.UseDevicesList=lt,s.UseDocumentVisibility=it,s.UseDraggable=_t,s.UseElementBounding=Ot,s.UseElementSize=Pt,s.UseElementVisibility=Ct,s.UseEyeDropper=jt,s.UseFullscreen=Lt,s.UseGeolocation=It,s.UseIdle=Mt,s.UseImage=Bt,s.UseMouse=Yt,s.UseMouseInElement=Xt,s.UseMousePressed=or,s.UseNetwork=ar,s.UseNow=dr,s.UseObjectUrl=vr,s.UseOffsetPagination=wr,s.UseOnline=br,s.UsePageLeave=Ur,s.UsePointer=Mr,s.UsePreferredColorScheme=Vr,s.UsePreferredDark=Nr,s.UsePreferredLanguages=Ar,s.UseScreenSafeArea=Hr,s.UseTimeAgo=rn,s.UseTimestamp=fn,s.UseVirtualList=gn,s.UseWindowFocus=_n,s.UseWindowSize=On,s.VOnClickOutside=k,s.VOnLongPress=G,s.vElementHover=yt,s.vElementSize=$t,s.vElementVisibility=Et,s.vInfiniteScroll=qt,s.vIntersectionObserver=Qt,s.vOnClickOutside=k,s.vOnKeyStroke=Te,s.vOnLongPress=G,s.vScroll=Jr,s.vScrollLock=Qr,Object.defineProperty(s,"__esModule",{value:!0})})(this.VueUse=this.VueUse||{},VueDemi,VueUse,VueUse);
1
+ var VueDemi=function(s,n,f){if(s.install)return s;if(n)if(n.version.slice(0,4)==="2.7."){for(var u in n)s[u]=n[u];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version}else if(n.version.slice(0,2)==="2.")if(f){for(var u in f)s[u]=f[u];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(n.version.slice(0,2)==="3."){for(var u in n)s[u]=n[u];s.isVue2=!1,s.isVue3=!0,s.install=function(){},s.Vue=n,s.Vue2=void 0,s.version=n.version,s.set=function(C,b,S){return Array.isArray(C)?(C.length=Math.max(C.length,b),C.splice(b,1,S),S):(C[b]=S,S)},s.del=function(C,b){if(Array.isArray(C)){C.splice(b,1);return}delete C[b]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");else console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`.");return s}(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(s,n,f,u){"use strict";const C=n.defineComponent({name:"OnClickOutside",props:["as"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return f.onClickOutside(o,a=>{r("trigger",a)}),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}});function b(t){var e;const r=u.resolveUnref(t);return(e=r==null?void 0:r.$el)!=null?e:r}const S=u.isClient?window:void 0;function $(...t){let e,r,o,a;if(u.isString(t[0])?([r,o,a]=t,e=S):[e,r,o,a]=t,!e)return u.noop;let l=u.noop;const i=n.watch(()=>b(e),p=>{l(),!!p&&(p.addEventListener(r,o,a),l=()=>{p.removeEventListener(r,o,a),l=u.noop})},{immediate:!0,flush:"post"}),c=()=>{i(),l()};return u.tryOnScopeDispose(c),c}function W(t,e,r={}){const{window:o=S,ignore:a,capture:l=!0,detectIframe:i=!1}=r;if(!o)return;const c=n.ref(!0);let p;const g=d=>{o.clearTimeout(p);const _=b(t),P=d.composedPath();!_||_===d.target||P.includes(_)||!c.value||a&&a.length>0&&a.some(y=>{const U=b(y);return U&&(d.target===U||P.includes(U))})||e(d)},v=[$(o,"click",g,{passive:!0,capture:l}),$(o,"pointerdown",d=>{const _=b(t);c.value=!!_&&!d.composedPath().includes(_)},{passive:!0}),$(o,"pointerup",d=>{if(d.button===0){const _=d.composedPath();d.composedPath=()=>_,p=o.setTimeout(()=>g(d),50)}},{passive:!0}),i&&$(o,"blur",d=>{var _;const P=b(t);((_=document.activeElement)==null?void 0:_.tagName)==="IFRAME"&&!(P==null?void 0:P.contains(document.activeElement))&&e(d)})].filter(Boolean);return()=>v.forEach(d=>d())}const k=(()=>{let t=null;return(e,r)=>{if(t){t(),t=W(e,r.value);return}t=W(e,r.value)}})(),Me=t=>typeof t=="function"?t:typeof t=="string"?e=>e.key===t:Array.isArray(t)?e=>t.includes(e.key):t?()=>!0:()=>!1;function F(t,e,r={}){const{target:o=S,eventName:a="keydown",passive:l=!1}=r,i=Me(t);return $(o,a,p=>{i(p)&&e(p)},l)}var Ve=Object.defineProperty,K=Object.getOwnPropertySymbols,Ae=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable,J=(t,e,r)=>e in t?Ve(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ne=(t,e)=>{for(var r in e||(e={}))Ae.call(e,r)&&J(t,r,e[r]);if(K)for(var r of K(e))Te.call(e,r)&&J(t,r,e[r]);return t};const Re={[u.directiveHooks.mounted](t,e){var r,o;const a=(o=(r=e.arg)==null?void 0:r.split(","))!=null?o:[];if(typeof e.value=="function")F(a,e.value,{target:t});else{const[l,i]=e.value;F(a,l,Ne({target:t},i))}}},He=500;function N(t,e,r){var o,a;const l=n.computed(()=>b(t));let i=null;function c(){i!=null&&(clearTimeout(i),i=null)}function p(v){var O,d,_,P;((O=r==null?void 0:r.modifiers)==null?void 0:O.self)&&v.target!==l.value||(c(),((d=r==null?void 0:r.modifiers)==null?void 0:d.prevent)&&v.preventDefault(),((_=r==null?void 0:r.modifiers)==null?void 0:_.stop)&&v.stopPropagation(),i=setTimeout(()=>e(v),(P=r==null?void 0:r.delay)!=null?P:He))}const g={capture:(o=r==null?void 0:r.modifiers)==null?void 0:o.capture,once:(a=r==null?void 0:r.modifiers)==null?void 0:a.once};$(l,"pointerdown",p,g),$(l,"pointerup",c,g),$(l,"pointerleave",c,g)}const ze=n.defineComponent({name:"OnLongPress",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return N(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}}),G={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?N(t,e.value,{modifiers:e.modifiers}):N(t,...e.value)}},Be=n.defineComponent({name:"UseActiveElement",setup(t,{slots:e}){const r=n.reactive({element:f.useActiveElement()});return()=>{if(e.default)return e.default(r)}}}),We=n.defineComponent({name:"UseBattery",setup(t,{slots:e}){const r=n.reactive(f.useBattery(t));return()=>{if(e.default)return e.default(r)}}}),ke=n.defineComponent({name:"UseBrowserLocation",setup(t,{slots:e}){const r=n.reactive(f.useBrowserLocation());return()=>{if(e.default)return e.default(r)}}}),R=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},H="__vueuse_ssr_handlers__";R[H]=R[H]||{};const Fe=R[H];function q(t,e){return Fe[t]||e}function Ke(t){return t==null?"any":t instanceof Set?"set":t instanceof Map?"map":t instanceof Date?"date":typeof t=="boolean"?"boolean":typeof t=="string"?"string":typeof t=="object"||Array.isArray(t)?"object":Number.isNaN(t)?"any":"number"}var Je=Object.defineProperty,Q=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,qe=Object.prototype.propertyIsEnumerable,X=(t,e,r)=>e in t?Je(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Y=(t,e)=>{for(var r in e||(e={}))Ge.call(e,r)&&X(t,r,e[r]);if(Q)for(var r of Q(e))qe.call(e,r)&&X(t,r,e[r]);return t};const Qe={boolean:{read:t=>t==="true",write:t=>String(t)},object:{read:t=>JSON.parse(t),write:t=>JSON.stringify(t)},number:{read:t=>Number.parseFloat(t),write:t=>String(t)},any:{read:t=>t,write:t=>String(t)},string:{read:t=>t,write:t=>String(t)},map:{read:t=>new Map(JSON.parse(t)),write:t=>JSON.stringify(Array.from(t.entries()))},set:{read:t=>new Set(JSON.parse(t)),write:t=>JSON.stringify(Array.from(t))},date:{read:t=>new Date(t),write:t=>t.toISOString()}};function Xe(t,e,r,o={}){var a;const{flush:l="pre",deep:i=!0,listenToStorageChanges:c=!0,writeDefaults:p=!0,mergeDefaults:g=!1,shallow:v,window:O=S,eventFilter:d,onError:_=m=>{console.error(m)}}=o,P=(v?n.shallowRef:n.ref)(e);if(!r)try{r=q("getDefaultStorage",()=>{var m;return(m=S)==null?void 0:m.localStorage})()}catch(m){_(m)}if(!r)return P;const y=u.resolveUnref(e),U=Ke(y),h=(a=o.serializer)!=null?a:Qe[U],{pause:w,resume:j}=u.pausableWatch(P,()=>L(P.value),{flush:l,deep:i,eventFilter:d});return O&&c&&$(O,"storage",A),A(),P;function L(m){try{m==null?r.removeItem(t):r.setItem(t,h.write(m))}catch(E){_(E)}}function I(m){if(!(m&&m.key!==t)){w();try{const E=m?m.newValue:r.getItem(t);if(E==null)return p&&y!==null&&r.setItem(t,h.write(y)),y;if(!m&&g){const T=h.read(E);return u.isFunction(g)?g(T,y):U==="object"&&!Array.isArray(T)?Y(Y({},y),T):T}else return typeof E!="string"?E:h.read(E)}catch(E){_(E)}finally{j()}}}function A(m){m&&m.key!==t||(P.value=I(m))}}function z(t,e=!1){const r=n.ref(),o=()=>r.value=Boolean(t());return o(),u.tryOnMounted(o,e),r}function Ye(t,e={}){const{window:r=S}=e,o=z(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const l=n.ref(!1),i=()=>{!o.value||(a||(a=r.matchMedia(t)),l.value=a.matches)};return u.tryOnBeforeMount(()=>{i(),!!a&&("addEventListener"in a?a.addEventListener("change",i):a.addListener(i),u.tryOnScopeDispose(()=>{"removeEventListener"in a?a.removeEventListener("change",i):a.removeListener(i)}))}),l}function Ze(t){return Ye("(prefers-color-scheme: dark)",t)}var xe=Object.defineProperty,Z=Object.getOwnPropertySymbols,De=Object.prototype.hasOwnProperty,et=Object.prototype.propertyIsEnumerable,x=(t,e,r)=>e in t?xe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,tt=(t,e)=>{for(var r in e||(e={}))De.call(e,r)&&x(t,r,e[r]);if(Z)for(var r of Z(e))et.call(e,r)&&x(t,r,e[r]);return t};function rt(t={}){const{selector:e="html",attribute:r="class",initialValue:o="auto",window:a=S,storage:l,storageKey:i="vueuse-color-scheme",listenToStorageChanges:c=!0,storageRef:p,emitAuto:g}=t,v=tt({auto:"",light:"light",dark:"dark"},t.modes||{}),O=Ze({window:a}),d=n.computed(()=>O.value?"dark":"light"),_=p||(i==null?n.ref(o):Xe(i,o,l,{window:a,listenToStorageChanges:c})),P=n.computed({get(){return _.value==="auto"&&!g?d.value:_.value},set(w){_.value=w}}),y=q("updateHTMLAttrs",(w,j,L)=>{const I=a==null?void 0:a.document.querySelector(w);if(!!I)if(j==="class"){const A=L.split(/\s/g);Object.values(v).flatMap(m=>(m||"").split(/\s/g)).filter(Boolean).forEach(m=>{A.includes(m)?I.classList.add(m):I.classList.remove(m)})}else I.setAttribute(j,L)});function U(w){var j;const L=w==="auto"?d.value:w;y(e,r,(j=v[L])!=null?j:L)}function h(w){t.onChanged?t.onChanged(w,U):U(w)}return n.watch(P,h,{flush:"post",immediate:!0}),g&&n.watch(d,()=>h(P.value),{flush:"post"}),u.tryOnMounted(()=>h(P.value)),P}const nt=n.defineComponent({name:"UseColorMode",props:["selector","attribute","modes","onChanged","storageKey","storage","emitAuto"],setup(t,{slots:e}){const r=rt(t),o=n.reactive({mode:r});return()=>{if(e.default)return e.default(o)}}}),ot=n.defineComponent({name:"UseDark",props:["selector","attribute","valueDark","valueLight","onChanged","storageKey","storage"],setup(t,{slots:e}){const r=f.useDark(t),o=n.reactive({isDark:r,toggleDark:u.useToggle(r)});return()=>{if(e.default)return e.default(o)}}}),at=n.defineComponent({name:"UseDeviceMotion",setup(t,{slots:e}){const r=n.reactive(f.useDeviceMotion());return()=>{if(e.default)return e.default(r)}}}),st=n.defineComponent({name:"UseDeviceOrientation",setup(t,{slots:e}){const r=n.reactive(f.useDeviceOrientation());return()=>{if(e.default)return e.default(r)}}}),lt=n.defineComponent({name:"UseDevicePixelRatio",setup(t,{slots:e}){const r=n.reactive({pixelRatio:f.useDevicePixelRatio()});return()=>{if(e.default)return e.default(r)}}}),it=n.defineComponent({name:"UseDevicesList",props:["onUpdated","requestPermissions","constraints"],setup(t,{slots:e}){const r=n.reactive(f.useDevicesList(t));return()=>{if(e.default)return e.default(r)}}}),ut=n.defineComponent({name:"UseDocumentVisibility",setup(t,{slots:e}){const r=n.reactive({visibility:f.useDocumentVisibility()});return()=>{if(e.default)return e.default(r)}}});var ct=Object.defineProperty,ft=Object.defineProperties,pt=Object.getOwnPropertyDescriptors,D=Object.getOwnPropertySymbols,dt=Object.prototype.hasOwnProperty,vt=Object.prototype.propertyIsEnumerable,ee=(t,e,r)=>e in t?ct(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,gt=(t,e)=>{for(var r in e||(e={}))dt.call(e,r)&&ee(t,r,e[r]);if(D)for(var r of D(e))vt.call(e,r)&&ee(t,r,e[r]);return t},_t=(t,e)=>ft(t,pt(e));const Ot=n.defineComponent({name:"UseDraggable",props:["storageKey","storageType","initialValue","exact","preventDefault","stopPropagation","pointerTypes","as"],setup(t,{slots:e}){const r=n.ref(),o=t.storageKey?f.useStorage(t.storageKey,u.resolveUnref(t.initialValue)||{x:0,y:0},f.isClient?t.storageType==="session"?sessionStorage:localStorage:void 0):t.initialValue||{x:0,y:0},a=n.reactive(f.useDraggable(r,_t(gt({},t),{initialValue:o})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r,style:`touch-action:none;${a.style}`},e.default(a))}}}),Pt=n.defineComponent({name:"UseElementBounding",props:["box","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(f.useElementBounding(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function mt(t){const e=n.ref(!1);return $(t,"mouseenter",()=>e.value=!0),$(t,"mouseleave",()=>e.value=!1),e}const yt={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=mt(t);n.watch(r,o=>e.value(o))}}},ht=n.defineComponent({name:"UseElementSize",props:["width","height","box"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(f.useElementSize(r,{width:t.width,height:t.height},{box:t.box}));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var te=Object.getOwnPropertySymbols,wt=Object.prototype.hasOwnProperty,bt=Object.prototype.propertyIsEnumerable,Ut=(t,e)=>{var r={};for(var o in t)wt.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&te)for(var o of te(t))e.indexOf(o)<0&&bt.call(t,o)&&(r[o]=t[o]);return r};function St(t,e,r={}){const o=r,{window:a=S}=o,l=Ut(o,["window"]);let i;const c=z(()=>a&&"ResizeObserver"in a),p=()=>{i&&(i.disconnect(),i=void 0)},g=n.watch(()=>b(t),O=>{p(),c.value&&a&&O&&(i=new ResizeObserver(e),i.observe(O,l))},{immediate:!0,flush:"post"}),v=()=>{p(),g()};return u.tryOnScopeDispose(v),{isSupported:c,stop:v}}function $t(t,e={width:0,height:0},r={}){const o=n.ref(e.width),a=n.ref(e.height);return St(t,([l])=>{o.value=l.contentRect.width,a.value=l.contentRect.height},r),n.watch(()=>b(t),l=>{o.value=l?e.width:0,a.value=l?e.height:0}),{width:o,height:a}}const Ct={[u.directiveHooks.mounted](t,e){var r;const o=typeof e.value=="function"?e.value:(r=e.value)==null?void 0:r[0],a=typeof e.value=="function"?[]:e.value.slice(1),{width:l,height:i}=$t(t,...a);n.watch([l,i],([c,p])=>o({width:c,height:p}))}},Et=n.defineComponent({name:"UseElementVisibility",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive({isVisible:f.useElementVisibility(r)});return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function re(t,{window:e=S,scrollTarget:r}={}){const o=n.ref(!1),a=()=>{if(!e)return;const l=e.document,i=u.resolveUnref(t);if(!i)o.value=!1;else{const c=i.getBoundingClientRect();o.value=c.top<=(e.innerHeight||l.documentElement.clientHeight)&&c.left<=(e.innerWidth||l.documentElement.clientWidth)&&c.bottom>=0&&c.right>=0}};return u.tryOnMounted(a),e&&u.tryOnMounted(()=>$(()=>u.resolveUnref(r)||e,"scroll",a,{capture:!1,passive:!0})),o}const jt={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=re(t);n.watch(o,a=>r(a),{immediate:!0})}else{const[r,o]=e.value,a=re(t,o);n.watch(a,l=>r(l),{immediate:!0})}}},Lt=n.defineComponent({name:"UseEyeDropper",props:{sRGBHex:String},setup(t,{slots:e}){const r=n.reactive(f.useEyeDropper());return()=>{if(e.default)return e.default(r)}}}),It=n.defineComponent({name:"UseFullscreen",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(f.useFullscreen(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),Mt=n.defineComponent({name:"UseGeolocation",props:["enableHighAccuracy","maximumAge","timeout","navigator"],setup(t,{slots:e}){const r=n.reactive(f.useGeolocation(t));return()=>{if(e.default)return e.default(r)}}}),Vt=n.defineComponent({name:"UseIdle",props:["timeout","events","listenForVisibilityChange","initialState"],setup(t,{slots:e}){const r=n.reactive(f.useIdle(t.timeout,t));return()=>{if(e.default)return e.default(r)}}});function At(t,e,r){const{immediate:o=!0,delay:a=0,onError:l=u.noop,resetOnExecute:i=!0,shallow:c=!0,throwError:p}=r??{},g=c?n.shallowRef(e):n.ref(e),v=n.ref(!1),O=n.ref(!1),d=n.ref(void 0);async function _(P=0,...y){i&&(g.value=e),d.value=void 0,v.value=!1,O.value=!0,P>0&&await u.promiseTimeout(P);const U=typeof t=="function"?t(...y):t;try{const h=await U;g.value=h,v.value=!0}catch(h){if(d.value=h,l(h),p)throw d}finally{O.value=!1}return g.value}return o&&_(a),{state:g,isReady:v,isLoading:O,error:d,execute:_}}var Tt=Object.defineProperty,ne=Object.getOwnPropertySymbols,Nt=Object.prototype.hasOwnProperty,Rt=Object.prototype.propertyIsEnumerable,oe=(t,e,r)=>e in t?Tt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ht=(t,e)=>{for(var r in e||(e={}))Nt.call(e,r)&&oe(t,r,e[r]);if(ne)for(var r of ne(e))Rt.call(e,r)&&oe(t,r,e[r]);return t};async function zt(t){return new Promise((e,r)=>{const o=new Image,{src:a,srcset:l,sizes:i}=t;o.src=a,l&&(o.srcset=l),i&&(o.sizes=i),o.onload=()=>e(o),o.onerror=r})}const Bt=(t,e={})=>{const r=At(()=>zt(u.resolveUnref(t)),void 0,Ht({resetOnExecute:!0},e));return n.watch(()=>u.resolveUnref(t),()=>r.execute(e.delay),{deep:!0}),r},Wt=n.defineComponent({name:"UseImage",props:["src","srcset","sizes","as"],setup(t,{slots:e}){const r=n.reactive(Bt(t));return()=>r.isLoading&&e.loading?e.loading(r):r.error&&e.error?e.error(r.error):e.default?e.default(r):n.h(t.as||"img",t)}}),ae=1;function B(t,e={}){const{throttle:r=0,idle:o=200,onStop:a=u.noop,onScroll:l=u.noop,offset:i={left:0,right:0,top:0,bottom:0},eventListenerOptions:c={capture:!1,passive:!0}}=e,p=n.ref(0),g=n.ref(0),v=n.ref(!1),O=n.reactive({left:!0,right:!1,top:!0,bottom:!1}),d=n.reactive({left:!1,right:!1,top:!1,bottom:!1}),_=u.useDebounceFn(y=>{v.value=!1,d.left=!1,d.right=!1,d.top=!1,d.bottom=!1,a(y)},r+o),P=y=>{const U=y.target===document?y.target.documentElement:y.target,h=U.scrollLeft;d.left=h<p.value,d.right=h>p.value,O.left=h<=0+(i.left||0),O.right=h+U.clientWidth>=U.scrollWidth-(i.right||0)-ae,p.value=h;let w=U.scrollTop;y.target===document&&!w&&(w=document.body.scrollTop),d.top=w<g.value,d.bottom=w>g.value,O.top=w<=0+(i.top||0),O.bottom=w+U.clientHeight>=U.scrollHeight-(i.bottom||0)-ae,g.value=w,v.value=!0,_(y),l(y)};return $(t,"scroll",r?u.useThrottleFn(P,r):P,c),{x:p,y:g,isScrolling:v,arrivedState:O,directions:d}}var kt=Object.defineProperty,Ft=Object.defineProperties,Kt=Object.getOwnPropertyDescriptors,se=Object.getOwnPropertySymbols,Jt=Object.prototype.hasOwnProperty,Gt=Object.prototype.propertyIsEnumerable,le=(t,e,r)=>e in t?kt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ie=(t,e)=>{for(var r in e||(e={}))Jt.call(e,r)&&le(t,r,e[r]);if(se)for(var r of se(e))Gt.call(e,r)&&le(t,r,e[r]);return t},qt=(t,e)=>Ft(t,Kt(e));function ue(t,e,r={}){var o,a;const l=(o=r.direction)!=null?o:"bottom",i=n.reactive(B(t,qt(ie({},r),{offset:ie({[l]:(a=r.distance)!=null?a:0},r.offset)})));n.watch(()=>i.arrivedState[l],async c=>{var p,g;if(c){const v=u.resolveUnref(t),O={height:(p=v==null?void 0:v.scrollHeight)!=null?p:0,width:(g=v==null?void 0:v.scrollWidth)!=null?g:0};await e(i),r.preserveScrollPosition&&v&&n.nextTick(()=>{v.scrollTo({top:v.scrollHeight-O.height,left:v.scrollWidth-O.width})})}})}const Qt={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?ue(t,e.value):ue(t,...e.value)}};function ce(t,e,r={}){const{root:o,rootMargin:a="0px",threshold:l=.1,window:i=S}=r,c=z(()=>i&&"IntersectionObserver"in i);let p=u.noop;const g=c.value?n.watch(()=>({el:b(t),root:b(o)}),({el:O,root:d})=>{if(p(),!O)return;const _=new IntersectionObserver(e,{root:d,rootMargin:a,threshold:l});_.observe(O),p=()=>{_.disconnect(),p=u.noop}},{immediate:!0,flush:"post"}):u.noop,v=()=>{p(),g()};return u.tryOnScopeDispose(v),{isSupported:c,stop:v}}const Xt={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?ce(t,e.value):ce(t,...e.value)}},Yt=n.defineComponent({name:"UseMouse",props:["touch","resetOnTouchEnds","initialValue"],setup(t,{slots:e}){const r=n.reactive(f.useMouse(t));return()=>{if(e.default)return e.default(r)}}}),Zt=n.defineComponent({name:"UseMouseElement",props:["handleOutside","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(f.useMouseInElement(r,t));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var xt=Object.defineProperty,Dt=Object.defineProperties,er=Object.getOwnPropertyDescriptors,fe=Object.getOwnPropertySymbols,tr=Object.prototype.hasOwnProperty,rr=Object.prototype.propertyIsEnumerable,pe=(t,e,r)=>e in t?xt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,nr=(t,e)=>{for(var r in e||(e={}))tr.call(e,r)&&pe(t,r,e[r]);if(fe)for(var r of fe(e))rr.call(e,r)&&pe(t,r,e[r]);return t},or=(t,e)=>Dt(t,er(e));const ar=n.defineComponent({name:"UseMousePressed",props:["touch","initialValue","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(f.useMousePressed(or(nr({},t),{target:r})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),sr=n.defineComponent({name:"UseNetwork",setup(t,{slots:e}){const r=n.reactive(f.useNetwork());return()=>{if(e.default)return e.default(r)}}});var lr=Object.defineProperty,ir=Object.defineProperties,ur=Object.getOwnPropertyDescriptors,de=Object.getOwnPropertySymbols,cr=Object.prototype.hasOwnProperty,fr=Object.prototype.propertyIsEnumerable,ve=(t,e,r)=>e in t?lr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,pr=(t,e)=>{for(var r in e||(e={}))cr.call(e,r)&&ve(t,r,e[r]);if(de)for(var r of de(e))fr.call(e,r)&&ve(t,r,e[r]);return t},dr=(t,e)=>ir(t,ur(e));const vr=n.defineComponent({name:"UseNow",props:["interval"],setup(t,{slots:e}){const r=n.reactive(f.useNow(dr(pr({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}}),gr=n.defineComponent({name:"UseObjectUrl",props:["object"],setup(t,{slots:e}){const r=n.toRef(t,"object"),o=f.useObjectUrl(r);return()=>{if(e.default&&o.value)return e.default(o)}}});var _r=Object.defineProperty,Or=Object.defineProperties,Pr=Object.getOwnPropertyDescriptors,ge=Object.getOwnPropertySymbols,mr=Object.prototype.hasOwnProperty,yr=Object.prototype.propertyIsEnumerable,_e=(t,e,r)=>e in t?_r(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,hr=(t,e)=>{for(var r in e||(e={}))mr.call(e,r)&&_e(t,r,e[r]);if(ge)for(var r of ge(e))yr.call(e,r)&&_e(t,r,e[r]);return t},wr=(t,e)=>Or(t,Pr(e));const br=n.defineComponent({name:"UseOffsetPagination",props:["total","page","pageSize","onPageChange","onPageSizeChange","onPageCountChange"],emits:["page-change","page-size-change","page-count-change"],setup(t,{slots:e,emit:r}){const o=n.reactive(f.useOffsetPagination(wr(hr({},t),{onPageChange(...a){var l;(l=t.onPageChange)==null||l.call(t,...a),r("page-change",...a)},onPageSizeChange(...a){var l;(l=t.onPageSizeChange)==null||l.call(t,...a),r("page-size-change",...a)},onPageCountChange(...a){var l;(l=t.onPageCountChange)==null||l.call(t,...a),r("page-count-change",...a)}})));return()=>{if(e.default)return e.default(o)}}}),Ur=n.defineComponent({name:"UseOnline",setup(t,{slots:e}){const r=n.reactive({isOnline:f.useOnline()});return()=>{if(e.default)return e.default(r)}}}),Sr=n.defineComponent({name:"UsePageLeave",setup(t,{slots:e}){const r=n.reactive({isLeft:f.usePageLeave()});return()=>{if(e.default)return e.default(r)}}});var $r=Object.defineProperty,Cr=Object.defineProperties,Er=Object.getOwnPropertyDescriptors,Oe=Object.getOwnPropertySymbols,jr=Object.prototype.hasOwnProperty,Lr=Object.prototype.propertyIsEnumerable,Pe=(t,e,r)=>e in t?$r(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ir=(t,e)=>{for(var r in e||(e={}))jr.call(e,r)&&Pe(t,r,e[r]);if(Oe)for(var r of Oe(e))Lr.call(e,r)&&Pe(t,r,e[r]);return t},Mr=(t,e)=>Cr(t,Er(e));const Vr=n.defineComponent({name:"UsePointer",props:["pointerTypes","initialValue","target"],setup(t,{slots:e}){const r=n.ref(null),o=n.reactive(f.usePointer(Mr(Ir({},t),{target:t.target==="self"?r:S})));return()=>{if(e.default)return e.default(o,{ref:r})}}}),Ar=n.defineComponent({name:"UsePreferredColorScheme",setup(t,{slots:e}){const r=n.reactive({colorScheme:f.usePreferredColorScheme()});return()=>{if(e.default)return e.default(r)}}}),Tr=n.defineComponent({name:"UsePreferredContrast",setup(t,{slots:e}){const r=n.reactive({contrast:f.usePreferredContrast()});return()=>{if(e.default)return e.default(r)}}}),Nr=n.defineComponent({name:"UsePreferredDark",setup(t,{slots:e}){const r=n.reactive({prefersDark:f.usePreferredDark()});return()=>{if(e.default)return e.default(r)}}}),Rr=n.defineComponent({name:"UsePreferredLanguages",setup(t,{slots:e}){const r=n.reactive({languages:f.usePreferredLanguages()});return()=>{if(e.default)return e.default(r)}}}),Hr=n.defineComponent({name:"UsePreferredReducedMotion",setup(t,{slots:e}){const r=n.reactive({motion:f.usePreferredReducedMotion()});return()=>{if(e.default)return e.default(r)}}});function M(t,e,{window:r=S,initialValue:o=""}={}){const a=n.ref(o),l=n.computed(()=>{var i;return b(e)||((i=r==null?void 0:r.document)==null?void 0:i.documentElement)});return n.watch([l,()=>u.resolveUnref(t)],([i,c])=>{var p;if(i&&r){const g=(p=r.getComputedStyle(i).getPropertyValue(c))==null?void 0:p.trim();a.value=g||o}},{immediate:!0}),n.watch(a,i=>{var c;((c=l.value)==null?void 0:c.style)&&l.value.style.setProperty(u.resolveUnref(t),i)}),a}const me="--vueuse-safe-area-top",ye="--vueuse-safe-area-right",he="--vueuse-safe-area-bottom",we="--vueuse-safe-area-left";function zr(){const t=n.ref(""),e=n.ref(""),r=n.ref(""),o=n.ref("");if(u.isClient){const l=M(me),i=M(ye),c=M(he),p=M(we);l.value="env(safe-area-inset-top, 0px)",i.value="env(safe-area-inset-right, 0px)",c.value="env(safe-area-inset-bottom, 0px)",p.value="env(safe-area-inset-left, 0px)",a(),$("resize",u.useDebounceFn(a))}function a(){t.value=V(me),e.value=V(ye),r.value=V(he),o.value=V(we)}return{top:t,right:e,bottom:r,left:o,update:a}}function V(t){return getComputedStyle(document.documentElement).getPropertyValue(t)}const Br=n.defineComponent({name:"UseScreenSafeArea",props:{top:Boolean,right:Boolean,bottom:Boolean,left:Boolean},setup(t,{slots:e}){const{top:r,right:o,bottom:a,left:l}=zr();return()=>{if(e.default)return n.h("div",{style:{paddingTop:t.top?r.value:"",paddingRight:t.right?o.value:"",paddingBottom:t.bottom?a.value:"",paddingLeft:t.left?l.value:"",boxSizing:"border-box",maxHeight:"100vh",maxWidth:"100vw",overflow:"auto"}},e.default())}}});var Wr=Object.defineProperty,kr=Object.defineProperties,Fr=Object.getOwnPropertyDescriptors,be=Object.getOwnPropertySymbols,Kr=Object.prototype.hasOwnProperty,Jr=Object.prototype.propertyIsEnumerable,Ue=(t,e,r)=>e in t?Wr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Gr=(t,e)=>{for(var r in e||(e={}))Kr.call(e,r)&&Ue(t,r,e[r]);if(be)for(var r of be(e))Jr.call(e,r)&&Ue(t,r,e[r]);return t},qr=(t,e)=>kr(t,Fr(e));const Qr={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=B(t,{onScroll(){r(o)},onStop(){r(o)}})}else{const[r,o]=e.value,a=B(t,qr(Gr({},o),{onScroll(l){var i;(i=o.onScroll)==null||i.call(o,l),r(a)},onStop(l){var i;(i=o.onStop)==null||i.call(o,l),r(a)}}))}}};function Xr(t){const e=t||window.event;return e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)}function Yr(t,e=!1){const r=n.ref(e);let o=null,a;n.watch(u.resolveRef(t),c=>{if(c){const p=c;a=p.style.overflow,r.value&&(p.style.overflow="hidden")}},{immediate:!0});const l=()=>{const c=u.resolveUnref(t);!c||r.value||(u.isIOS&&(o=$(c,"touchmove",Xr,{passive:!1})),c.style.overflow="hidden",r.value=!0)},i=()=>{const c=u.resolveUnref(t);!c||!r.value||(u.isIOS&&(o==null||o()),c.style.overflow=a,r.value=!1)};return u.tryOnScopeDispose(i),n.computed({get(){return r.value},set(c){c?l():i()}})}const Zr=(()=>{let t=!1;const e=n.ref(!1);return(r,o)=>{if(e.value=o.value,t)return;t=!0;const a=Yr(r,o.value);n.watch(e,l=>a.value=l)}})();var xr=Object.defineProperty,Dr=Object.defineProperties,en=Object.getOwnPropertyDescriptors,Se=Object.getOwnPropertySymbols,tn=Object.prototype.hasOwnProperty,rn=Object.prototype.propertyIsEnumerable,$e=(t,e,r)=>e in t?xr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,nn=(t,e)=>{for(var r in e||(e={}))tn.call(e,r)&&$e(t,r,e[r]);if(Se)for(var r of Se(e))rn.call(e,r)&&$e(t,r,e[r]);return t},on=(t,e)=>Dr(t,en(e));const an=n.defineComponent({name:"UseTimeAgo",props:["time","updateInterval","max","fullDateFormatter","messages"],setup(t,{slots:e}){const r=n.reactive(f.useTimeAgo(()=>t.time,on(nn({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var sn=Object.defineProperty,ln=Object.defineProperties,un=Object.getOwnPropertyDescriptors,Ce=Object.getOwnPropertySymbols,cn=Object.prototype.hasOwnProperty,fn=Object.prototype.propertyIsEnumerable,Ee=(t,e,r)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,pn=(t,e)=>{for(var r in e||(e={}))cn.call(e,r)&&Ee(t,r,e[r]);if(Ce)for(var r of Ce(e))fn.call(e,r)&&Ee(t,r,e[r]);return t},dn=(t,e)=>ln(t,un(e));const vn=n.defineComponent({name:"UseTimestamp",props:["immediate","interval","offset"],setup(t,{slots:e}){const r=n.reactive(f.useTimestamp(dn(pn({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var gn=Object.defineProperty,je=Object.getOwnPropertySymbols,_n=Object.prototype.hasOwnProperty,On=Object.prototype.propertyIsEnumerable,Le=(t,e,r)=>e in t?gn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ie=(t,e)=>{for(var r in e||(e={}))_n.call(e,r)&&Le(t,r,e[r]);if(je)for(var r of je(e))On.call(e,r)&&Le(t,r,e[r]);return t};const Pn=n.defineComponent({name:"UseVirtualList",props:["list","options","height"],setup(t,{slots:e}){const{list:r}=n.toRefs(t),{list:o,containerProps:a,wrapperProps:l}=f.useVirtualList(r,t.options);return a.style.height=t.height||"300px",()=>n.h("div",Ie({},a),[n.h("div",Ie({},l.value),o.value.map(i=>n.h("div",{style:{overFlow:"hidden",height:i.height}},e.default?e.default(i):"Please set content!")))])}}),mn=n.defineComponent({name:"UseWindowFocus",setup(t,{slots:e}){const r=n.reactive({focused:f.useWindowFocus()});return()=>{if(e.default)return e.default(r)}}}),yn=n.defineComponent({name:"UseWindowSize",props:["initialWidth","initialHeight"],setup(t,{slots:e}){const r=n.reactive(f.useWindowSize(t));return()=>{if(e.default)return e.default(r)}}});s.OnClickOutside=C,s.OnLongPress=ze,s.UseActiveElement=Be,s.UseBattery=We,s.UseBrowserLocation=ke,s.UseColorMode=nt,s.UseDark=ot,s.UseDeviceMotion=at,s.UseDeviceOrientation=st,s.UseDevicePixelRatio=lt,s.UseDevicesList=it,s.UseDocumentVisibility=ut,s.UseDraggable=Ot,s.UseElementBounding=Pt,s.UseElementSize=ht,s.UseElementVisibility=Et,s.UseEyeDropper=Lt,s.UseFullscreen=It,s.UseGeolocation=Mt,s.UseIdle=Vt,s.UseImage=Wt,s.UseMouse=Yt,s.UseMouseInElement=Zt,s.UseMousePressed=ar,s.UseNetwork=sr,s.UseNow=vr,s.UseObjectUrl=gr,s.UseOffsetPagination=br,s.UseOnline=Ur,s.UsePageLeave=Sr,s.UsePointer=Vr,s.UsePreferredColorScheme=Ar,s.UsePreferredContrast=Tr,s.UsePreferredDark=Nr,s.UsePreferredLanguages=Rr,s.UsePreferredReducedMotion=Hr,s.UseScreenSafeArea=Br,s.UseTimeAgo=an,s.UseTimestamp=vn,s.UseVirtualList=Pn,s.UseWindowFocus=mn,s.UseWindowSize=yn,s.VOnClickOutside=k,s.VOnLongPress=G,s.vElementHover=yt,s.vElementSize=Ct,s.vElementVisibility=jt,s.vInfiniteScroll=Qt,s.vIntersectionObserver=Xt,s.vOnClickOutside=k,s.vOnKeyStroke=Re,s.vOnLongPress=G,s.vScroll=Qr,s.vScrollLock=Zr,Object.defineProperty(s,"__esModule",{value:!0})})(this.VueUse=this.VueUse||{},VueDemi,VueUse,VueUse);
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, h, watch, computed, reactive, shallowRef, nextTick, toRef, toRefs } from 'vue-demi';
2
- import { onClickOutside as onClickOutside$1, useActiveElement, useBattery, useBrowserLocation, useDark, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDocumentVisibility, useStorage as useStorage$1, isClient as isClient$1, useDraggable, useElementBounding, useElementSize as useElementSize$1, useElementVisibility as useElementVisibility$1, useEyeDropper, useFullscreen, useGeolocation, useIdle, useMouse, useMouseInElement, useMousePressed, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, usePointer, usePreferredColorScheme, usePreferredDark as usePreferredDark$1, usePreferredLanguages, useTimeAgo, useTimestamp, useVirtualList, useWindowFocus, useWindowSize } from '@vueuse/core';
2
+ import { onClickOutside as onClickOutside$1, useActiveElement, useBattery, useBrowserLocation, useDark, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDocumentVisibility, useStorage as useStorage$1, isClient as isClient$1, useDraggable, useElementBounding, useElementSize as useElementSize$1, useElementVisibility as useElementVisibility$1, useEyeDropper, useFullscreen, useGeolocation, useIdle, useMouse, useMouseInElement, useMousePressed, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, usePointer, usePreferredColorScheme, usePreferredContrast, usePreferredDark as usePreferredDark$1, usePreferredLanguages, usePreferredReducedMotion, useTimeAgo, useTimestamp, useVirtualList, useWindowFocus, useWindowSize } from '@vueuse/core';
3
3
  import { resolveUnref, isClient, isString, noop, tryOnScopeDispose, directiveHooks, pausableWatch, isFunction, tryOnMounted, tryOnBeforeMount, useToggle, promiseTimeout, useDebounceFn, useThrottleFn, resolveRef, isIOS } from '@vueuse/shared';
4
4
 
5
5
  const OnClickOutside = defineComponent({
@@ -979,6 +979,7 @@ const UseImage = defineComponent({
979
979
  }
980
980
  });
981
981
 
982
+ const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
982
983
  function useScroll(element, options = {}) {
983
984
  const {
984
985
  throttle = 0,
@@ -1025,7 +1026,7 @@ function useScroll(element, options = {}) {
1025
1026
  directions.left = scrollLeft < x.value;
1026
1027
  directions.right = scrollLeft > x.value;
1027
1028
  arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
1028
- arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
1029
+ arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1029
1030
  x.value = scrollLeft;
1030
1031
  let scrollTop = eventTarget.scrollTop;
1031
1032
  if (e.target === document && !scrollTop)
@@ -1033,7 +1034,7 @@ function useScroll(element, options = {}) {
1033
1034
  directions.top = scrollTop < y.value;
1034
1035
  directions.bottom = scrollTop > y.value;
1035
1036
  arrivedState.top = scrollTop <= 0 + (offset.top || 0);
1036
- arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
1037
+ arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
1037
1038
  y.value = scrollTop;
1038
1039
  isScrolling.value = true;
1039
1040
  onScrollEnd(e);
@@ -1403,6 +1404,19 @@ const UsePreferredColorScheme = defineComponent({
1403
1404
  }
1404
1405
  });
1405
1406
 
1407
+ const UsePreferredContrast = defineComponent({
1408
+ name: "UsePreferredContrast",
1409
+ setup(props, { slots }) {
1410
+ const data = reactive({
1411
+ contrast: usePreferredContrast()
1412
+ });
1413
+ return () => {
1414
+ if (slots.default)
1415
+ return slots.default(data);
1416
+ };
1417
+ }
1418
+ });
1419
+
1406
1420
  const UsePreferredDark = defineComponent({
1407
1421
  name: "UsePreferredDark",
1408
1422
  setup(props, { slots }) {
@@ -1429,6 +1443,19 @@ const UsePreferredLanguages = defineComponent({
1429
1443
  }
1430
1444
  });
1431
1445
 
1446
+ const UsePreferredReducedMotion = defineComponent({
1447
+ name: "UsePreferredReducedMotion",
1448
+ setup(props, { slots }) {
1449
+ const data = reactive({
1450
+ motion: usePreferredReducedMotion()
1451
+ });
1452
+ return () => {
1453
+ if (slots.default)
1454
+ return slots.default(data);
1455
+ };
1456
+ }
1457
+ });
1458
+
1432
1459
  function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
1433
1460
  const variable = ref(initialValue);
1434
1461
  const elRef = computed(() => {
@@ -1760,4 +1787,4 @@ const UseWindowSize = defineComponent({
1760
1787
  }
1761
1788
  });
1762
1789
 
1763
- export { OnClickOutside, OnLongPress, UseActiveElement, UseBattery, UseBrowserLocation, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePreferredColorScheme, UsePreferredDark, UsePreferredLanguages, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };
1790
+ export { OnClickOutside, OnLongPress, UseActiveElement, UseBattery, UseBrowserLocation, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePreferredColorScheme, UsePreferredContrast, UsePreferredDark, UsePreferredLanguages, UsePreferredReducedMotion, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vueuse/components",
3
- "version": "9.0.1",
3
+ "version": "9.1.1",
4
4
  "description": "Renderless components for VueUse",
5
5
  "author": "Jacob Clevenger<https://github.com/wheatjs>",
6
6
  "license": "MIT",
@@ -33,8 +33,8 @@
33
33
  "jsdelivr": "./index.iife.min.js",
34
34
  "types": "./index.d.ts",
35
35
  "dependencies": {
36
- "@vueuse/core": "9.0.1",
37
- "@vueuse/shared": "9.0.1",
36
+ "@vueuse/core": "9.1.1",
37
+ "@vueuse/shared": "9.1.1",
38
38
  "vue-demi": "*"
39
39
  }
40
40
  }