@vueuse/components 10.2.0 → 10.3.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.iife.js CHANGED
@@ -197,6 +197,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
197
197
  if (shared.isIOS && !_iOSWorkaround) {
198
198
  _iOSWorkaround = true;
199
199
  Array.from(window.document.body.children).forEach((el) => el.addEventListener("click", shared.noop));
200
+ window.document.documentElement.addEventListener("click", shared.noop);
200
201
  }
201
202
  let shouldListen = true;
202
203
  const shouldIgnore = (event) => {
@@ -365,8 +366,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
365
366
  once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once
366
367
  };
367
368
  useEventListener(elementRef, "pointerdown", onDown, listenerOptions);
368
- useEventListener(elementRef, "pointerup", clear, listenerOptions);
369
- useEventListener(elementRef, "pointerleave", clear, listenerOptions);
369
+ useEventListener(elementRef, ["pointerup", "pointerleave"], clear, listenerOptions);
370
370
  }
371
371
 
372
372
  const OnLongPress = /* @__PURE__ */ /* #__PURE__ */ vueDemi.defineComponent({
@@ -635,29 +635,33 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
635
635
  const isSupported = useSupported(() => window && "matchMedia" in window && typeof window.matchMedia === "function");
636
636
  let mediaQuery;
637
637
  const matches = vueDemi.ref(false);
638
+ const handler = (event) => {
639
+ matches.value = event.matches;
640
+ };
638
641
  const cleanup = () => {
639
642
  if (!mediaQuery)
640
643
  return;
641
644
  if ("removeEventListener" in mediaQuery)
642
- mediaQuery.removeEventListener("change", update);
645
+ mediaQuery.removeEventListener("change", handler);
643
646
  else
644
- mediaQuery.removeListener(update);
647
+ mediaQuery.removeListener(handler);
645
648
  };
646
- const update = () => {
649
+ const stopWatch = vueDemi.watchEffect(() => {
647
650
  if (!isSupported.value)
648
651
  return;
649
652
  cleanup();
650
- mediaQuery = window.matchMedia(shared.toRef(query).value);
651
- matches.value = !!(mediaQuery == null ? void 0 : mediaQuery.matches);
652
- if (!mediaQuery)
653
- return;
653
+ mediaQuery = window.matchMedia(shared.toValue(query));
654
654
  if ("addEventListener" in mediaQuery)
655
- mediaQuery.addEventListener("change", update);
655
+ mediaQuery.addEventListener("change", handler);
656
656
  else
657
- mediaQuery.addListener(update);
658
- };
659
- vueDemi.watchEffect(update);
660
- shared.tryOnScopeDispose(() => cleanup());
657
+ mediaQuery.addListener(handler);
658
+ matches.value = mediaQuery.matches;
659
+ });
660
+ shared.tryOnScopeDispose(() => {
661
+ stopWatch();
662
+ cleanup();
663
+ mediaQuery = void 0;
664
+ });
661
665
  return matches;
662
666
  }
663
667
 
@@ -1419,7 +1423,8 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1419
1423
  capture: false,
1420
1424
  passive: true
1421
1425
  },
1422
- behavior = "auto"
1426
+ behavior = "auto",
1427
+ window = defaultWindow
1423
1428
  } = options;
1424
1429
  const internalX = vueDemi.ref(0);
1425
1430
  const internalY = vueDemi.ref(0);
@@ -1441,10 +1446,12 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1441
1446
  });
