jb-mobile-ui 1.0.5 → 1.0.7
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/README.md +61 -61
- package/dist/App.vue.d.ts +1 -1
- package/dist/components/JbMobileDatePicker.vue.d.ts +39 -3
- package/dist/components/JbMobileSelect.vue.d.ts +12 -1
- package/dist/components/JbMobileSelectFace.vue.d.ts +22 -0
- package/dist/components/JbMobileTimePicker.vue.d.ts +31 -0
- package/dist/hooks/useGlobalLoading.d.ts +1 -0
- package/dist/hooks/useInfiniteScroll.d.ts +37 -0
- package/dist/index.cjs.js +2 -2
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.es.js +721 -150
- package/package.json +97 -95
package/dist/index.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ref, onMounted, reactive, getCurrentInstance, nextTick, onActivated, onUnmounted, onDeactivated, isRef, watch, inject, computed, provide, unref, isVNode, defineComponent, createVNode, onBeforeUnmount, watchEffect, mergeProps, Transition, Teleport, withDirectives, vShow, Fragment, onBeforeUpdate, Comment, createApp, useAttrs, createBlock, openBlock, withCtx, renderSlot, createElementVNode, createElementBlock, createCommentVNode, toDisplayString, normalizeStyle as normalizeStyle$1,
|
|
1
|
+
import { ref, onMounted, reactive, getCurrentInstance, nextTick, onActivated, onUnmounted, onDeactivated, isRef, watch, inject, computed, provide, unref, isVNode, defineComponent, createVNode, onBeforeUnmount, watchEffect, mergeProps, Transition, Teleport, withDirectives, vShow, Fragment, onBeforeUpdate, Comment, createApp, useAttrs, createBlock, openBlock, withCtx, renderSlot, createElementVNode, createElementBlock, createCommentVNode, toDisplayString, normalizeStyle as normalizeStyle$1, normalizeClass as normalizeClass$1, createTextVNode, renderList, vModelDynamic, withModifiers, customRef } from "vue";
|
|
2
2
|
import { showToast as showToast$1 } from "vant";
|
|
3
3
|
import dayjs from "dayjs";
|
|
4
4
|
import weekOfYear from "dayjs/plugin/weekOfYear";
|
|
@@ -7,10 +7,10 @@ function noop() {
|
|
|
7
7
|
}
|
|
8
8
|
const extend = Object.assign;
|
|
9
9
|
const inBrowser$1 = typeof window !== "undefined";
|
|
10
|
-
const isObject$
|
|
10
|
+
const isObject$2 = (val) => val !== null && typeof val === "object";
|
|
11
11
|
const isDef = (val) => val !== void 0 && val !== null;
|
|
12
12
|
const isFunction = (val) => typeof val === "function";
|
|
13
|
-
const isPromise = (val) => isObject$
|
|
13
|
+
const isPromise = (val) => isObject$2(val) && isFunction(val.then) && isFunction(val.catch);
|
|
14
14
|
const isDate = (val) => Object.prototype.toString.call(val) === "[object Date]" && !Number.isNaN(val.getTime());
|
|
15
15
|
const isNumeric = (val) => typeof val === "number" || /^\d+(\.\d+)?$/.test(val);
|
|
16
16
|
const isIOS = () => inBrowser$1 ? /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()) : false;
|
|
@@ -19,7 +19,7 @@ function get(object, path) {
|
|
|
19
19
|
let result = object;
|
|
20
20
|
keys.forEach((key) => {
|
|
21
21
|
var _a;
|
|
22
|
-
result = isObject$
|
|
22
|
+
result = isObject$2(result) ? (_a = result[key]) != null ? _a : "" : "";
|
|
23
23
|
});
|
|
24
24
|
return result;
|
|
25
25
|
}
|
|
@@ -282,22 +282,22 @@ function isElement(node) {
|
|
|
282
282
|
const ELEMENT_NODE_TYPE = 1;
|
|
283
283
|
return node.tagName !== "HTML" && node.tagName !== "BODY" && node.nodeType === ELEMENT_NODE_TYPE;
|
|
284
284
|
}
|
|
285
|
-
function getScrollParent(el,
|
|
285
|
+
function getScrollParent(el, root2 = defaultRoot) {
|
|
286
286
|
let node = el;
|
|
287
|
-
while (node && node !==
|
|
287
|
+
while (node && node !== root2 && isElement(node)) {
|
|
288
288
|
const { overflowY } = window.getComputedStyle(node);
|
|
289
289
|
if (overflowScrollReg.test(overflowY)) {
|
|
290
290
|
return node;
|
|
291
291
|
}
|
|
292
292
|
node = node.parentNode;
|
|
293
293
|
}
|
|
294
|
-
return
|
|
294
|
+
return root2;
|
|
295
295
|
}
|
|
296
|
-
function useScrollParent(el,
|
|
296
|
+
function useScrollParent(el, root2 = defaultRoot) {
|
|
297
297
|
const scrollParent = ref();
|
|
298
298
|
onMounted(() => {
|
|
299
299
|
if (el.value) {
|
|
300
|
-
scrollParent.value = getScrollParent(el.value,
|
|
300
|
+
scrollParent.value = getScrollParent(el.value, root2);
|
|
301
301
|
}
|
|
302
302
|
});
|
|
303
303
|
return scrollParent;
|
|
@@ -432,13 +432,13 @@ const camelizeRE = /-(\w)/g;
|
|
|
432
432
|
const camelize = (str) => str.replace(camelizeRE, (_, c) => c.toUpperCase());
|
|
433
433
|
const kebabCase = (str) => str.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "");
|
|
434
434
|
const clamp = (num, min, max) => Math.min(Math.max(num, min), max);
|
|
435
|
-
const { hasOwnProperty } = Object.prototype;
|
|
435
|
+
const { hasOwnProperty: hasOwnProperty$1 } = Object.prototype;
|
|
436
436
|
function assignKey(to, from, key) {
|
|
437
437
|
const val = from[key];
|
|
438
438
|
if (!isDef(val)) {
|
|
439
439
|
return;
|
|
440
440
|
}
|
|
441
|
-
if (!hasOwnProperty.call(to, key) || !isObject$
|
|
441
|
+
if (!hasOwnProperty$1.call(to, key) || !isObject$2(val)) {
|
|
442
442
|
to[key] = val;
|
|
443
443
|
} else {
|
|
444
444
|
to[key] = deepAssign(Object(to[key]), val);
|
|
@@ -1296,7 +1296,7 @@ var stdin_default$e = defineComponent({
|
|
|
1296
1296
|
attrs,
|
|
1297
1297
|
slots
|
|
1298
1298
|
}) {
|
|
1299
|
-
const
|
|
1299
|
+
const root2 = ref();
|
|
1300
1300
|
const lazyRender = useLazyRender(() => props.show || !props.lazyRender);
|
|
1301
1301
|
const onTouchMove = (event) => {
|
|
1302
1302
|
if (props.lockScroll) {
|
|
@@ -1310,13 +1310,13 @@ var stdin_default$e = defineComponent({
|
|
|
1310
1310
|
style.animationDuration = `${props.duration}s`;
|
|
1311
1311
|
}
|
|
1312
1312
|
return withDirectives(createVNode("div", mergeProps({
|
|
1313
|
-
"ref":
|
|
1313
|
+
"ref": root2,
|
|
1314
1314
|
"style": style,
|
|
1315
1315
|
"class": [bem$d(), props.className]
|
|
1316
1316
|
}, attrs), [(_a = slots.default) == null ? void 0 : _a.call(slots)]), [[vShow, props.show]]);
|
|
1317
1317
|
});
|
|
1318
1318
|
useEventListener("touchmove", onTouchMove, {
|
|
1319
|
-
target:
|
|
1319
|
+
target: root2
|
|
1320
1320
|
});
|
|
1321
1321
|
return () => {
|
|
1322
1322
|
const Content = createVNode(Transition, {
|
|
@@ -1633,7 +1633,7 @@ var stdin_default$c = defineComponent({
|
|
|
1633
1633
|
let touchStartTime;
|
|
1634
1634
|
let momentumOffset;
|
|
1635
1635
|
let transitionEndTrigger;
|
|
1636
|
-
const
|
|
1636
|
+
const root2 = ref();
|
|
1637
1637
|
const wrapper = ref();
|
|
1638
1638
|
const currentOffset = ref(0);
|
|
1639
1639
|
const currentDuration = ref(0);
|
|
@@ -1716,9 +1716,9 @@ var stdin_default$c = defineComponent({
|
|
|
1716
1716
|
emit("scrollInto", props.options[newIndex]);
|
|
1717
1717
|
}
|
|
1718
1718
|
currentOffset.value = newOffset;
|
|
1719
|
-
const
|
|
1720
|
-
if (
|
|
1721
|
-
touchStartTime =
|
|
1719
|
+
const now2 = Date.now();
|
|
1720
|
+
if (now2 - touchStartTime > MOMENTUM_TIME) {
|
|
1721
|
+
touchStartTime = now2;
|
|
1722
1722
|
momentumOffset = newOffset;
|
|
1723
1723
|
}
|
|
1724
1724
|
};
|
|
@@ -1779,10 +1779,10 @@ var stdin_default$c = defineComponent({
|
|
|
1779
1779
|
currentOffset.value = offset;
|
|
1780
1780
|
});
|
|
1781
1781
|
useEventListener("touchmove", onTouchMove, {
|
|
1782
|
-
target:
|
|
1782
|
+
target: root2
|
|
1783
1783
|
});
|
|
1784
1784
|
return () => createVNode("div", {
|
|
1785
|
-
"ref":
|
|
1785
|
+
"ref": root2,
|
|
1786
1786
|
"class": bem$a(),
|
|
1787
1787
|
"onTouchstartPassive": onTouchStart,
|
|
1788
1788
|
"onTouchend": onTouchEnd,
|
|
@@ -1879,7 +1879,7 @@ const useSyncPropRef = (getProp, setProp) => {
|
|
|
1879
1879
|
!!(process.env.NODE_ENV !== "production") ? Object.freeze([]) : [];
|
|
1880
1880
|
const isArray = Array.isArray;
|
|
1881
1881
|
const isString = (val) => typeof val === "string";
|
|
1882
|
-
const isObject = (val) => val !== null && typeof val === "object";
|
|
1882
|
+
const isObject$1 = (val) => val !== null && typeof val === "object";
|
|
1883
1883
|
const cacheStringFunction = (fn) => {
|
|
1884
1884
|
const cache = /* @__PURE__ */ Object.create(null);
|
|
1885
1885
|
return (str) => {
|
|
@@ -1904,7 +1904,7 @@ function normalizeStyle(value) {
|
|
|
1904
1904
|
}
|
|
1905
1905
|
}
|
|
1906
1906
|
return res;
|
|
1907
|
-
} else if (isString(value) || isObject(value)) {
|
|
1907
|
+
} else if (isString(value) || isObject$1(value)) {
|
|
1908
1908
|
return value;
|
|
1909
1909
|
}
|
|
1910
1910
|
}
|
|
@@ -1945,7 +1945,7 @@ function normalizeClass(value) {
|
|
|
1945
1945
|
res += normalized + " ";
|
|
1946
1946
|
}
|
|
1947
1947
|
}
|
|
1948
|
-
} else if (isObject(value)) {
|
|
1948
|
+
} else if (isObject$1(value)) {
|
|
1949
1949
|
for (const name2 in value) {
|
|
1950
1950
|
if (value[name2]) {
|
|
1951
1951
|
res += name2 + " ";
|
|
@@ -2062,8 +2062,8 @@ var stdin_default$a = defineComponent({
|
|
|
2062
2062
|
emit,
|
|
2063
2063
|
slots
|
|
2064
2064
|
}) {
|
|
2065
|
-
const
|
|
2066
|
-
const scrollParent = useScrollParent(
|
|
2065
|
+
const root2 = ref();
|
|
2066
|
+
const scrollParent = useScrollParent(root2);
|
|
2067
2067
|
const state = reactive({
|
|
2068
2068
|
fixed: false,
|
|
2069
2069
|
width: 0,
|
|
@@ -2109,14 +2109,14 @@ var stdin_default$a = defineComponent({
|
|
|
2109
2109
|
isFixed: state.fixed
|
|
2110
2110
|
});
|
|
2111
2111
|
const onScroll = () => {
|
|
2112
|
-
if (!
|
|
2112
|
+
if (!root2.value || isHidden(root2)) {
|
|
2113
2113
|
return;
|
|
2114
2114
|
}
|
|
2115
2115
|
const {
|
|
2116
2116
|
container,
|
|
2117
2117
|
position
|
|
2118
2118
|
} = props;
|
|
2119
|
-
const rootRect = useRect(
|
|
2119
|
+
const rootRect = useRect(root2);
|
|
2120
2120
|
const scrollTop = getScrollTop(window);
|
|
2121
2121
|
state.width = rootRect.width;
|
|
2122
2122
|
state.height = rootRect.height;
|
|
@@ -2149,14 +2149,14 @@ var stdin_default$a = defineComponent({
|
|
|
2149
2149
|
target: scrollParent,
|
|
2150
2150
|
passive: true
|
|
2151
2151
|
});
|
|
2152
|
-
useVisibilityChange(
|
|
2152
|
+
useVisibilityChange(root2, onScroll);
|
|
2153
2153
|
watch([windowWidth, windowHeight], () => {
|
|
2154
|
-
if (!
|
|
2154
|
+
if (!root2.value || isHidden(root2) || !state.fixed) {
|
|
2155
2155
|
return;
|
|
2156
2156
|
}
|
|
2157
2157
|
isReset.value = true;
|
|
2158
2158
|
nextTick(() => {
|
|
2159
|
-
const rootRect = useRect(
|
|
2159
|
+
const rootRect = useRect(root2);
|
|
2160
2160
|
state.width = rootRect.width;
|
|
2161
2161
|
state.height = rootRect.height;
|
|
2162
2162
|
isReset.value = false;
|
|
@@ -2165,7 +2165,7 @@ var stdin_default$a = defineComponent({
|
|
|
2165
2165
|
return () => {
|
|
2166
2166
|
var _a;
|
|
2167
2167
|
return createVNode("div", {
|
|
2168
|
-
"ref":
|
|
2168
|
+
"ref": root2,
|
|
2169
2169
|
"style": rootStyle.value
|
|
2170
2170
|
}, [createVNode("div", {
|
|
2171
2171
|
"class": bem$9({
|
|
@@ -2201,7 +2201,7 @@ var stdin_default$9 = defineComponent({
|
|
|
2201
2201
|
emit,
|
|
2202
2202
|
slots
|
|
2203
2203
|
}) {
|
|
2204
|
-
const
|
|
2204
|
+
const root2 = ref();
|
|
2205
2205
|
const track = ref();
|
|
2206
2206
|
const state = reactive({
|
|
2207
2207
|
rect: null,
|
|
@@ -2345,15 +2345,15 @@ var stdin_default$9 = defineComponent({
|
|
|
2345
2345
|
}
|
|
2346
2346
|
};
|
|
2347
2347
|
const initialize = (active = +props.initialSwipe) => {
|
|
2348
|
-
if (!
|
|
2348
|
+
if (!root2.value) {
|
|
2349
2349
|
return;
|
|
2350
2350
|
}
|
|
2351
2351
|
const cb = () => {
|
|
2352
2352
|
var _a, _b;
|
|
2353
|
-
if (!isHidden(
|
|
2353
|
+
if (!isHidden(root2)) {
|
|
2354
2354
|
const rect = {
|
|
2355
|
-
width:
|
|
2356
|
-
height:
|
|
2355
|
+
width: root2.value.offsetWidth,
|
|
2356
|
+
height: root2.value.offsetHeight
|
|
2357
2357
|
};
|
|
2358
2358
|
state.rect = rect;
|
|
2359
2359
|
state.width = +((_a = props.width) != null ? _a : rect.width);
|
|
@@ -2373,7 +2373,7 @@ var stdin_default$9 = defineComponent({
|
|
|
2373
2373
|
});
|
|
2374
2374
|
autoplay();
|
|
2375
2375
|
};
|
|
2376
|
-
if (isHidden(
|
|
2376
|
+
if (isHidden(root2)) {
|
|
2377
2377
|
nextTick().then(cb);
|
|
2378
2378
|
} else {
|
|
2379
2379
|
cb();
|
|
@@ -2526,7 +2526,7 @@ var stdin_default$9 = defineComponent({
|
|
|
2526
2526
|
return () => {
|
|
2527
2527
|
var _a;
|
|
2528
2528
|
return createVNode("div", {
|
|
2529
|
-
"ref":
|
|
2529
|
+
"ref": root2,
|
|
2530
2530
|
"class": bem$8()
|
|
2531
2531
|
}, [createVNode("div", {
|
|
2532
2532
|
"ref": track,
|
|
@@ -2640,12 +2640,12 @@ var stdin_default$7 = defineComponent({
|
|
|
2640
2640
|
let stickyFixed;
|
|
2641
2641
|
let cancelScrollLeftToRaf;
|
|
2642
2642
|
let cancelScrollTopToRaf;
|
|
2643
|
-
const
|
|
2643
|
+
const root2 = ref();
|
|
2644
2644
|
const navRef = ref();
|
|
2645
2645
|
const wrapRef = ref();
|
|
2646
2646
|
const contentRef = ref();
|
|
2647
2647
|
const id = useId();
|
|
2648
|
-
const scroller = useScrollParent(
|
|
2648
|
+
const scroller = useScrollParent(root2);
|
|
2649
2649
|
const [titleRefs, setTitleRefs] = useRefs();
|
|
2650
2650
|
const {
|
|
2651
2651
|
children,
|
|
@@ -2694,7 +2694,7 @@ var stdin_default$7 = defineComponent({
|
|
|
2694
2694
|
const shouldAnimate = state.inited;
|
|
2695
2695
|
nextTick(() => {
|
|
2696
2696
|
const titles = titleRefs.value;
|
|
2697
|
-
if (!titles || !titles[state.currentIndex] || props.type !== "line" || isHidden(
|
|
2697
|
+
if (!titles || !titles[state.currentIndex] || props.type !== "line" || isHidden(root2.value)) {
|
|
2698
2698
|
return;
|
|
2699
2699
|
}
|
|
2700
2700
|
const title = titles[state.currentIndex].$el;
|
|
@@ -2750,7 +2750,7 @@ var stdin_default$7 = defineComponent({
|
|
|
2750
2750
|
}
|
|
2751
2751
|
}
|
|
2752
2752
|
if (stickyFixed && !props.scrollspy) {
|
|
2753
|
-
setRootScrollTop(Math.ceil(getElementTop(
|
|
2753
|
+
setRootScrollTop(Math.ceil(getElementTop(root2.value) - offsetTopPx.value));
|
|
2754
2754
|
}
|
|
2755
2755
|
};
|
|
2756
2756
|
const setCurrentIndexByName = (name2, skipScrollIntoView) => {
|
|
@@ -2899,7 +2899,7 @@ var stdin_default$7 = defineComponent({
|
|
|
2899
2899
|
onActivated(setLine);
|
|
2900
2900
|
onPopupReopen(setLine);
|
|
2901
2901
|
onMountedOrActivated(init);
|
|
2902
|
-
useVisibilityChange(
|
|
2902
|
+
useVisibilityChange(root2, setLine);
|
|
2903
2903
|
useEventListener("scroll", onScroll, {
|
|
2904
2904
|
target: scroller,
|
|
2905
2905
|
passive: true
|
|
@@ -2915,10 +2915,10 @@ var stdin_default$7 = defineComponent({
|
|
|
2915
2915
|
scrollIntoView
|
|
2916
2916
|
});
|
|
2917
2917
|
return () => createVNode("div", {
|
|
2918
|
-
"ref":
|
|
2918
|
+
"ref": root2,
|
|
2919
2919
|
"class": bem$6([props.type])
|
|
2920
2920
|
}, [props.showHeader ? props.sticky ? createVNode(Sticky, {
|
|
2921
|
-
"container":
|
|
2921
|
+
"container": root2.value,
|
|
2922
2922
|
"offsetTop": offsetTopPx.value,
|
|
2923
2923
|
"onScroll": onStickyScroll
|
|
2924
2924
|
}, {
|
|
@@ -3664,13 +3664,13 @@ function usePopupState() {
|
|
|
3664
3664
|
}
|
|
3665
3665
|
function mountComponent(RootComponent) {
|
|
3666
3666
|
const app = createApp(RootComponent);
|
|
3667
|
-
const
|
|
3668
|
-
document.body.appendChild(
|
|
3667
|
+
const root2 = document.createElement("div");
|
|
3668
|
+
document.body.appendChild(root2);
|
|
3669
3669
|
return {
|
|
3670
|
-
instance: app.mount(
|
|
3670
|
+
instance: app.mount(root2),
|
|
3671
3671
|
unmount() {
|
|
3672
3672
|
app.unmount();
|
|
3673
|
-
document.body.removeChild(
|
|
3673
|
+
document.body.removeChild(root2);
|
|
3674
3674
|
}
|
|
3675
3675
|
};
|
|
3676
3676
|
}
|
|
@@ -3700,7 +3700,7 @@ let allowMultiple = false;
|
|
|
3700
3700
|
let currentOptions = extend({}, defaultOptions);
|
|
3701
3701
|
const defaultOptionsMap = /* @__PURE__ */ new Map();
|
|
3702
3702
|
function parseOptions(message) {
|
|
3703
|
-
if (isObject$
|
|
3703
|
+
if (isObject$2(message)) {
|
|
3704
3704
|
return message;
|
|
3705
3705
|
}
|
|
3706
3706
|
return {
|
|
@@ -4347,28 +4347,28 @@ var stdin_default = defineComponent({
|
|
|
4347
4347
|
if (defaultDate === null) {
|
|
4348
4348
|
return defaultDate;
|
|
4349
4349
|
}
|
|
4350
|
-
const
|
|
4350
|
+
const now2 = getToday();
|
|
4351
4351
|
if (type === "range") {
|
|
4352
4352
|
if (!Array.isArray(defaultDate)) {
|
|
4353
4353
|
defaultDate = [];
|
|
4354
4354
|
}
|
|
4355
|
-
if (defaultDate.length === 1 && compareDay(defaultDate[0],
|
|
4355
|
+
if (defaultDate.length === 1 && compareDay(defaultDate[0], now2) === 1) {
|
|
4356
4356
|
defaultDate = [];
|
|
4357
4357
|
}
|
|
4358
4358
|
const min = minDate.value;
|
|
4359
4359
|
const max = maxDate.value;
|
|
4360
|
-
const start = limitDateRange(defaultDate[0] ||
|
|
4361
|
-
const end = limitDateRange(defaultDate[1] || (allowSameDay ?
|
|
4360
|
+
const start = limitDateRange(defaultDate[0] || now2, min, max ? allowSameDay ? max : getPrevDay(max) : void 0);
|
|
4361
|
+
const end = limitDateRange(defaultDate[1] || (allowSameDay ? now2 : getNextDay(now2)), min ? allowSameDay ? min : getNextDay(min) : void 0);
|
|
4362
4362
|
return [start, end];
|
|
4363
4363
|
}
|
|
4364
4364
|
if (type === "multiple") {
|
|
4365
4365
|
if (Array.isArray(defaultDate)) {
|
|
4366
4366
|
return defaultDate.map((date) => limitDateRange(date));
|
|
4367
4367
|
}
|
|
4368
|
-
return [limitDateRange(
|
|
4368
|
+
return [limitDateRange(now2)];
|
|
4369
4369
|
}
|
|
4370
4370
|
if (!defaultDate || Array.isArray(defaultDate)) {
|
|
4371
|
-
defaultDate =
|
|
4371
|
+
defaultDate = now2;
|
|
4372
4372
|
}
|
|
4373
4373
|
return limitDateRange(defaultDate);
|
|
4374
4374
|
};
|
|
@@ -4703,7 +4703,7 @@ var stdin_default = defineComponent({
|
|
|
4703
4703
|
}
|
|
4704
4704
|
});
|
|
4705
4705
|
const Calendar = withInstall(stdin_default);
|
|
4706
|
-
const _sfc_main$
|
|
4706
|
+
const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
4707
4707
|
__name: "JbMobileButton",
|
|
4708
4708
|
setup(__props) {
|
|
4709
4709
|
const attrs = useAttrs();
|
|
@@ -4725,17 +4725,17 @@ const _export_sfc = (sfc, props) => {
|
|
|
4725
4725
|
}
|
|
4726
4726
|
return target;
|
|
4727
4727
|
};
|
|
4728
|
-
const JbMobileButton = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
4729
|
-
const _imports_0$
|
|
4728
|
+
const JbMobileButton = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-1588f7ed"]]);
|
|
4729
|
+
const _imports_0$6 = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24px'%20height='24px'%20viewBox='0%200%2024%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%2017%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='按地区'%20transform='translate(-26,%20-254)'%3e%3cg%20id='编组-17'%20transform='translate(26,%20254)'%3e%3ccircle%20id='椭圆形'%20fill='%23F4F4F4'%20cx='12'%20cy='12'%20r='12'%3e%3c/circle%3e%3cpolyline%20id='路径'%20stroke='%23000000'%20stroke-width='1.33333333'%20stroke-linecap='round'%20stroke-linejoin='round'%20points='14%2016%2010%2012%2014%208'%3e%3c/polyline%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
4730
4730
|
const forwardDisabledSvg = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24px'%20height='24px'%20viewBox='0%200%2024%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%2017备份%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='总部'%20transform='translate(-325,%20-254)'%3e%3cg%20id='编组-11'%20transform='translate(26,%20254)'%3e%3cg%20id='编组-17备份'%20transform='translate(299,%200)'%3e%3ccircle%20id='椭圆形'%20fill='%23F4F4F4'%20cx='12'%20cy='12'%20r='12'%3e%3c/circle%3e%3cpolyline%20id='路径'%20stroke='%23C9C9C9'%20stroke-width='1.33333333'%20stroke-linecap='round'%20stroke-linejoin='round'%20transform='translate(12,%2012)%20scale(-1,%201)%20translate(-12,%20-12)'%20points='14%2016%2010%2012%2014%208'%3e%3c/polyline%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
4731
4731
|
const forwardSvg = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24px'%20height='24px'%20viewBox='0%200%2024%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%2017备份%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='按地区'%20transform='translate(-325,%20-254)'%3e%3cg%20id='编组-11'%20transform='translate(26,%20254)'%3e%3cg%20id='编组-17备份'%20transform='translate(299,%200)'%3e%3ccircle%20id='椭圆形'%20fill='%23F4F4F4'%20cx='12'%20cy='12'%20r='12'%3e%3c/circle%3e%3cpolyline%20id='路径'%20stroke='%23000000'%20stroke-width='1.33333333'%20stroke-linecap='round'%20stroke-linejoin='round'%20transform='translate(12,%2012)%20scale(-1,%201)%20translate(-12,%20-12)'%20points='14%2016%2010%2012%2014%208'%3e%3c/polyline%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
4732
|
-
const _imports_0$
|
|
4733
|
-
const _hoisted_1$
|
|
4732
|
+
const _imports_0$5 = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24px'%20height='24px'%20viewBox='0%200%2024%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e图标(24)/关闭%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='我的服务备份-15'%20transform='translate(-339,%20-343)'%3e%3cg%20id='编组-4'%20transform='translate(0,%20331)'%3e%3cg%20id='图标(24)/关闭'%20transform='translate(339,%2012)'%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='24'%20height='24'%3e%3c/rect%3e%3cg%20id='编组-18'%20transform='translate(6,%206)'%20stroke='%23D2D6DA'%20stroke-linecap='round'%20stroke-width='1.5'%3e%3cline%20x1='-2.16636906'%20y1='5.83363094'%20x2='13.8336309'%20y2='5.83363094'%20id='路径-6'%20transform='translate(5.8336,%205.8336)%20rotate(-315)%20translate(-5.8336,%20-5.8336)'%3e%3c/line%3e%3cline%20x1='5.83363094'%20y1='13.8336309'%20x2='5.83363094'%20y2='-2.16636906'%20id='路径-6'%20transform='translate(5.8336,%205.8336)%20rotate(-315)%20translate(-5.8336,%20-5.8336)'%3e%3c/line%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
4733
|
+
const _hoisted_1$7 = { class: "jb-mobile-popup__header" };
|
|
4734
4734
|
const _hoisted_2$5 = {
|
|
4735
4735
|
key: 0,
|
|
4736
4736
|
class: "jb-mobile-popup__bottom"
|
|
4737
4737
|
};
|
|
4738
|
-
const _sfc_main$
|
|
4738
|
+
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
4739
4739
|
__name: "JbMobilePopup",
|
|
4740
4740
|
props: {
|
|
4741
4741
|
visible: {
|
|
@@ -4808,7 +4808,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
4808
4808
|
onClosed: handleClose
|
|
4809
4809
|
}), {
|
|
4810
4810
|
default: withCtx(() => [
|
|
4811
|
-
createElementVNode("div", _hoisted_1$
|
|
4811
|
+
createElementVNode("div", _hoisted_1$7, [
|
|
4812
4812
|
createElementVNode("div", null, toDisplayString(__props.title), 1),
|
|
4813
4813
|
createElementVNode("div", {
|
|
4814
4814
|
class: "jb-mobile-popup__close-icon",
|
|
@@ -4816,17 +4816,17 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
4816
4816
|
}, _cache[1] || (_cache[1] = [
|
|
4817
4817
|
createElementVNode("img", {
|
|
4818
4818
|
class: "jb-mobile-popup__close-icon__inner",
|
|
4819
|
-
src: _imports_0$
|
|
4819
|
+
src: _imports_0$5,
|
|
4820
4820
|
alt: ""
|
|
4821
4821
|
}, null, -1)
|
|
4822
4822
|
]))
|
|
4823
4823
|
]),
|
|
4824
4824
|
createElementVNode("div", {
|
|
4825
|
-
class: "jb-mobile-popup__content",
|
|
4825
|
+
class: normalizeClass$1(["jb-mobile-popup__content", { "safe-area-inset-bottom": !__props.footButton }]),
|
|
4826
4826
|
style: normalizeStyle$1({ height: contentHeightComputed.value })
|
|
4827
4827
|
}, [
|
|
4828
4828
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
4829
|
-
],
|
|
4829
|
+
], 6),
|
|
4830
4830
|
__props.footButton ? (openBlock(), createElementBlock("div", _hoisted_2$5, [
|
|
4831
4831
|
createVNode(JbMobileButton, {
|
|
4832
4832
|
type: "primary",
|
|
@@ -4847,14 +4847,18 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
4847
4847
|
};
|
|
4848
4848
|
}
|
|
4849
4849
|
});
|
|
4850
|
-
const JbMobilePopup = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
4851
|
-
const _hoisted_1$
|
|
4852
|
-
const _hoisted_2$4 = {
|
|
4850
|
+
const JbMobilePopup = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-f9a73fb1"]]);
|
|
4851
|
+
const _hoisted_1$6 = { class: "jb-mobile-date-picker" };
|
|
4852
|
+
const _hoisted_2$4 = { class: "jb-mobile-date-picker__value" };
|
|
4853
|
+
const _hoisted_3$3 = ["src"];
|
|
4854
|
+
const _hoisted_4$2 = { class: "jb-mobile-time-picker__calendar__inner" };
|
|
4855
|
+
const _hoisted_5$1 = { class: "jb-mobile-time-picker__group-wrap" };
|
|
4856
|
+
const _hoisted_6$1 = {
|
|
4853
4857
|
key: 0,
|
|
4854
4858
|
class: "jb-mobile-time-picker__group__title"
|
|
4855
4859
|
};
|
|
4856
|
-
const
|
|
4857
|
-
const _sfc_main$
|
|
4860
|
+
const _hoisted_7$1 = ["onClick"];
|
|
4861
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
4858
4862
|
__name: "JbMobileTimePicker",
|
|
4859
4863
|
props: {
|
|
4860
4864
|
visible: {
|
|
@@ -4881,9 +4885,26 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
4881
4885
|
valueFormat: {
|
|
4882
4886
|
type: String,
|
|
4883
4887
|
default: "YYYY-MM-DD HH:mm:ss"
|
|
4888
|
+
},
|
|
4889
|
+
withSelectTab: {
|
|
4890
|
+
type: Boolean,
|
|
4891
|
+
default: false
|
|
4892
|
+
},
|
|
4893
|
+
datePickerTypeList: {
|
|
4894
|
+
type: Array,
|
|
4895
|
+
default: () => ["dateRange", "week", "month", "quarter", "year"]
|
|
4896
|
+
},
|
|
4897
|
+
disabledTab: {
|
|
4898
|
+
type: Boolean,
|
|
4899
|
+
default: false
|
|
4884
4900
|
}
|
|
4885
4901
|
},
|
|
4886
|
-
emits: [
|
|
4902
|
+
emits: [
|
|
4903
|
+
"update:visible",
|
|
4904
|
+
"update:timePickerType",
|
|
4905
|
+
"confirm",
|
|
4906
|
+
"changeDateFail"
|
|
4907
|
+
],
|
|
4887
4908
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
4888
4909
|
dayjs.extend(weekOfYear);
|
|
4889
4910
|
dayjs.extend(quarterOfYear);
|
|
@@ -4898,6 +4919,74 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
4898
4919
|
emits("update:visible", val);
|
|
4899
4920
|
}
|
|
4900
4921
|
});
|
|
4922
|
+
const isLatestDate = ref(false);
|
|
4923
|
+
const dateFormatValue = ref("");
|
|
4924
|
+
const isShowTimePicker = ref(false);
|
|
4925
|
+
const dateFilterTypeListDefault = computed(() => {
|
|
4926
|
+
return [
|
|
4927
|
+
{
|
|
4928
|
+
label: "天",
|
|
4929
|
+
value: "dateRange"
|
|
4930
|
+
},
|
|
4931
|
+
{
|
|
4932
|
+
label: "周",
|
|
4933
|
+
value: "week"
|
|
4934
|
+
},
|
|
4935
|
+
{
|
|
4936
|
+
label: "月",
|
|
4937
|
+
value: "month"
|
|
4938
|
+
},
|
|
4939
|
+
{
|
|
4940
|
+
label: "季",
|
|
4941
|
+
value: "quarter"
|
|
4942
|
+
},
|
|
4943
|
+
{
|
|
4944
|
+
label: "年",
|
|
4945
|
+
value: "year"
|
|
4946
|
+
}
|
|
4947
|
+
];
|
|
4948
|
+
});
|
|
4949
|
+
const timePickerType = computed({
|
|
4950
|
+
get() {
|
|
4951
|
+
return props.timePickerType;
|
|
4952
|
+
},
|
|
4953
|
+
set(val) {
|
|
4954
|
+
emits("update:timePickerType", val);
|
|
4955
|
+
}
|
|
4956
|
+
});
|
|
4957
|
+
const dateFilterTypeList = computed(
|
|
4958
|
+
() => dateFilterTypeListDefault.value.filter(
|
|
4959
|
+
(item) => props.datePickerTypeList.includes(item.value)
|
|
4960
|
+
)
|
|
4961
|
+
);
|
|
4962
|
+
const forwardIcon = computed(() => {
|
|
4963
|
+
return isLatestDate.value ? forwardDisabledSvg : forwardSvg;
|
|
4964
|
+
});
|
|
4965
|
+
const changeDatePrev = () => {
|
|
4966
|
+
console.log("props.disabledTab", props.disabledTab);
|
|
4967
|
+
if (props.disabledTab) {
|
|
4968
|
+
emits("changeDateFail");
|
|
4969
|
+
return;
|
|
4970
|
+
}
|
|
4971
|
+
toPrevDate();
|
|
4972
|
+
};
|
|
4973
|
+
const changeDateNext = () => {
|
|
4974
|
+
if (isLatestDate.value) {
|
|
4975
|
+
return;
|
|
4976
|
+
}
|
|
4977
|
+
if (props.disabledTab) {
|
|
4978
|
+
emits("changeDateFail");
|
|
4979
|
+
return;
|
|
4980
|
+
}
|
|
4981
|
+
toNextDate();
|
|
4982
|
+
};
|
|
4983
|
+
const handleTabsBeforeChange = () => {
|
|
4984
|
+
if (props.disabledTab) {
|
|
4985
|
+
emits("changeDateFail");
|
|
4986
|
+
return false;
|
|
4987
|
+
}
|
|
4988
|
+
return true;
|
|
4989
|
+
};
|
|
4901
4990
|
let isFinishSelect = true;
|
|
4902
4991
|
let weekStartDate = /* @__PURE__ */ new Date();
|
|
4903
4992
|
let weekEndDate = /* @__PURE__ */ new Date();
|
|
@@ -4906,15 +4995,19 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
4906
4995
|
let dateValueFormat = "";
|
|
4907
4996
|
let confirmSelectedCalendarValue = [];
|
|
4908
4997
|
let confirmSelectedTimeValue = "";
|
|
4909
|
-
const isShowCalendar = computed(
|
|
4998
|
+
const isShowCalendar = computed(
|
|
4999
|
+
() => ["dateRange", "week"].includes(props.timePickerType)
|
|
5000
|
+
);
|
|
4910
5001
|
const minDate = computed(() => dayjs(props.minDate).toDate());
|
|
4911
5002
|
const maxDate = computed(() => dayjs(props.maxDate).toDate());
|
|
4912
5003
|
const timeKey = computed(() => timeKeyMap[props.timePickerType]);
|
|
5004
|
+
const defaultValueFirst = ref(props.defaultValue);
|
|
5005
|
+
const defaultValueSecond = ref(props.defaultValue);
|
|
4913
5006
|
const defaultDate = computed(() => {
|
|
4914
5007
|
return props.timePickerType === "dateRange" ? [
|
|
4915
|
-
dayjs(
|
|
4916
|
-
dayjs(
|
|
4917
|
-
] : dayjs(
|
|
5008
|
+
dayjs(defaultValueFirst.value).startOf(timeKey.value).toDate(),
|
|
5009
|
+
dayjs(defaultValueSecond.value).endOf(timeKey.value).toDate()
|
|
5010
|
+
] : dayjs(defaultValueFirst.value).startOf(timeKey.value).toDate();
|
|
4918
5011
|
});
|
|
4919
5012
|
const startYear = dayjs(minDate.value).year();
|
|
4920
5013
|
const endYear = dayjs(maxDate.value).year();
|
|
@@ -4966,7 +5059,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
4966
5059
|
const timeItem = {};
|
|
4967
5060
|
timeItem.title = `${currentYear}年`;
|
|
4968
5061
|
timeItem.value = currentYear + "";
|
|
4969
|
-
timeItem.children = [
|
|
5062
|
+
timeItem.children = [
|
|
5063
|
+
...new Array(currentYear < endYear ? 12 : endMonth).keys()
|
|
5064
|
+
].map((item) => {
|
|
4970
5065
|
const month = item + 1;
|
|
4971
5066
|
return {
|
|
4972
5067
|
label: `${month}月`,
|
|
@@ -4987,7 +5082,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
4987
5082
|
const timeItem = {};
|
|
4988
5083
|
timeItem.title = `${currentYear}年`;
|
|
4989
5084
|
timeItem.value = currentYear + "";
|
|
4990
|
-
timeItem.children = [
|
|
5085
|
+
timeItem.children = [
|
|
5086
|
+
...new Array(currentYear < endYear ? 4 : endQuarter).keys()
|
|
5087
|
+
].map((item) => {
|
|
4991
5088
|
return {
|
|
4992
5089
|
label: `${numberToChinese[item + 1]}季度`,
|
|
4993
5090
|
value: `${currentYear}-${fillZero(1 + 3 * item)}-01`
|
|
@@ -5002,11 +5099,13 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5002
5099
|
};
|
|
5003
5100
|
},
|
|
5004
5101
|
year() {
|
|
5005
|
-
const timeList = [
|
|
5006
|
-
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
|
|
5102
|
+
const timeList = [
|
|
5103
|
+
{
|
|
5104
|
+
title: "",
|
|
5105
|
+
value: "year",
|
|
5106
|
+
children: []
|
|
5107
|
+
}
|
|
5108
|
+
];
|
|
5010
5109
|
for (let currentYear = startYear; currentYear <= endYear; currentYear++) {
|
|
5011
5110
|
timeList[0].children.push({
|
|
5012
5111
|
label: `${currentYear}年`,
|
|
@@ -5023,22 +5122,29 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5023
5122
|
const calendarRef = ref();
|
|
5024
5123
|
const timePickerContentRef = ref();
|
|
5025
5124
|
const selectedTimeValue = ref("");
|
|
5026
|
-
const timePickerTypeObj = computed(
|
|
5027
|
-
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5125
|
+
const timePickerTypeObj = computed(
|
|
5126
|
+
() => timePickerTypeMap[props.timePickerType]()
|
|
5127
|
+
);
|
|
5128
|
+
watch(
|
|
5129
|
+
() => visible.value,
|
|
5130
|
+
(newVal) => {
|
|
5131
|
+
if (newVal) {
|
|
5132
|
+
selectedTimeValue.value = confirmSelectedTimeValue || dayjs(defaultDate.value).format("YYYY-MM-DD");
|
|
5133
|
+
nextTick(() => {
|
|
5134
|
+
setSelectedScrollIntoView();
|
|
5135
|
+
});
|
|
5136
|
+
}
|
|
5033
5137
|
}
|
|
5034
|
-
|
|
5138
|
+
);
|
|
5035
5139
|
const setDateValueFormat = (value, format) => {
|
|
5036
5140
|
const year = dayjs(value[0]).year();
|
|
5037
5141
|
if (props.timePickerType === "dateRange") {
|
|
5038
5142
|
if (dayjs(value[0]).isSame(dayjs(value[1]), "day")) {
|
|
5039
5143
|
dateValueFormat = `${dayjs(value[0]).format(format)}`;
|
|
5040
5144
|
} else {
|
|
5041
|
-
dateValueFormat = `${dayjs(value[0]).format(format)} ~ ${dayjs(
|
|
5145
|
+
dateValueFormat = `${dayjs(value[0]).format(format)} ~ ${dayjs(
|
|
5146
|
+
value[1]
|
|
5147
|
+
).format(format)}`;
|
|
5042
5148
|
}
|
|
5043
5149
|
} else if (props.timePickerType === "week") {
|
|
5044
5150
|
const week = dayjs(value[0]).week();
|
|
@@ -5053,7 +5159,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5053
5159
|
const setSelectedScrollIntoView = () => {
|
|
5054
5160
|
var _a, _b;
|
|
5055
5161
|
if (["dateRange", "week"].includes(props.timePickerType)) {
|
|
5056
|
-
(_a = calendarRef.value) == null ? void 0 : _a.scrollToDate(
|
|
5162
|
+
(_a = calendarRef.value) == null ? void 0 : _a.scrollToDate(
|
|
5163
|
+
Array.isArray(defaultDate.value) ? defaultDate.value[0] : defaultDate.value
|
|
5164
|
+
);
|
|
5057
5165
|
} else {
|
|
5058
5166
|
const selectedItem = (_b = timePickerContentRef.value) == null ? void 0 : _b.querySelector(".selected");
|
|
5059
5167
|
selectedItem == null ? void 0 : selectedItem.scrollIntoView({
|
|
@@ -5098,6 +5206,8 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5098
5206
|
} else {
|
|
5099
5207
|
startTime = dayjs(value).startOf(timeKey.value).format(props.valueFormat);
|
|
5100
5208
|
endTime = dayjs(value).endOf(timeKey.value).format(props.valueFormat);
|
|
5209
|
+
defaultValueFirst.value = startTime;
|
|
5210
|
+
defaultValueSecond.value = endTime;
|
|
5101
5211
|
}
|
|
5102
5212
|
};
|
|
5103
5213
|
const handleSelectDateItem = (value) => {
|
|
@@ -5109,22 +5219,34 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5109
5219
|
return dayjs(endTime).isSame(dayjs(), timeKey.value);
|
|
5110
5220
|
};
|
|
5111
5221
|
const toPrevDate = () => {
|
|
5112
|
-
handleFinishSelectDate(
|
|
5222
|
+
handleFinishSelectDate(
|
|
5223
|
+
dayjs(endTime).subtract(1, timeKey.value).toDate()
|
|
5224
|
+
);
|
|
5113
5225
|
selectedTimeValue.value = dayjs(startTime).format("YYYY-MM-DD");
|
|
5114
5226
|
handleConfirm();
|
|
5115
5227
|
};
|
|
5116
5228
|
const toNextDate = () => {
|
|
5117
|
-
|
|
5118
|
-
|
|
5119
|
-
|
|
5229
|
+
nextTick(() => {
|
|
5230
|
+
handleFinishSelectDate(
|
|
5231
|
+
dayjs(endTime).add(1, timeKey.value).toDate()
|
|
5232
|
+
);
|
|
5233
|
+
selectedTimeValue.value = dayjs(startTime).format("YYYY-MM-DD");
|
|
5234
|
+
handleConfirm();
|
|
5235
|
+
});
|
|
5120
5236
|
};
|
|
5121
5237
|
const confirmSelectDate = () => {
|
|
5122
5238
|
setDateValueFormat([startTime, endTime], timePickerTypeObj.value.format);
|
|
5123
|
-
|
|
5124
|
-
|
|
5125
|
-
value
|
|
5126
|
-
|
|
5127
|
-
}
|
|
5239
|
+
if (props.withSelectTab) {
|
|
5240
|
+
isLatestDate.value = getIsLatestDate();
|
|
5241
|
+
dateFormatValue.value = dateValueFormat;
|
|
5242
|
+
emits("confirm", [startTime, endTime]);
|
|
5243
|
+
} else {
|
|
5244
|
+
emits("confirm", {
|
|
5245
|
+
dateValueFormat,
|
|
5246
|
+
value: [startTime, endTime],
|
|
5247
|
+
isLatestDate: getIsLatestDate()
|
|
5248
|
+
});
|
|
5249
|
+
}
|
|
5128
5250
|
};
|
|
5129
5251
|
const handleBeforeConfirm = () => {
|
|
5130
5252
|
if (!startTime || !endTime) {
|
|
@@ -5137,35 +5259,60 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5137
5259
|
return true;
|
|
5138
5260
|
};
|
|
5139
5261
|
const handleConfirm = () => {
|
|
5140
|
-
confirmSelectedCalendarValue = [
|
|
5262
|
+
confirmSelectedCalendarValue = [
|
|
5263
|
+
dayjs(startTime).toDate(),
|
|
5264
|
+
dayjs(endTime).toDate()
|
|
5265
|
+
];
|
|
5141
5266
|
confirmSelectedTimeValue = selectedTimeValue.value;
|
|
5142
5267
|
confirmSelectDate();
|
|
5143
|
-
|
|
5268
|
+
if (!props.withSelectTab) {
|
|
5269
|
+
handleClose();
|
|
5270
|
+
}
|
|
5144
5271
|
};
|
|
5145
5272
|
const handleClose = () => {
|
|
5146
5273
|
var _a;
|
|
5147
5274
|
visible.value = false;
|
|
5148
|
-
(_a = calendarRef.value) == null ? void 0 : _a.reset(
|
|
5275
|
+
(_a = calendarRef.value) == null ? void 0 : _a.reset(
|
|
5276
|
+
confirmSelectedCalendarValue.length ? confirmSelectedCalendarValue : void 0
|
|
5277
|
+
);
|
|
5149
5278
|
setWeekStartAndEndDate(confirmSelectedCalendarValue[0] || defaultDate.value);
|
|
5150
5279
|
};
|
|
5151
|
-
watch(
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5156
|
-
|
|
5280
|
+
watch(
|
|
5281
|
+
() => timePickerTypeObj.value,
|
|
5282
|
+
() => {
|
|
5283
|
+
confirmSelectedCalendarValue = [];
|
|
5284
|
+
confirmSelectedTimeValue = "";
|
|
5285
|
+
console.log("defaultDate.value", defaultDate.value);
|
|
5286
|
+
handleFinishSelectDate(defaultDate.value);
|
|
5287
|
+
confirmSelectDate();
|
|
5288
|
+
if (props.withSelectTab) {
|
|
5289
|
+
selectedTimeValue.value = confirmSelectedTimeValue || dayjs(defaultDate.value).format("YYYY-MM-DD");
|
|
5290
|
+
nextTick(() => {
|
|
5291
|
+
setSelectedScrollIntoView();
|
|
5292
|
+
});
|
|
5293
|
+
}
|
|
5294
|
+
},
|
|
5295
|
+
{ immediate: true }
|
|
5296
|
+
);
|
|
5297
|
+
watch(timePickerType, (val) => {
|
|
5298
|
+
console.log("val", val);
|
|
5299
|
+
emits("update:timePickerType", val);
|
|
5300
|
+
});
|
|
5157
5301
|
__expose({
|
|
5158
5302
|
toPrevDate,
|
|
5159
5303
|
toNextDate
|
|
5160
5304
|
});
|
|
5161
5305
|
return (_ctx, _cache) => {
|
|
5306
|
+
const _component_van_tab = Tab;
|
|
5307
|
+
const _component_van_tabs = Tabs;
|
|
5308
|
+
const _component_van_icon = Icon;
|
|
5162
5309
|
const _component_van_calendar = Calendar;
|
|
5163
5310
|
return openBlock(), createBlock(JbMobilePopup, mergeProps({
|
|
5164
5311
|
visible: visible.value,
|
|
5165
|
-
"onUpdate:visible": _cache[
|
|
5312
|
+
"onUpdate:visible": _cache[2] || (_cache[2] = ($event) => visible.value = $event)
|
|
5166
5313
|
}, unref(attrs), {
|
|
5167
5314
|
title: timePickerTypeObj.value.title,
|
|
5168
|
-
"grey-bg": !isShowCalendar.value,
|
|
5315
|
+
"grey-bg": !isShowCalendar.value && !__props.withSelectTab,
|
|
5169
5316
|
"before-confirm": handleBeforeConfirm,
|
|
5170
5317
|
onConfirm: handleConfirm,
|
|
5171
5318
|
onClose: handleClose
|
|
@@ -5173,8 +5320,60 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5173
5320
|
default: withCtx(() => [
|
|
5174
5321
|
createElementVNode("div", {
|
|
5175
5322
|
ref_key: "timePickerContentRef",
|
|
5176
|
-
ref: timePickerContentRef
|
|
5323
|
+
ref: timePickerContentRef,
|
|
5324
|
+
class: "time-picker__content"
|
|
5177
5325
|
}, [
|
|
5326
|
+
createElementVNode("div", _hoisted_1$6, [
|
|
5327
|
+
createVNode(_component_van_tabs, {
|
|
5328
|
+
active: timePickerType.value,
|
|
5329
|
+
"onUpdate:active": _cache[0] || (_cache[0] = ($event) => timePickerType.value = $event),
|
|
5330
|
+
"title-inactive-color": "#323233",
|
|
5331
|
+
"title-active-color": "#000",
|
|
5332
|
+
background: "transparent",
|
|
5333
|
+
color: "transparent",
|
|
5334
|
+
"before-change": handleTabsBeforeChange
|
|
5335
|
+
}, {
|
|
5336
|
+
default: withCtx(() => [
|
|
5337
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(dateFilterTypeList.value, (item) => {
|
|
5338
|
+
return openBlock(), createBlock(_component_van_tab, {
|
|
5339
|
+
key: item.value,
|
|
5340
|
+
title: item.label,
|
|
5341
|
+
name: item.value
|
|
5342
|
+
}, null, 8, ["title", "name"]);
|
|
5343
|
+
}), 128))
|
|
5344
|
+
]),
|
|
5345
|
+
_: 1
|
|
5346
|
+
}, 8, ["active"]),
|
|
5347
|
+
createElementVNode("div", _hoisted_2$4, [
|
|
5348
|
+
timePickerType.value !== "dateRange" ? (openBlock(), createElementBlock("div", {
|
|
5349
|
+
key: 0,
|
|
5350
|
+
class: "jb-mobile-date-picker__date-arrow left",
|
|
5351
|
+
onClick: changeDatePrev
|
|
5352
|
+
}, _cache[3] || (_cache[3] = [
|
|
5353
|
+
createElementVNode("img", {
|
|
5354
|
+
src: _imports_0$6,
|
|
5355
|
+
alt: "back"
|
|
5356
|
+
}, null, -1)
|
|
5357
|
+
]))) : createCommentVNode("", true),
|
|
5358
|
+
createElementVNode("div", {
|
|
5359
|
+
class: "jb-mobile-date-picker__date-text",
|
|
5360
|
+
onClick: _cache[1] || (_cache[1] = ($event) => isShowTimePicker.value = true)
|
|
5361
|
+
}, [
|
|
5362
|
+
createTextVNode(toDisplayString(dateFormatValue.value) + " ", 1),
|
|
5363
|
+
createVNode(_component_van_icon, { name: "arrow-down" })
|
|
5364
|
+
]),
|
|
5365
|
+
timePickerType.value !== "dateRange" ? (openBlock(), createElementBlock("div", {
|
|
5366
|
+
key: 1,
|
|
5367
|
+
class: "jb-mobile-date-picker__date-arrow right",
|
|
5368
|
+
onClick: changeDateNext
|
|
5369
|
+
}, [
|
|
5370
|
+
createElementVNode("img", {
|
|
5371
|
+
src: forwardIcon.value,
|
|
5372
|
+
alt: "forward"
|
|
5373
|
+
}, null, 8, _hoisted_3$3)
|
|
5374
|
+
])) : createCommentVNode("", true)
|
|
5375
|
+
])
|
|
5376
|
+
]),
|
|
5178
5377
|
withDirectives(createVNode(_component_van_calendar, {
|
|
5179
5378
|
ref_key: "calendarRef",
|
|
5180
5379
|
ref: calendarRef,
|
|
@@ -5194,28 +5393,28 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5194
5393
|
onConfirm: handleFinishSelectDate
|
|
5195
5394
|
}, {
|
|
5196
5395
|
text: withCtx(({ text }) => [
|
|
5197
|
-
createElementVNode("div",
|
|
5396
|
+
createElementVNode("div", _hoisted_4$2, toDisplayString(text), 1)
|
|
5198
5397
|
]),
|
|
5199
5398
|
_: 1
|
|
5200
5399
|
}, 8, ["type", "min-date", "max-date", "default-date"]), [
|
|
5201
5400
|
[vShow, isShowCalendar.value]
|
|
5202
5401
|
]),
|
|
5203
|
-
withDirectives(createElementVNode("div",
|
|
5402
|
+
withDirectives(createElementVNode("div", _hoisted_5$1, [
|
|
5204
5403
|
(openBlock(true), createElementBlock(Fragment, null, renderList(timePickerTypeObj.value.timeList, (item) => {
|
|
5205
5404
|
return openBlock(), createElementBlock("div", {
|
|
5206
5405
|
key: item.value,
|
|
5207
5406
|
class: "jb-mobile-time-picker__group"
|
|
5208
5407
|
}, [
|
|
5209
|
-
item.title ? (openBlock(), createElementBlock("div",
|
|
5408
|
+
item.title ? (openBlock(), createElementBlock("div", _hoisted_6$1, toDisplayString(item.title), 1)) : createCommentVNode("", true),
|
|
5210
5409
|
createElementVNode("div", {
|
|
5211
|
-
class: normalizeClass$1(["jb-mobile-time-picker__group__list", { "three-in-row":
|
|
5410
|
+
class: normalizeClass$1(["jb-mobile-time-picker__group__list", { "three-in-row": timePickerType.value === "year" }])
|
|
5212
5411
|
}, [
|
|
5213
5412
|
(openBlock(true), createElementBlock(Fragment, null, renderList(item.children, (subItem) => {
|
|
5214
5413
|
return openBlock(), createElementBlock("div", {
|
|
5215
5414
|
key: subItem.value,
|
|
5216
5415
|
class: normalizeClass$1(["jb-mobile-time-picker__group__list-item", { selected: subItem.value === selectedTimeValue.value }]),
|
|
5217
5416
|
onClick: ($event) => handleSelectDateItem(subItem.value)
|
|
5218
|
-
}, toDisplayString(subItem.label), 11,
|
|
5417
|
+
}, toDisplayString(subItem.label), 11, _hoisted_7$1);
|
|
5219
5418
|
}), 128))
|
|
5220
5419
|
], 2)
|
|
5221
5420
|
]);
|
|
@@ -5230,11 +5429,11 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
5230
5429
|
};
|
|
5231
5430
|
}
|
|
5232
5431
|
});
|
|
5233
|
-
const JbMobileTimePicker = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
5234
|
-
const _hoisted_1$
|
|
5432
|
+
const JbMobileTimePicker = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-265b0b23"]]);
|
|
5433
|
+
const _hoisted_1$5 = { class: "jb-mobile-date-picker" };
|
|
5235
5434
|
const _hoisted_2$3 = { class: "jb-mobile-date-picker__value" };
|
|
5236
5435
|
const _hoisted_3$2 = ["src"];
|
|
5237
|
-
const _sfc_main$
|
|
5436
|
+
const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
5238
5437
|
__name: "JbMobileDatePicker",
|
|
5239
5438
|
props: {
|
|
5240
5439
|
datePickerType: {
|
|
@@ -5345,7 +5544,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
5345
5544
|
const _component_van_tab = Tab;
|
|
5346
5545
|
const _component_van_tabs = Tabs;
|
|
5347
5546
|
const _component_van_icon = Icon;
|
|
5348
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5547
|
+
return openBlock(), createElementBlock("div", _hoisted_1$5, [
|
|
5349
5548
|
createVNode(_component_van_tabs, {
|
|
5350
5549
|
active: datePickerType.value,
|
|
5351
5550
|
"onUpdate:active": _cache[0] || (_cache[0] = ($event) => datePickerType.value = $event),
|
|
@@ -5373,7 +5572,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
5373
5572
|
onClick: changeDatePrev
|
|
5374
5573
|
}, _cache[3] || (_cache[3] = [
|
|
5375
5574
|
createElementVNode("img", {
|
|
5376
|
-
src: _imports_0$
|
|
5575
|
+
src: _imports_0$6,
|
|
5377
5576
|
alt: "back"
|
|
5378
5577
|
}, null, -1)
|
|
5379
5578
|
]))) : createCommentVNode("", true),
|
|
@@ -5409,11 +5608,11 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
5409
5608
|
};
|
|
5410
5609
|
}
|
|
5411
5610
|
});
|
|
5412
|
-
const JbMobileDatePicker = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
5413
|
-
const _imports_0$3 = "data:image/png;base64,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";
|
|
5414
|
-
const _hoisted_1$
|
|
5611
|
+
const JbMobileDatePicker = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-54d3d818"]]);
|
|
5612
|
+
const _imports_0$4 = "data:image/png;base64,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";
|
|
5613
|
+
const _hoisted_1$4 = { class: "jb-mobile-empty" };
|
|
5415
5614
|
const _hoisted_2$2 = { class: "jb-mobile-empty__tip" };
|
|
5416
|
-
const _sfc_main$
|
|
5615
|
+
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
5417
5616
|
__name: "JbMobileEmpty",
|
|
5418
5617
|
props: {
|
|
5419
5618
|
tip: {
|
|
@@ -5423,10 +5622,10 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
5423
5622
|
},
|
|
5424
5623
|
setup(__props) {
|
|
5425
5624
|
return (_ctx, _cache) => {
|
|
5426
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5625
|
+
return openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
5427
5626
|
_cache[0] || (_cache[0] = createElementVNode("img", {
|
|
5428
5627
|
class: "jb-mobile-empty__img",
|
|
5429
|
-
src: _imports_0$
|
|
5628
|
+
src: _imports_0$4,
|
|
5430
5629
|
alt: ""
|
|
5431
5630
|
}, null, -1)),
|
|
5432
5631
|
createElementVNode("div", _hoisted_2$2, toDisplayString(__props.tip), 1),
|
|
@@ -5435,10 +5634,10 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
5435
5634
|
};
|
|
5436
5635
|
}
|
|
5437
5636
|
});
|
|
5438
|
-
const JbMobileEmpty = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
5439
|
-
const _imports_0$
|
|
5440
|
-
const _hoisted_1$
|
|
5441
|
-
const _sfc_main$
|
|
5637
|
+
const JbMobileEmpty = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-d9fe44ac"]]);
|
|
5638
|
+
const _imports_0$3 = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='16px'%20height='17px'%20viewBox='0%200%2016%2017'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%203%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='我的服务备份-14'%20transform='translate(-22,%20-143)'%3e%3cg%20id='编组-28'%20transform='translate(0,%20134)'%3e%3cg%20id='编组-13备份'%20transform='translate(10,%200)'%3e%3cg%20id='编组-3'%20transform='translate(12,%209.5)'%3e%3crect%20id='矩形'%20fill='%23006FFE'%20opacity='0'%20x='0'%20y='0'%20width='16'%20height='16'%3e%3c/rect%3e%3cg%20id='编组'%20transform='translate(1.5,%200.5)'%3e%3ccircle%20id='椭圆形'%20stroke='%23666666'%20stroke-width='1.5'%20cx='6.5'%20cy='6.5'%20r='5.75'%3e%3c/circle%3e%3cpath%20d='M11.1363636,9.95454545%20C11.5631291,9.95454545%2011.9090909,10.3005072%2011.9090909,10.7272727%20L11.9090909,14.5909091%20C11.9090909,15.0176746%2011.5631291,15.3636364%2011.1363636,15.3636364%20C10.7095981,15.3636364%2010.3636364,15.0176746%2010.3636364,14.5909091%20L10.3636364,10.7272727%20C10.3636364,10.3005072%2010.7095981,9.95454545%2011.1363636,9.95454545%20Z'%20id='矩形'%20fill='%23666666'%20transform='translate(11.1364,%2012.6591)%20rotate(-45)%20translate(-11.1364,%20-12.6591)'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
5639
|
+
const _hoisted_1$3 = { class: "jb-mobile-search-input" };
|
|
5640
|
+
const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
5442
5641
|
__name: "JbMobileSearchInput",
|
|
5443
5642
|
props: {
|
|
5444
5643
|
modelValue: {
|
|
@@ -5460,10 +5659,10 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
5460
5659
|
}
|
|
5461
5660
|
});
|
|
5462
5661
|
return (_ctx, _cache) => {
|
|
5463
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5662
|
+
return openBlock(), createElementBlock("div", _hoisted_1$3, [
|
|
5464
5663
|
_cache[2] || (_cache[2] = createElementVNode("img", {
|
|
5465
5664
|
class: "jb-mobile-search-input__search-icon",
|
|
5466
|
-
src: _imports_0$
|
|
5665
|
+
src: _imports_0$3,
|
|
5467
5666
|
alt: ""
|
|
5468
5667
|
}, null, -1)),
|
|
5469
5668
|
withDirectives(createElementVNode("input", mergeProps({
|
|
@@ -5488,8 +5687,35 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
5488
5687
|
};
|
|
5489
5688
|
}
|
|
5490
5689
|
});
|
|
5491
|
-
const JbMobileSearchInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
5492
|
-
const _imports_0$
|
|
5690
|
+
const JbMobileSearchInput = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-84b3e7a1"]]);
|
|
5691
|
+
const _imports_0$2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAOBJREFUWEftlDEOwjAMRfMz5AJInIMJcQYWFma2SkG9AEfgAhWRujGzsHAGxMQ5kLhABxsydKmgcQpSF2eLktjPz1ZgRl4YOb9RADWgBtSAGkgaKMty0jRNALDO+baZ+eSc81VVPfveSQGOAJaZABfn3OZngJjUez9l5jMzz40xNgFCb9gbgFUI4ZGCThpoAxRFMbPWHph50asUuBLRtq7reyp5PBcDCExkVd7CZQHER99MILPywQAfTJicnnfbkm2gMxP7uCeinbTnfwOQDJjkzmADkuCSOwqgBtSAGlADL9JbXiGSAZGLAAAAAElFTkSuQmCC";
|
|
5692
|
+
const _imports_0$1 = "data:image/webp;base64,UklGRpICAABXRUJQVlA4WAoAAAAwAAAAHwAAHwAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDhMowAAAC8fwAcQN0AgCJFJ/n/jhkA2uVD+do1AECIe+T+OgjZSmB8sCVhCG6YDaLtr70z8sQi4iSTJkTLiKByEO/8lAA1AIvhf/hQ2ZnbMtyP6z8BtI0VLXoa7XwAAAAAAAAAAAAAAAAAAAAAAAAAA4LTkA85zPuD7mWKnze8+hHaMnZ5tCI/WCdsaIdZ2wrR13yfPzVMrshXJkmRJWFM4fKP0rf7hTwUA";
|
|
5693
|
+
const _hoisted_1$2 = { class: "mobile-select-face" };
|
|
5694
|
+
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
5695
|
+
__name: "JbMobileSelectFace",
|
|
5696
|
+
props: {
|
|
5697
|
+
slotClick: { type: Function }
|
|
5698
|
+
},
|
|
5699
|
+
setup(__props) {
|
|
5700
|
+
const props = __props;
|
|
5701
|
+
const handleClickSlot = () => {
|
|
5702
|
+
props.slotClick && props.slotClick();
|
|
5703
|
+
};
|
|
5704
|
+
return (_ctx, _cache) => {
|
|
5705
|
+
return openBlock(), createElementBlock("div", _hoisted_1$2, [
|
|
5706
|
+
renderSlot(_ctx.$slots, "default", {
|
|
5707
|
+
onClick: withModifiers(handleClickSlot, ["stop"])
|
|
5708
|
+
}, void 0, true),
|
|
5709
|
+
_cache[0] || (_cache[0] = createElementVNode("img", {
|
|
5710
|
+
src: _imports_0$1,
|
|
5711
|
+
alt: "",
|
|
5712
|
+
class: "pull-down"
|
|
5713
|
+
}, null, -1))
|
|
5714
|
+
]);
|
|
5715
|
+
};
|
|
5716
|
+
}
|
|
5717
|
+
});
|
|
5718
|
+
const JbMobileSelectFace = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-942028c6"]]);
|
|
5493
5719
|
const _hoisted_1$1 = { class: "jb-mobile-select__value" };
|
|
5494
5720
|
const _hoisted_2$1 = {
|
|
5495
5721
|
key: 0,
|
|
@@ -5503,6 +5729,11 @@ const _hoisted_4$1 = {
|
|
|
5503
5729
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
5504
5730
|
__name: "JbMobileSelect",
|
|
5505
5731
|
props: {
|
|
5732
|
+
// 当tabIndex == 0 时,选中第一个选项,则显示普通的select样式,如果为1,则显示/ComplaintAnalysis/dialog的样式
|
|
5733
|
+
tabIndex: {
|
|
5734
|
+
type: Number,
|
|
5735
|
+
default: 0
|
|
5736
|
+
},
|
|
5506
5737
|
width: {
|
|
5507
5738
|
type: Number,
|
|
5508
5739
|
default: 92
|
|
@@ -5517,7 +5748,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5517
5748
|
},
|
|
5518
5749
|
popupTitle: {
|
|
5519
5750
|
type: String,
|
|
5520
|
-
default: "
|
|
5751
|
+
default: "请选择事件类型"
|
|
5521
5752
|
},
|
|
5522
5753
|
options: {
|
|
5523
5754
|
type: Array,
|
|
@@ -5529,10 +5760,11 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5529
5760
|
}
|
|
5530
5761
|
},
|
|
5531
5762
|
emits: ["update:modelValue", "change"],
|
|
5532
|
-
setup(__props, { emit: __emit }) {
|
|
5763
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
5533
5764
|
const attrs = useAttrs();
|
|
5534
5765
|
const emits = __emit;
|
|
5535
5766
|
const props = __props;
|
|
5767
|
+
const tabIndex = computed(() => props.tabIndex);
|
|
5536
5768
|
const isShowOptionsPopup = ref(false);
|
|
5537
5769
|
const selectedOptionItem = ref({});
|
|
5538
5770
|
const computedWidth = computed(() => `${props.width}px`);
|
|
@@ -5556,30 +5788,43 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5556
5788
|
}
|
|
5557
5789
|
});
|
|
5558
5790
|
const handleSelectOptionItem = (item) => {
|
|
5791
|
+
console.log("item", item);
|
|
5559
5792
|
selectedOptionItem.value = item;
|
|
5560
5793
|
isShowOptionsPopup.value = false;
|
|
5561
5794
|
modelValue.value = item[fieldNames.value.value];
|
|
5562
5795
|
emits("change", item[fieldNames.value.label]);
|
|
5563
5796
|
};
|
|
5797
|
+
__expose({
|
|
5798
|
+
handleSelectOptionItem
|
|
5799
|
+
});
|
|
5564
5800
|
return (_ctx, _cache) => {
|
|
5565
5801
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
5566
|
-
|
|
5802
|
+
tabIndex.value === 0 ? (openBlock(), createElementBlock("div", {
|
|
5803
|
+
key: 0,
|
|
5567
5804
|
class: "jb-mobile-select",
|
|
5568
5805
|
style: normalizeStyle$1({ width: computedWidth.value }),
|
|
5569
5806
|
onClick: _cache[0] || (_cache[0] = ($event) => isShowOptionsPopup.value = true)
|
|
5570
5807
|
}, [
|
|
5571
5808
|
createElementVNode("div", _hoisted_1$1, toDisplayString(selectedOptionItem.value[fieldNames.value.label] || __props.placeholder), 1),
|
|
5572
|
-
_cache[
|
|
5809
|
+
_cache[3] || (_cache[3] = createElementVNode("img", {
|
|
5573
5810
|
class: "jb-mobile-select__select-down-icon",
|
|
5574
|
-
src: _imports_0$
|
|
5811
|
+
src: _imports_0$2,
|
|
5575
5812
|
alt: ""
|
|
5576
5813
|
}, null, -1))
|
|
5577
|
-
], 4),
|
|
5814
|
+
], 4)) : tabIndex.value === 1 ? (openBlock(), createBlock(JbMobileSelectFace, {
|
|
5815
|
+
key: 1,
|
|
5816
|
+
onClick: _cache[1] || (_cache[1] = ($event) => isShowOptionsPopup.value = true)
|
|
5817
|
+
}, {
|
|
5818
|
+
default: withCtx(() => [
|
|
5819
|
+
createTextVNode(toDisplayString(selectedOptionItem.value[fieldNames.value.label] || __props.placeholder), 1)
|
|
5820
|
+
]),
|
|
5821
|
+
_: 1
|
|
5822
|
+
})) : createCommentVNode("", true),
|
|
5578
5823
|
createVNode(JbMobilePopup, mergeProps({
|
|
5579
5824
|
visible: isShowOptionsPopup.value,
|
|
5580
|
-
"onUpdate:visible": _cache[
|
|
5825
|
+
"onUpdate:visible": _cache[2] || (_cache[2] = ($event) => isShowOptionsPopup.value = $event)
|
|
5581
5826
|
}, unref(attrs), {
|
|
5582
|
-
title:
|
|
5827
|
+
title: __props.popupTitle,
|
|
5583
5828
|
"grey-bg": true,
|
|
5584
5829
|
"foot-button": false,
|
|
5585
5830
|
height: 434
|
|
@@ -5598,12 +5843,12 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
5598
5843
|
]))
|
|
5599
5844
|
]),
|
|
5600
5845
|
_: 1
|
|
5601
|
-
}, 16, ["visible"])
|
|
5846
|
+
}, 16, ["visible", "title"])
|
|
5602
5847
|
], 64);
|
|
5603
5848
|
};
|
|
5604
5849
|
}
|
|
5605
5850
|
});
|
|
5606
|
-
const JbMobileSelect = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-
|
|
5851
|
+
const JbMobileSelect = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-05b6eda0"]]);
|
|
5607
5852
|
const _imports_0 = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24px'%20height='24px'%20viewBox='0%200%2024%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e图标(24)/巡检%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='我的服务备份-14'%20transform='translate(-339,%20-371)'%20fill='%237B52FE'%20fill-rule='nonzero'%3e%3cg%20id='编组-28'%20transform='translate(0,%20134)'%3e%3cg%20id='编组-28备份'%20transform='translate(0,%2051)'%3e%3cg%20id='编组-32备份-4'%20transform='translate(0,%20176)'%3e%3cg%20id='编组-27'%20transform='translate(132,%200)'%3e%3cg%20id='编组'%20transform='translate(211.3571,%2016)'%3e%3cpath%20d='M0.127476811,5.43301045%20L5.51144105,11.8129903%20C5.70234462,12.0384575%206.03582177,12.0632342%206.25572336,11.8699765%20C6.27022237,11.8575882%206.28472138,11.8427223%206.29680387,11.8278563%20L16.146462,0.901366518%20C16.3325325,0.695720566%2016.3325325,0.37610216%2016.1440455,0.170456209%20C15.9555584,-0.0351897433%2015.6438297,-0.0574886986%2015.4287612,0.118425301%20L6.19289432,7.77687878%20C6.01407325,7.92553851%205.76275714,7.93792683%205.57185357,7.80908838%20L0.813763084,4.63520326%20C0.593861494,4.4890212%200.303881373,4.52866379%200.12989331,4.72935442%20C-0.0416782539,4.93004505%20-0.0440947695,5.22984216%200.127476811,5.43301045%20Z'%20id='路径'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
|
|
5608
5853
|
const _hoisted_1 = { class: "jb-mobile-tree-select-popup__search" };
|
|
5609
5854
|
const _hoisted_2 = { class: "jb-mobile-tree-select-popup__list" };
|
|
@@ -5862,7 +6107,331 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
5862
6107
|
};
|
|
5863
6108
|
}
|
|
5864
6109
|
});
|
|
5865
|
-
const JbMobileTreeSelectPopup = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
6110
|
+
const JbMobileTreeSelectPopup = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-5d589597"]]);
|
|
6111
|
+
var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
|
|
6112
|
+
var freeSelf = typeof self == "object" && self && self.Object === Object && self;
|
|
6113
|
+
var root = freeGlobal || freeSelf || Function("return this")();
|
|
6114
|
+
var Symbol$1 = root.Symbol;
|
|
6115
|
+
var objectProto$1 = Object.prototype;
|
|
6116
|
+
var hasOwnProperty = objectProto$1.hasOwnProperty;
|
|
6117
|
+
var nativeObjectToString$1 = objectProto$1.toString;
|
|
6118
|
+
var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
6119
|
+
function getRawTag(value) {
|
|
6120
|
+
var isOwn = hasOwnProperty.call(value, symToStringTag$1), tag = value[symToStringTag$1];
|
|
6121
|
+
try {
|
|
6122
|
+
value[symToStringTag$1] = void 0;
|
|
6123
|
+
var unmasked = true;
|
|
6124
|
+
} catch (e) {
|
|
6125
|
+
}
|
|
6126
|
+
var result = nativeObjectToString$1.call(value);
|
|
6127
|
+
if (unmasked) {
|
|
6128
|
+
if (isOwn) {
|
|
6129
|
+
value[symToStringTag$1] = tag;
|
|
6130
|
+
} else {
|
|
6131
|
+
delete value[symToStringTag$1];
|
|
6132
|
+
}
|
|
6133
|
+
}
|
|
6134
|
+
return result;
|
|
6135
|
+
}
|
|
6136
|
+
var objectProto = Object.prototype;
|
|
6137
|
+
var nativeObjectToString = objectProto.toString;
|
|
6138
|
+
function objectToString(value) {
|
|
6139
|
+
return nativeObjectToString.call(value);
|
|
6140
|
+
}
|
|
6141
|
+
var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
|
|
6142
|
+
var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
6143
|
+
function baseGetTag(value) {
|
|
6144
|
+
if (value == null) {
|
|
6145
|
+
return value === void 0 ? undefinedTag : nullTag;
|
|
6146
|
+
}
|
|
6147
|
+
return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
|
|
6148
|
+
}
|
|
6149
|
+
function isObjectLike(value) {
|
|
6150
|
+
return value != null && typeof value == "object";
|
|
6151
|
+
}
|
|
6152
|
+
var symbolTag = "[object Symbol]";
|
|
6153
|
+
function isSymbol(value) {
|
|
6154
|
+
return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
|
|
6155
|
+
}
|
|
6156
|
+
var reWhitespace = /\s/;
|
|
6157
|
+
function trimmedEndIndex(string) {
|
|
6158
|
+
var index = string.length;
|
|
6159
|
+
while (index-- && reWhitespace.test(string.charAt(index))) {
|
|
6160
|
+
}
|
|
6161
|
+
return index;
|
|
6162
|
+
}
|
|
6163
|
+
var reTrimStart = /^\s+/;
|
|
6164
|
+
function baseTrim(string) {
|
|
6165
|
+
return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
|
|
6166
|
+
}
|
|
6167
|
+
function isObject(value) {
|
|
6168
|
+
var type = typeof value;
|
|
6169
|
+
return value != null && (type == "object" || type == "function");
|
|
6170
|
+
}
|
|
6171
|
+
var NAN = 0 / 0;
|
|
6172
|
+
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
|
6173
|
+
var reIsBinary = /^0b[01]+$/i;
|
|
6174
|
+
var reIsOctal = /^0o[0-7]+$/i;
|
|
6175
|
+
var freeParseInt = parseInt;
|
|
6176
|
+
function toNumber(value) {
|
|
6177
|
+
if (typeof value == "number") {
|
|
6178
|
+
return value;
|
|
6179
|
+
}
|
|
6180
|
+
if (isSymbol(value)) {
|
|
6181
|
+
return NAN;
|
|
6182
|
+
}
|
|
6183
|
+
if (isObject(value)) {
|
|
6184
|
+
var other = typeof value.valueOf == "function" ? value.valueOf() : value;
|
|
6185
|
+
value = isObject(other) ? other + "" : other;
|
|
6186
|
+
}
|
|
6187
|
+
if (typeof value != "string") {
|
|
6188
|
+
return value === 0 ? value : +value;
|
|
6189
|
+
}
|
|
6190
|
+
value = baseTrim(value);
|
|
6191
|
+
var isBinary = reIsBinary.test(value);
|
|
6192
|
+
return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
|
|
6193
|
+
}
|
|
6194
|
+
var now = function() {
|
|
6195
|
+
return root.Date.now();
|
|
6196
|
+
};
|
|
6197
|
+
var FUNC_ERROR_TEXT$1 = "Expected a function";
|
|
6198
|
+
var nativeMax = Math.max, nativeMin = Math.min;
|
|
6199
|
+
function debounce(func, wait, options) {
|
|
6200
|
+
var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
|
|
6201
|
+
if (typeof func != "function") {
|
|
6202
|
+
throw new TypeError(FUNC_ERROR_TEXT$1);
|
|
6203
|
+
}
|
|
6204
|
+
wait = toNumber(wait) || 0;
|
|
6205
|
+
if (isObject(options)) {
|
|
6206
|
+
leading = !!options.leading;
|
|
6207
|
+
maxing = "maxWait" in options;
|
|
6208
|
+
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
|
|
6209
|
+
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
6210
|
+
}
|
|
6211
|
+
function invokeFunc(time) {
|
|
6212
|
+
var args = lastArgs, thisArg = lastThis;
|
|
6213
|
+
lastArgs = lastThis = void 0;
|
|
6214
|
+
lastInvokeTime = time;
|
|
6215
|
+
result = func.apply(thisArg, args);
|
|
6216
|
+
return result;
|
|
6217
|
+
}
|
|
6218
|
+
function leadingEdge(time) {
|
|
6219
|
+
lastInvokeTime = time;
|
|
6220
|
+
timerId = setTimeout(timerExpired, wait);
|
|
6221
|
+
return leading ? invokeFunc(time) : result;
|
|
6222
|
+
}
|
|
6223
|
+
function remainingWait(time) {
|
|
6224
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
|
|
6225
|
+
return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
|
|
6226
|
+
}
|
|
6227
|
+
function shouldInvoke(time) {
|
|
6228
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
|
|
6229
|
+
return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
|
|
6230
|
+
}
|
|
6231
|
+
function timerExpired() {
|
|
6232
|
+
var time = now();
|
|
6233
|
+
if (shouldInvoke(time)) {
|
|
6234
|
+
return trailingEdge(time);
|
|
6235
|
+
}
|
|
6236
|
+
timerId = setTimeout(timerExpired, remainingWait(time));
|
|
6237
|
+
}
|
|
6238
|
+
function trailingEdge(time) {
|
|
6239
|
+
timerId = void 0;
|
|
6240
|
+
if (trailing && lastArgs) {
|
|
6241
|
+
return invokeFunc(time);
|
|
6242
|
+
}
|
|
6243
|
+
lastArgs = lastThis = void 0;
|
|
6244
|
+
return result;
|
|
6245
|
+
}
|
|
6246
|
+
function cancel() {
|
|
6247
|
+
if (timerId !== void 0) {
|
|
6248
|
+
clearTimeout(timerId);
|
|
6249
|
+
}
|
|
6250
|
+
lastInvokeTime = 0;
|
|
6251
|
+
lastArgs = lastCallTime = lastThis = timerId = void 0;
|
|
6252
|
+
}
|
|
6253
|
+
function flush() {
|
|
6254
|
+
return timerId === void 0 ? result : trailingEdge(now());
|
|
6255
|
+
}
|
|
6256
|
+
function debounced() {
|
|
6257
|
+
var time = now(), isInvoking = shouldInvoke(time);
|
|
6258
|
+
lastArgs = arguments;
|
|
6259
|
+
lastThis = this;
|
|
6260
|
+
lastCallTime = time;
|
|
6261
|
+
if (isInvoking) {
|
|
6262
|
+
if (timerId === void 0) {
|
|
6263
|
+
return leadingEdge(lastCallTime);
|
|
6264
|
+
}
|
|
6265
|
+
if (maxing) {
|
|
6266
|
+
clearTimeout(timerId);
|
|
6267
|
+
timerId = setTimeout(timerExpired, wait);
|
|
6268
|
+
return invokeFunc(lastCallTime);
|
|
6269
|
+
}
|
|
6270
|
+
}
|
|
6271
|
+
if (timerId === void 0) {
|
|
6272
|
+
timerId = setTimeout(timerExpired, wait);
|
|
6273
|
+
}
|
|
6274
|
+
return result;
|
|
6275
|
+
}
|
|
6276
|
+
debounced.cancel = cancel;
|
|
6277
|
+
debounced.flush = flush;
|
|
6278
|
+
return debounced;
|
|
6279
|
+
}
|
|
6280
|
+
var FUNC_ERROR_TEXT = "Expected a function";
|
|
6281
|
+
function throttle(func, wait, options) {
|
|
6282
|
+
var leading = true, trailing = true;
|
|
6283
|
+
if (typeof func != "function") {
|
|
6284
|
+
throw new TypeError(FUNC_ERROR_TEXT);
|
|
6285
|
+
}
|
|
6286
|
+
if (isObject(options)) {
|
|
6287
|
+
leading = "leading" in options ? !!options.leading : leading;
|
|
6288
|
+
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
6289
|
+
}
|
|
6290
|
+
return debounce(func, wait, {
|
|
6291
|
+
"leading": leading,
|
|
6292
|
+
"maxWait": wait,
|
|
6293
|
+
"trailing": trailing
|
|
6294
|
+
});
|
|
6295
|
+
}
|
|
6296
|
+
function useInfiniteScroll(options = {}) {
|
|
6297
|
+
const {
|
|
6298
|
+
bottomThreshold = 100,
|
|
6299
|
+
topThreshold = 100,
|
|
6300
|
+
throttleDelay = 300,
|
|
6301
|
+
disabled = ref(false),
|
|
6302
|
+
onLoadMore,
|
|
6303
|
+
onLoadPrevious,
|
|
6304
|
+
debug = false
|
|
6305
|
+
} = options;
|
|
6306
|
+
const isLoadingMore = ref(false);
|
|
6307
|
+
const isLoadingPrevious = ref(false);
|
|
6308
|
+
const hasMoreData = ref(true);
|
|
6309
|
+
const hasPreviousData = ref(true);
|
|
6310
|
+
let lastScrollTop = 0;
|
|
6311
|
+
const executeLoadMore = async () => {
|
|
6312
|
+
if (isLoadingMore.value || !hasMoreData.value || !onLoadMore) {
|
|
6313
|
+
return;
|
|
6314
|
+
}
|
|
6315
|
+
isLoadingMore.value = true;
|
|
6316
|
+
try {
|
|
6317
|
+
await onLoadMore();
|
|
6318
|
+
if (debug) console.log("✅ 向下加载更多完成");
|
|
6319
|
+
} catch (error) {
|
|
6320
|
+
console.error("❌ 向下加载更多失败:", error);
|
|
6321
|
+
} finally {
|
|
6322
|
+
isLoadingMore.value = false;
|
|
6323
|
+
}
|
|
6324
|
+
};
|
|
6325
|
+
const executeLoadPrevious = async () => {
|
|
6326
|
+
if (isLoadingPrevious.value || !hasPreviousData.value || !onLoadPrevious) {
|
|
6327
|
+
return;
|
|
6328
|
+
}
|
|
6329
|
+
isLoadingPrevious.value = true;
|
|
6330
|
+
try {
|
|
6331
|
+
await onLoadPrevious();
|
|
6332
|
+
if (debug) console.log("✅ 向上加载完成");
|
|
6333
|
+
} catch (error) {
|
|
6334
|
+
console.error("❌ 向上加载失败:", error);
|
|
6335
|
+
} finally {
|
|
6336
|
+
isLoadingPrevious.value = false;
|
|
6337
|
+
}
|
|
6338
|
+
};
|
|
6339
|
+
const handleScroll = throttle(async (event) => {
|
|
6340
|
+
if (disabled.value) return;
|
|
6341
|
+
const target = event.target;
|
|
6342
|
+
if (!target) return;
|
|
6343
|
+
const { scrollTop, scrollHeight, clientHeight } = target;
|
|
6344
|
+
const distanceToBottom = scrollHeight - scrollTop - clientHeight;
|
|
6345
|
+
const distanceToTop = scrollTop;
|
|
6346
|
+
const isNearBottom = distanceToBottom < bottomThreshold;
|
|
6347
|
+
const isNearTop = distanceToTop < topThreshold;
|
|
6348
|
+
let scrollDirection = "none";
|
|
6349
|
+
if (scrollTop > lastScrollTop) {
|
|
6350
|
+
scrollDirection = "down";
|
|
6351
|
+
} else if (scrollTop < lastScrollTop) {
|
|
6352
|
+
scrollDirection = "up";
|
|
6353
|
+
}
|
|
6354
|
+
lastScrollTop = scrollTop;
|
|
6355
|
+
const scrollInfo = {
|
|
6356
|
+
scrollTop,
|
|
6357
|
+
scrollHeight,
|
|
6358
|
+
clientHeight,
|
|
6359
|
+
distanceToBottom,
|
|
6360
|
+
distanceToTop,
|
|
6361
|
+
isNearBottom,
|
|
6362
|
+
isNearTop,
|
|
6363
|
+
scrollDirection
|
|
6364
|
+
};
|
|
6365
|
+
if (debug) {
|
|
6366
|
+
console.log("📊 滚动信息:", scrollInfo);
|
|
6367
|
+
}
|
|
6368
|
+
if (isNearBottom && scrollDirection === "down") {
|
|
6369
|
+
if (debug) console.log("🔽 触发向下加载");
|
|
6370
|
+
await executeLoadMore();
|
|
6371
|
+
}
|
|
6372
|
+
if (isNearTop && scrollDirection === "up") {
|
|
6373
|
+
if (debug) console.log("🔼 触发向上加载");
|
|
6374
|
+
await executeLoadPrevious();
|
|
6375
|
+
}
|
|
6376
|
+
}, throttleDelay);
|
|
6377
|
+
const reset = () => {
|
|
6378
|
+
isLoadingMore.value = false;
|
|
6379
|
+
isLoadingPrevious.value = false;
|
|
6380
|
+
hasMoreData.value = true;
|
|
6381
|
+
hasPreviousData.value = true;
|
|
6382
|
+
lastScrollTop = 0;
|
|
6383
|
+
};
|
|
6384
|
+
const triggerLoadMore = async () => {
|
|
6385
|
+
await executeLoadMore();
|
|
6386
|
+
};
|
|
6387
|
+
const triggerLoadPrevious = async () => {
|
|
6388
|
+
await executeLoadPrevious();
|
|
6389
|
+
};
|
|
6390
|
+
const setDataState = (options2) => {
|
|
6391
|
+
if (options2.hasMore !== void 0) {
|
|
6392
|
+
hasMoreData.value = options2.hasMore;
|
|
6393
|
+
}
|
|
6394
|
+
if (options2.hasPrevious !== void 0) {
|
|
6395
|
+
hasPreviousData.value = options2.hasPrevious;
|
|
6396
|
+
}
|
|
6397
|
+
};
|
|
6398
|
+
const state = {
|
|
6399
|
+
isLoadingMore,
|
|
6400
|
+
isLoadingPrevious,
|
|
6401
|
+
hasMoreData,
|
|
6402
|
+
hasPreviousData
|
|
6403
|
+
};
|
|
6404
|
+
return {
|
|
6405
|
+
// 状态
|
|
6406
|
+
...state,
|
|
6407
|
+
// 方法
|
|
6408
|
+
handleScroll,
|
|
6409
|
+
reset,
|
|
6410
|
+
triggerLoadMore,
|
|
6411
|
+
triggerLoadPrevious,
|
|
6412
|
+
setDataState
|
|
6413
|
+
};
|
|
6414
|
+
}
|
|
6415
|
+
const useGlobalLoading = () => {
|
|
6416
|
+
return customRef((track, trigger) => {
|
|
6417
|
+
let loadingCount = 0;
|
|
6418
|
+
return {
|
|
6419
|
+
get() {
|
|
6420
|
+
track();
|
|
6421
|
+
return loadingCount > 0;
|
|
6422
|
+
},
|
|
6423
|
+
set(value) {
|
|
6424
|
+
if (value) {
|
|
6425
|
+
loadingCount += 1;
|
|
6426
|
+
} else {
|
|
6427
|
+
loadingCount -= 1;
|
|
6428
|
+
}
|
|
6429
|
+
loadingCount = Math.max(0, loadingCount);
|
|
6430
|
+
trigger();
|
|
6431
|
+
}
|
|
6432
|
+
};
|
|
6433
|
+
});
|
|
6434
|
+
};
|
|
5866
6435
|
export {
|
|
5867
6436
|
JbMobileButton,
|
|
5868
6437
|
JbMobileDatePicker,
|
|
@@ -5871,5 +6440,7 @@ export {
|
|
|
5871
6440
|
JbMobileSearchInput,
|
|
5872
6441
|
JbMobileSelect,
|
|
5873
6442
|
JbMobileTimePicker,
|
|
5874
|
-
JbMobileTreeSelectPopup
|
|
6443
|
+
JbMobileTreeSelectPopup,
|
|
6444
|
+
useGlobalLoading,
|
|
6445
|
+
useInfiniteScroll
|
|
5875
6446
|
};
|