@vueuse/components 9.0.2 → 9.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.cjs +56 -11
- package/index.d.ts +51 -43
- package/index.iife.js +56 -11
- package/index.iife.min.js +1 -1
- package/index.mjs +56 -13
- package/package.json +3 -3
package/index.cjs
CHANGED
|
@@ -179,11 +179,11 @@ const DEFAULT_DELAY = 500;
|
|
|
179
179
|
function onLongPress(target, handler, options) {
|
|
180
180
|
var _a, _b;
|
|
181
181
|
const elementRef = vueDemi.computed(() => unrefElement(target));
|
|
182
|
-
let timeout
|
|
182
|
+
let timeout;
|
|
183
183
|
function clear() {
|
|
184
|
-
if (timeout
|
|
184
|
+
if (timeout) {
|
|
185
185
|
clearTimeout(timeout);
|
|
186
|
-
timeout =
|
|
186
|
+
timeout = void 0;
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
189
|
function onDown(ev) {
|
|
@@ -649,12 +649,18 @@ const UseDraggable = vueDemi.defineComponent({
|
|
|
649
649
|
"preventDefault",
|
|
650
650
|
"stopPropagation",
|
|
651
651
|
"pointerTypes",
|
|
652
|
-
"as"
|
|
652
|
+
"as",
|
|
653
|
+
"handle"
|
|
653
654
|
],
|
|
654
655
|
setup(props, { slots }) {
|
|
655
656
|
const target = vueDemi.ref();
|
|
657
|
+
const handle = vueDemi.computed(() => {
|
|
658
|
+
var _a;
|
|
659
|
+
return (_a = props.handle) != null ? _a : target.value;
|
|
660
|
+
});
|
|
656
661
|
const initialValue = props.storageKey ? core.useStorage(props.storageKey, shared.resolveUnref(props.initialValue) || { x: 0, y: 0 }, core.isClient ? props.storageType === "session" ? sessionStorage : localStorage : void 0) : props.initialValue || { x: 0, y: 0 };
|
|
657
662
|
const data = vueDemi.reactive(core.useDraggable(target, __spreadProps$8(__spreadValues$a({}, props), {
|
|
663
|
+
handle,
|
|
658
664
|
initialValue
|
|
659
665
|
})));
|
|
660
666
|
return () => {
|
|
@@ -750,11 +756,18 @@ function useResizeObserver(target, callback, options = {}) {
|
|
|
750
756
|
}
|
|
751
757
|
|
|
752
758
|
function useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {
|
|
759
|
+
const { box = "content-box" } = options;
|
|
753
760
|
const width = vueDemi.ref(initialSize.width);
|
|
754
761
|
const height = vueDemi.ref(initialSize.height);
|
|
755
762
|
useResizeObserver(target, ([entry]) => {
|
|
756
|
-
|
|
757
|
-
|
|
763
|
+
const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
|
|
764
|
+
if (boxSize) {
|
|
765
|
+
width.value = boxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
|
|
766
|
+
height.value = boxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
|
|
767
|
+
} else {
|
|
768
|
+
width.value = entry.contentRect.width;
|
|
769
|
+
height.value = entry.contentRect.height;
|
|
770
|
+
}
|
|
758
771
|
}, options);
|
|
759
772
|
vueDemi.watch(() => unrefElement(target), (ele) => {
|
|
760
773
|
width.value = ele ? initialSize.width : 0;
|
|
@@ -797,7 +810,7 @@ function useElementVisibility(element, { window = defaultWindow, scrollTarget }
|
|
|
797
810
|
if (!window)
|
|
798
811
|
return;
|
|
799
812
|
const document = window.document;
|
|
800
|
-
const el =
|
|
813
|
+
const el = unrefElement(element);
|
|
801
814
|
if (!el) {
|
|
802
815
|
elementIsVisible.value = false;
|
|
803
816
|
} else {
|
|
@@ -805,9 +818,12 @@ function useElementVisibility(element, { window = defaultWindow, scrollTarget }
|
|
|
805
818
|
elementIsVisible.value = rect.top <= (window.innerHeight || document.documentElement.clientHeight) && rect.left <= (window.innerWidth || document.documentElement.clientWidth) && rect.bottom >= 0 && rect.right >= 0;
|
|
806
819
|
}
|
|
807
820
|
};
|
|
808
|
-
|
|
821
|
+
vueDemi.watch(() => unrefElement(element), () => testBounding(), { immediate: true, flush: "post" });
|
|
809
822
|
if (window) {
|
|
810
|
-
|
|
823
|
+
useEventListener(scrollTarget || window, "scroll", testBounding, {
|
|
824
|
+
capture: false,
|
|
825
|
+
passive: true
|
|
826
|
+
});
|
|
811
827
|
}
|
|
812
828
|
return elementIsVisible;
|
|
813
829
|
}
|
|
@@ -983,6 +999,7 @@ const UseImage = vueDemi.defineComponent({
|
|
|
983
999
|
}
|
|
984
1000
|
});
|
|
985
1001
|
|
|
1002
|
+
const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
|
|
986
1003
|
function useScroll(element, options = {}) {
|
|
987
1004
|
const {
|
|
988
1005
|
throttle = 0,
|
|
@@ -1029,7 +1046,7 @@ function useScroll(element, options = {}) {
|
|
|
1029
1046
|
directions.left = scrollLeft < x.value;
|
|
1030
1047
|
directions.right = scrollLeft > x.value;
|
|
1031
1048
|
arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
|
|
1032
|
-
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
|
|
1049
|
+
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1033
1050
|
x.value = scrollLeft;
|
|
1034
1051
|
let scrollTop = eventTarget.scrollTop;
|
|
1035
1052
|
if (e.target === document && !scrollTop)
|
|
@@ -1037,7 +1054,7 @@ function useScroll(element, options = {}) {
|
|
|
1037
1054
|
directions.top = scrollTop < y.value;
|
|
1038
1055
|
directions.bottom = scrollTop > y.value;
|
|
1039
1056
|
arrivedState.top = scrollTop <= 0 + (offset.top || 0);
|
|
1040
|
-
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
|
|
1057
|
+
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1041
1058
|
y.value = scrollTop;
|
|
1042
1059
|
isScrolling.value = true;
|
|
1043
1060
|
onScrollEnd(e);
|
|
@@ -1407,6 +1424,19 @@ const UsePreferredColorScheme = vueDemi.defineComponent({
|
|
|
1407
1424
|
}
|
|
1408
1425
|
});
|
|
1409
1426
|
|
|
1427
|
+
const UsePreferredContrast = vueDemi.defineComponent({
|
|
1428
|
+
name: "UsePreferredContrast",
|
|
1429
|
+
setup(props, { slots }) {
|
|
1430
|
+
const data = vueDemi.reactive({
|
|
1431
|
+
contrast: core.usePreferredContrast()
|
|
1432
|
+
});
|
|
1433
|
+
return () => {
|
|
1434
|
+
if (slots.default)
|
|
1435
|
+
return slots.default(data);
|
|
1436
|
+
};
|
|
1437
|
+
}
|
|
1438
|
+
});
|
|
1439
|
+
|
|
1410
1440
|
const UsePreferredDark = vueDemi.defineComponent({
|
|
1411
1441
|
name: "UsePreferredDark",
|
|
1412
1442
|
setup(props, { slots }) {
|
|
@@ -1433,6 +1463,19 @@ const UsePreferredLanguages = vueDemi.defineComponent({
|
|
|
1433
1463
|
}
|
|
1434
1464
|
});
|
|
1435
1465
|
|
|
1466
|
+
const UsePreferredReducedMotion = vueDemi.defineComponent({
|
|
1467
|
+
name: "UsePreferredReducedMotion",
|
|
1468
|
+
setup(props, { slots }) {
|
|
1469
|
+
const data = vueDemi.reactive({
|
|
1470
|
+
motion: core.usePreferredReducedMotion()
|
|
1471
|
+
});
|
|
1472
|
+
return () => {
|
|
1473
|
+
if (slots.default)
|
|
1474
|
+
return slots.default(data);
|
|
1475
|
+
};
|
|
1476
|
+
}
|
|
1477
|
+
});
|
|
1478
|
+
|
|
1436
1479
|
function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
|
|
1437
1480
|
const variable = vueDemi.ref(initialValue);
|
|
1438
1481
|
const elRef = vueDemi.computed(() => {
|
|
@@ -1796,8 +1839,10 @@ exports.UseOnline = UseOnline;
|
|
|
1796
1839
|
exports.UsePageLeave = UsePageLeave;
|
|
1797
1840
|
exports.UsePointer = UsePointer;
|
|
1798
1841
|
exports.UsePreferredColorScheme = UsePreferredColorScheme;
|
|
1842
|
+
exports.UsePreferredContrast = UsePreferredContrast;
|
|
1799
1843
|
exports.UsePreferredDark = UsePreferredDark;
|
|
1800
1844
|
exports.UsePreferredLanguages = UsePreferredLanguages;
|
|
1845
|
+
exports.UsePreferredReducedMotion = UsePreferredReducedMotion;
|
|
1801
1846
|
exports.UseScreenSafeArea = UseScreenSafeArea;
|
|
1802
1847
|
exports.UseTimeAgo = UseTimeAgo;
|
|
1803
1848
|
exports.UseTimestamp = UseTimestamp;
|
package/index.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ interface RenderableComponent {
|
|
|
16
16
|
as?: Object | string;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
declare const OnClickOutside: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
19
|
+
declare const OnClickOutside: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<RenderableComponent>, {}>;
|
|
20
20
|
|
|
21
21
|
declare const vOnClickOutside: FunctionDirective<any, <E = PointerEvent>(evt: E) => void>;
|
|
22
22
|
|
|
@@ -56,7 +56,7 @@ interface OnLongPressModifiers {
|
|
|
56
56
|
interface OnLongPressProps extends RenderableComponent {
|
|
57
57
|
options?: OnLongPressOptions;
|
|
58
58
|
}
|
|
59
|
-
declare const OnLongPress: vue_demi.DefineComponent<OnLongPressProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
59
|
+
declare const OnLongPress: vue_demi.DefineComponent<OnLongPressProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<OnLongPressProps>, {}>;
|
|
60
60
|
|
|
61
61
|
declare type BindingValueFunction$6 = (evt: PointerEvent) => void;
|
|
62
62
|
declare type BindingValueArray$5 = [
|
|
@@ -67,15 +67,15 @@ declare const vOnLongPress: ObjectDirective<HTMLElement, BindingValueFunction$6
|
|
|
67
67
|
|
|
68
68
|
declare const UseActiveElement: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
69
69
|
[key: string]: any;
|
|
70
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
70
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
71
71
|
|
|
72
72
|
declare const UseBattery: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
73
73
|
[key: string]: any;
|
|
74
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
74
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
75
75
|
|
|
76
76
|
declare const UseBrowserLocation: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
77
77
|
[key: string]: any;
|
|
78
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
78
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
79
79
|
|
|
80
80
|
interface StorageLike {
|
|
81
81
|
getItem(key: string): string | null;
|
|
@@ -195,27 +195,27 @@ interface UseColorModeOptions<T extends string = BasicColorSchema> extends UseSt
|
|
|
195
195
|
emitAuto?: boolean;
|
|
196
196
|
}
|
|
197
197
|
|
|
198
|
-
declare const UseColorMode: vue_demi.DefineComponent<UseColorModeOptions<BasicColorSchema>, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
198
|
+
declare const UseColorMode: vue_demi.DefineComponent<UseColorModeOptions<BasicColorSchema>, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseColorModeOptions<BasicColorSchema>>, {}>;
|
|
199
199
|
|
|
200
|
-
declare const UseDark: vue_demi.DefineComponent<UseDarkOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
200
|
+
declare const UseDark: vue_demi.DefineComponent<UseDarkOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseDarkOptions>, {}>;
|
|
201
201
|
|
|
202
202
|
declare const UseDeviceMotion: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
203
203
|
[key: string]: any;
|
|
204
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
204
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
205
205
|
|
|
206
206
|
declare const UseDeviceOrientation: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
207
207
|
[key: string]: any;
|
|
208
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
208
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
209
209
|
|
|
210
210
|
declare const UseDevicePixelRatio: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
211
211
|
[key: string]: any;
|
|
212
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
212
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
213
213
|
|
|
214
|
-
declare const UseDevicesList: vue_demi.DefineComponent<UseDevicesListOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
214
|
+
declare const UseDevicesList: vue_demi.DefineComponent<UseDevicesListOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseDevicesListOptions>, {}>;
|
|
215
215
|
|
|
216
216
|
declare const UseDocumentVisibility: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
217
217
|
[key: string]: any;
|
|
218
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
218
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
219
219
|
|
|
220
220
|
interface UseDraggableProps extends UseDraggableOptions, RenderableComponent {
|
|
221
221
|
/**
|
|
@@ -229,24 +229,24 @@ interface UseDraggableProps extends UseDraggableOptions, RenderableComponent {
|
|
|
229
229
|
*/
|
|
230
230
|
storageType?: 'local' | 'session';
|
|
231
231
|
}
|
|
232
|
-
declare const UseDraggable: vue_demi.DefineComponent<UseDraggableProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
232
|
+
declare const UseDraggable: vue_demi.DefineComponent<UseDraggableProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseDraggableProps>, {}>;
|
|
233
233
|
|
|
234
234
|
interface UseResizeObserverOptions extends ConfigurableWindow {
|
|
235
235
|
/**
|
|
236
236
|
* Sets which box model the observer will observe changes to. Possible values
|
|
237
|
-
* are `content-box` (the default), and `
|
|
237
|
+
* are `content-box` (the default), `border-box` and `device-pixel-content-box`.
|
|
238
238
|
*
|
|
239
239
|
* @default 'content-box'
|
|
240
240
|
*/
|
|
241
|
-
box?:
|
|
241
|
+
box?: ResizeObserverBoxOptions;
|
|
242
242
|
}
|
|
243
243
|
|
|
244
|
-
declare const UseElementBounding: vue_demi.DefineComponent<UseResizeObserverOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
244
|
+
declare const UseElementBounding: vue_demi.DefineComponent<UseResizeObserverOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseResizeObserverOptions & RenderableComponent>, {}>;
|
|
245
245
|
|
|
246
246
|
declare type BindingValueFunction$5 = (state: boolean) => void;
|
|
247
247
|
declare const vElementHover: ObjectDirective<HTMLElement, BindingValueFunction$5>;
|
|
248
248
|
|
|
249
|
-
declare const UseElementSize: vue_demi.DefineComponent<ElementSize$1 & UseResizeObserverOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
249
|
+
declare const UseElementSize: vue_demi.DefineComponent<ElementSize$1 & UseResizeObserverOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<ElementSize$1 & UseResizeObserverOptions & RenderableComponent>, {}>;
|
|
250
250
|
|
|
251
251
|
interface ElementSize {
|
|
252
252
|
width: number;
|
|
@@ -271,7 +271,7 @@ declare type VElementSizeOptions = RemoveFirstFromTuple<Parameters<typeof useEle
|
|
|
271
271
|
declare type BindingValueArray$4 = [BindingValueFunction$4, ...VElementSizeOptions];
|
|
272
272
|
declare const vElementSize: ObjectDirective<HTMLElement, BindingValueFunction$4 | BindingValueArray$4>;
|
|
273
273
|
|
|
274
|
-
declare const UseElementVisibility: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
274
|
+
declare const UseElementVisibility: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<RenderableComponent>, {}>;
|
|
275
275
|
|
|
276
276
|
interface UseElementVisibilityOptions extends ConfigurableWindow {
|
|
277
277
|
scrollTarget?: MaybeComputedRef<HTMLElement | undefined | null>;
|
|
@@ -285,17 +285,17 @@ declare const UseEyeDropper: vue_demi.DefineComponent<{
|
|
|
285
285
|
sRGBHex: StringConstructor;
|
|
286
286
|
}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
287
287
|
[key: string]: any;
|
|
288
|
-
}>[] | undefined, unknown, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
288
|
+
}>[] | undefined, unknown, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{
|
|
289
289
|
sRGBHex: StringConstructor;
|
|
290
290
|
}>>, {}>;
|
|
291
291
|
|
|
292
|
-
declare const UseFullscreen: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
292
|
+
declare const UseFullscreen: vue_demi.DefineComponent<RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<RenderableComponent>, {}>;
|
|
293
293
|
|
|
294
|
-
declare const UseGeolocation: vue_demi.DefineComponent<UseGeolocationOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
294
|
+
declare const UseGeolocation: vue_demi.DefineComponent<UseGeolocationOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseGeolocationOptions>, {}>;
|
|
295
295
|
|
|
296
296
|
declare const UseIdle: vue_demi.DefineComponent<UseIdleOptions & {
|
|
297
297
|
timeout: number;
|
|
298
|
-
}, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
298
|
+
}, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseIdleOptions & {
|
|
299
299
|
timeout: number;
|
|
300
300
|
}>, {}>;
|
|
301
301
|
|
|
@@ -308,7 +308,7 @@ interface UseImageOptions {
|
|
|
308
308
|
sizes?: string;
|
|
309
309
|
}
|
|
310
310
|
|
|
311
|
-
declare const UseImage: vue_demi.DefineComponent<UseImageOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
311
|
+
declare const UseImage: vue_demi.DefineComponent<UseImageOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseImageOptions & RenderableComponent>, {}>;
|
|
312
312
|
|
|
313
313
|
interface UseScrollOptions {
|
|
314
314
|
/**
|
|
@@ -427,22 +427,22 @@ declare type BindingValueFunction$1 = IntersectionObserverCallback;
|
|
|
427
427
|
declare type BindingValueArray$1 = [BindingValueFunction$1, UseIntersectionObserverOptions];
|
|
428
428
|
declare const vIntersectionObserver: ObjectDirective<HTMLElement, BindingValueFunction$1 | BindingValueArray$1>;
|
|
429
429
|
|
|
430
|
-
declare const UseMouse: vue_demi.DefineComponent<UseMouseOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
430
|
+
declare const UseMouse: vue_demi.DefineComponent<UseMouseOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseMouseOptions>, {}>;
|
|
431
431
|
|
|
432
|
-
declare const UseMouseInElement: vue_demi.DefineComponent<MouseInElementOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
432
|
+
declare const UseMouseInElement: vue_demi.DefineComponent<MouseInElementOptions & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<MouseInElementOptions & RenderableComponent>, {}>;
|
|
433
433
|
|
|
434
|
-
declare const UseMousePressed: vue_demi.DefineComponent<Omit<MousePressedOptions, "target"> & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
434
|
+
declare const UseMousePressed: vue_demi.DefineComponent<Omit<MousePressedOptions, "target"> & RenderableComponent, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<Omit<MousePressedOptions, "target"> & RenderableComponent>, {}>;
|
|
435
435
|
|
|
436
436
|
declare const UseNetwork: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
437
437
|
[key: string]: any;
|
|
438
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
438
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
439
439
|
|
|
440
|
-
declare const UseNow: vue_demi.DefineComponent<Omit<UseNowOptions<true>, "controls">, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
440
|
+
declare const UseNow: vue_demi.DefineComponent<Omit<UseNowOptions<true>, "controls">, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<Omit<UseNowOptions<true>, "controls">>, {}>;
|
|
441
441
|
|
|
442
442
|
interface UseObjectUrlProps {
|
|
443
443
|
object: Blob | MediaSource | undefined;
|
|
444
444
|
}
|
|
445
|
-
declare const UseObjectUrl: vue_demi.DefineComponent<UseObjectUrlProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
445
|
+
declare const UseObjectUrl: vue_demi.DefineComponent<UseObjectUrlProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseObjectUrlProps>, {}>;
|
|
446
446
|
|
|
447
447
|
interface UseOffsetPaginationOptions {
|
|
448
448
|
/**
|
|
@@ -482,33 +482,41 @@ interface UseOffsetPaginationReturn {
|
|
|
482
482
|
next: () => void;
|
|
483
483
|
}
|
|
484
484
|
|
|
485
|
-
declare const UseOffsetPagination: vue_demi.DefineComponent<UseOffsetPaginationOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
485
|
+
declare const UseOffsetPagination: vue_demi.DefineComponent<UseOffsetPaginationOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseOffsetPaginationOptions>, {}>;
|
|
486
486
|
|
|
487
487
|
declare const UseOnline: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
488
488
|
[key: string]: any;
|
|
489
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
489
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
490
490
|
|
|
491
491
|
declare const UsePageLeave: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
492
492
|
[key: string]: any;
|
|
493
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
493
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
494
494
|
|
|
495
495
|
declare const UsePointer: vue_demi.DefineComponent<Omit<UsePointerOptions, "target"> & {
|
|
496
496
|
target: 'window' | 'self';
|
|
497
|
-
}, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
497
|
+
}, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<Omit<UsePointerOptions, "target"> & {
|
|
498
498
|
target: 'window' | 'self';
|
|
499
499
|
}>, {}>;
|
|
500
500
|
|
|
501
501
|
declare const UsePreferredColorScheme: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
502
502
|
[key: string]: any;
|
|
503
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
503
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
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, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
504
508
|
|
|
505
509
|
declare const UsePreferredDark: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
506
510
|
[key: string]: any;
|
|
507
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
511
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
508
512
|
|
|
509
513
|
declare const UsePreferredLanguages: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
510
514
|
[key: string]: any;
|
|
511
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
515
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
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, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
512
520
|
|
|
513
521
|
declare const UseScreenSafeArea: vue_demi.DefineComponent<{
|
|
514
522
|
top: BooleanConstructor;
|
|
@@ -517,7 +525,7 @@ declare const UseScreenSafeArea: vue_demi.DefineComponent<{
|
|
|
517
525
|
left: BooleanConstructor;
|
|
518
526
|
}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
519
527
|
[key: string]: any;
|
|
520
|
-
}> | undefined, unknown, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
528
|
+
}> | undefined, unknown, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{
|
|
521
529
|
top: BooleanConstructor;
|
|
522
530
|
right: BooleanConstructor;
|
|
523
531
|
bottom: BooleanConstructor;
|
|
@@ -538,9 +546,9 @@ declare const vScrollLock: FunctionDirective<HTMLElement, boolean>;
|
|
|
538
546
|
interface UseTimeAgoComponentOptions extends Omit<UseTimeAgoOptions<true>, 'controls'> {
|
|
539
547
|
time: MaybeRef<Date | number | string>;
|
|
540
548
|
}
|
|
541
|
-
declare const UseTimeAgo: vue_demi.DefineComponent<UseTimeAgoComponentOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
549
|
+
declare const UseTimeAgo: vue_demi.DefineComponent<UseTimeAgoComponentOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseTimeAgoComponentOptions>, {}>;
|
|
542
550
|
|
|
543
|
-
declare const UseTimestamp: vue_demi.DefineComponent<Omit<UseTimestampOptions<true>, "controls">, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
551
|
+
declare const UseTimestamp: vue_demi.DefineComponent<Omit<UseTimestampOptions<true>, "controls">, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<Omit<UseTimestampOptions<true>, "controls">>, {}>;
|
|
544
552
|
|
|
545
553
|
interface UseVirtualListProps {
|
|
546
554
|
/**
|
|
@@ -562,12 +570,12 @@ interface UseVirtualListProps {
|
|
|
562
570
|
*/
|
|
563
571
|
height: string;
|
|
564
572
|
}
|
|
565
|
-
declare const UseVirtualList: vue_demi.DefineComponent<UseVirtualListProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
573
|
+
declare const UseVirtualList: vue_demi.DefineComponent<UseVirtualListProps, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<UseVirtualListProps>, {}>;
|
|
566
574
|
|
|
567
575
|
declare const UseWindowFocus: vue_demi.DefineComponent<{}, () => vue_demi.VNode<vue_demi.RendererNode, vue_demi.RendererElement, {
|
|
568
576
|
[key: string]: any;
|
|
569
|
-
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
577
|
+
}>[] | undefined, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, string, vue_demi.VNodeProps & vue_demi.AllowedComponentProps & vue_demi.ComponentCustomProps, Readonly<vue_demi.ExtractPropTypes<{}>>, {}>;
|
|
570
578
|
|
|
571
|
-
declare const UseWindowSize: vue_demi.DefineComponent<UseWindowSizeOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin,
|
|
579
|
+
declare const UseWindowSize: vue_demi.DefineComponent<UseWindowSizeOptions, {}, {}, {}, {}, vue_demi.ComponentOptionsMixin, vue_demi.ComponentOptionsMixin, {}, 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
|
@@ -247,11 +247,11 @@
|
|
|
247
247
|
function onLongPress(target, handler, options) {
|
|
248
248
|
var _a, _b;
|
|
249
249
|
const elementRef = vueDemi.computed(() => unrefElement(target));
|
|
250
|
-
let timeout
|
|
250
|
+
let timeout;
|
|
251
251
|
function clear() {
|
|
252
|
-
if (timeout
|
|
252
|
+
if (timeout) {
|
|
253
253
|
clearTimeout(timeout);
|
|
254
|
-
timeout =
|
|
254
|
+
timeout = void 0;
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
function onDown(ev) {
|
|
@@ -717,12 +717,18 @@
|
|
|
717
717
|
"preventDefault",
|
|
718
718
|
"stopPropagation",
|
|
719
719
|
"pointerTypes",
|
|
720
|
-
"as"
|
|
720
|
+
"as",
|
|
721
|
+
"handle"
|
|
721
722
|
],
|
|
722
723
|
setup(props, { slots }) {
|
|
723
724
|
const target = vueDemi.ref();
|
|
725
|
+
const handle = vueDemi.computed(() => {
|
|
726
|
+
var _a;
|
|
727
|
+
return (_a = props.handle) != null ? _a : target.value;
|
|
728
|
+
});
|
|
724
729
|
const initialValue = props.storageKey ? core.useStorage(props.storageKey, shared.resolveUnref(props.initialValue) || { x: 0, y: 0 }, core.isClient ? props.storageType === "session" ? sessionStorage : localStorage : void 0) : props.initialValue || { x: 0, y: 0 };
|
|
725
730
|
const data = vueDemi.reactive(core.useDraggable(target, __spreadProps$8(__spreadValues$a({}, props), {
|
|
731
|
+
handle,
|
|
726
732
|
initialValue
|
|
727
733
|
})));
|
|
728
734
|
return () => {
|
|
@@ -818,11 +824,18 @@
|
|
|
818
824
|
}
|
|
819
825
|
|
|
820
826
|
function useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {
|
|
827
|
+
const { box = "content-box" } = options;
|
|
821
828
|
const width = vueDemi.ref(initialSize.width);
|
|
822
829
|
const height = vueDemi.ref(initialSize.height);
|
|
823
830
|
useResizeObserver(target, ([entry]) => {
|
|
824
|
-
|
|
825
|
-
|
|
831
|
+
const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
|
|
832
|
+
if (boxSize) {
|
|
833
|
+
width.value = boxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
|
|
834
|
+
height.value = boxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
|
|
835
|
+
} else {
|
|
836
|
+
width.value = entry.contentRect.width;
|
|
837
|
+
height.value = entry.contentRect.height;
|
|
838
|
+
}
|
|
826
839
|
}, options);
|
|
827
840
|
vueDemi.watch(() => unrefElement(target), (ele) => {
|
|
828
841
|
width.value = ele ? initialSize.width : 0;
|
|
@@ -865,7 +878,7 @@
|
|
|
865
878
|
if (!window)
|
|
866
879
|
return;
|
|
867
880
|
const document = window.document;
|
|
868
|
-
const el =
|
|
881
|
+
const el = unrefElement(element);
|
|
869
882
|
if (!el) {
|
|
870
883
|
elementIsVisible.value = false;
|
|
871
884
|
} else {
|
|
@@ -873,9 +886,12 @@
|
|
|
873
886
|
elementIsVisible.value = rect.top <= (window.innerHeight || document.documentElement.clientHeight) && rect.left <= (window.innerWidth || document.documentElement.clientWidth) && rect.bottom >= 0 && rect.right >= 0;
|
|
874
887
|
}
|
|
875
888
|
};
|
|
876
|
-
|
|
889
|
+
vueDemi.watch(() => unrefElement(element), () => testBounding(), { immediate: true, flush: "post" });
|
|
877
890
|
if (window) {
|
|
878
|
-
|
|
891
|
+
useEventListener(scrollTarget || window, "scroll", testBounding, {
|
|
892
|
+
capture: false,
|
|
893
|
+
passive: true
|
|
894
|
+
});
|
|
879
895
|
}
|
|
880
896
|
return elementIsVisible;
|
|
881
897
|
}
|
|
@@ -1051,6 +1067,7 @@
|
|
|
1051
1067
|
}
|
|
1052
1068
|
});
|
|
1053
1069
|
|
|
1070
|
+
const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
|
|
1054
1071
|
function useScroll(element, options = {}) {
|
|
1055
1072
|
const {
|
|
1056
1073
|
throttle = 0,
|
|
@@ -1097,7 +1114,7 @@
|
|
|
1097
1114
|
directions.left = scrollLeft < x.value;
|
|
1098
1115
|
directions.right = scrollLeft > x.value;
|
|
1099
1116
|
arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
|
|
1100
|
-
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
|
|
1117
|
+
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1101
1118
|
x.value = scrollLeft;
|
|
1102
1119
|
let scrollTop = eventTarget.scrollTop;
|
|
1103
1120
|
if (e.target === document && !scrollTop)
|
|
@@ -1105,7 +1122,7 @@
|
|
|
1105
1122
|
directions.top = scrollTop < y.value;
|
|
1106
1123
|
directions.bottom = scrollTop > y.value;
|
|
1107
1124
|
arrivedState.top = scrollTop <= 0 + (offset.top || 0);
|
|
1108
|
-
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
|
|
1125
|
+
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1109
1126
|
y.value = scrollTop;
|
|
1110
1127
|
isScrolling.value = true;
|
|
1111
1128
|
onScrollEnd(e);
|
|
@@ -1475,6 +1492,19 @@
|
|
|
1475
1492
|
}
|
|
1476
1493
|
});
|
|
1477
1494
|
|
|
1495
|
+
const UsePreferredContrast = vueDemi.defineComponent({
|
|
1496
|
+
name: "UsePreferredContrast",
|
|
1497
|
+
setup(props, { slots }) {
|
|
1498
|
+
const data = vueDemi.reactive({
|
|
1499
|
+
contrast: core.usePreferredContrast()
|
|
1500
|
+
});
|
|
1501
|
+
return () => {
|
|
1502
|
+
if (slots.default)
|
|
1503
|
+
return slots.default(data);
|
|
1504
|
+
};
|
|
1505
|
+
}
|
|
1506
|
+
});
|
|
1507
|
+
|
|
1478
1508
|
const UsePreferredDark = vueDemi.defineComponent({
|
|
1479
1509
|
name: "UsePreferredDark",
|
|
1480
1510
|
setup(props, { slots }) {
|
|
@@ -1501,6 +1531,19 @@
|
|
|
1501
1531
|
}
|
|
1502
1532
|
});
|
|
1503
1533
|
|
|
1534
|
+
const UsePreferredReducedMotion = vueDemi.defineComponent({
|
|
1535
|
+
name: "UsePreferredReducedMotion",
|
|
1536
|
+
setup(props, { slots }) {
|
|
1537
|
+
const data = vueDemi.reactive({
|
|
1538
|
+
motion: core.usePreferredReducedMotion()
|
|
1539
|
+
});
|
|
1540
|
+
return () => {
|
|
1541
|
+
if (slots.default)
|
|
1542
|
+
return slots.default(data);
|
|
1543
|
+
};
|
|
1544
|
+
}
|
|
1545
|
+
});
|
|
1546
|
+
|
|
1504
1547
|
function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
|
|
1505
1548
|
const variable = vueDemi.ref(initialValue);
|
|
1506
1549
|
const elRef = vueDemi.computed(() => {
|
|
@@ -1864,8 +1907,10 @@
|
|
|
1864
1907
|
exports.UsePageLeave = UsePageLeave;
|
|
1865
1908
|
exports.UsePointer = UsePointer;
|
|
1866
1909
|
exports.UsePreferredColorScheme = UsePreferredColorScheme;
|
|
1910
|
+
exports.UsePreferredContrast = UsePreferredContrast;
|
|
1867
1911
|
exports.UsePreferredDark = UsePreferredDark;
|
|
1868
1912
|
exports.UsePreferredLanguages = UsePreferredLanguages;
|
|
1913
|
+
exports.UsePreferredReducedMotion = UsePreferredReducedMotion;
|
|
1869
1914
|
exports.UseScreenSafeArea = UseScreenSafeArea;
|
|
1870
1915
|
exports.UseTimeAgo = UseTimeAgo;
|
|
1871
1916
|
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(l,n,d){if(l.install)return l;if(n)if(n.version.slice(0,4)==="2.7."){for(var u in n)l[u]=n[u];l.isVue2=!0,l.isVue3=!1,l.install=function(){},l.Vue=n,l.Vue2=n,l.version=n.version}else if(n.version.slice(0,2)==="2.")if(d){for(var u in d)l[u]=d[u];l.isVue2=!0,l.isVue3=!1,l.install=function(){},l.Vue=n,l.Vue2=n,l.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)l[u]=n[u];l.isVue2=!1,l.isVue3=!0,l.install=function(){},l.Vue=n,l.Vue2=void 0,l.version=n.version,l.set=function(C,h,S){return Array.isArray(C)?(C.length=Math.max(C.length,h),C.splice(h,1,S),S):(C[h]=S,S)},l.del=function(C,h){if(Array.isArray(C)){C.splice(h,1);return}delete C[h]}}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 l}(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(l,n,d,u){"use strict";const C=n.defineComponent({name:"OnClickOutside",props:["as"],emits:["trigger"],setup(t,{slots:e,emit:r}){const o=n.ref();return d.onClickOutside(o,a=>{r("trigger",a)}),()=>{if(e.default)return n.h(t.as||"div",{ref:o},e.default())}}});function h(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 i=u.noop;const s=n.watch(()=>h(e),f=>{i(),!!f&&(f.addEventListener(r,o,a),i=()=>{f.removeEventListener(r,o,a),i=u.noop})},{immediate:!0,flush:"post"}),c=()=>{s(),i()};return u.tryOnScopeDispose(c),c}function W(t,e,r={}){const{window:o=S,ignore:a,capture:i=!0,detectIframe:s=!1}=r;if(!o)return;const c=n.ref(!0);let f;const v=p=>{o.clearTimeout(f);const _=h(t),P=p.composedPath();!_||_===p.target||P.includes(_)||!c.value||a&&a.length>0&&a.some(y=>{const U=h(y);return U&&(p.target===U||P.includes(U))})||e(p)},g=[$(o,"click",v,{passive:!0,capture:i}),$(o,"pointerdown",p=>{const _=h(t);c.value=!!_&&!p.composedPath().includes(_)},{passive:!0}),$(o,"pointerup",p=>{if(p.button===0){const _=p.composedPath();p.composedPath=()=>_,f=o.setTimeout(()=>v(p),50)}},{passive:!0}),s&&$(o,"blur",p=>{var _;const P=h(t);((_=document.activeElement)==null?void 0:_.tagName)==="IFRAME"&&!(P==null?void 0:P.contains(document.activeElement))&&e(p)})].filter(Boolean);return()=>g.forEach(p=>p())}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:i=!1}=r,s=Me(t);return $(o,a,f=>{s(f)&&e(f)},i)}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[i,s]=e.value;F(a,i,Ne({target:t},s))}}},ze=500;function N(t,e,r){var o,a;const i=n.computed(()=>h(t));let s;function c(){s&&(clearTimeout(s),s=void 0)}function f(g){var O,p,_,P;((O=r==null?void 0:r.modifiers)==null?void 0:O.self)&&g.target!==i.value||(c(),((p=r==null?void 0:r.modifiers)==null?void 0:p.prevent)&&g.preventDefault(),((_=r==null?void 0:r.modifiers)==null?void 0:_.stop)&&g.stopPropagation(),s=setTimeout(()=>e(g),(P=r==null?void 0:r.delay)!=null?P:ze))}const v={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};$(i,"pointerdown",f,v),$(i,"pointerup",c,v),$(i,"pointerleave",c,v)}const He=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:d.useActiveElement()});return()=>{if(e.default)return e.default(r)}}}),We=n.defineComponent({name:"UseBattery",setup(t,{slots:e}){const r=n.reactive(d.useBattery(t));return()=>{if(e.default)return e.default(r)}}}),ke=n.defineComponent({name:"UseBrowserLocation",setup(t,{slots:e}){const r=n.reactive(d.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:{},z="__vueuse_ssr_handlers__";R[z]=R[z]||{};const Fe=R[z];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:i="pre",deep:s=!0,listenToStorageChanges:c=!0,writeDefaults:f=!0,mergeDefaults:v=!1,shallow:g,window:O=S,eventFilter:p,onError:_=m=>{console.error(m)}}=o,P=(g?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),w=(a=o.serializer)!=null?a:Qe[U],{pause:b,resume:j}=u.pausableWatch(P,()=>L(P.value),{flush:i,deep:s,eventFilter:p});return O&&c&&$(O,"storage",A),A(),P;function L(m){try{m==null?r.removeItem(t):r.setItem(t,w.write(m))}catch(E){_(E)}}function I(m){if(!(m&&m.key!==t)){b();try{const E=m?m.newValue:r.getItem(t);if(E==null)return f&&y!==null&&r.setItem(t,w.write(y)),y;if(!m&&v){const T=w.read(E);return u.isFunction(v)?v(T,y):U==="object"&&!Array.isArray(T)?Y(Y({},y),T):T}else return typeof E!="string"?E:w.read(E)}catch(E){_(E)}finally{j()}}}function A(m){m&&m.key!==t||(P.value=I(m))}}function H(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=H(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const i=n.ref(!1),s=()=>{!o.value||(a||(a=r.matchMedia(t)),i.value=a.matches)};return u.tryOnBeforeMount(()=>{s(),!!a&&("addEventListener"in a?a.addEventListener("change",s):a.addListener(s),u.tryOnScopeDispose(()=>{"removeEventListener"in a?a.removeEventListener("change",s):a.removeListener(s)}))}),i}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:i,storageKey:s="vueuse-color-scheme",listenToStorageChanges:c=!0,storageRef:f,emitAuto:v}=t,g=tt({auto:"",light:"light",dark:"dark"},t.modes||{}),O=Ze({window:a}),p=n.computed(()=>O.value?"dark":"light"),_=f||(s==null?n.ref(o):Xe(s,o,i,{window:a,listenToStorageChanges:c})),P=n.computed({get(){return _.value==="auto"&&!v?p.value:_.value},set(b){_.value=b}}),y=q("updateHTMLAttrs",(b,j,L)=>{const I=a==null?void 0:a.document.querySelector(b);if(!!I)if(j==="class"){const A=L.split(/\s/g);Object.values(g).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(b){var j;const L=b==="auto"?p.value:b;y(e,r,(j=g[L])!=null?j:L)}function w(b){t.onChanged?t.onChanged(b,U):U(b)}return n.watch(P,w,{flush:"post",immediate:!0}),v&&n.watch(p,()=>w(P.value),{flush:"post"}),u.tryOnMounted(()=>w(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=d.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(d.useDeviceMotion());return()=>{if(e.default)return e.default(r)}}}),st=n.defineComponent({name:"UseDeviceOrientation",setup(t,{slots:e}){const r=n.reactive(d.useDeviceOrientation());return()=>{if(e.default)return e.default(r)}}}),lt=n.defineComponent({name:"UseDevicePixelRatio",setup(t,{slots:e}){const r=n.reactive({pixelRatio:d.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(d.useDevicesList(t));return()=>{if(e.default)return e.default(r)}}}),ut=n.defineComponent({name:"UseDocumentVisibility",setup(t,{slots:e}){const r=n.reactive({visibility:d.useDocumentVisibility()});return()=>{if(e.default)return e.default(r)}}});var ct=Object.defineProperty,ft=Object.defineProperties,dt=Object.getOwnPropertyDescriptors,D=Object.getOwnPropertySymbols,pt=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={}))pt.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,dt(e));const Ot=n.defineComponent({name:"UseDraggable",props:["storageKey","storageType","initialValue","exact","preventDefault","stopPropagation","pointerTypes","as","handle"],setup(t,{slots:e}){const r=n.ref(),o=n.computed(()=>{var s;return(s=t.handle)!=null?s:r.value}),a=t.storageKey?d.useStorage(t.storageKey,u.resolveUnref(t.initialValue)||{x:0,y:0},d.isClient?t.storageType==="session"?sessionStorage:localStorage:void 0):t.initialValue||{x:0,y:0},i=n.reactive(d.useDraggable(r,_t(gt({},t),{handle:o,initialValue:a})));return()=>{if(e.default)return n.h(t.as||"div",{ref:r,style:`touch-action:none;${i.style}`},e.default(i))}}}),Pt=n.defineComponent({name:"UseElementBounding",props:["box","as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive(d.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(d.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,i=Ut(o,["window"]);let s;const c=H(()=>a&&"ResizeObserver"in a),f=()=>{s&&(s.disconnect(),s=void 0)},v=n.watch(()=>h(t),O=>{f(),c.value&&a&&O&&(s=new ResizeObserver(e),s.observe(O,i))},{immediate:!0,flush:"post"}),g=()=>{f(),v()};return u.tryOnScopeDispose(g),{isSupported:c,stop:g}}function $t(t,e={width:0,height:0},r={}){const{box:o="content-box"}=r,a=n.ref(e.width),i=n.ref(e.height);return St(t,([s])=>{const c=o==="border-box"?s.borderBoxSize:o==="content-box"?s.contentBoxSize:s.devicePixelContentBoxSize;c?(a.value=c.reduce((f,{inlineSize:v})=>f+v,0),i.value=c.reduce((f,{blockSize:v})=>f+v,0)):(a.value=s.contentRect.width,i.value=s.contentRect.height)},r),n.watch(()=>h(t),s=>{a.value=s?e.width:0,i.value=s?e.height:0}),{width:a,height:i}}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:i,height:s}=$t(t,...a);n.watch([i,s],([c,f])=>o({width:c,height:f}))}},Et=n.defineComponent({name:"UseElementVisibility",props:["as"],setup(t,{slots:e}){const r=n.ref(),o=n.reactive({isVisible:d.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 i=e.document,s=h(t);if(!s)o.value=!1;else{const c=s.getBoundingClientRect();o.value=c.top<=(e.innerHeight||i.documentElement.clientHeight)&&c.left<=(e.innerWidth||i.documentElement.clientWidth)&&c.bottom>=0&&c.right>=0}};return n.watch(()=>h(t),()=>a(),{immediate:!0,flush:"post"}),e&&$(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,i=>r(i),{immediate:!0})}}},Lt=n.defineComponent({name:"UseEyeDropper",props:{sRGBHex:String},setup(t,{slots:e}){const r=n.reactive(d.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(d.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(d.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(d.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:i=u.noop,resetOnExecute:s=!0,shallow:c=!0,throwError:f}=r??{},v=c?n.shallowRef(e):n.ref(e),g=n.ref(!1),O=n.ref(!1),p=n.ref(void 0);async function _(P=0,...y){s&&(v.value=e),p.value=void 0,g.value=!1,O.value=!0,P>0&&await u.promiseTimeout(P);const U=typeof t=="function"?t(...y):t;try{const w=await U;v.value=w,g.value=!0}catch(w){if(p.value=w,i(w),f)throw p}finally{O.value=!1}return v.value}return o&&_(a),{state:v,isReady:g,isLoading:O,error:p,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,zt=(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 Ht(t){return new Promise((e,r)=>{const o=new Image,{src:a,srcset:i,sizes:s}=t;o.src=a,i&&(o.srcset=i),s&&(o.sizes=s),o.onload=()=>e(o),o.onerror=r})}const Bt=(t,e={})=>{const r=At(()=>Ht(u.resolveUnref(t)),void 0,zt({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:i=u.noop,offset:s={left:0,right:0,top:0,bottom:0},eventListenerOptions:c={capture:!1,passive:!0}}=e,f=n.ref(0),v=n.ref(0),g=n.ref(!1),O=n.reactive({left:!0,right:!1,top:!0,bottom:!1}),p=n.reactive({left:!1,right:!1,top:!1,bottom:!1}),_=u.useDebounceFn(y=>{g.value=!1,p.left=!1,p.right=!1,p.top=!1,p.bottom=!1,a(y)},r+o),P=y=>{const U=y.target===document?y.target.documentElement:y.target,w=U.scrollLeft;p.left=w<f.value,p.right=w>f.value,O.left=w<=0+(s.left||0),O.right=w+U.clientWidth>=U.scrollWidth-(s.right||0)-ae,f.value=w;let b=U.scrollTop;y.target===document&&!b&&(b=document.body.scrollTop),p.top=b<v.value,p.bottom=b>v.value,O.top=b<=0+(s.top||0),O.bottom=b+U.clientHeight>=U.scrollHeight-(s.bottom||0)-ae,v.value=b,g.value=!0,_(y),i(y)};return $(t,"scroll",r?u.useThrottleFn(P,r):P,c),{x:f,y:v,isScrolling:g,arrivedState:O,directions:p}}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 i=(o=r.direction)!=null?o:"bottom",s=n.reactive(B(t,qt(ie({},r),{offset:ie({[i]:(a=r.distance)!=null?a:0},r.offset)})));n.watch(()=>s.arrivedState[i],async c=>{var f,v;if(c){const g=u.resolveUnref(t),O={height:(f=g==null?void 0:g.scrollHeight)!=null?f:0,width:(v=g==null?void 0:g.scrollWidth)!=null?v:0};await e(s),r.preserveScrollPosition&&g&&n.nextTick(()=>{g.scrollTo({top:g.scrollHeight-O.height,left:g.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:i=.1,window:s=S}=r,c=H(()=>s&&"IntersectionObserver"in s);let f=u.noop;const v=c.value?n.watch(()=>({el:h(t),root:h(o)}),({el:O,root:p})=>{if(f(),!O)return;const _=new IntersectionObserver(e,{root:p,rootMargin:a,threshold:i});_.observe(O),f=()=>{_.disconnect(),f=u.noop}},{immediate:!0,flush:"post"}):u.noop,g=()=>{f(),v()};return u.tryOnScopeDispose(g),{isSupported:c,stop:g}}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(d.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(d.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,de=(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)&&de(t,r,e[r]);if(fe)for(var r of fe(e))rr.call(e,r)&&de(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(d.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(d.useNetwork());return()=>{if(e.default)return e.default(r)}}});var lr=Object.defineProperty,ir=Object.defineProperties,ur=Object.getOwnPropertyDescriptors,pe=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,dr=(t,e)=>{for(var r in e||(e={}))cr.call(e,r)&&ve(t,r,e[r]);if(pe)for(var r of pe(e))fr.call(e,r)&&ve(t,r,e[r]);return t},pr=(t,e)=>ir(t,ur(e));const vr=n.defineComponent({name:"UseNow",props:["interval"],setup(t,{slots:e}){const r=n.reactive(d.useNow(pr(dr({},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=d.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(d.useOffsetPagination(wr(hr({},t),{onPageChange(...a){var i;(i=t.onPageChange)==null||i.call(t,...a),r("page-change",...a)},onPageSizeChange(...a){var i;(i=t.onPageSizeChange)==null||i.call(t,...a),r("page-size-change",...a)},onPageCountChange(...a){var i;(i=t.onPageCountChange)==null||i.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:d.useOnline()});return()=>{if(e.default)return e.default(r)}}}),Sr=n.defineComponent({name:"UsePageLeave",setup(t,{slots:e}){const r=n.reactive({isLeft:d.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(d.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:d.usePreferredColorScheme()});return()=>{if(e.default)return e.default(r)}}}),Tr=n.defineComponent({name:"UsePreferredContrast",setup(t,{slots:e}){const r=n.reactive({contrast:d.usePreferredContrast()});return()=>{if(e.default)return e.default(r)}}}),Nr=n.defineComponent({name:"UsePreferredDark",setup(t,{slots:e}){const r=n.reactive({prefersDark:d.usePreferredDark()});return()=>{if(e.default)return e.default(r)}}}),Rr=n.defineComponent({name:"UsePreferredLanguages",setup(t,{slots:e}){const r=n.reactive({languages:d.usePreferredLanguages()});return()=>{if(e.default)return e.default(r)}}}),zr=n.defineComponent({name:"UsePreferredReducedMotion",setup(t,{slots:e}){const r=n.reactive({motion:d.usePreferredReducedMotion()});return()=>{if(e.default)return e.default(r)}}});function M(t,e,{window:r=S,initialValue:o=""}={}){const a=n.ref(o),i=n.computed(()=>{var s;return h(e)||((s=r==null?void 0:r.document)==null?void 0:s.documentElement)});return n.watch([i,()=>u.resolveUnref(t)],([s,c])=>{var f;if(s&&r){const v=(f=r.getComputedStyle(s).getPropertyValue(c))==null?void 0:f.trim();a.value=v||o}},{immediate:!0}),n.watch(a,s=>{var c;((c=i.value)==null?void 0:c.style)&&i.value.style.setProperty(u.resolveUnref(t),s)}),a}const me="--vueuse-safe-area-top",ye="--vueuse-safe-area-right",he="--vueuse-safe-area-bottom",we="--vueuse-safe-area-left";function Hr(){const t=n.ref(""),e=n.ref(""),r=n.ref(""),o=n.ref("");if(u.isClient){const i=M(me),s=M(ye),c=M(he),f=M(we);i.value="env(safe-area-inset-top, 0px)",s.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(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:i}=Hr();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?i.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(i){var s;(s=o.onScroll)==null||s.call(o,i),r(a)},onStop(i){var s;(s=o.onStop)==null||s.call(o,i),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 f=c;a=f.style.overflow,r.value&&(f.style.overflow="hidden")}},{immediate:!0});const i=()=>{const c=u.resolveUnref(t);!c||r.value||(u.isIOS&&(o=$(c,"touchmove",Xr,{passive:!1})),c.style.overflow="hidden",r.value=!0)},s=()=>{const c=u.resolveUnref(t);!c||!r.value||(u.isIOS&&(o==null||o()),c.style.overflow=a,r.value=!1)};return u.tryOnScopeDispose(s),n.computed({get(){return r.value},set(c){c?i():s()}})}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,i=>a.value=i)}})();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(d.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,dn=(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},pn=(t,e)=>ln(t,un(e));const vn=n.defineComponent({name:"UseTimestamp",props:["immediate","interval","offset"],setup(t,{slots:e}){const r=n.reactive(d.useTimestamp(pn(dn({},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:i}=d.useVirtualList(r,t.options);return a.style.height=t.height||"300px",()=>n.h("div",Ie({},a),[n.h("div",Ie({},i.value),o.value.map(s=>n.h("div",{style:{overFlow:"hidden",height:s.height}},e.default?e.default(s):"Please set content!")))])}}),mn=n.defineComponent({name:"UseWindowFocus",setup(t,{slots:e}){const r=n.reactive({focused:d.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(d.useWindowSize(t));return()=>{if(e.default)return e.default(r)}}});l.OnClickOutside=C,l.OnLongPress=He,l.UseActiveElement=Be,l.UseBattery=We,l.UseBrowserLocation=ke,l.UseColorMode=nt,l.UseDark=ot,l.UseDeviceMotion=at,l.UseDeviceOrientation=st,l.UseDevicePixelRatio=lt,l.UseDevicesList=it,l.UseDocumentVisibility=ut,l.UseDraggable=Ot,l.UseElementBounding=Pt,l.UseElementSize=ht,l.UseElementVisibility=Et,l.UseEyeDropper=Lt,l.UseFullscreen=It,l.UseGeolocation=Mt,l.UseIdle=Vt,l.UseImage=Wt,l.UseMouse=Yt,l.UseMouseInElement=Zt,l.UseMousePressed=ar,l.UseNetwork=sr,l.UseNow=vr,l.UseObjectUrl=gr,l.UseOffsetPagination=br,l.UseOnline=Ur,l.UsePageLeave=Sr,l.UsePointer=Vr,l.UsePreferredColorScheme=Ar,l.UsePreferredContrast=Tr,l.UsePreferredDark=Nr,l.UsePreferredLanguages=Rr,l.UsePreferredReducedMotion=zr,l.UseScreenSafeArea=Br,l.UseTimeAgo=an,l.UseTimestamp=vn,l.UseVirtualList=Pn,l.UseWindowFocus=mn,l.UseWindowSize=yn,l.VOnClickOutside=k,l.VOnLongPress=G,l.vElementHover=yt,l.vElementSize=Ct,l.vElementVisibility=jt,l.vInfiniteScroll=Qt,l.vIntersectionObserver=Xt,l.vOnClickOutside=k,l.vOnKeyStroke=Re,l.vOnLongPress=G,l.vScroll=Qr,l.vScrollLock=Zr,Object.defineProperty(l,"__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({
|
|
@@ -175,11 +175,11 @@ const DEFAULT_DELAY = 500;
|
|
|
175
175
|
function onLongPress(target, handler, options) {
|
|
176
176
|
var _a, _b;
|
|
177
177
|
const elementRef = computed(() => unrefElement(target));
|
|
178
|
-
let timeout
|
|
178
|
+
let timeout;
|
|
179
179
|
function clear() {
|
|
180
|
-
if (timeout
|
|
180
|
+
if (timeout) {
|
|
181
181
|
clearTimeout(timeout);
|
|
182
|
-
timeout =
|
|
182
|
+
timeout = void 0;
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
185
|
function onDown(ev) {
|
|
@@ -645,12 +645,18 @@ const UseDraggable = defineComponent({
|
|
|
645
645
|
"preventDefault",
|
|
646
646
|
"stopPropagation",
|
|
647
647
|
"pointerTypes",
|
|
648
|
-
"as"
|
|
648
|
+
"as",
|
|
649
|
+
"handle"
|
|
649
650
|
],
|
|
650
651
|
setup(props, { slots }) {
|
|
651
652
|
const target = ref();
|
|
653
|
+
const handle = computed(() => {
|
|
654
|
+
var _a;
|
|
655
|
+
return (_a = props.handle) != null ? _a : target.value;
|
|
656
|
+
});
|
|
652
657
|
const initialValue = props.storageKey ? useStorage$1(props.storageKey, resolveUnref(props.initialValue) || { x: 0, y: 0 }, isClient$1 ? props.storageType === "session" ? sessionStorage : localStorage : void 0) : props.initialValue || { x: 0, y: 0 };
|
|
653
658
|
const data = reactive(useDraggable(target, __spreadProps$8(__spreadValues$a({}, props), {
|
|
659
|
+
handle,
|
|
654
660
|
initialValue
|
|
655
661
|
})));
|
|
656
662
|
return () => {
|
|
@@ -746,11 +752,18 @@ function useResizeObserver(target, callback, options = {}) {
|
|
|
746
752
|
}
|
|
747
753
|
|
|
748
754
|
function useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {
|
|
755
|
+
const { box = "content-box" } = options;
|
|
749
756
|
const width = ref(initialSize.width);
|
|
750
757
|
const height = ref(initialSize.height);
|
|
751
758
|
useResizeObserver(target, ([entry]) => {
|
|
752
|
-
|
|
753
|
-
|
|
759
|
+
const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
|
|
760
|
+
if (boxSize) {
|
|
761
|
+
width.value = boxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
|
|
762
|
+
height.value = boxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
|
|
763
|
+
} else {
|
|
764
|
+
width.value = entry.contentRect.width;
|
|
765
|
+
height.value = entry.contentRect.height;
|
|
766
|
+
}
|
|
754
767
|
}, options);
|
|
755
768
|
watch(() => unrefElement(target), (ele) => {
|
|
756
769
|
width.value = ele ? initialSize.width : 0;
|
|
@@ -793,7 +806,7 @@ function useElementVisibility(element, { window = defaultWindow, scrollTarget }
|
|
|
793
806
|
if (!window)
|
|
794
807
|
return;
|
|
795
808
|
const document = window.document;
|
|
796
|
-
const el =
|
|
809
|
+
const el = unrefElement(element);
|
|
797
810
|
if (!el) {
|
|
798
811
|
elementIsVisible.value = false;
|
|
799
812
|
} else {
|
|
@@ -801,9 +814,12 @@ function useElementVisibility(element, { window = defaultWindow, scrollTarget }
|
|
|
801
814
|
elementIsVisible.value = rect.top <= (window.innerHeight || document.documentElement.clientHeight) && rect.left <= (window.innerWidth || document.documentElement.clientWidth) && rect.bottom >= 0 && rect.right >= 0;
|
|
802
815
|
}
|
|
803
816
|
};
|
|
804
|
-
|
|
817
|
+
watch(() => unrefElement(element), () => testBounding(), { immediate: true, flush: "post" });
|
|
805
818
|
if (window) {
|
|
806
|
-
|
|
819
|
+
useEventListener(scrollTarget || window, "scroll", testBounding, {
|
|
820
|
+
capture: false,
|
|
821
|
+
passive: true
|
|
822
|
+
});
|
|
807
823
|
}
|
|
808
824
|
return elementIsVisible;
|
|
809
825
|
}
|
|
@@ -979,6 +995,7 @@ const UseImage = defineComponent({
|
|
|
979
995
|
}
|
|
980
996
|
});
|
|
981
997
|
|
|
998
|
+
const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
|
|
982
999
|
function useScroll(element, options = {}) {
|
|
983
1000
|
const {
|
|
984
1001
|
throttle = 0,
|
|
@@ -1025,7 +1042,7 @@ function useScroll(element, options = {}) {
|
|
|
1025
1042
|
directions.left = scrollLeft < x.value;
|
|
1026
1043
|
directions.right = scrollLeft > x.value;
|
|
1027
1044
|
arrivedState.left = scrollLeft <= 0 + (offset.left || 0);
|
|
1028
|
-
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0);
|
|
1045
|
+
arrivedState.right = scrollLeft + eventTarget.clientWidth >= eventTarget.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1029
1046
|
x.value = scrollLeft;
|
|
1030
1047
|
let scrollTop = eventTarget.scrollTop;
|
|
1031
1048
|
if (e.target === document && !scrollTop)
|
|
@@ -1033,7 +1050,7 @@ function useScroll(element, options = {}) {
|
|
|
1033
1050
|
directions.top = scrollTop < y.value;
|
|
1034
1051
|
directions.bottom = scrollTop > y.value;
|
|
1035
1052
|
arrivedState.top = scrollTop <= 0 + (offset.top || 0);
|
|
1036
|
-
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0);
|
|
1053
|
+
arrivedState.bottom = scrollTop + eventTarget.clientHeight >= eventTarget.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
|
|
1037
1054
|
y.value = scrollTop;
|
|
1038
1055
|
isScrolling.value = true;
|
|
1039
1056
|
onScrollEnd(e);
|
|
@@ -1403,6 +1420,19 @@ const UsePreferredColorScheme = defineComponent({
|
|
|
1403
1420
|
}
|
|
1404
1421
|
});
|
|
1405
1422
|
|
|
1423
|
+
const UsePreferredContrast = defineComponent({
|
|
1424
|
+
name: "UsePreferredContrast",
|
|
1425
|
+
setup(props, { slots }) {
|
|
1426
|
+
const data = reactive({
|
|
1427
|
+
contrast: usePreferredContrast()
|
|
1428
|
+
});
|
|
1429
|
+
return () => {
|
|
1430
|
+
if (slots.default)
|
|
1431
|
+
return slots.default(data);
|
|
1432
|
+
};
|
|
1433
|
+
}
|
|
1434
|
+
});
|
|
1435
|
+
|
|
1406
1436
|
const UsePreferredDark = defineComponent({
|
|
1407
1437
|
name: "UsePreferredDark",
|
|
1408
1438
|
setup(props, { slots }) {
|
|
@@ -1429,6 +1459,19 @@ const UsePreferredLanguages = defineComponent({
|
|
|
1429
1459
|
}
|
|
1430
1460
|
});
|
|
1431
1461
|
|
|
1462
|
+
const UsePreferredReducedMotion = defineComponent({
|
|
1463
|
+
name: "UsePreferredReducedMotion",
|
|
1464
|
+
setup(props, { slots }) {
|
|
1465
|
+
const data = reactive({
|
|
1466
|
+
motion: usePreferredReducedMotion()
|
|
1467
|
+
});
|
|
1468
|
+
return () => {
|
|
1469
|
+
if (slots.default)
|
|
1470
|
+
return slots.default(data);
|
|
1471
|
+
};
|
|
1472
|
+
}
|
|
1473
|
+
});
|
|
1474
|
+
|
|
1432
1475
|
function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
|
|
1433
1476
|
const variable = ref(initialValue);
|
|
1434
1477
|
const elRef = computed(() => {
|
|
@@ -1760,4 +1803,4 @@ const UseWindowSize = defineComponent({
|
|
|
1760
1803
|
}
|
|
1761
1804
|
});
|
|
1762
1805
|
|
|
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 };
|
|
1806
|
+
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
|
|
3
|
+
"version": "9.2.0",
|
|
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
|
|
37
|
-
"@vueuse/shared": "9.0
|
|
36
|
+
"@vueuse/core": "9.2.0",
|
|
37
|
+
"@vueuse/shared": "9.2.0",
|
|
38
38
|
"vue-demi": "*"
|
|
39
39
|
}
|
|
40
40
|
}
|