1442
1447
  function scrollTo(_x, _y) {
1443
1448
  var _a, _b, _c;
1449
+ if (!window)
1450
+ return;
1444
1451
  const _element = shared.toValue(element);
1445
1452
  if (!_element)
1446
1453
  return;
1447
- (_c = _element instanceof Document ? document.body : _element) == null ? void 0 : _c.scrollTo({
1454
+ (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({
1448
1455
  top: (_a = shared.toValue(_y)) != null ? _a : y.value,
1449
1456
  left: (_b = shared.toValue(_x)) != null ? _b : x.value,
1450
1457
  behavior: shared.toValue(behavior)
@@ -1475,7 +1482,9 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1475
1482
  };
1476
1483
  const onScrollEndDebounced = shared.useDebounceFn(onScrollEnd, throttle + idle);
1477
1484
  const setArrivedState = (target) => {
1478
- const el = target === window ? target.document.documentElement : target === document ? target.documentElement : target;
1485
+ if (!window)
1486
+ return;
1487
+ const el = target === window ? target.document.documentElement : target === window.document ? target.documentElement : target;
1479
1488
  const { display, flexDirection } = getComputedStyle(el);
1480
1489
  const scrollLeft = el.scrollLeft;
1481
1490
  directions.left = scrollLeft < internalX.value;
@@ -1491,8 +1500,8 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1491
1500
  }
1492
1501
  internalX.value = scrollLeft;
1493
1502
  let scrollTop = el.scrollTop;
1494
- if (target === document && !scrollTop)
1495
- scrollTop = document.body.scrollTop;
1503
+ if (target === window.document && !scrollTop)
1504
+ scrollTop = window.document.body.scrollTop;
1496
1505
  directions.top = scrollTop < internalY.value;
1497
1506
  directions.bottom = scrollTop > internalY.value;
1498
1507
  const top = Math.abs(scrollTop) <= 0 + (offset.top || 0);
@@ -1507,7 +1516,9 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1507
1516
  internalY.value = scrollTop;
1508
1517
  };
1509
1518
  const onScrollHandler = (e) => {
1510
- const eventTarget = e.target === document ? e.target.documentElement : e.target;
1519
+ if (!window)
1520
+ return;
1521
+ const eventTarget = e.target === window.document ? e.target.documentElement : e.target;
1511
1522
  setArrivedState(eventTarget);
1512
1523
  isScrolling.value = true;
1513
1524
  onScrollEndDebounced(e);
@@ -1533,7 +1544,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1533
1544
  directions,
1534
1545
  measure() {
1535
1546
  const _element = shared.toValue(element);
1536
- if (_element)
1547
+ if (window && _element)
1537
1548
  setArrivedState(_element);
1538
1549
  }
1539
1550
  };
@@ -1574,12 +1585,21 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1574
1585
  ));
1575
1586
  const promise = vueDemi.ref();
1576
1587
  const isLoading = vueDemi.computed(() => !!promise.value);
1588
+ const observedElement = vueDemi.computed(() => {
1589
+ const el = shared.toValue(element);
1590
+ if (el instanceof Window)
1591
+ return window.document.documentElement;
1592
+ if (el instanceof Document)
1593
+ return document.documentElement;
1594
+ return el;
1595
+ });
1596
+ const isElementVisible = useElementVisibility(observedElement);
1577
1597
  function checkAndLoad() {
1578
1598
  state.measure();
1579
- const el = shared.toValue(element);
1580
- if (!el)
1599
+ if (!observedElement.value || !isElementVisible.value)
1581
1600
  return;
1582
- const isNarrower = direction === "bottom" || direction === "top" ? el.scrollHeight <= el.clientHeight : el.scrollWidth <= el.clientWidth;
1601
+ const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;
1602
+ const isNarrower = direction === "bottom" || direction === "top" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;
1583
1603
  if (state.arrivedState[direction] || isNarrower) {
1584
1604
  if (!promise.value) {
1585
1605
  promise.value = Promise.all([
@@ -1593,7 +1613,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
1593
1613
  }
1594
1614
  }
1595
1615
  vueDemi.watch(
1596
- () => [state.arrivedState[direction], shared.toValue(element)],
1616
+ () => [state.arrivedState[direction], isElementVisible.value],
1597
1617
  checkAndLoad,
1598
1618
  { immediate: true }
1599
1619
  );
package/index.iife.min.js CHANGED
@@ -1 +1 @@
1
- var VueDemi=function(s,n,g){if(s.install)return s;if(!n)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),s;if(n.version.slice(0,4)==="2.7."){let w=function(S,$){var V,z={},H={config:n.config,use:n.use.bind(n),mixin:n.mixin.bind(n),component:n.component.bind(n),provide:function(T,N){return z[T]=N,this},directive:function(T,N){return N?(n.directive(T,N),H):n.directive(T)},mount:function(T,N){return V||(V=new n(Object.assign({propsData:$},S,{provide:Object.assign(z,S.provide)})),V.$mount(T,N),V)},unmount:function(){V&&(V.$destroy(),V=void 0)}};return H};var Fe=w;for(var c in n)s[c]=n[c];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version,s.warn=n.util.warn,s.hasInjectionContext=()=>!!s.getCurrentInstance(),s.createApp=w}else if(n.version.slice(0,2)==="2.")if(g){for(var c in g)s[c]=g[c];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version,s.hasInjectionContext=()=>!!s.getCurrentInstance()}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 c in n)s[c]=n[c];s.isVue2=!1,s.isVue3=!0,s.install=function(){},s.Vue=n,s.Vue2=void 0,s.version=n.version,s.set=function(w,S,$){return Array.isArray(w)?(w.length=Math.max(w.length,S),w.splice(S,1,$),$):(w[S]=$,$)},s.del=function(w,S){if(Array.isArray(w)){w.splice(S,1);return}delete w[S]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");return s}(this.VueDemi=this.VueDemi||(typeof VueDemi<"u"?VueDemi:{}),this.Vue||(typeof Vue<"u"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI<"u"?VueCompositionAPI:void 0));(function(s,n,g,c){"use strict";const Fe=n.defineComponent({name:"OnClickOutside",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return g.onClickOutside(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}});function w(t){var e;const r=c.toValue(t);return(e=r?.$el)!=null?e:r}const S=c.isClient?window:void 0;function $(...t){let e,r,o,a;if(typeof t[0]=="string"||Array.isArray(t[0])?([r,o,a]=t,e=S):[e,r,o,a]=t,!e)return c.noop;Array.isArray(r)||(r=[r]),Array.isArray(o)||(o=[o]);const u=[],i=()=>{u.forEach(d=>d()),u.length=0},l=(d,_,v,m)=>(d.addEventListener(_,v,m),()=>d.removeEventListener(_,v,m)),f=n.watch(()=>[w(e),c.toValue(a)],([d,_])=>{i(),d&&u.push(...r.flatMap(v=>o.map(m=>l(d,v,m,_))))},{immediate:!0,flush:"post"}),p=()=>{f(),i()};return c.tryOnScopeDispose(p),p}let V=!1;function z(t,e,r={}){const{window:o=S,ignore:a=[],capture:u=!0,detectIframe:i=!1}=r;if(!o)return;c.isIOS&&!V&&(V=!0,Array.from(o.document.body.children).forEach(v=>v.addEventListener("click",c.noop)));let l=!0;const f=v=>a.some(m=>{if(typeof m=="string")return Array.from(o.document.querySelectorAll(m)).some(y=>y===v.target||v.composedPath().includes(y));{const y=w(m);return y&&(v.target===y||v.composedPath().includes(y))}}),d=[$(o,"click",v=>{const m=w(t);if(!(!m||m===v.target||v.composedPath().includes(m))){if(v.detail===0&&(l=!f(v)),!l){l=!0;return}e(v)}},{passive:!0,capture:u}),$(o,"pointerdown",v=>{const m=w(t);m&&(l=!v.composedPath().includes(m)&&!f(v))},{passive:!0}),i&&$(o,"blur",v=>{setTimeout(()=>{var m;const y=w(t);((m=o.document.activeElement)==null?void 0:m.tagName)==="IFRAME"&&!y?.contains(o.document.activeElement)&&e(v)},0)})].filter(Boolean);return()=>d.forEach(v=>v())}const H={[c.directiveHooks.mounted](t,e){const r=!e.modifiers.bubble;if(typeof e.value=="function")t.__onClickOutside_stop=z(t,e.value,{capture:r});else{const[o,a]=e.value;t.__onClickOutside_stop=z(t,o,Object.assign({capture:r},a))}},[c.directiveHooks.unmounted](t){t.__onClickOutside_stop()}};function T(t){return typeof t=="function"?t:typeof t=="string"?e=>e.key===t:Array.isArray(t)?e=>t.includes(e.key):()=>!0}function N(...t){let e,r,o={};t.length===3?(e=t[0],r=t[1],o=t[2]):t.length===2?typeof t[1]=="object"?(e=!0,r=t[0],o=t[1]):(e=t[0],r=t[1]):(e=!0,r=t[0]);const{target:a=S,eventName:u="keydown",passive:i=!1,dedupe:l=!1}=o,f=T(e);return $(a,u,d=>{d.repeat&&c.toValue(l)||f(d)&&r(d)},i)}var Ke=Object.defineProperty,X=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,Je=Object.prototype.propertyIsEnumerable,q=(t,e,r)=>e in t?Ke(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ye=(t,e)=>{for(var r in e||(e={}))Ge.call(e,r)&&q(t,r,e[r]);if(X)for(var r of X(e))Je.call(e,r)&&q(t,r,e[r]);return t};const Xe={[c.directiveHooks.mounted](t,e){var r,o;const a=(o=(r=e.arg)==null?void 0:r.split(","))!=null?o:!0;if(typeof e.value=="function")N(a,e.value,{target:t});else{const[u,i]=e.value;N(a,u,Ye({target:t},i))}}},qe=500;function G(t,e,r){var o,a;const u=n.computed(()=>w(t));let i;function l(){i&&(clearTimeout(i),i=void 0)}function f(d){var _,v,m,y;(_=r?.modifiers)!=null&&_.self&&d.target!==u.value||(l(),(v=r?.modifiers)!=null&&v.prevent&&d.preventDefault(),(m=r?.modifiers)!=null&&m.stop&&d.stopPropagation(),i=setTimeout(()=>e(d),(y=r?.delay)!=null?y:qe))}const p={capture:(o=r?.modifiers)==null?void 0:o.capture,once:(a=r?.modifiers)==null?void 0:a.once};$(u,"pointerdown",f,p),$(u,"pointerup",l,p),$(u,"pointerleave",l,p)}const xe=n.defineComponent({name:"OnLongPress",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return G(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}}),x={[c.directiveHooks.mounted](t,e){typeof e.value=="function"?G(t,e.value,{modifiers:e.modifiers}):G(t,...e.value)}},Qe=n.defineComponent({name:"UseActiveElement",setup(t,{slots:e}){const r=n.reactive({element:g.useActiveElement()});return()=>{if(e.default)return e.default(r)}}}),Ze=n.defineComponent({name:"UseBattery",setup(t,{slots:e}){const r=n.reactive(g.useBattery(t));return()=>{if(e.default)return e.default(r)}}}),De=n.defineComponent({name:"UseBrowserLocation",setup(t,{slots:e}){const r=n.reactive(g.useBrowserLocation());return()=>{if(e.default)return e.default(r)}}}),k=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},B="__vueuse_ssr_handlers__",et=tt();function tt(){return B in k||(k[B]=k[B]||{}),k[B]}function Q(t,e){return et[t]||e}function rt(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"?"object":Number.isNaN(t)?"any":"number"}var nt=Object.defineProperty,Z=Object.getOwnPropertySymbols,ot=Object.prototype.hasOwnProperty,at=Object.prototype.propertyIsEnumerable,D=(t,e,r)=>e in t?nt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ee=(t,e)=>{for(var r in e||(e={}))ot.call(e,r)&&D(t,r,e[r]);if(Z)for(var r of Z(e))at.call(e,r)&&D(t,r,e[r]);return t};const st={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()}},te="vueuse-storage";function it(t,e,r,o={}){var a;const{flush:u="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:f=!0,mergeDefaults:p=!1,shallow:d,window:_=S,eventFilter:v,onError:m=O=>{console.error(O)}}=o,y=(d?n.shallowRef:n.ref)(e);if(!r)try{r=Q("getDefaultStorage",()=>{var O;return(O=S)==null?void 0:O.localStorage})()}catch(O){m(O)}if(!r)return y;const h=c.toValue(e),j=rt(h),C=(a=o.serializer)!=null?a:st[j],{pause:A,resume:M}=c.pausableWatch(y,()=>U(y.value),{flush:u,deep:i,eventFilter:v});return _&&l&&($(_,"storage",L),$(_,te,I)),L(),y;function U(O){try{if(O==null)r.removeItem(t);else{const b=C.write(O),E=r.getItem(t);E!==b&&(r.setItem(t,b),_&&_.dispatchEvent(new CustomEvent(te,{detail:{key:t,oldValue:E,newValue:b,storageArea:r}})))}}catch(b){m(b)}}function P(O){const b=O?O.newValue:r.getItem(t);if(b==null)return f&&h!==null&&r.setItem(t,C.write(h)),h;if(!O&&p){const E=C.read(b);return typeof p=="function"?p(E,h):j==="object"&&!Array.isArray(E)?ee(ee({},h),E):E}else return typeof b!="string"?b:C.read(b)}function I(O){L(O.detail)}function L(O){if(!(O&&O.storageArea!==r)){if(O&&O.key==null){y.value=h;return}if(!(O&&O.key!==t)){A();try{y.value=P(O)}catch(b){m(b)}finally{O?n.nextTick(M):M()}}}}}function lt(){const t=n.ref(!1);return n.getCurrentInstance()&&n.onMounted(()=>{t.value=!0}),t}function W(t){const e=lt();return n.computed(()=>(e.value,!!t()))}function ut(t,e={}){const{window:r=S}=e,o=W(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const u=n.ref(!1),i=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",l):a.removeListener(l))},l=()=>{o.value&&(i(),a=r.matchMedia(c.toRef(t).value),u.value=!!a?.matches,a&&("addEventListener"in a?a.addEventListener("change",l):a.addListener(l)))};return n.watchEffect(l),c.tryOnScopeDispose(()=>i()),u}function ct(t){return ut("(prefers-color-scheme: dark)",t)}var ft=Object.defineProperty,re=Object.getOwnPropertySymbols,dt=Object.prototype.hasOwnProperty,pt=Object.prototype.propertyIsEnumerable,ne=(t,e,r)=>e in t?ft(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vt=(t,e)=>{for(var r in e||(e={}))dt.call(e,r)&&ne(t,r,e[r]);if(re)for(var r of re(e))pt.call(e,r)&&ne(t,r,e[r]);return t};function _t(t={}){const{selector:e="html",attribute:r="class",initialValue:o="auto",window:a=S,storage:u,storageKey:i="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:f,emitAuto:p,disableTransition:d=!0}=t,_=vt({auto:"",light:"light",dark:"dark"},t.modes||{}),v=ct({window:a}),m=n.computed(()=>v.value?"dark":"light"),y=f||(i==null?c.toRef(o):it(i,o,u,{window:a,listenToStorageChanges:l})),h=n.computed(()=>y.value==="auto"?m.value:y.value),j=Q("updateHTMLAttrs",(U,P,I)=>{const L=typeof U=="string"?a?.document.querySelector(U):w(U);if(!L)return;let O;if(d){O=a.document.createElement("style");const b="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";O.appendChild(document.createTextNode(b)),a.document.head.appendChild(O)}if(P==="class"){const b=I.split(/\s/g);Object.values(_).flatMap(E=>(E||"").split(/\s/g)).filter(Boolean).forEach(E=>{b.includes(E)?L.classList.add(E):L.classList.remove(E)})}else L.setAttribute(P,I);d&&(a.getComputedStyle(O).opacity,document.head.removeChild(O))});function C(U){var P;j(e,r,(P=_[U])!=null?P:U)}function A(U){t.onChanged?t.onChanged(U,C):C(U)}n.watch(h,A,{flush:"post",immediate:!0}),c.tryOnMounted(()=>A(h.value));const M=n.computed({get(){return p?y.value:h.value},set(U){y.value=U}});try{return Object.assign(M,{store:y,system:m,state:h})}catch{return M}}const gt=n.defineComponent({name:"UseColorMode",props:["selector","attribute","modes","onChanged","storageKey","storage","emitAuto"],setup(t,{slots:e}){const r=_t(t),o=n.reactive({mode:r,system:r.system,store:r.store});return()=>{if(e.default)return e.default(o)}}}),mt=n.defineComponent({name:"UseDark",props:["selector","attribute","valueDark","valueLight","onChanged","storageKey","storage"],setup(t,{slots:e}){const r=g.useDark(t),o=n.reactive({isDark:r,toggleDark:c.useToggle(r)});return()=>{if(e.default)return e.default(o)}}}),yt=n.defineComponent({name:"UseDeviceMotion",setup(t,{slots:e}){const r=n.reactive(g.useDeviceMotion());return()=>{if(e.default)return e.default(r)}}}),Ot=n.defineComponent({name:"UseDeviceOrientation",setup(t,{slots:e}){const r=n.reactive(g.useDeviceOrientation());return()=>{if(e.default)return e.default(r)}}}),Pt=n.defineComponent({name:"UseDevicePixelRatio",setup(t,{slots:e}){const r=n.reactive({pixelRatio:g.useDevicePixelRatio()});return()=>{if(e.default)return e.default(r)}}}),wt=n.defineComponent({name:"UseDevicesList",props:["onUpdated","requestPermissions","constraints"],setup(t,{slots:e}){const r=n.reactive(g.useDevicesList(t));return()=>{if(e.default)return e.default(r)}}}),ht=n.defineComponent({name:"UseDocumentVisibility",setup(t,{slots:e}){const r=n.reactive({visibility:g.useDocumentVisibility()});return()=>{if(e.default)return e.default(r)}}});var bt=Object.defineProperty,St=Object.defineProperties,Ut=Object.getOwnPropertyDescriptors,oe=Object.getOwnPropertySymbols,$t=Object.prototype.hasOwnProperty,Ct=Object.prototype.propertyIsEnumerable,ae=(t,e,r)=>e in t?bt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Et=(t,e)=>{for(var r in e||(e={}))$t.call(e,r)&&ae(t,r,e[r]);if(oe)for(var r of oe(e))Ct.call(e,r)&&ae(t,r,e[r]);return t},jt=(t,e)=>St(t,Ut(e));const It=n.defineComponent({name:"UseDraggable",props:["storageKey","storageType","initialValue","exact","preventDefault","stopPropagation","pointerTypes","as","handle","axis","onStart","onMove","onEnd"],setup(t,{slots:e}){const r=n.ref(),o=n.computed(()=>{var f;return(f=t.handle)!=null?f:r.value}),a=t.storageKey&&g.useStorage(t.storageKey,c.toValue(t.initialValue)||{x:0,y:0},g.isClient?t.storageType==="session"?sessionStorage:localStorage:void 0),u=a||t.initialValue||{x:0,y:0},i=(f,p)=>{var d;(d=t.onEnd)==null||d.call(t,f,p),a&&(a.value.x=f.x,a.value.y=f.y)},l=n.reactive(g.useDraggable(r,jt(Et({},t),{handle:o,initialValue:u,onEnd:i})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r,style:`touch-action:none;${l.style}`},e.default(l))}}}),Lt=n.defineComponent({name:"UseElementBounding",props:["box","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useElementBounding(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function At(t,e={}){const{delayEnter:r=0,delayLeave:o=0,window:a=S}=e,u=n.ref(!1);let i;const l=f=>{const p=f?r:o;i&&(clearTimeout(i),i=void 0),p?i=setTimeout(()=>u.value=f,p):u.value=f};return a&&($(t,"mouseenter",()=>l(!0),{passive:!0}),$(t,"mouseleave",()=>l(!1),{passive:!0})),u}const Vt={[c.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=At(t);n.watch(r,o=>e.value(o))}}},Mt=n.defineComponent({name:"UseElementSize",props:["width","height","box"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.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 se=Object.getOwnPropertySymbols,Nt=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,Rt=(t,e)=>{var r={};for(var o in t)Nt.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&se)for(var o of se(t))e.indexOf(o)<0&&Tt.call(t,o)&&(r[o]=t[o]);return r};function zt(t,e,r={}){const o=r,{window:a=S}=o,u=Rt(o,["window"]);let i;const l=W(()=>a&&"ResizeObserver"in a),f=()=>{i&&(i.disconnect(),i=void 0)},p=n.computed(()=>Array.isArray(t)?t.map(v=>w(v)):[w(t)]),d=n.watch(p,v=>{if(f(),l.value&&a){i=new ResizeObserver(e);for(const m of v)m&&i.observe(m,u)}},{immediate:!0,flush:"post",deep:!0}),_=()=>{f(),d()};return c.tryOnScopeDispose(_),{isSupported:l,stop:_}}function Ht(t,e={width:0,height:0},r={}){const{window:o=S,box:a="content-box"}=r,u=n.computed(()=>{var f,p;return(p=(f=w(t))==null?void 0:f.namespaceURI)==null?void 0:p.includes("svg")}),i=n.ref(e.width),l=n.ref(e.height);return zt(t,([f])=>{const p=a==="border-box"?f.borderBoxSize:a==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(o&&u.value){const d=w(t);if(d){const _=o.getComputedStyle(d);i.value=Number.parseFloat(_.width),l.value=Number.parseFloat(_.height)}}else if(p){const d=Array.isArray(p)?p:[p];i.value=d.reduce((_,{inlineSize:v})=>_+v,0),l.value=d.reduce((_,{blockSize:v})=>_+v,0)}else i.value=f.contentRect.width,l.value=f.contentRect.height},r),n.watch(()=>w(t),f=>{i.value=f?e.width:0,l.value=f?e.height:0}),{width:i,height:l}}const kt={[c.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:u,height:i}=Ht(t,...a);n.watch([u,i],([l,f])=>o({width:l,height:f}))}},Bt=n.defineComponent({name:"UseElementVisibility",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive({isVisible:g.useElementVisibility(r)});return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function J(t,e,r={}){const{root:o,rootMargin:a="0px",threshold:u=.1,window:i=S,immediate:l=!0}=r,f=W(()=>i&&"IntersectionObserver"in i),p=n.computed(()=>{const y=c.toValue(t);return(Array.isArray(y)?y:[y]).map(w).filter(c.notNullish)});let d=c.noop;const _=n.ref(l),v=f.value?n.watch(()=>[p.value,w(o),_.value],([y,h])=>{if(d(),!_.value||!y.length)return;const j=new IntersectionObserver(e,{root:w(h),rootMargin:a,threshold:u});y.forEach(C=>C&&j.observe(C)),d=()=>{j.disconnect(),d=c.noop}},{immediate:l,flush:"post"}):c.noop,m=()=>{d(),v(),_.value=!1};return c.tryOnScopeDispose(m),{isSupported:f,isActive:_,pause(){d(),_.value=!1},resume(){_.value=!0},stop:m}}function ie(t,{window:e=S,scrollTarget:r}={}){const o=n.ref(!1);return J(t,([{isIntersecting:a}])=>{o.value=a},{root:r,window:e}),o}const Wt={[c.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=ie(t);n.watch(o,a=>r(a),{immediate:!0})}else{const[r,o]=e.value,a=ie(t,o);n.watch(a,u=>r(u),{immediate:!0})}}},Ft=n.defineComponent({name:"UseEyeDropper",props:{sRGBHex:String},setup(t,{slots:e}){const r=n.reactive(g.useEyeDropper());return()=>{if(e.default)return e.default(r)}}}),Kt=n.defineComponent({name:"UseFullscreen",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useFullscreen(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),Gt=n.defineComponent({name:"UseGeolocation",props:["enableHighAccuracy","maximumAge","timeout","navigator"],setup(t,{slots:e}){const r=n.reactive(g.useGeolocation(t));return()=>{if(e.default)return e.default(r)}}}),Jt=n.defineComponent({name:"UseIdle",props:["timeout","events","listenForVisibilityChange","initialState"],setup(t,{slots:e}){const r=n.reactive(g.useIdle(t.timeout,t));return()=>{if(e.default)return e.default(r)}}});var Yt=Object.defineProperty,Xt=Object.defineProperties,qt=Object.getOwnPropertyDescriptors,le=Object.getOwnPropertySymbols,xt=Object.prototype.hasOwnProperty,Qt=Object.prototype.propertyIsEnumerable,ue=(t,e,r)=>e in t?Yt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Zt=(t,e)=>{for(var r in e||(e={}))xt.call(e,r)&&ue(t,r,e[r]);if(le)for(var r of le(e))Qt.call(e,r)&&ue(t,r,e[r]);return t},Dt=(t,e)=>Xt(t,qt(e));function er(t,e,r){const{immediate:o=!0,delay:a=0,onError:u=c.noop,onSuccess:i=c.noop,resetOnExecute:l=!0,shallow:f=!0,throwError:p}=r??{},d=f?n.shallowRef(e):n.ref(e),_=n.ref(!1),v=n.ref(!1),m=n.shallowRef(void 0);async function y(C=0,...A){l&&(d.value=e),m.value=void 0,_.value=!1,v.value=!0,C>0&&await c.promiseTimeout(C);const M=typeof t=="function"?t(...A):t;try{const U=await M;d.value=U,_.value=!0,i(U)}catch(U){if(m.value=U,u(U),p)throw U}finally{v.value=!1}return d.value}o&&y(a);const h={state:d,isReady:_,isLoading:v,error:m,execute:y};function j(){return new Promise((C,A)=>{c.until(v).toBe(!1).then(()=>C(h)).catch(A)})}return Dt(Zt({},h),{then(C,A){return j().then(C,A)}})}var tr=Object.defineProperty,ce=Object.getOwnPropertySymbols,rr=Object.prototype.hasOwnProperty,nr=Object.prototype.propertyIsEnumerable,fe=(t,e,r)=>e in t?tr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,or=(t,e)=>{for(var r in e||(e={}))rr.call(e,r)&&fe(t,r,e[r]);if(ce)for(var r of ce(e))nr.call(e,r)&&fe(t,r,e[r]);return t};async function ar(t){return new Promise((e,r)=>{const o=new Image,{src:a,srcset:u,sizes:i,class:l,loading:f,crossorigin:p,referrerPolicy:d}=t;o.src=a,u&&(o.srcset=u),i&&(o.sizes=i),l&&(o.className=l),f&&(o.loading=f),p&&(o.crossOrigin=p),d&&(o.referrerPolicy=d),o.onload=()=>e(o),o.onerror=r})}function sr(t,e={}){const r=er(()=>ar(c.toValue(t)),void 0,or({resetOnExecute:!0},e));return n.watch(()=>c.toValue(t),()=>r.execute(e.delay),{deep:!0}),r}const ir=n.defineComponent({name:"UseImage",props:["src","srcset","sizes","as","alt","class","loading","crossorigin","referrerPolicy"],setup(t,{slots:e}){const r=n.reactive(sr(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)}}),de=1;function Y(t,e={}){const{throttle:r=0,idle:o=200,onStop:a=c.noop,onScroll:u=c.noop,offset:i={left:0,right:0,top:0,bottom:0},eventListenerOptions:l={capture:!1,passive:!0},behavior:f="auto"}=e,p=n.ref(0),d=n.ref(0),_=n.computed({get(){return p.value},set(P){m(P,void 0)}}),v=n.computed({get(){return d.value},set(P){m(void 0,P)}});function m(P,I){var L,O,b;const E=c.toValue(t);E&&((b=E instanceof Document?document.body:E)==null||b.scrollTo({top:(L=c.toValue(I))!=null?L:v.value,left:(O=c.toValue(P))!=null?O:_.value,behavior:c.toValue(f)}))}const y=n.ref(!1),h=n.reactive({left:!0,right:!1,top:!0,bottom:!1}),j=n.reactive({left:!1,right:!1,top:!1,bottom:!1}),C=P=>{y.value&&(y.value=!1,j.left=!1,j.right=!1,j.top=!1,j.bottom=!1,a(P))},A=c.useDebounceFn(C,r+o),M=P=>{const I=P===window?P.document.documentElement:P===document?P.documentElement:P,{display:L,flexDirection:O}=getComputedStyle(I),b=I.scrollLeft;j.left=b<p.value,j.right=b>p.value;const E=Math.abs(b)<=0+(i.left||0),ke=Math.abs(b)+I.clientWidth>=I.scrollWidth-(i.right||0)-de;L==="flex"&&O==="row-reverse"?(h.left=ke,h.right=E):(h.left=E,h.right=ke),p.value=b;let R=I.scrollTop;P===document&&!R&&(R=document.body.scrollTop),j.top=R<d.value,j.bottom=R>d.value;const Be=Math.abs(R)<=0+(i.top||0),We=Math.abs(R)+I.clientHeight>=I.scrollHeight-(i.bottom||0)-de;L==="flex"&&O==="column-reverse"?(h.top=We,h.bottom=Be):(h.top=Be,h.bottom=We),d.value=R},U=P=>{const I=P.target===document?P.target.documentElement:P.target;M(I),y.value=!0,A(P),u(P)};return $(t,"scroll",r?c.useThrottleFn(U,r,!0,!1):U,l),$(t,"scrollend",C,l),{x:_,y:v,isScrolling:y,arrivedState:h,directions:j,measure(){const P=c.toValue(t);P&&M(P)}}}var lr=Object.defineProperty,ur=Object.defineProperties,cr=Object.getOwnPropertyDescriptors,pe=Object.getOwnPropertySymbols,fr=Object.prototype.hasOwnProperty,dr=Object.prototype.propertyIsEnumerable,ve=(t,e,r)=>e in t?lr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,_e=(t,e)=>{for(var r in e||(e={}))fr.call(e,r)&&ve(t,r,e[r]);if(pe)for(var r of pe(e))dr.call(e,r)&&ve(t,r,e[r]);return t},pr=(t,e)=>ur(t,cr(e));function ge(t,e,r={}){var o;const{direction:a="bottom",interval:u=100}=r,i=n.reactive(Y(t,pr(_e({},r),{offset:_e({[a]:(o=r.distance)!=null?o:0},r.offset)}))),l=n.ref(),f=n.computed(()=>!!l.value);function p(){i.measure();const d=c.toValue(t);if(!d)return;const _=a==="bottom"||a==="top"?d.scrollHeight<=d.clientHeight:d.scrollWidth<=d.clientWidth;(i.arrivedState[a]||_)&&(l.value||(l.value=Promise.all([e(i),new Promise(v=>setTimeout(v,u))]).finally(()=>{l.value=null,n.nextTick(()=>p())})))}return n.watch(()=>[i.arrivedState[a],c.toValue(t)],p,{immediate:!0}),{isLoading:f}}const vr={[c.directiveHooks.mounted](t,e){typeof e.value=="function"?ge(t,e.value):ge(t,...e.value)}},_r={[c.directiveHooks.mounted](t,e){typeof e.value=="function"?J(t,e.value):J(t,...e.value)}},gr=n.defineComponent({name:"UseMouse",props:["touch","resetOnTouchEnds","initialValue"],setup(t,{slots:e}){const r=n.reactive(g.useMouse(t));return()=>{if(e.default)return e.default(r)}}}),mr=n.defineComponent({name:"UseMouseElement",props:["handleOutside","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useMouseInElement(r,t));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var yr=Object.defineProperty,Or=Object.defineProperties,Pr=Object.getOwnPropertyDescriptors,me=Object.getOwnPropertySymbols,wr=Object.prototype.hasOwnProperty,hr=Object.prototype.propertyIsEnumerable,ye=(t,e,r)=>e in t?yr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,br=(t,e)=>{for(var r in e||(e={}))wr.call(e,r)&&ye(t,r,e[r]);if(me)for(var r of me(e))hr.call(e,r)&&ye(t,r,e[r]);return t},Sr=(t,e)=>Or(t,Pr(e));const Ur=n.defineComponent({name:"UseMousePressed",props:["touch","initialValue","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useMousePressed(Sr(br({},t),{target:r})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),$r=n.defineComponent({name:"UseNetwork",setup(t,{slots:e}){const r=n.reactive(g.useNetwork());return()=>{if(e.default)return e.default(r)}}});var Cr=Object.defineProperty,Er=Object.defineProperties,jr=Object.getOwnPropertyDescriptors,Oe=Object.getOwnPropertySymbols,Ir=Object.prototype.hasOwnProperty,Lr=Object.prototype.propertyIsEnumerable,Pe=(t,e,r)=>e in t?Cr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ar=(t,e)=>{for(var r in e||(e={}))Ir.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},Vr=(t,e)=>Er(t,jr(e));const Mr=n.defineComponent({name:"UseNow",props:["interval"],setup(t,{slots:e}){const r=n.reactive(g.useNow(Vr(Ar({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}}),Nr=n.defineComponent({name:"UseObjectUrl",props:["object"],setup(t,{slots:e}){const r=c.toRef(t,"object"),o=g.useObjectUrl(r);return()=>{if(e.default&&o.value)return e.default(o)}}});var Tr=Object.defineProperty,Rr=Object.defineProperties,zr=Object.getOwnPropertyDescriptors,we=Object.getOwnPropertySymbols,Hr=Object.prototype.hasOwnProperty,kr=Object.prototype.propertyIsEnumerable,he=(t,e,r)=>e in t?Tr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Br=(t,e)=>{for(var r in e||(e={}))Hr.call(e,r)&&he(t,r,e[r]);if(we)for(var r of we(e))kr.call(e,r)&&he(t,r,e[r]);return t},Wr=(t,e)=>Rr(t,zr(e));const Fr=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(g.useOffsetPagination(Wr(Br({},t),{onPageChange(...a){var u;(u=t.onPageChange)==null||u.call(t,...a),r("page-change",...a)},onPageSizeChange(...a){var u;(u=t.onPageSizeChange)==null||u.call(t,...a),r("page-size-change",...a)},onPageCountChange(...a){var u;(u=t.onPageCountChange)==null||u.call(t,...a),r("page-count-change",...a)}})));return()=>{if(e.default)return e.default(o)}}}),Kr=n.defineComponent({name:"UseOnline",setup(t,{slots:e}){const r=n.reactive({isOnline:g.useOnline()});return()=>{if(e.default)return e.default(r)}}}),Gr=n.defineComponent({name:"UsePageLeave",setup(t,{slots:e}){const r=n.reactive({isLeft:g.usePageLeave()});return()=>{if(e.default)return e.default(r)}}});var Jr=Object.defineProperty,Yr=Object.defineProperties,Xr=Object.getOwnPropertyDescriptors,be=Object.getOwnPropertySymbols,qr=Object.prototype.hasOwnProperty,xr=Object.prototype.propertyIsEnumerable,Se=(t,e,r)=>e in t?Jr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Qr=(t,e)=>{for(var r in e||(e={}))qr.call(e,r)&&Se(t,r,e[r]);if(be)for(var r of be(e))xr.call(e,r)&&Se(t,r,e[r]);return t},Zr=(t,e)=>Yr(t,Xr(e));const Dr=n.defineComponent({name:"UsePointer",props:["pointerTypes","initialValue","target"],setup(t,{slots:e}){const r=n.ref(null),o=n.reactive(g.usePointer(Zr(Qr({},t),{target:t.target==="self"?r:S})));return()=>{if(e.default)return e.default(o,{ref:r})}}}),en=n.defineComponent({name:"UsePointerLock",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.usePointerLock(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),tn=n.defineComponent({name:"UsePreferredColorScheme",setup(t,{slots:e}){const r=n.reactive({colorScheme:g.usePreferredColorScheme()});return()=>{if(e.default)return e.default(r)}}}),rn=n.defineComponent({name:"UsePreferredContrast",setup(t,{slots:e}){const r=n.reactive({contrast:g.usePreferredContrast()});return()=>{if(e.default)return e.default(r)}}}),nn=n.defineComponent({name:"UsePreferredDark",setup(t,{slots:e}){const r=n.reactive({prefersDark:g.usePreferredDark()});return()=>{if(e.default)return e.default(r)}}}),on=n.defineComponent({name:"UsePreferredLanguages",setup(t,{slots:e}){const r=n.reactive({languages:g.usePreferredLanguages()});return()=>{if(e.default)return e.default(r)}}}),an=n.defineComponent({name:"UsePreferredReducedMotion",setup(t,{slots:e}){const r=n.reactive({motion:g.usePreferredReducedMotion()});return()=>{if(e.default)return e.default(r)}}});var Ue=Object.getOwnPropertySymbols,sn=Object.prototype.hasOwnProperty,ln=Object.prototype.propertyIsEnumerable,un=(t,e)=>{var r={};for(var o in t)sn.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&Ue)for(var o of Ue(t))e.indexOf(o)<0&&ln.call(t,o)&&(r[o]=t[o]);return r};function cn(t,e,r={}){const o=r,{window:a=S}=o,u=un(o,["window"]);let i;const l=W(()=>a&&"MutationObserver"in a),f=()=>{i&&(i.disconnect(),i=void 0)},p=n.watch(()=>w(t),_=>{f(),l.value&&a&&_&&(i=new MutationObserver(e),i.observe(_,u))},{immediate:!0}),d=()=>{f(),p()};return c.tryOnScopeDispose(d),{isSupported:l,stop:d}}function F(t,e,r={}){const{window:o=S,initialValue:a="",observe:u=!1}=r,i=n.ref(a),l=n.computed(()=>{var p;return w(e)||((p=o?.document)==null?void 0:p.documentElement)});function f(){var p;const d=c.toValue(t),_=c.toValue(l);if(_&&o){const v=(p=o.getComputedStyle(_).getPropertyValue(d))==null?void 0:p.trim();i.value=v||a}}return u&&cn(l,f,{attributeFilter:["style","class"],window:o}),n.watch([l,()=>c.toValue(t)],f,{immediate:!0}),n.watch(i,p=>{var d;(d=l.value)!=null&&d.style&&l.value.style.setProperty(c.toValue(t),p)}),i}const $e="--vueuse-safe-area-top",Ce="--vueuse-safe-area-right",Ee="--vueuse-safe-area-bottom",je="--vueuse-safe-area-left";function fn(){const t=n.ref(""),e=n.ref(""),r=n.ref(""),o=n.ref("");if(c.isClient){const u=F($e),i=F(Ce),l=F(Ee),f=F(je);u.value="env(safe-area-inset-top, 0px)",i.value="env(safe-area-inset-right, 0px)",l.value="env(safe-area-inset-bottom, 0px)",f.value="env(safe-area-inset-left, 0px)",a(),$("resize",c.useDebounceFn(a))}function a(){t.value=K($e),e.value=K(Ce),r.value=K(Ee),o.value=K(je)}return{top:t,right:e,bottom:r,left:o,update:a}}function K(t){return getComputedStyle(document.documentElement).getPropertyValue(t)}const dn=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:u}=fn();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?u.value:"",boxSizing:"border-box",maxHeight:"100vh",maxWidth:"100vw",overflow:"auto"}},e.default())}}});var pn=Object.defineProperty,vn=Object.defineProperties,_n=Object.getOwnPropertyDescriptors,Ie=Object.getOwnPropertySymbols,gn=Object.prototype.hasOwnProperty,mn=Object.prototype.propertyIsEnumerable,Le=(t,e,r)=>e in t?pn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,yn=(t,e)=>{for(var r in e||(e={}))gn.call(e,r)&&Le(t,r,e[r]);if(Ie)for(var r of Ie(e))mn.call(e,r)&&Le(t,r,e[r]);return t},On=(t,e)=>vn(t,_n(e));const Pn={[c.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=Y(t,{onScroll(){r(o)},onStop(){r(o)}})}else{const[r,o]=e.value,a=Y(t,On(yn({},o),{onScroll(u){var i;(i=o.onScroll)==null||i.call(o,u),r(a)},onStop(u){var i;(i=o.onStop)==null||i.call(o,u),r(a)}}))}}};function Ae(t){const e=window.getComputedStyle(t);if(e.overflowX==="scroll"||e.overflowY==="scroll"||e.overflowX==="auto"&&t.clientWidth<t.scrollWidth||e.overflowY==="auto"&&t.clientHeight<t.scrollHeight)return!0;{const r=t.parentNode;return!r||r.tagName==="BODY"?!1:Ae(r)}}function wn(t){const e=t||window.event,r=e.target;return Ae(r)?!1:e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)}function hn(t,e=!1){const r=n.ref(e);let o=null,a;n.watch(c.toRef(t),l=>{if(l){const f=l;a=f.style.overflow,r.value&&(f.style.overflow="hidden")}},{immediate:!0});const u=()=>{const l=c.toValue(t);!l||r.value||(c.isIOS&&(o=$(l,"touchmove",f=>{wn(f)},{passive:!1})),l.style.overflow="hidden",r.value=!0)},i=()=>{const l=c.toValue(t);!l||!r.value||(c.isIOS&&o?.(),l.style.overflow=a,r.value=!1)};return c.tryOnScopeDispose(i),n.computed({get(){return r.value},set(l){l?u():i()}})}function bn(){let t=!1;const e=n.ref(!1);return(r,o)=>{if(e.value=o.value,t)return;t=!0;const a=hn(r,o.value);n.watch(e,u=>a.value=u)}}const Sn=bn();var Un=Object.defineProperty,$n=Object.defineProperties,Cn=Object.getOwnPropertyDescriptors,Ve=Object.getOwnPropertySymbols,En=Object.prototype.hasOwnProperty,jn=Object.prototype.propertyIsEnumerable,Me=(t,e,r)=>e in t?Un(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,In=(t,e)=>{for(var r in e||(e={}))En.call(e,r)&&Me(t,r,e[r]);if(Ve)for(var r of Ve(e))jn.call(e,r)&&Me(t,r,e[r]);return t},Ln=(t,e)=>$n(t,Cn(e));const An=n.defineComponent({name:"UseTimeAgo",props:["time","updateInterval","max","fullDateFormatter","messages","showSecond"],setup(t,{slots:e}){const r=n.reactive(g.useTimeAgo(()=>t.time,Ln(In({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var Vn=Object.defineProperty,Mn=Object.defineProperties,Nn=Object.getOwnPropertyDescriptors,Ne=Object.getOwnPropertySymbols,Tn=Object.prototype.hasOwnProperty,Rn=Object.prototype.propertyIsEnumerable,Te=(t,e,r)=>e in t?Vn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,zn=(t,e)=>{for(var r in e||(e={}))Tn.call(e,r)&&Te(t,r,e[r]);if(Ne)for(var r of Ne(e))Rn.call(e,r)&&Te(t,r,e[r]);return t},Hn=(t,e)=>Mn(t,Nn(e));const kn=n.defineComponent({name:"UseTimestamp",props:["immediate","interval","offset"],setup(t,{slots:e}){const r=n.reactive(g.useTimestamp(Hn(zn({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var Bn=Object.defineProperty,Re=Object.getOwnPropertySymbols,Wn=Object.prototype.hasOwnProperty,Fn=Object.prototype.propertyIsEnumerable,ze=(t,e,r)=>e in t?Bn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,He=(t,e)=>{for(var r in e||(e={}))Wn.call(e,r)&&ze(t,r,e[r]);if(Re)for(var r of Re(e))Fn.call(e,r)&&ze(t,r,e[r]);return t};const Kn=n.defineComponent({name:"UseVirtualList",props:["list","options","height"],setup(t,{slots:e,expose:r}){const{list:o}=n.toRefs(t),{list:a,containerProps:u,wrapperProps:i,scrollTo:l}=g.useVirtualList(o,t.options);return r({scrollTo:l}),typeof u.style=="object"&&!Array.isArray(u.style)&&(u.style.height=t.height||"300px"),()=>n.h("div",He({},u),[n.h("div",He({},i.value),a.value.map(f=>n.h("div",{style:{overFlow:"hidden",height:f.height}},e.default?e.default(f):"Please set content!")))])}}),Gn=n.defineComponent({name:"UseWindowFocus",setup(t,{slots:e}){const r=n.reactive({focused:g.useWindowFocus()});return()=>{if(e.default)return e.default(r)}}}),Jn=n.defineComponent({name:"UseWindowSize",props:["initialWidth","initialHeight"],setup(t,{slots:e}){const r=n.reactive(g.useWindowSize(t));return()=>{if(e.default)return e.default(r)}}});s.OnClickOutside=Fe,s.OnLongPress=xe,s.UseActiveElement=Qe,s.UseBattery=Ze,s.UseBrowserLocation=De,s.UseColorMode=gt,s.UseDark=mt,s.UseDeviceMotion=yt,s.UseDeviceOrientation=Ot,s.UseDevicePixelRatio=Pt,s.UseDevicesList=wt,s.UseDocumentVisibility=ht,s.UseDraggable=It,s.UseElementBounding=Lt,s.UseElementSize=Mt,s.UseElementVisibility=Bt,s.UseEyeDropper=Ft,s.UseFullscreen=Kt,s.UseGeolocation=Gt,s.UseIdle=Jt,s.UseImage=ir,s.UseMouse=gr,s.UseMouseInElement=mr,s.UseMousePressed=Ur,s.UseNetwork=$r,s.UseNow=Mr,s.UseObjectUrl=Nr,s.UseOffsetPagination=Fr,s.UseOnline=Kr,s.UsePageLeave=Gr,s.UsePointer=Dr,s.UsePointerLock=en,s.UsePreferredColorScheme=tn,s.UsePreferredContrast=rn,s.UsePreferredDark=nn,s.UsePreferredLanguages=on,s.UsePreferredReducedMotion=an,s.UseScreenSafeArea=dn,s.UseTimeAgo=An,s.UseTimestamp=kn,s.UseVirtualList=Kn,s.UseWindowFocus=Gn,s.UseWindowSize=Jn,s.VOnClickOutside=H,s.VOnLongPress=x,s.vElementHover=Vt,s.vElementSize=kt,s.vElementVisibility=Wt,s.vInfiniteScroll=vr,s.vIntersectionObserver=_r,s.vOnClickOutside=H,s.vOnKeyStroke=Xe,s.vOnLongPress=x,s.vScroll=Pn,s.vScrollLock=Sn})(this.VueUse=this.VueUse||{},VueDemi,VueUse,VueUse);
1
+ var VueDemi=function(s,n,g){if(s.install)return s;if(!n)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),s;if(n.version.slice(0,4)==="2.7."){let P=function(b,C){var A,k={},H={config:n.config,use:n.use.bind(n),mixin:n.mixin.bind(n),component:n.component.bind(n),provide:function(T,M){return k[T]=M,this},directive:function(T,M){return M?(n.directive(T,M),H):n.directive(T)},mount:function(T,M){return A||(A=new n(Object.assign({propsData:C},b,{provide:Object.assign(k,b.provide)})),A.$mount(T,M),A)},unmount:function(){A&&(A.$destroy(),A=void 0)}};return H};var x=P;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,s.warn=n.util.warn,s.hasInjectionContext=()=>!!s.getCurrentInstance(),s.createApp=P}else if(n.version.slice(0,2)==="2.")if(g){for(var u in g)s[u]=g[u];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=n,s.Vue2=n,s.version=n.version,s.hasInjectionContext=()=>!!s.getCurrentInstance()}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(P,b,C){return Array.isArray(P)?(P.length=Math.max(P.length,b),P.splice(b,1,C),C):(P[b]=C,C)},s.del=function(P,b){if(Array.isArray(P)){P.splice(b,1);return}delete P[b]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");return s}(this.VueDemi=this.VueDemi||(typeof VueDemi<"u"?VueDemi:{}),this.Vue||(typeof Vue<"u"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI<"u"?VueCompositionAPI:void 0));(function(s,n,g,u){"use strict";const x=n.defineComponent({name:"OnClickOutside",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return g.onClickOutside(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}});function P(t){var e;const r=u.toValue(t);return(e=r?.$el)!=null?e:r}const b=u.isClient?window:void 0;function C(...t){let e,r,o,a;if(typeof t[0]=="string"||Array.isArray(t[0])?([r,o,a]=t,e=b):[e,r,o,a]=t,!e)return u.noop;Array.isArray(r)||(r=[r]),Array.isArray(o)||(o=[o]);const l=[],i=()=>{l.forEach(d=>d()),l.length=0},c=(d,_,v,m)=>(d.addEventListener(_,v,m),()=>d.removeEventListener(_,v,m)),f=n.watch(()=>[P(e),u.toValue(a)],([d,_])=>{i(),d&&l.push(...r.flatMap(v=>o.map(m=>c(d,v,m,_))))},{immediate:!0,flush:"post"}),p=()=>{f(),i()};return u.tryOnScopeDispose(p),p}let A=!1;function k(t,e,r={}){const{window:o=b,ignore:a=[],capture:l=!0,detectIframe:i=!1}=r;if(!o)return;u.isIOS&&!A&&(A=!0,Array.from(o.document.body.children).forEach(v=>v.addEventListener("click",u.noop)),o.document.documentElement.addEventListener("click",u.noop));let c=!0;const f=v=>a.some(m=>{if(typeof m=="string")return Array.from(o.document.querySelectorAll(m)).some(y=>y===v.target||v.composedPath().includes(y));{const y=P(m);return y&&(v.target===y||v.composedPath().includes(y))}}),d=[C(o,"click",v=>{const m=P(t);if(!(!m||m===v.target||v.composedPath().includes(m))){if(v.detail===0&&(c=!f(v)),!c){c=!0;return}e(v)}},{passive:!0,capture:l}),C(o,"pointerdown",v=>{const m=P(t);m&&(c=!v.composedPath().includes(m)&&!f(v))},{passive:!0}),i&&C(o,"blur",v=>{setTimeout(()=>{var m;const y=P(t);((m=o.document.activeElement)==null?void 0:m.tagName)==="IFRAME"&&!y?.contains(o.document.activeElement)&&e(v)},0)})].filter(Boolean);return()=>d.forEach(v=>v())}const H={[u.directiveHooks.mounted](t,e){const r=!e.modifiers.bubble;if(typeof e.value=="function")t.__onClickOutside_stop=k(t,e.value,{capture:r});else{const[o,a]=e.value;t.__onClickOutside_stop=k(t,o,Object.assign({capture:r},a))}},[u.directiveHooks.unmounted](t){t.__onClickOutside_stop()}};function T(t){return typeof t=="function"?t:typeof t=="string"?e=>e.key===t:Array.isArray(t)?e=>t.includes(e.key):()=>!0}function M(...t){let e,r,o={};t.length===3?(e=t[0],r=t[1],o=t[2]):t.length===2?typeof t[1]=="object"?(e=!0,r=t[0],o=t[1]):(e=t[0],r=t[1]):(e=!0,r=t[0]);const{target:a=b,eventName:l="keydown",passive:i=!1,dedupe:c=!1}=o,f=T(e);return C(a,l,d=>{d.repeat&&u.toValue(c)||f(d)&&r(d)},i)}var Ge=Object.defineProperty,Q=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,Ye=Object.prototype.propertyIsEnumerable,Z=(t,e,r)=>e in t?Ge(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Xe=(t,e)=>{for(var r in e||(e={}))Je.call(e,r)&&Z(t,r,e[r]);if(Q)for(var r of Q(e))Ye.call(e,r)&&Z(t,r,e[r]);return t};const qe={[u.directiveHooks.mounted](t,e){var r,o;const a=(o=(r=e.arg)==null?void 0:r.split(","))!=null?o:!0;if(typeof e.value=="function")M(a,e.value,{target:t});else{const[l,i]=e.value;M(a,l,Xe({target:t},i))}}},xe=500;function J(t,e,r){var o,a;const l=n.computed(()=>P(t));let i;function c(){i&&(clearTimeout(i),i=void 0)}function f(d){var _,v,m,y;(_=r?.modifiers)!=null&&_.self&&d.target!==l.value||(c(),(v=r?.modifiers)!=null&&v.prevent&&d.preventDefault(),(m=r?.modifiers)!=null&&m.stop&&d.stopPropagation(),i=setTimeout(()=>e(d),(y=r?.delay)!=null?y:xe))}const p={capture:(o=r?.modifiers)==null?void 0:o.capture,once:(a=r?.modifiers)==null?void 0:a.once};C(l,"pointerdown",f,p),C(l,["pointerup","pointerleave"],c,p)}const Qe=n.defineComponent({name:"OnLongPress",props:["as","options"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return J(o,a=>{r("trigger",a)},t.options),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}}),D={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?J(t,e.value,{modifiers:e.modifiers}):J(t,...e.value)}},Ze=n.defineComponent({name:"UseActiveElement",setup(t,{slots:e}){const r=n.reactive({element:g.useActiveElement()});return()=>{if(e.default)return e.default(r)}}}),De=n.defineComponent({name:"UseBattery",setup(t,{slots:e}){const r=n.reactive(g.useBattery(t));return()=>{if(e.default)return e.default(r)}}}),et=n.defineComponent({name:"UseBrowserLocation",setup(t,{slots:e}){const r=n.reactive(g.useBrowserLocation());return()=>{if(e.default)return e.default(r)}}}),B=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},W="__vueuse_ssr_handlers__",tt=rt();function rt(){return W in B||(B[W]=B[W]||{}),B[W]}function ee(t,e){return tt[t]||e}function nt(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"?"object":Number.isNaN(t)?"any":"number"}var ot=Object.defineProperty,te=Object.getOwnPropertySymbols,at=Object.prototype.hasOwnProperty,st=Object.prototype.propertyIsEnumerable,re=(t,e,r)=>e in t?ot(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ne=(t,e)=>{for(var r in e||(e={}))at.call(e,r)&&re(t,r,e[r]);if(te)for(var r of te(e))st.call(e,r)&&re(t,r,e[r]);return t};const it={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()}},oe="vueuse-storage";function lt(t,e,r,o={}){var a;const{flush:l="pre",deep:i=!0,listenToStorageChanges:c=!0,writeDefaults:f=!0,mergeDefaults:p=!1,shallow:d,window:_=b,eventFilter:v,onError:m=O=>{console.error(O)}}=o,y=(d?n.shallowRef:n.ref)(e);if(!r)try{r=ee("getDefaultStorage",()=>{var O;return(O=b)==null?void 0:O.localStorage})()}catch(O){m(O)}if(!r)return y;const S=u.toValue(e),j=nt(S),w=(a=o.serializer)!=null?a:it[j],{pause:L,resume:N}=u.pausableWatch(y,()=>U(y.value),{flush:l,deep:i,eventFilter:v});return _&&c&&(C(_,"storage",I),C(_,oe,h)),I(),y;function U(O){try{if(O==null)r.removeItem(t);else{const $=w.write(O),E=r.getItem(t);E!==$&&(r.setItem(t,$),_&&_.dispatchEvent(new CustomEvent(oe,{detail:{key:t,oldValue:E,newValue:$,storageArea:r}})))}}catch($){m($)}}function V(O){const $=O?O.newValue:r.getItem(t);if($==null)return f&&S!==null&&r.setItem(t,w.write(S)),S;if(!O&&p){const E=w.read($);return typeof p=="function"?p(E,S):j==="object"&&!Array.isArray(E)?ne(ne({},S),E):E}else return typeof $!="string"?$:w.read($)}function h(O){I(O.detail)}function I(O){if(!(O&&O.storageArea!==r)){if(O&&O.key==null){y.value=S;return}if(!(O&&O.key!==t)){L();try{y.value=V(O)}catch($){m($)}finally{O?n.nextTick(N):N()}}}}}function ct(){const t=n.ref(!1);return n.getCurrentInstance()&&n.onMounted(()=>{t.value=!0}),t}function F(t){const e=ct();return n.computed(()=>(e.value,!!t()))}function ut(t,e={}){const{window:r=b}=e,o=F(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const l=n.ref(!1),i=p=>{l.value=p.matches},c=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",i):a.removeListener(i))},f=n.watchEffect(()=>{o.value&&(c(),a=r.matchMedia(u.toValue(t)),"addEventListener"in a?a.addEventListener("change",i):a.addListener(i),l.value=a.matches)});return u.tryOnScopeDispose(()=>{f(),c(),a=void 0}),l}function ft(t){return ut("(prefers-color-scheme: dark)",t)}var dt=Object.defineProperty,ae=Object.getOwnPropertySymbols,pt=Object.prototype.hasOwnProperty,vt=Object.prototype.propertyIsEnumerable,se=(t,e,r)=>e in t?dt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,_t=(t,e)=>{for(var r in e||(e={}))pt.call(e,r)&&se(t,r,e[r]);if(ae)for(var r of ae(e))vt.call(e,r)&&se(t,r,e[r]);return t};function gt(t={}){const{selector:e="html",attribute:r="class",initialValue:o="auto",window:a=b,storage:l,storageKey:i="vueuse-color-scheme",listenToStorageChanges:c=!0,storageRef:f,emitAuto:p,disableTransition:d=!0}=t,_=_t({auto:"",light:"light",dark:"dark"},t.modes||{}),v=ft({window:a}),m=n.computed(()=>v.value?"dark":"light"),y=f||(i==null?u.toRef(o):lt(i,o,l,{window:a,listenToStorageChanges:c})),S=n.computed(()=>y.value==="auto"?m.value:y.value),j=ee("updateHTMLAttrs",(U,V,h)=>{const I=typeof U=="string"?a?.document.querySelector(U):P(U);if(!I)return;let O;if(d){O=a.document.createElement("style");const $="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";O.appendChild(document.createTextNode($)),a.document.head.appendChild(O)}if(V==="class"){const $=h.split(/\s/g);Object.values(_).flatMap(E=>(E||"").split(/\s/g)).filter(Boolean).forEach(E=>{$.includes(E)?I.classList.add(E):I.classList.remove(E)})}else I.setAttribute(V,h);d&&(a.getComputedStyle(O).opacity,document.head.removeChild(O))});function w(U){var V;j(e,r,(V=_[U])!=null?V:U)}function L(U){t.onChanged?t.onChanged(U,w):w(U)}n.watch(S,L,{flush:"post",immediate:!0}),u.tryOnMounted(()=>L(S.value));const N=n.computed({get(){return p?y.value:S.value},set(U){y.value=U}});try{return Object.assign(N,{store:y,system:m,state:S})}catch{return N}}const mt=n.defineComponent({name:"UseColorMode",props:["selector","attribute","modes","onChanged","storageKey","storage","emitAuto"],setup(t,{slots:e}){const r=gt(t),o=n.reactive({mode:r,system:r.system,store:r.store});return()=>{if(e.default)return e.default(o)}}}),yt=n.defineComponent({name:"UseDark",props:["selector","attribute","valueDark","valueLight","onChanged","storageKey","storage"],setup(t,{slots:e}){const r=g.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(g.useDeviceMotion());return()=>{if(e.default)return e.default(r)}}}),Pt=n.defineComponent({name:"UseDeviceOrientation",setup(t,{slots:e}){const r=n.reactive(g.useDeviceOrientation());return()=>{if(e.default)return e.default(r)}}}),wt=n.defineComponent({name:"UseDevicePixelRatio",setup(t,{slots:e}){const r=n.reactive({pixelRatio:g.useDevicePixelRatio()});return()=>{if(e.default)return e.default(r)}}}),ht=n.defineComponent({name:"UseDevicesList",props:["onUpdated","requestPermissions","constraints"],setup(t,{slots:e}){const r=n.reactive(g.useDevicesList(t));return()=>{if(e.default)return e.default(r)}}}),bt=n.defineComponent({name:"UseDocumentVisibility",setup(t,{slots:e}){const r=n.reactive({visibility:g.useDocumentVisibility()});return()=>{if(e.default)return e.default(r)}}});var St=Object.defineProperty,Ut=Object.defineProperties,$t=Object.getOwnPropertyDescriptors,ie=Object.getOwnPropertySymbols,Et=Object.prototype.hasOwnProperty,Ct=Object.prototype.propertyIsEnumerable,le=(t,e,r)=>e in t?St(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,jt=(t,e)=>{for(var r in e||(e={}))Et.call(e,r)&&le(t,r,e[r]);if(ie)for(var r of ie(e))Ct.call(e,r)&&le(t,r,e[r]);return t},It=(t,e)=>Ut(t,$t(e));const Lt=n.defineComponent({name:"UseDraggable",props:["storageKey","storageType","initialValue","exact","preventDefault","stopPropagation","pointerTypes","as","handle","axis","onStart","onMove","onEnd"],setup(t,{slots:e}){const r=n.ref(),o=n.computed(()=>{var f;return(f=t.handle)!=null?f:r.value}),a=t.storageKey&&g.useStorage(t.storageKey,u.toValue(t.initialValue)||{x:0,y:0},g.isClient?t.storageType==="session"?sessionStorage:localStorage:void 0),l=a||t.initialValue||{x:0,y:0},i=(f,p)=>{var d;(d=t.onEnd)==null||d.call(t,f,p),a&&(a.value.x=f.x,a.value.y=f.y)},c=n.reactive(g.useDraggable(r,It(jt({},t),{handle:o,initialValue:l,onEnd:i})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r,style:`touch-action:none;${c.style}`},e.default(c))}}}),At=n.defineComponent({name:"UseElementBounding",props:["box","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useElementBounding(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function Vt(t,e={}){const{delayEnter:r=0,delayLeave:o=0,window:a=b}=e,l=n.ref(!1);let i;const c=f=>{const p=f?r:o;i&&(clearTimeout(i),i=void 0),p?i=setTimeout(()=>l.value=f,p):l.value=f};return a&&(C(t,"mouseenter",()=>c(!0),{passive:!0}),C(t,"mouseleave",()=>c(!1),{passive:!0})),l}const Mt={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=Vt(t);n.watch(r,o=>e.value(o))}}},Nt=n.defineComponent({name:"UseElementSize",props:["width","height","box"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.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 ce=Object.getOwnPropertySymbols,Tt=Object.prototype.hasOwnProperty,Rt=Object.prototype.propertyIsEnumerable,zt=(t,e)=>{var r={};for(var o in t)Tt.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&ce)for(var o of ce(t))e.indexOf(o)<0&&Rt.call(t,o)&&(r[o]=t[o]);return r};function kt(t,e,r={}){const o=r,{window:a=b}=o,l=zt(o,["window"]);let i;const c=F(()=>a&&"ResizeObserver"in a),f=()=>{i&&(i.disconnect(),i=void 0)},p=n.computed(()=>Array.isArray(t)?t.map(v=>P(v)):[P(t)]),d=n.watch(p,v=>{if(f(),c.value&&a){i=new ResizeObserver(e);for(const m of v)m&&i.observe(m,l)}},{immediate:!0,flush:"post",deep:!0}),_=()=>{f(),d()};return u.tryOnScopeDispose(_),{isSupported:c,stop:_}}function Ht(t,e={width:0,height:0},r={}){const{window:o=b,box:a="content-box"}=r,l=n.computed(()=>{var f,p;return(p=(f=P(t))==null?void 0:f.namespaceURI)==null?void 0:p.includes("svg")}),i=n.ref(e.width),c=n.ref(e.height);return kt(t,([f])=>{const p=a==="border-box"?f.borderBoxSize:a==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(o&&l.value){const d=P(t);if(d){const _=o.getComputedStyle(d);i.value=Number.parseFloat(_.width),c.value=Number.parseFloat(_.height)}}else if(p){const d=Array.isArray(p)?p:[p];i.value=d.reduce((_,{inlineSize:v})=>_+v,0),c.value=d.reduce((_,{blockSize:v})=>_+v,0)}else i.value=f.contentRect.width,c.value=f.contentRect.height},r),n.watch(()=>P(t),f=>{i.value=f?e.width:0,c.value=f?e.height:0}),{width:i,height:c}}const Bt={[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}=Ht(t,...a);n.watch([l,i],([c,f])=>o({width:c,height:f}))}},Wt=n.defineComponent({name:"UseElementVisibility",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive({isVisible:g.useElementVisibility(r)});return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});function Y(t,e,r={}){const{root:o,rootMargin:a="0px",threshold:l=.1,window:i=b,immediate:c=!0}=r,f=F(()=>i&&"IntersectionObserver"in i),p=n.computed(()=>{const y=u.toValue(t);return(Array.isArray(y)?y:[y]).map(P).filter(u.notNullish)});let d=u.noop;const _=n.ref(c),v=f.value?n.watch(()=>[p.value,P(o),_.value],([y,S])=>{if(d(),!_.value||!y.length)return;const j=new IntersectionObserver(e,{root:P(S),rootMargin:a,threshold:l});y.forEach(w=>w&&j.observe(w)),d=()=>{j.disconnect(),d=u.noop}},{immediate:c,flush:"post"}):u.noop,m=()=>{d(),v(),_.value=!1};return u.tryOnScopeDispose(m),{isSupported:f,isActive:_,pause(){d(),_.value=!1},resume(){_.value=!0},stop:m}}function X(t,{window:e=b,scrollTarget:r}={}){const o=n.ref(!1);return Y(t,([{isIntersecting:a}])=>{o.value=a},{root:r,window:e}),o}const Ft={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=X(t);n.watch(o,a=>r(a),{immediate:!0})}else{const[r,o]=e.value,a=X(t,o);n.watch(a,l=>r(l),{immediate:!0})}}},Kt=n.defineComponent({name:"UseEyeDropper",props:{sRGBHex:String},setup(t,{slots:e}){const r=n.reactive(g.useEyeDropper());return()=>{if(e.default)return e.default(r)}}}),Gt=n.defineComponent({name:"UseFullscreen",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useFullscreen(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),Jt=n.defineComponent({name:"UseGeolocation",props:["enableHighAccuracy","maximumAge","timeout","navigator"],setup(t,{slots:e}){const r=n.reactive(g.useGeolocation(t));return()=>{if(e.default)return e.default(r)}}}),Yt=n.defineComponent({name:"UseIdle",props:["timeout","events","listenForVisibilityChange","initialState"],setup(t,{slots:e}){const r=n.reactive(g.useIdle(t.timeout,t));return()=>{if(e.default)return e.default(r)}}});var Xt=Object.defineProperty,qt=Object.defineProperties,xt=Object.getOwnPropertyDescriptors,ue=Object.getOwnPropertySymbols,Qt=Object.prototype.hasOwnProperty,Zt=Object.prototype.propertyIsEnumerable,fe=(t,e,r)=>e in t?Xt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Dt=(t,e)=>{for(var r in e||(e={}))Qt.call(e,r)&&fe(t,r,e[r]);if(ue)for(var r of ue(e))Zt.call(e,r)&&fe(t,r,e[r]);return t},er=(t,e)=>qt(t,xt(e));function tr(t,e,r){const{immediate:o=!0,delay:a=0,onError:l=u.noop,onSuccess:i=u.noop,resetOnExecute:c=!0,shallow:f=!0,throwError:p}=r??{},d=f?n.shallowRef(e):n.ref(e),_=n.ref(!1),v=n.ref(!1),m=n.shallowRef(void 0);async function y(w=0,...L){c&&(d.value=e),m.value=void 0,_.value=!1,v.value=!0,w>0&&await u.promiseTimeout(w);const N=typeof t=="function"?t(...L):t;try{const U=await N;d.value=U,_.value=!0,i(U)}catch(U){if(m.value=U,l(U),p)throw U}finally{v.value=!1}return d.value}o&&y(a);const S={state:d,isReady:_,isLoading:v,error:m,execute:y};function j(){return new Promise((w,L)=>{u.until(v).toBe(!1).then(()=>w(S)).catch(L)})}return er(Dt({},S),{then(w,L){return j().then(w,L)}})}var rr=Object.defineProperty,de=Object.getOwnPropertySymbols,nr=Object.prototype.hasOwnProperty,or=Object.prototype.propertyIsEnumerable,pe=(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={}))nr.call(e,r)&&pe(t,r,e[r]);if(de)for(var r of de(e))or.call(e,r)&&pe(t,r,e[r]);return t};async function sr(t){return new Promise((e,r)=>{const o=new Image,{src:a,srcset:l,sizes:i,class:c,loading:f,crossorigin:p,referrerPolicy:d}=t;o.src=a,l&&(o.srcset=l),i&&(o.sizes=i),c&&(o.className=c),f&&(o.loading=f),p&&(o.crossOrigin=p),d&&(o.referrerPolicy=d),o.onload=()=>e(o),o.onerror=r})}function ir(t,e={}){const r=tr(()=>sr(u.toValue(t)),void 0,ar({resetOnExecute:!0},e));return n.watch(()=>u.toValue(t),()=>r.execute(e.delay),{deep:!0}),r}const lr=n.defineComponent({name:"UseImage",props:["src","srcset","sizes","as","alt","class","loading","crossorigin","referrerPolicy"],setup(t,{slots:e}){const r=n.reactive(ir(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)}}),ve=1;function q(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},behavior:f="auto",window:p=b}=e,d=n.ref(0),_=n.ref(0),v=n.computed({get(){return d.value},set(h){y(h,void 0)}}),m=n.computed({get(){return _.value},set(h){y(void 0,h)}});function y(h,I){var O,$,E;if(!p)return;const z=u.toValue(t);z&&((E=z instanceof Document?p.document.body:z)==null||E.scrollTo({top:(O=u.toValue(I))!=null?O:m.value,left:($=u.toValue(h))!=null?$:v.value,behavior:u.toValue(f)}))}const S=n.ref(!1),j=n.reactive({left:!0,right:!1,top:!0,bottom:!1}),w=n.reactive({left:!1,right:!1,top:!1,bottom:!1}),L=h=>{S.value&&(S.value=!1,w.left=!1,w.right=!1,w.top=!1,w.bottom=!1,a(h))},N=u.useDebounceFn(L,r+o),U=h=>{if(!p)return;const I=h===p?h.document.documentElement:h===p.document?h.documentElement:h,{display:O,flexDirection:$}=getComputedStyle(I),E=I.scrollLeft;w.left=E<d.value,w.right=E>d.value;const z=Math.abs(E)<=0+(i.left||0),We=Math.abs(E)+I.clientWidth>=I.scrollWidth-(i.right||0)-ve;O==="flex"&&$==="row-reverse"?(j.left=We,j.right=z):(j.left=z,j.right=We),d.value=E;let R=I.scrollTop;h===p.document&&!R&&(R=p.document.body.scrollTop),w.top=R<_.value,w.bottom=R>_.value;const Fe=Math.abs(R)<=0+(i.top||0),Ke=Math.abs(R)+I.clientHeight>=I.scrollHeight-(i.bottom||0)-ve;O==="flex"&&$==="column-reverse"?(j.top=Ke,j.bottom=Fe):(j.top=Fe,j.bottom=Ke),_.value=R},V=h=>{if(!p)return;const I=h.target===p.document?h.target.documentElement:h.target;U(I),S.value=!0,N(h),l(h)};return C(t,"scroll",r?u.useThrottleFn(V,r,!0,!1):V,c),C(t,"scrollend",L,c),{x:v,y:m,isScrolling:S,arrivedState:j,directions:w,measure(){const h=u.toValue(t);p&&h&&U(h)}}}var cr=Object.defineProperty,ur=Object.defineProperties,fr=Object.getOwnPropertyDescriptors,_e=Object.getOwnPropertySymbols,dr=Object.prototype.hasOwnProperty,pr=Object.prototype.propertyIsEnumerable,ge=(t,e,r)=>e in t?cr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,me=(t,e)=>{for(var r in e||(e={}))dr.call(e,r)&&ge(t,r,e[r]);if(_e)for(var r of _e(e))pr.call(e,r)&&ge(t,r,e[r]);return t},vr=(t,e)=>ur(t,fr(e));function ye(t,e,r={}){var o;const{direction:a="bottom",interval:l=100}=r,i=n.reactive(q(t,vr(me({},r),{offset:me({[a]:(o=r.distance)!=null?o:0},r.offset)}))),c=n.ref(),f=n.computed(()=>!!c.value),p=n.computed(()=>{const v=u.toValue(t);return v instanceof Window?window.document.documentElement:v instanceof Document?document.documentElement:v}),d=X(p);function _(){if(i.measure(),!p.value||!d.value)return;const{scrollHeight:v,clientHeight:m,scrollWidth:y,clientWidth:S}=p.value,j=a==="bottom"||a==="top"?v<=m:y<=S;(i.arrivedState[a]||j)&&(c.value||(c.value=Promise.all([e(i),new Promise(w=>setTimeout(w,l))]).finally(()=>{c.value=null,n.nextTick(()=>_())})))}return n.watch(()=>[i.arrivedState[a],d.value],_,{immediate:!0}),{isLoading:f}}const _r={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?ye(t,e.value):ye(t,...e.value)}},gr={[u.directiveHooks.mounted](t,e){typeof e.value=="function"?Y(t,e.value):Y(t,...e.value)}},mr=n.defineComponent({name:"UseMouse",props:["touch","resetOnTouchEnds","initialValue"],setup(t,{slots:e}){const r=n.reactive(g.useMouse(t));return()=>{if(e.default)return e.default(r)}}}),yr=n.defineComponent({name:"UseMouseElement",props:["handleOutside","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useMouseInElement(r,t));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}});var Or=Object.defineProperty,Pr=Object.defineProperties,wr=Object.getOwnPropertyDescriptors,Oe=Object.getOwnPropertySymbols,hr=Object.prototype.hasOwnProperty,br=Object.prototype.propertyIsEnumerable,Pe=(t,e,r)=>e in t?Or(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Sr=(t,e)=>{for(var r in e||(e={}))hr.call(e,r)&&Pe(t,r,e[r]);if(Oe)for(var r of Oe(e))br.call(e,r)&&Pe(t,r,e[r]);return t},Ur=(t,e)=>Pr(t,wr(e));const $r=n.defineComponent({name:"UseMousePressed",props:["touch","initialValue","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.useMousePressed(Ur(Sr({},t),{target:r})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),Er=n.defineComponent({name:"UseNetwork",setup(t,{slots:e}){const r=n.reactive(g.useNetwork());return()=>{if(e.default)return e.default(r)}}});var Cr=Object.defineProperty,jr=Object.defineProperties,Ir=Object.getOwnPropertyDescriptors,we=Object.getOwnPropertySymbols,Lr=Object.prototype.hasOwnProperty,Ar=Object.prototype.propertyIsEnumerable,he=(t,e,r)=>e in t?Cr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Vr=(t,e)=>{for(var r in e||(e={}))Lr.call(e,r)&&he(t,r,e[r]);if(we)for(var r of we(e))Ar.call(e,r)&&he(t,r,e[r]);return t},Mr=(t,e)=>jr(t,Ir(e));const Nr=n.defineComponent({name:"UseNow",props:["interval"],setup(t,{slots:e}){const r=n.reactive(g.useNow(Mr(Vr({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}}),Tr=n.defineComponent({name:"UseObjectUrl",props:["object"],setup(t,{slots:e}){const r=u.toRef(t,"object"),o=g.useObjectUrl(r);return()=>{if(e.default&&o.value)return e.default(o)}}});var Rr=Object.defineProperty,zr=Object.defineProperties,kr=Object.getOwnPropertyDescriptors,be=Object.getOwnPropertySymbols,Hr=Object.prototype.hasOwnProperty,Br=Object.prototype.propertyIsEnumerable,Se=(t,e,r)=>e in t?Rr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Wr=(t,e)=>{for(var r in e||(e={}))Hr.call(e,r)&&Se(t,r,e[r]);if(be)for(var r of be(e))Br.call(e,r)&&Se(t,r,e[r]);return t},Fr=(t,e)=>zr(t,kr(e));const Kr=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(g.useOffsetPagination(Fr(Wr({},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)}}}),Gr=n.defineComponent({name:"UseOnline",setup(t,{slots:e}){const r=n.reactive({isOnline:g.useOnline()});return()=>{if(e.default)return e.default(r)}}}),Jr=n.defineComponent({name:"UsePageLeave",setup(t,{slots:e}){const r=n.reactive({isLeft:g.usePageLeave()});return()=>{if(e.default)return e.default(r)}}});var Yr=Object.defineProperty,Xr=Object.defineProperties,qr=Object.getOwnPropertyDescriptors,Ue=Object.getOwnPropertySymbols,xr=Object.prototype.hasOwnProperty,Qr=Object.prototype.propertyIsEnumerable,$e=(t,e,r)=>e in t?Yr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Zr=(t,e)=>{for(var r in e||(e={}))xr.call(e,r)&&$e(t,r,e[r]);if(Ue)for(var r of Ue(e))Qr.call(e,r)&&$e(t,r,e[r]);return t},Dr=(t,e)=>Xr(t,qr(e));const en=n.defineComponent({name:"UsePointer",props:["pointerTypes","initialValue","target"],setup(t,{slots:e}){const r=n.ref(null),o=n.reactive(g.usePointer(Dr(Zr({},t),{target:t.target==="self"?r:b})));return()=>{if(e.default)return e.default(o,{ref:r})}}}),tn=n.defineComponent({name:"UsePointerLock",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(g.usePointerLock(r));return()=>{if(e.default)return n.h(t.as||"div",{ref:r},e.default(o))}}}),rn=n.defineComponent({name:"UsePreferredColorScheme",setup(t,{slots:e}){const r=n.reactive({colorScheme:g.usePreferredColorScheme()});return()=>{if(e.default)return e.default(r)}}}),nn=n.defineComponent({name:"UsePreferredContrast",setup(t,{slots:e}){const r=n.reactive({contrast:g.usePreferredContrast()});return()=>{if(e.default)return e.default(r)}}}),on=n.defineComponent({name:"UsePreferredDark",setup(t,{slots:e}){const r=n.reactive({prefersDark:g.usePreferredDark()});return()=>{if(e.default)return e.default(r)}}}),an=n.defineComponent({name:"UsePreferredLanguages",setup(t,{slots:e}){const r=n.reactive({languages:g.usePreferredLanguages()});return()=>{if(e.default)return e.default(r)}}}),sn=n.defineComponent({name:"UsePreferredReducedMotion",setup(t,{slots:e}){const r=n.reactive({motion:g.usePreferredReducedMotion()});return()=>{if(e.default)return e.default(r)}}});var Ee=Object.getOwnPropertySymbols,ln=Object.prototype.hasOwnProperty,cn=Object.prototype.propertyIsEnumerable,un=(t,e)=>{var r={};for(var o in t)ln.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&Ee)for(var o of Ee(t))e.indexOf(o)<0&&cn.call(t,o)&&(r[o]=t[o]);return r};function fn(t,e,r={}){const o=r,{window:a=b}=o,l=un(o,["window"]);let i;const c=F(()=>a&&"MutationObserver"in a),f=()=>{i&&(i.disconnect(),i=void 0)},p=n.watch(()=>P(t),_=>{f(),c.value&&a&&_&&(i=new MutationObserver(e),i.observe(_,l))},{immediate:!0}),d=()=>{f(),p()};return u.tryOnScopeDispose(d),{isSupported:c,stop:d}}function K(t,e,r={}){const{window:o=b,initialValue:a="",observe:l=!1}=r,i=n.ref(a),c=n.computed(()=>{var p;return P(e)||((p=o?.document)==null?void 0:p.documentElement)});function f(){var p;const d=u.toValue(t),_=u.toValue(c);if(_&&o){const v=(p=o.getComputedStyle(_).getPropertyValue(d))==null?void 0:p.trim();i.value=v||a}}return l&&fn(c,f,{attributeFilter:["style","class"],window:o}),n.watch([c,()=>u.toValue(t)],f,{immediate:!0}),n.watch(i,p=>{var d;(d=c.value)!=null&&d.style&&c.value.style.setProperty(u.toValue(t),p)}),i}const Ce="--vueuse-safe-area-top",je="--vueuse-safe-area-right",Ie="--vueuse-safe-area-bottom",Le="--vueuse-safe-area-left";function dn(){const t=n.ref(""),e=n.ref(""),r=n.ref(""),o=n.ref("");if(u.isClient){const l=K(Ce),i=K(je),c=K(Ie),f=K(Le);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(),C("resize",u.useDebounceFn(a))}function a(){t.value=G(Ce),e.value=G(je),r.value=G(Ie),o.value=G(Le)}return{top:t,right:e,bottom:r,left:o,update:a}}function G(t){return getComputedStyle(document.documentElement).getPropertyValue(t)}const pn=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}=dn();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 vn=Object.defineProperty,_n=Object.defineProperties,gn=Object.getOwnPropertyDescriptors,Ae=Object.getOwnPropertySymbols,mn=Object.prototype.hasOwnProperty,yn=Object.prototype.propertyIsEnumerable,Ve=(t,e,r)=>e in t?vn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,On=(t,e)=>{for(var r in e||(e={}))mn.call(e,r)&&Ve(t,r,e[r]);if(Ae)for(var r of Ae(e))yn.call(e,r)&&Ve(t,r,e[r]);return t},Pn=(t,e)=>_n(t,gn(e));const wn={[u.directiveHooks.mounted](t,e){if(typeof e.value=="function"){const r=e.value,o=q(t,{onScroll(){r(o)},onStop(){r(o)}})}else{const[r,o]=e.value,a=q(t,Pn(On({},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 Me(t){const e=window.getComputedStyle(t);if(e.overflowX==="scroll"||e.overflowY==="scroll"||e.overflowX==="auto"&&t.clientWidth<t.scrollWidth||e.overflowY==="auto"&&t.clientHeight<t.scrollHeight)return!0;{const r=t.parentNode;return!r||r.tagName==="BODY"?!1:Me(r)}}function hn(t){const e=t||window.event,r=e.target;return Me(r)?!1:e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)}function bn(t,e=!1){const r=n.ref(e);let o=null,a;n.watch(u.toRef(t),c=>{if(c){const f=c;a=f.style.overflow,r.value&&(f.style.overflow="hidden")}},{immediate:!0});const l=()=>{const c=u.toValue(t);!c||r.value||(u.isIOS&&(o=C(c,"touchmove",f=>{hn(f)},{passive:!1})),c.style.overflow="hidden",r.value=!0)},i=()=>{const c=u.toValue(t);!c||!r.value||(u.isIOS&&o?.(),c.style.overflow=a,r.value=!1)};return u.tryOnScopeDispose(i),n.computed({get(){return r.value},set(c){c?l():i()}})}function Sn(){let t=!1;const e=n.ref(!1);return(r,o)=>{if(e.value=o.value,t)return;t=!0;const a=bn(r,o.value);n.watch(e,l=>a.value=l)}}const Un=Sn();var $n=Object.defineProperty,En=Object.defineProperties,Cn=Object.getOwnPropertyDescriptors,Ne=Object.getOwnPropertySymbols,jn=Object.prototype.hasOwnProperty,In=Object.prototype.propertyIsEnumerable,Te=(t,e,r)=>e in t?$n(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ln=(t,e)=>{for(var r in e||(e={}))jn.call(e,r)&&Te(t,r,e[r]);if(Ne)for(var r of Ne(e))In.call(e,r)&&Te(t,r,e[r]);return t},An=(t,e)=>En(t,Cn(e));const Vn=n.defineComponent({name:"UseTimeAgo",props:["time","updateInterval","max","fullDateFormatter","messages","showSecond"],setup(t,{slots:e}){const r=n.reactive(g.useTimeAgo(()=>t.time,An(Ln({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var Mn=Object.defineProperty,Nn=Object.defineProperties,Tn=Object.getOwnPropertyDescriptors,Re=Object.getOwnPropertySymbols,Rn=Object.prototype.hasOwnProperty,zn=Object.prototype.propertyIsEnumerable,ze=(t,e,r)=>e in t?Mn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,kn=(t,e)=>{for(var r in e||(e={}))Rn.call(e,r)&&ze(t,r,e[r]);if(Re)for(var r of Re(e))zn.call(e,r)&&ze(t,r,e[r]);return t},Hn=(t,e)=>Nn(t,Tn(e));const Bn=n.defineComponent({name:"UseTimestamp",props:["immediate","interval","offset"],setup(t,{slots:e}){const r=n.reactive(g.useTimestamp(Hn(kn({},t),{controls:!0})));return()=>{if(e.default)return e.default(r)}}});var Wn=Object.defineProperty,ke=Object.getOwnPropertySymbols,Fn=Object.prototype.hasOwnProperty,Kn=Object.prototype.propertyIsEnumerable,He=(t,e,r)=>e in t?Wn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Be=(t,e)=>{for(var r in e||(e={}))Fn.call(e,r)&&He(t,r,e[r]);if(ke)for(var r of ke(e))Kn.call(e,r)&&He(t,r,e[r]);return t};const Gn=n.defineComponent({name:"UseVirtualList",props:["list","options","height"],setup(t,{slots:e,expose:r}){const{list:o}=n.toRefs(t),{list:a,containerProps:l,wrapperProps:i,scrollTo:c}=g.useVirtualList(o,t.options);return r({scrollTo:c}),typeof l.style=="object"&&!Array.isArray(l.style)&&(l.style.height=t.height||"300px"),()=>n.h("div",Be({},l),[n.h("div",Be({},i.value),a.value.map(f=>n.h("div",{style:{overFlow:"hidden",height:f.height}},e.default?e.default(f):"Please set content!")))])}}),Jn=n.defineComponent({name:"UseWindowFocus",setup(t,{slots:e}){const r=n.reactive({focused:g.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(g.useWindowSize(t));return()=>{if(e.default)return e.default(r)}}});s.OnClickOutside=x,s.OnLongPress=Qe,s.UseActiveElement=Ze,s.UseBattery=De,s.UseBrowserLocation=et,s.UseColorMode=mt,s.UseDark=yt,s.UseDeviceMotion=Ot,s.UseDeviceOrientation=Pt,s.UseDevicePixelRatio=wt,s.UseDevicesList=ht,s.UseDocumentVisibility=bt,s.UseDraggable=Lt,s.UseElementBounding=At,s.UseElementSize=Nt,s.UseElementVisibility=Wt,s.UseEyeDropper=Kt,s.UseFullscreen=Gt,s.UseGeolocation=Jt,s.UseIdle=Yt,s.UseImage=lr,s.UseMouse=mr,s.UseMouseInElement=yr,s.UseMousePressed=$r,s.UseNetwork=Er,s.UseNow=Nr,s.UseObjectUrl=Tr,s.UseOffsetPagination=Kr,s.UseOnline=Gr,s.UsePageLeave=Jr,s.UsePointer=en,s.UsePointerLock=tn,s.UsePreferredColorScheme=rn,s.UsePreferredContrast=nn,s.UsePreferredDark=on,s.UsePreferredLanguages=an,s.UsePreferredReducedMotion=sn,s.UseScreenSafeArea=pn,s.UseTimeAgo=Vn,s.UseTimestamp=Bn,s.UseVirtualList=Gn,s.UseWindowFocus=Jn,s.UseWindowSize=Yn,s.VOnClickOutside=H,s.VOnLongPress=D,s.vElementHover=Mt,s.vElementSize=Bt,s.vElementVisibility=Ft,s.vInfiniteScroll=_r,s.vIntersectionObserver=gr,s.vOnClickOutside=H,s.vOnKeyStroke=qe,s.vOnLongPress=D,s.vScroll=wn,s.vScrollLock=Un})(this.VueUse=this.VueUse||{},VueDemi,VueUse,VueUse);
package/index.mjs CHANGED
@@ -82,6 +82,7 @@ function onClickOutside(target, handler, options = {}) {
82
82
  if (isIOS && !_iOSWorkaround) {
83
83
  _iOSWorkaround = true;
84
84
  Array.from(window.document.body.children).forEach((el) => el.addEventListener("click", noop));
85
+ window.document.documentElement.addEventListener("click", noop);
85
86
  }
86
87
  let shouldListen = true;
87
88
  const shouldIgnore = (event) => {
@@ -250,8 +251,7 @@ function onLongPress(target, handler, options) {
250
251
  once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once
251
252
  };
252
253
  useEventListener(elementRef, "pointerdown", onDown, listenerOptions);
253
- useEventListener(elementRef, "pointerup", clear, listenerOptions);
254
- useEventListener(elementRef, "pointerleave", clear, listenerOptions);
254
+ useEventListener(elementRef, ["pointerup", "pointerleave"], clear, listenerOptions);
255
255
  }
256
256
 
257
257
  const OnLongPress = /* @__PURE__ */ /* #__PURE__ */ defineComponent({
@@ -520,29 +520,33 @@ function useMediaQuery(query, options = {}) {
520
520
  const isSupported = useSupported(() => window && "matchMedia" in window && typeof window.matchMedia === "function");
521
521
  let mediaQuery;
522
522
  const matches = ref(false);
523
+ const handler = (event) => {
524
+ matches.value = event.matches;
525
+ };
523
526
  const cleanup = () => {
524
527
  if (!mediaQuery)
525
528
  return;
526
529
  if ("removeEventListener" in mediaQuery)
527
- mediaQuery.removeEventListener("change", update);
530
+ mediaQuery.removeEventListener("change", handler);
528
531
  else
529
- mediaQuery.removeListener(update);
532
+ mediaQuery.removeListener(handler);
530
533
  };
531
- const update = () => {
534
+ const stopWatch = watchEffect(() => {
532
535
  if (!isSupported.value)
533
536
  return;
534
537
  cleanup();
535
- mediaQuery = window.matchMedia(toRef(query).value);
536
- matches.value = !!(mediaQuery == null ? void 0 : mediaQuery.matches);
537
- if (!mediaQuery)
538
- return;
538
+ mediaQuery = window.matchMedia(toValue(query));
539
539
  if ("addEventListener" in mediaQuery)
540
- mediaQuery.addEventListener("change", update);
540
+ mediaQuery.addEventListener("change", handler);
541
541
  else
542
- mediaQuery.addListener(update);
543
- };
544
- watchEffect(update);
545
- tryOnScopeDispose(() => cleanup());
542
+ mediaQuery.addListener(handler);
543
+ matches.value = mediaQuery.matches;
544
+ });
545
+ tryOnScopeDispose(() => {
546
+ stopWatch();
547
+ cleanup();
548
+ mediaQuery = void 0;
549
+ });
546
550
  return matches;
547
551
  }
548
552
 
@@ -1304,7 +1308,8 @@ function useScroll(element, options = {}) {
1304
1308
  capture: false,
1305
1309
  passive: true
1306
1310
  },
1307
- behavior = "auto"
1311
+ behavior = "auto",
1312
+ window = defaultWindow
1308
1313
  } = options;
1309
1314
  const internalX = ref(0);
1310
1315
  const internalY = ref(0);
@@ -1326,10 +1331,12 @@ function useScroll(element, options = {}) {
1326
1331
  });
1327
1332
  function scrollTo(_x, _y) {
1328
1333
  var _a, _b, _c;
1334
+ if (!window)
1335
+ return;
1329
1336
  const _element = toValue(element);
1330
1337
  if (!_element)
1331
1338
  return;
1332
- (_c = _element instanceof Document ? document.body : _element) == null ? void 0 : _c.scrollTo({
1339
+ (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({
1333
1340
  top: (_a = toValue(_y)) != null ? _a : y.value,
1334
1341
  left: (_b = toValue(_x)) != null ? _b : x.value,
1335
1342
  behavior: toValue(behavior)
@@ -1360,7 +1367,9 @@ function useScroll(element, options = {}) {
1360
1367
  };
1361
1368
  const onScrollEndDebounced = useDebounceFn(onScrollEnd, throttle + idle);
1362
1369
  const setArrivedState = (target) => {
1363
- const el = target === window ? target.document.documentElement : target === document ? target.documentElement : target;
1370
+ if (!window)
1371
+ return;
1372
+ const el = target === window ? target.document.documentElement : target === window.document ? target.documentElement : target;
1364
1373
  const { display, flexDirection } = getComputedStyle(el);
1365
1374
  const scrollLeft = el.scrollLeft;
1366
1375
  directions.left = scrollLeft < internalX.value;
@@ -1376,8 +1385,8 @@ function useScroll(element, options = {}) {
1376
1385
  }
1377
1386
  internalX.value = scrollLeft;
1378
1387
  let scrollTop = el.scrollTop;
1379
- if (target === document && !scrollTop)
1380
- scrollTop = document.body.scrollTop;
1388
+ if (target === window.document && !scrollTop)
1389
+ scrollTop = window.document.body.scrollTop;
1381
1390
  directions.top = scrollTop < internalY.value;
1382
1391
  directions.bottom = scrollTop > internalY.value;
1383
1392
  const top = Math.abs(scrollTop) <= 0 + (offset.top || 0);
@@ -1392,7 +1401,9 @@ function useScroll(element, options = {}) {
1392
1401
  internalY.value = scrollTop;
1393
1402
  };
1394
1403
  const onScrollHandler = (e) => {
1395
- const eventTarget = e.target === document ? e.target.documentElement : e.target;
1404
+ if (!window)
1405
+ return;
1406
+ const eventTarget = e.target === window.document ? e.target.documentElement : e.target;
1396
1407
  setArrivedState(eventTarget);
1397
1408
  isScrolling.value = true;
1398
1409
  onScrollEndDebounced(e);
@@ -1418,7 +1429,7 @@ function useScroll(element, options = {}) {
1418
1429
  directions,
1419
1430
  measure() {
1420
1431
  const _element = toValue(element);
1421
- if (_element)
1432
+ if (window && _element)
1422
1433
  setArrivedState(_element);
1423
1434
  }
1424
1435
  };
@@ -1459,12 +1470,21 @@ function useInfiniteScroll(element, onLoadMore, options = {}) {
1459
1470
  ));
1460
1471
  const promise = ref();
1461
1472
  const isLoading = computed(() => !!promise.value);
1473
+ const observedElement = computed(() => {
1474
+ const el = toValue(element);
1475
+ if (el instanceof Window)
1476
+ return window.document.documentElement;
1477
+ if (el instanceof Document)
1478
+ return document.documentElement;
1479
+ return el;
1480
+ });
1481
+ const isElementVisible = useElementVisibility(observedElement);
1462
1482
  function checkAndLoad() {
1463
1483
  state.measure();
1464
- const el = toValue(element);
1465
- if (!el)
1484
+ if (!observedElement.value || !isElementVisible.value)
1466
1485
  return;
1467
- const isNarrower = direction === "bottom" || direction === "top" ? el.scrollHeight <= el.clientHeight : el.scrollWidth <= el.clientWidth;
1486
+ const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;
1487
+ const isNarrower = direction === "bottom" || direction === "top" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;
1468
1488
  if (state.arrivedState[direction] || isNarrower) {
1469
1489
  if (!promise.value) {
1470
1490
  promise.value = Promise.all([
@@ -1478,7 +1498,7 @@ function useInfiniteScroll(element, onLoadMore, options = {}) {
1478
1498
  }
1479
1499
  }
1480
1500
  watch(
1481
- () => [state.arrivedState[direction], toValue(element)],
1501
+ () => [state.arrivedState[direction], isElementVisible.value],
1482
1502
  checkAndLoad,
1483
1503
  { immediate: true }
1484
1504
  );
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vueuse/components",
3
- "version": "10.2.0",
3
+ "version": "10.3.0",
4
4
  "description": "Renderless components for VueUse",
5
5
  "author": "Jacob Clevenger<https://github.com/wheatjs>",
6
6
  "license": "MIT",
@@ -21,7 +21,6 @@
21
21
  "sideEffects": false,
22
22
  "exports": {
23
23
  ".": {
24
- "types": "./index.d.ts",
25
24
  "require": "./index.cjs",
26
25
  "import": "./index.mjs"
27
26
  },
@@ -31,10 +30,10 @@
31
30
  "module": "./index.mjs",
32
31
  "unpkg": "./index.iife.min.js",
33
32
  "jsdelivr": "./index.iife.min.js",
34
- "types": "./index.d.ts",
33
+ "types": "./index.d.cts",
35
34
  "dependencies": {
36
- "@vueuse/core": "10.2.0",
37
- "@vueuse/shared": "10.2.0",
35
+ "@vueuse/core": "10.3.0",
36
+ "@vueuse/shared": "10.3.0",
38
37
  "vue-demi": ">=0.14.5"
39
38
  }
40
39
  }