persagy-vant 0.0.40 → 0.0.41
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/es/checkbox-panel/CheckboxPanel.d.ts +46 -1
- package/es/checkbox-panel/CheckboxPanel.mjs +121 -35
- package/es/checkbox-panel/index.css +1 -1
- package/es/checkbox-panel/index.d.ts +35 -1
- package/es/checkbox-panel/index.less +8 -2
- package/es/checkbox-panel/style/index.mjs +5 -0
- package/es/checkbox-panel/style/less.mjs +5 -0
- package/es/index.d.ts +1 -1
- package/es/index.mjs +1 -1
- package/es/label/Label.d.ts +13 -0
- package/es/label/Label.mjs +11 -4
- package/es/label/index.css +1 -1
- package/es/label/index.d.ts +9 -0
- package/es/label/index.less +5 -0
- package/es/location-select/style/index.mjs +1 -1
- package/es/location-select/style/less.mjs +1 -1
- package/es/material-action-bar/MaterialActionBar.d.ts +19 -0
- package/es/material-action-bar/MaterialActionBar.mjs +9 -5
- package/es/material-action-bar/index.css +1 -1
- package/es/material-action-bar/index.d.ts +36 -0
- package/es/material-action-bar/index.less +4 -2
- package/es/material-add/index.css +1 -1
- package/es/material-add/style/index.mjs +1 -1
- package/es/material-add/style/less.mjs +1 -1
- package/es/material-display-bar/MaterialDisplayBar.mjs +0 -1
- package/es/material-display-bar/index.css +1 -1
- package/es/material-display-bar/index.less +2 -1
- package/es/material-display-bar/var.less +3 -2
- package/es/stepper/Stepper.d.ts +1 -1
- package/es/stepper/index.css +1 -1
- package/es/stepper/index.less +19 -0
- package/es/title-bar/TitleBar.d.ts +30 -0
- package/es/title-bar/TitleBar.mjs +7 -1
- package/es/title-bar/index.css +1 -1
- package/es/title-bar/index.d.ts +21 -0
- package/es/title-bar/index.less +4 -2
- package/lib/checkbox-panel/CheckboxPanel.d.ts +46 -1
- package/lib/checkbox-panel/CheckboxPanel.js +120 -34
- package/lib/checkbox-panel/index.css +1 -1
- package/lib/checkbox-panel/index.d.ts +35 -1
- package/lib/checkbox-panel/index.less +8 -2
- package/lib/checkbox-panel/style/index.js +5 -0
- package/lib/checkbox-panel/style/less.js +5 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.less +5 -5
- package/lib/label/Label.d.ts +13 -0
- package/lib/label/Label.js +11 -4
- package/lib/label/index.css +1 -1
- package/lib/label/index.d.ts +9 -0
- package/lib/label/index.less +5 -0
- package/lib/location-select/style/index.js +1 -1
- package/lib/location-select/style/less.js +1 -1
- package/lib/material-action-bar/MaterialActionBar.d.ts +19 -0
- package/lib/material-action-bar/MaterialActionBar.js +8 -4
- package/lib/material-action-bar/index.css +1 -1
- package/lib/material-action-bar/index.d.ts +36 -0
- package/lib/material-action-bar/index.less +4 -2
- package/lib/material-add/index.css +1 -1
- package/lib/material-add/style/index.js +1 -1
- package/lib/material-add/style/less.js +1 -1
- package/lib/material-display-bar/MaterialDisplayBar.js +0 -1
- package/lib/material-display-bar/index.css +1 -1
- package/lib/material-display-bar/index.less +2 -1
- package/lib/material-display-bar/var.less +3 -2
- package/lib/stepper/Stepper.d.ts +1 -1
- package/lib/stepper/index.css +1 -1
- package/lib/stepper/index.less +19 -0
- package/lib/title-bar/TitleBar.d.ts +30 -0
- package/lib/title-bar/TitleBar.js +7 -1
- package/lib/title-bar/index.css +1 -1
- package/lib/title-bar/index.d.ts +21 -0
- package/lib/title-bar/index.less +4 -2
- package/lib/vant.cjs.js +753 -655
- package/lib/vant.es.js +754 -656
- package/lib/vant.js +753 -655
- package/lib/vant.min.js +1 -1
- package/lib/web-types.json +1 -1
- package/package.json +1 -1
- package/skills/use-persagy-vant/references/component-catalog.md +1 -1
- package/skills/use-persagy-vant/references/design-interaction-baseline.md +1 -0
- package/skills/use-persagy-vant/references/element-component-matching.md +1 -0
- package/skills/use-persagy-vant/references/page-recipes.md +1 -0
- package/skills/use-persagy-vant/references/public-style-system.md +6 -0
package/lib/vant.js
CHANGED
|
@@ -9690,25 +9690,337 @@
|
|
|
9690
9690
|
});
|
|
9691
9691
|
const CellGroup = withInstall(stdin_default$1i);
|
|
9692
9692
|
const CheckboxGroup = withInstall(stdin_default$1R);
|
|
9693
|
-
const [name$18, bem$17] = createNamespace("
|
|
9693
|
+
const [name$18, bem$17] = createNamespace("empty");
|
|
9694
|
+
const emptyProps = {
|
|
9695
|
+
image: makeStringProp("default"),
|
|
9696
|
+
imageSize: [Number, String, Array],
|
|
9697
|
+
description: String
|
|
9698
|
+
};
|
|
9699
|
+
var stdin_default$1h = vue.defineComponent({
|
|
9700
|
+
name: name$18,
|
|
9701
|
+
props: emptyProps,
|
|
9702
|
+
setup(props2, {
|
|
9703
|
+
slots
|
|
9704
|
+
}) {
|
|
9705
|
+
const renderDescription = () => {
|
|
9706
|
+
const description = slots.description ? slots.description() : props2.description;
|
|
9707
|
+
if (description) {
|
|
9708
|
+
return vue.createVNode("p", {
|
|
9709
|
+
"class": bem$17("description")
|
|
9710
|
+
}, [description]);
|
|
9711
|
+
}
|
|
9712
|
+
};
|
|
9713
|
+
const renderBottom = () => {
|
|
9714
|
+
if (slots.default) {
|
|
9715
|
+
return vue.createVNode("div", {
|
|
9716
|
+
"class": bem$17("bottom")
|
|
9717
|
+
}, [slots.default()]);
|
|
9718
|
+
}
|
|
9719
|
+
};
|
|
9720
|
+
const renderImage = () => {
|
|
9721
|
+
if (slots.image) {
|
|
9722
|
+
return slots.image();
|
|
9723
|
+
}
|
|
9724
|
+
if (props2.image === "default" || props2.image === "network") {
|
|
9725
|
+
return vue.createVNode("div", {
|
|
9726
|
+
"class": bem$17("image-preset", props2.image)
|
|
9727
|
+
}, null);
|
|
9728
|
+
}
|
|
9729
|
+
return vue.createVNode("img", {
|
|
9730
|
+
"src": props2.image
|
|
9731
|
+
}, null);
|
|
9732
|
+
};
|
|
9733
|
+
return () => vue.createVNode("div", {
|
|
9734
|
+
"class": bem$17()
|
|
9735
|
+
}, [vue.createVNode("div", {
|
|
9736
|
+
"class": bem$17("image"),
|
|
9737
|
+
"style": getSizeStyle(props2.imageSize)
|
|
9738
|
+
}, [renderImage()]), renderDescription(), renderBottom()]);
|
|
9739
|
+
}
|
|
9740
|
+
});
|
|
9741
|
+
const Empty = withInstall(stdin_default$1h);
|
|
9742
|
+
const [name$17, bem$16, t$d] = createNamespace("list");
|
|
9743
|
+
const listProps = {
|
|
9744
|
+
error: Boolean,
|
|
9745
|
+
offset: makeNumericProp(300),
|
|
9746
|
+
loading: Boolean,
|
|
9747
|
+
finished: Boolean,
|
|
9748
|
+
errorText: String,
|
|
9749
|
+
direction: makeStringProp("down"),
|
|
9750
|
+
loadingText: String,
|
|
9751
|
+
finishedText: String,
|
|
9752
|
+
immediateCheck: truthProp
|
|
9753
|
+
};
|
|
9754
|
+
var stdin_default$1g = vue.defineComponent({
|
|
9755
|
+
name: name$17,
|
|
9756
|
+
props: listProps,
|
|
9757
|
+
emits: ["load", "update:error", "update:loading"],
|
|
9758
|
+
setup(props2, {
|
|
9759
|
+
emit,
|
|
9760
|
+
slots
|
|
9761
|
+
}) {
|
|
9762
|
+
const loading = vue.ref(props2.loading);
|
|
9763
|
+
const root = vue.ref();
|
|
9764
|
+
const placeholder = vue.ref();
|
|
9765
|
+
const tabStatus = useTabStatus();
|
|
9766
|
+
const scrollParent = useScrollParent(root);
|
|
9767
|
+
const check = () => {
|
|
9768
|
+
vue.nextTick(() => {
|
|
9769
|
+
if (loading.value || props2.finished || props2.error || // skip check when inside an inactive tab
|
|
9770
|
+
(tabStatus == null ? void 0 : tabStatus.value) === false) {
|
|
9771
|
+
return;
|
|
9772
|
+
}
|
|
9773
|
+
const {
|
|
9774
|
+
offset: offset2,
|
|
9775
|
+
direction
|
|
9776
|
+
} = props2;
|
|
9777
|
+
const scrollParentRect = useRect(scrollParent);
|
|
9778
|
+
if (!scrollParentRect.height || isHidden(root)) {
|
|
9779
|
+
return;
|
|
9780
|
+
}
|
|
9781
|
+
let isReachEdge = false;
|
|
9782
|
+
const placeholderRect = useRect(placeholder);
|
|
9783
|
+
if (direction === "up") {
|
|
9784
|
+
isReachEdge = scrollParentRect.top - placeholderRect.top <= offset2;
|
|
9785
|
+
} else {
|
|
9786
|
+
isReachEdge = placeholderRect.bottom - scrollParentRect.bottom <= offset2;
|
|
9787
|
+
}
|
|
9788
|
+
if (isReachEdge) {
|
|
9789
|
+
loading.value = true;
|
|
9790
|
+
emit("update:loading", true);
|
|
9791
|
+
emit("load");
|
|
9792
|
+
}
|
|
9793
|
+
});
|
|
9794
|
+
};
|
|
9795
|
+
const renderFinishedText = () => {
|
|
9796
|
+
if (props2.finished) {
|
|
9797
|
+
const text = slots.finished ? slots.finished() : props2.finishedText;
|
|
9798
|
+
if (text) {
|
|
9799
|
+
return vue.createVNode("div", {
|
|
9800
|
+
"class": bem$16("finished-text")
|
|
9801
|
+
}, [text]);
|
|
9802
|
+
}
|
|
9803
|
+
}
|
|
9804
|
+
};
|
|
9805
|
+
const clickErrorText = () => {
|
|
9806
|
+
emit("update:error", false);
|
|
9807
|
+
check();
|
|
9808
|
+
};
|
|
9809
|
+
const renderErrorText = () => {
|
|
9810
|
+
if (props2.error) {
|
|
9811
|
+
const text = slots.error ? slots.error() : props2.errorText;
|
|
9812
|
+
if (text) {
|
|
9813
|
+
return vue.createVNode("div", {
|
|
9814
|
+
"role": "button",
|
|
9815
|
+
"class": bem$16("error-text"),
|
|
9816
|
+
"tabindex": 0,
|
|
9817
|
+
"onClick": clickErrorText
|
|
9818
|
+
}, [text]);
|
|
9819
|
+
}
|
|
9820
|
+
}
|
|
9821
|
+
};
|
|
9822
|
+
const renderLoading = () => {
|
|
9823
|
+
if (loading.value && !props2.finished) {
|
|
9824
|
+
return vue.createVNode("div", {
|
|
9825
|
+
"class": bem$16("loading")
|
|
9826
|
+
}, [slots.loading ? slots.loading() : vue.createVNode(Loading, {
|
|
9827
|
+
"class": bem$16("loading-icon")
|
|
9828
|
+
}, {
|
|
9829
|
+
default: () => [props2.loadingText || t$d("loading")]
|
|
9830
|
+
})]);
|
|
9831
|
+
}
|
|
9832
|
+
};
|
|
9833
|
+
vue.watch(() => [props2.loading, props2.finished, props2.error], check);
|
|
9834
|
+
if (tabStatus) {
|
|
9835
|
+
vue.watch(tabStatus, (tabActive) => {
|
|
9836
|
+
if (tabActive) {
|
|
9837
|
+
check();
|
|
9838
|
+
}
|
|
9839
|
+
});
|
|
9840
|
+
}
|
|
9841
|
+
vue.onUpdated(() => {
|
|
9842
|
+
loading.value = props2.loading;
|
|
9843
|
+
});
|
|
9844
|
+
vue.onMounted(() => {
|
|
9845
|
+
if (props2.immediateCheck) {
|
|
9846
|
+
check();
|
|
9847
|
+
}
|
|
9848
|
+
});
|
|
9849
|
+
useExpose({
|
|
9850
|
+
check
|
|
9851
|
+
});
|
|
9852
|
+
useEventListener("scroll", check, {
|
|
9853
|
+
target: scrollParent,
|
|
9854
|
+
passive: true
|
|
9855
|
+
});
|
|
9856
|
+
return () => {
|
|
9857
|
+
var _a;
|
|
9858
|
+
const Content = (_a = slots.default) == null ? void 0 : _a.call(slots);
|
|
9859
|
+
const Placeholder = vue.createVNode("div", {
|
|
9860
|
+
"ref": placeholder,
|
|
9861
|
+
"class": bem$16("placeholder")
|
|
9862
|
+
}, null);
|
|
9863
|
+
return vue.createVNode("div", {
|
|
9864
|
+
"ref": root,
|
|
9865
|
+
"role": "feed",
|
|
9866
|
+
"class": bem$16(),
|
|
9867
|
+
"aria-busy": loading.value
|
|
9868
|
+
}, [props2.direction === "down" ? Content : Placeholder, renderLoading(), renderFinishedText(), renderErrorText(), props2.direction === "up" ? Content : Placeholder]);
|
|
9869
|
+
};
|
|
9870
|
+
}
|
|
9871
|
+
});
|
|
9872
|
+
const List = withInstall(stdin_default$1g);
|
|
9873
|
+
const [name$16, bem$15, t$c] = createNamespace("search");
|
|
9874
|
+
const searchProps = extend$1({}, fieldSharedProps, {
|
|
9875
|
+
label: String,
|
|
9876
|
+
shape: makeStringProp("round"),
|
|
9877
|
+
variant: makeStringProp("default"),
|
|
9878
|
+
inputAlign: makeStringProp("left"),
|
|
9879
|
+
leftIcon: makeStringProp("search"),
|
|
9880
|
+
clearable: truthProp,
|
|
9881
|
+
actionText: String,
|
|
9882
|
+
background: String,
|
|
9883
|
+
showAction: Boolean
|
|
9884
|
+
});
|
|
9885
|
+
var stdin_default$1f = vue.defineComponent({
|
|
9886
|
+
name: name$16,
|
|
9887
|
+
props: searchProps,
|
|
9888
|
+
emits: ["blur", "focus", "clear", "search", "cancel", "click-input", "click-left-icon", "click-right-icon", "update:modelValue"],
|
|
9889
|
+
setup(props2, {
|
|
9890
|
+
emit,
|
|
9891
|
+
slots,
|
|
9892
|
+
attrs
|
|
9893
|
+
}) {
|
|
9894
|
+
const id = useId();
|
|
9895
|
+
const filedRef = vue.ref();
|
|
9896
|
+
const onCancel = () => {
|
|
9897
|
+
if (!slots.action) {
|
|
9898
|
+
emit("update:modelValue", "");
|
|
9899
|
+
emit("cancel");
|
|
9900
|
+
}
|
|
9901
|
+
};
|
|
9902
|
+
const onKeypress = (event) => {
|
|
9903
|
+
const ENTER_CODE = 13;
|
|
9904
|
+
if (event.keyCode === ENTER_CODE) {
|
|
9905
|
+
preventDefault(event);
|
|
9906
|
+
emit("search", props2.modelValue);
|
|
9907
|
+
}
|
|
9908
|
+
};
|
|
9909
|
+
const getInputId = () => props2.id || `${id}-input`;
|
|
9910
|
+
const renderLabel = () => {
|
|
9911
|
+
if (slots.label || props2.label) {
|
|
9912
|
+
return vue.createVNode("label", {
|
|
9913
|
+
"class": bem$15("label"),
|
|
9914
|
+
"for": getInputId()
|
|
9915
|
+
}, [slots.label ? slots.label() : props2.label]);
|
|
9916
|
+
}
|
|
9917
|
+
};
|
|
9918
|
+
const renderAction = () => {
|
|
9919
|
+
if (props2.showAction) {
|
|
9920
|
+
const text = props2.actionText || t$c("cancel");
|
|
9921
|
+
return vue.createVNode("div", {
|
|
9922
|
+
"class": bem$15("action"),
|
|
9923
|
+
"role": "button",
|
|
9924
|
+
"tabindex": 0,
|
|
9925
|
+
"onClick": onCancel
|
|
9926
|
+
}, [slots.action ? slots.action() : text]);
|
|
9927
|
+
}
|
|
9928
|
+
};
|
|
9929
|
+
const blur = () => {
|
|
9930
|
+
var _a;
|
|
9931
|
+
return (_a = filedRef.value) == null ? void 0 : _a.blur();
|
|
9932
|
+
};
|
|
9933
|
+
const focus = () => {
|
|
9934
|
+
var _a;
|
|
9935
|
+
return (_a = filedRef.value) == null ? void 0 : _a.focus();
|
|
9936
|
+
};
|
|
9937
|
+
const onBlur = (event) => emit("blur", event);
|
|
9938
|
+
const onFocus = (event) => emit("focus", event);
|
|
9939
|
+
const onClear = (event) => emit("clear", event);
|
|
9940
|
+
const onClickInput = (event) => emit("click-input", event);
|
|
9941
|
+
const onClickLeftIcon = (event) => emit("click-left-icon", event);
|
|
9942
|
+
const onClickRightIcon = (event) => emit("click-right-icon", event);
|
|
9943
|
+
const fieldPropNames = Object.keys(fieldSharedProps);
|
|
9944
|
+
const renderField = () => {
|
|
9945
|
+
const fieldAttrs = extend$1({}, attrs, pick(props2, fieldPropNames), {
|
|
9946
|
+
id: getInputId()
|
|
9947
|
+
});
|
|
9948
|
+
const onInput = (value) => emit("update:modelValue", value);
|
|
9949
|
+
return vue.createVNode(Field, vue.mergeProps({
|
|
9950
|
+
"ref": filedRef,
|
|
9951
|
+
"type": "search",
|
|
9952
|
+
"class": bem$15("field"),
|
|
9953
|
+
"border": false,
|
|
9954
|
+
"onBlur": onBlur,
|
|
9955
|
+
"onFocus": onFocus,
|
|
9956
|
+
"onClear": onClear,
|
|
9957
|
+
"onKeypress": onKeypress,
|
|
9958
|
+
"onClick-input": onClickInput,
|
|
9959
|
+
"onClick-left-icon": onClickLeftIcon,
|
|
9960
|
+
"onClick-right-icon": onClickRightIcon,
|
|
9961
|
+
"onUpdate:modelValue": onInput
|
|
9962
|
+
}, fieldAttrs), pick(slots, ["left-icon", "right-icon"]));
|
|
9963
|
+
};
|
|
9964
|
+
useExpose({
|
|
9965
|
+
focus,
|
|
9966
|
+
blur
|
|
9967
|
+
});
|
|
9968
|
+
return () => {
|
|
9969
|
+
var _a;
|
|
9970
|
+
return vue.createVNode("div", {
|
|
9971
|
+
"class": bem$15({
|
|
9972
|
+
"show-action": props2.showAction,
|
|
9973
|
+
pure: props2.variant === "pure"
|
|
9974
|
+
}),
|
|
9975
|
+
"style": {
|
|
9976
|
+
background: props2.variant === "default" ? props2.background : void 0
|
|
9977
|
+
}
|
|
9978
|
+
}, [(_a = slots.left) == null ? void 0 : _a.call(slots), vue.createVNode("div", {
|
|
9979
|
+
"class": bem$15("content", props2.shape)
|
|
9980
|
+
}, [renderLabel(), renderField()]), renderAction()]);
|
|
9981
|
+
};
|
|
9982
|
+
}
|
|
9983
|
+
});
|
|
9984
|
+
const Search = withInstall(stdin_default$1f);
|
|
9985
|
+
const [name$15, bem$14] = createNamespace("checkbox-panel");
|
|
9986
|
+
const escapeRegExp$1 = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
9694
9987
|
const checkboxPanelProps = {
|
|
9695
9988
|
show: Boolean,
|
|
9696
9989
|
title: String,
|
|
9697
9990
|
options: makeArrayProp(),
|
|
9698
9991
|
modelValue: Array,
|
|
9992
|
+
searchable: Boolean,
|
|
9993
|
+
searchPlaceholder: String,
|
|
9994
|
+
filterable: Boolean,
|
|
9995
|
+
filterActive: Boolean,
|
|
9996
|
+
loading: Boolean,
|
|
9997
|
+
finished: Boolean,
|
|
9998
|
+
error: Boolean,
|
|
9999
|
+
lazy: Boolean,
|
|
10000
|
+
loadingText: String,
|
|
10001
|
+
finishedText: String,
|
|
10002
|
+
errorText: String,
|
|
9699
10003
|
confirmText: makeStringProp("确定"),
|
|
9700
10004
|
selectAllText: makeStringProp("全选"),
|
|
9701
10005
|
cancelSelectAllText: makeStringProp("取消全选")
|
|
9702
10006
|
};
|
|
9703
|
-
var stdin_default$
|
|
9704
|
-
name: name$
|
|
10007
|
+
var stdin_default$1e = vue.defineComponent({
|
|
10008
|
+
name: name$15,
|
|
9705
10009
|
props: checkboxPanelProps,
|
|
9706
|
-
emits: ["update:show", "update:modelValue", "confirm"],
|
|
10010
|
+
emits: ["update:show", "update:modelValue", "update:loading", "update:error", "confirm", "search", "filter", "load"],
|
|
9707
10011
|
setup(props2, {
|
|
9708
|
-
emit
|
|
10012
|
+
emit,
|
|
10013
|
+
slots
|
|
9709
10014
|
}) {
|
|
10015
|
+
const keyword = vue.ref("");
|
|
9710
10016
|
const selectedValues = vue.computed(() => props2.modelValue || []);
|
|
9711
|
-
const
|
|
10017
|
+
const filteredOptions = vue.computed(() => {
|
|
10018
|
+
const query = keyword.value.trim().toLocaleLowerCase();
|
|
10019
|
+
if (!query)
|
|
10020
|
+
return props2.options;
|
|
10021
|
+
return props2.options.filter((option) => option.label.toLocaleLowerCase().includes(query));
|
|
10022
|
+
});
|
|
10023
|
+
const selectableOptions = vue.computed(() => filteredOptions.value.filter((option) => !option.disabled));
|
|
9712
10024
|
const isAllSelected = vue.computed(() => selectableOptions.value.length > 0 && selectableOptions.value.every((option) => selectedValues.value.includes(option.value)));
|
|
9713
10025
|
const close = () => emit("update:show", false);
|
|
9714
10026
|
const toggleOption = (option) => {
|
|
@@ -9719,67 +10031,129 @@
|
|
|
9719
10031
|
index === -1 ? values.push(option.value) : values.splice(index, 1);
|
|
9720
10032
|
emit("update:modelValue", values);
|
|
9721
10033
|
};
|
|
9722
|
-
const toggleAll = () =>
|
|
10034
|
+
const toggleAll = () => {
|
|
10035
|
+
const selectableValues = selectableOptions.value.map((option) => option.value);
|
|
10036
|
+
const values = isAllSelected.value ? selectedValues.value.filter((value) => !selectableValues.includes(value)) : [.../* @__PURE__ */ new Set([...selectedValues.value, ...selectableValues])];
|
|
10037
|
+
emit("update:modelValue", values);
|
|
10038
|
+
};
|
|
9723
10039
|
const confirm = () => {
|
|
9724
10040
|
emit("confirm", selectedValues.value);
|
|
9725
10041
|
close();
|
|
9726
10042
|
};
|
|
10043
|
+
const renderOptionLabel = (label) => {
|
|
10044
|
+
const query = keyword.value.trim();
|
|
10045
|
+
if (!query)
|
|
10046
|
+
return label;
|
|
10047
|
+
const normalizedQuery = query.toLocaleLowerCase();
|
|
10048
|
+
return label.split(new RegExp(`(${escapeRegExp$1(query)})`, "ig")).map((part) => part.toLocaleLowerCase() === normalizedQuery ? vue.createVNode("span", {
|
|
10049
|
+
"class": bem$14("match")
|
|
10050
|
+
}, [part]) : part);
|
|
10051
|
+
};
|
|
10052
|
+
const renderOptions = () => {
|
|
10053
|
+
if (!filteredOptions.value.length) {
|
|
10054
|
+
return vue.createVNode(Empty, {
|
|
10055
|
+
"imageSize": 60,
|
|
10056
|
+
"description": "暂无匹配选项"
|
|
10057
|
+
}, null);
|
|
10058
|
+
}
|
|
10059
|
+
return vue.createVNode(CheckboxGroup, {
|
|
10060
|
+
"modelValue": selectedValues.value,
|
|
10061
|
+
"class": bem$14("card"),
|
|
10062
|
+
"onUpdate:modelValue": (value) => emit("update:modelValue", value)
|
|
10063
|
+
}, {
|
|
10064
|
+
default: () => [filteredOptions.value.map((option) => vue.createVNode(Cell, {
|
|
10065
|
+
"key": option.value,
|
|
10066
|
+
"clickable": !option.disabled,
|
|
10067
|
+
"title": option.label,
|
|
10068
|
+
"onClick": () => toggleOption(option)
|
|
10069
|
+
}, {
|
|
10070
|
+
title: () => renderOptionLabel(option.label),
|
|
10071
|
+
"right-icon": () => vue.createVNode(Checkbox, {
|
|
10072
|
+
"name": option.value,
|
|
10073
|
+
"disabled": option.disabled,
|
|
10074
|
+
"onClick": (event) => event.stopPropagation()
|
|
10075
|
+
}, null)
|
|
10076
|
+
}))]
|
|
10077
|
+
});
|
|
10078
|
+
};
|
|
9727
10079
|
return () => vue.createVNode(ActionSheet, {
|
|
9728
10080
|
"show": props2.show,
|
|
9729
|
-
"class": bem$
|
|
10081
|
+
"class": bem$14(),
|
|
9730
10082
|
"onUpdate:show": (show) => emit("update:show", show)
|
|
9731
10083
|
}, {
|
|
9732
10084
|
default: () => [vue.createVNode("div", {
|
|
9733
|
-
"class": bem$
|
|
10085
|
+
"class": bem$14("content")
|
|
9734
10086
|
}, [vue.createVNode("div", {
|
|
9735
|
-
"class": bem$
|
|
10087
|
+
"class": bem$14("nav-wrapper")
|
|
9736
10088
|
}, [vue.createVNode(NavBar, {
|
|
9737
10089
|
"title": props2.title,
|
|
9738
10090
|
"border": false,
|
|
9739
|
-
"class": bem$
|
|
10091
|
+
"class": bem$14("nav")
|
|
9740
10092
|
}, {
|
|
9741
10093
|
left: () => vue.createVNode(Icon, {
|
|
9742
10094
|
"name": "cross",
|
|
9743
10095
|
"size": "22",
|
|
9744
10096
|
"onClick": close
|
|
9745
10097
|
}, null),
|
|
9746
|
-
right: () =>
|
|
9747
|
-
|
|
9748
|
-
|
|
9749
|
-
|
|
9750
|
-
|
|
9751
|
-
|
|
9752
|
-
|
|
9753
|
-
|
|
9754
|
-
|
|
9755
|
-
|
|
9756
|
-
|
|
9757
|
-
|
|
9758
|
-
|
|
9759
|
-
|
|
9760
|
-
|
|
9761
|
-
|
|
9762
|
-
|
|
9763
|
-
|
|
9764
|
-
|
|
9765
|
-
|
|
9766
|
-
|
|
9767
|
-
|
|
9768
|
-
|
|
9769
|
-
|
|
9770
|
-
"
|
|
9771
|
-
|
|
9772
|
-
"
|
|
9773
|
-
|
|
9774
|
-
|
|
10098
|
+
right: () => {
|
|
10099
|
+
if (slots.filter)
|
|
10100
|
+
return slots.filter();
|
|
10101
|
+
if (!props2.filterable)
|
|
10102
|
+
return;
|
|
10103
|
+
return vue.createVNode("button", {
|
|
10104
|
+
"type": "button",
|
|
10105
|
+
"class": bem$14("filter"),
|
|
10106
|
+
"aria-label": "筛选",
|
|
10107
|
+
"onClick": () => emit("filter")
|
|
10108
|
+
}, [vue.createVNode(Badge, {
|
|
10109
|
+
"dot": props2.filterActive
|
|
10110
|
+
}, {
|
|
10111
|
+
default: () => [vue.createVNode(Icon, {
|
|
10112
|
+
"name": "filter-o",
|
|
10113
|
+
"size": "22"
|
|
10114
|
+
}, null)]
|
|
10115
|
+
})]);
|
|
10116
|
+
}
|
|
10117
|
+
})]), props2.searchable && vue.createVNode(Search, {
|
|
10118
|
+
"modelValue": keyword.value,
|
|
10119
|
+
"class": bem$14("search"),
|
|
10120
|
+
"shape": "round",
|
|
10121
|
+
"inputAlign": "left",
|
|
10122
|
+
"placeholder": props2.searchPlaceholder || "请输入搜索关键词",
|
|
10123
|
+
"maxlength": 200,
|
|
10124
|
+
"onUpdate:modelValue": (value) => {
|
|
10125
|
+
keyword.value = value;
|
|
10126
|
+
emit("search", value);
|
|
10127
|
+
},
|
|
10128
|
+
"onSearch": (value) => emit("search", value)
|
|
10129
|
+
}, null), vue.createVNode("div", {
|
|
10130
|
+
"class": bem$14("body")
|
|
10131
|
+
}, [props2.lazy ? vue.createVNode(List, {
|
|
10132
|
+
"loading": props2.loading,
|
|
10133
|
+
"finished": props2.finished,
|
|
10134
|
+
"error": props2.error,
|
|
10135
|
+
"loadingText": props2.loadingText,
|
|
10136
|
+
"finishedText": props2.finishedText,
|
|
10137
|
+
"errorText": props2.errorText,
|
|
10138
|
+
"onUpdate:loading": (value) => emit("update:loading", value),
|
|
10139
|
+
"onUpdate:error": (value) => emit("update:error", value),
|
|
10140
|
+
"onLoad": () => emit("load")
|
|
9775
10141
|
}, {
|
|
9776
|
-
default: () => [
|
|
9777
|
-
})
|
|
10142
|
+
default: () => [renderOptions()]
|
|
10143
|
+
}) : renderOptions()]), vue.createVNode("div", {
|
|
10144
|
+
"class": bem$14("footer")
|
|
10145
|
+
}, [vue.createVNode(BottomActionBar, {
|
|
10146
|
+
"fixed": false,
|
|
10147
|
+
"secondaryText": isAllSelected.value ? props2.cancelSelectAllText : props2.selectAllText,
|
|
10148
|
+
"confirmText": props2.confirmText,
|
|
10149
|
+
"onSecondary": toggleAll,
|
|
10150
|
+
"onConfirm": confirm
|
|
10151
|
+
}, null)])])]
|
|
9778
10152
|
});
|
|
9779
10153
|
}
|
|
9780
10154
|
});
|
|
9781
|
-
const CheckboxPanel = withInstall(stdin_default$
|
|
9782
|
-
const [name$
|
|
10155
|
+
const CheckboxPanel = withInstall(stdin_default$1e);
|
|
10156
|
+
const [name$14, bem$13] = createNamespace("circle");
|
|
9783
10157
|
let uid = 0;
|
|
9784
10158
|
const format$1 = (rate) => Math.min(Math.max(+rate, 0), 100);
|
|
9785
10159
|
function getPath(clockwise, viewBoxSize) {
|
|
@@ -9800,8 +10174,8 @@
|
|
|
9800
10174
|
strokeLinecap: String,
|
|
9801
10175
|
startPosition: makeStringProp("top")
|
|
9802
10176
|
};
|
|
9803
|
-
var stdin_default$
|
|
9804
|
-
name: name$
|
|
10177
|
+
var stdin_default$1d = vue.defineComponent({
|
|
10178
|
+
name: name$14,
|
|
9805
10179
|
props: circleProps,
|
|
9806
10180
|
emits: ["update:currentRate"],
|
|
9807
10181
|
setup(props2, {
|
|
@@ -9869,7 +10243,7 @@
|
|
|
9869
10243
|
return vue.createVNode("path", {
|
|
9870
10244
|
"d": path.value,
|
|
9871
10245
|
"style": style,
|
|
9872
|
-
"class": bem$
|
|
10246
|
+
"class": bem$13("hover"),
|
|
9873
10247
|
"stroke": color
|
|
9874
10248
|
}, null);
|
|
9875
10249
|
};
|
|
@@ -9880,7 +10254,7 @@
|
|
|
9880
10254
|
strokeWidth: `${props2.strokeWidth}px`
|
|
9881
10255
|
};
|
|
9882
10256
|
return vue.createVNode("path", {
|
|
9883
|
-
"class": bem$
|
|
10257
|
+
"class": bem$13("layer"),
|
|
9884
10258
|
"style": style,
|
|
9885
10259
|
"d": path.value
|
|
9886
10260
|
}, null);
|
|
@@ -9911,12 +10285,12 @@
|
|
|
9911
10285
|
}
|
|
9912
10286
|
if (props2.text) {
|
|
9913
10287
|
return vue.createVNode("div", {
|
|
9914
|
-
"class": bem$
|
|
10288
|
+
"class": bem$13("text")
|
|
9915
10289
|
}, [props2.text]);
|
|
9916
10290
|
}
|
|
9917
10291
|
};
|
|
9918
10292
|
return () => vue.createVNode("div", {
|
|
9919
|
-
"class": bem$
|
|
10293
|
+
"class": bem$13(),
|
|
9920
10294
|
"style": getSizeStyle(props2.size)
|
|
9921
10295
|
}, [vue.createVNode("svg", {
|
|
9922
10296
|
"viewBox": `0 0 ${viewBoxSize.value} ${viewBoxSize.value}`,
|
|
@@ -9924,9 +10298,9 @@
|
|
|
9924
10298
|
}, [renderGradient(), renderLayer(), renderHover()]), renderText()]);
|
|
9925
10299
|
}
|
|
9926
10300
|
});
|
|
9927
|
-
const Circle = withInstall(stdin_default$
|
|
9928
|
-
const [name$
|
|
9929
|
-
const ROW_KEY = Symbol(name$
|
|
10301
|
+
const Circle = withInstall(stdin_default$1d);
|
|
10302
|
+
const [name$13, bem$12] = createNamespace("row");
|
|
10303
|
+
const ROW_KEY = Symbol(name$13);
|
|
9930
10304
|
const rowProps = {
|
|
9931
10305
|
tag: makeStringProp("div"),
|
|
9932
10306
|
wrap: truthProp,
|
|
@@ -9934,8 +10308,8 @@
|
|
|
9934
10308
|
gutter: makeNumericProp(0),
|
|
9935
10309
|
justify: String
|
|
9936
10310
|
};
|
|
9937
|
-
var stdin_default$
|
|
9938
|
-
name: name$
|
|
10311
|
+
var stdin_default$1c = vue.defineComponent({
|
|
10312
|
+
name: name$13,
|
|
9939
10313
|
props: rowProps,
|
|
9940
10314
|
setup(props2, {
|
|
9941
10315
|
slots
|
|
@@ -9994,7 +10368,7 @@
|
|
|
9994
10368
|
justify
|
|
9995
10369
|
} = props2;
|
|
9996
10370
|
return vue.createVNode(tag, {
|
|
9997
|
-
"class": bem$
|
|
10371
|
+
"class": bem$12({
|
|
9998
10372
|
[`align-${align}`]: align,
|
|
9999
10373
|
[`justify-${justify}`]: justify,
|
|
10000
10374
|
nowrap: !wrap2
|
|
@@ -10008,14 +10382,14 @@
|
|
|
10008
10382
|
};
|
|
10009
10383
|
}
|
|
10010
10384
|
});
|
|
10011
|
-
const [name$
|
|
10385
|
+
const [name$12, bem$11] = createNamespace("col");
|
|
10012
10386
|
const colProps = {
|
|
10013
10387
|
tag: makeStringProp("div"),
|
|
10014
10388
|
span: makeNumericProp(0),
|
|
10015
10389
|
offset: numericProp
|
|
10016
10390
|
};
|
|
10017
|
-
var stdin_default$
|
|
10018
|
-
name: name$
|
|
10391
|
+
var stdin_default$1b = vue.defineComponent({
|
|
10392
|
+
name: name$12,
|
|
10019
10393
|
props: colProps,
|
|
10020
10394
|
setup(props2, {
|
|
10021
10395
|
slots
|
|
@@ -10050,7 +10424,7 @@
|
|
|
10050
10424
|
} = props2;
|
|
10051
10425
|
return vue.createVNode(tag, {
|
|
10052
10426
|
"style": style.value,
|
|
10053
|
-
"class": bem$
|
|
10427
|
+
"class": bem$11({
|
|
10054
10428
|
[span]: span,
|
|
10055
10429
|
[`offset-${offset2}`]: offset2
|
|
10056
10430
|
})
|
|
@@ -10063,9 +10437,9 @@
|
|
|
10063
10437
|
};
|
|
10064
10438
|
}
|
|
10065
10439
|
});
|
|
10066
|
-
const Col = withInstall(stdin_default$
|
|
10067
|
-
const [name$
|
|
10068
|
-
const COLLAPSE_KEY = Symbol(name$
|
|
10440
|
+
const Col = withInstall(stdin_default$1b);
|
|
10441
|
+
const [name$11, bem$10] = createNamespace("collapse");
|
|
10442
|
+
const COLLAPSE_KEY = Symbol(name$11);
|
|
10069
10443
|
const collapseProps = {
|
|
10070
10444
|
border: truthProp,
|
|
10071
10445
|
accordion: Boolean,
|
|
@@ -10074,8 +10448,8 @@
|
|
|
10074
10448
|
default: ""
|
|
10075
10449
|
}
|
|
10076
10450
|
};
|
|
10077
|
-
var stdin_default$
|
|
10078
|
-
name: name$
|
|
10451
|
+
var stdin_default$1a = vue.defineComponent({
|
|
10452
|
+
name: name$11,
|
|
10079
10453
|
props: collapseProps,
|
|
10080
10454
|
emits: ["change", "update:modelValue"],
|
|
10081
10455
|
setup(props2, {
|
|
@@ -10142,15 +10516,15 @@
|
|
|
10142
10516
|
return () => {
|
|
10143
10517
|
var _a;
|
|
10144
10518
|
return vue.createVNode("div", {
|
|
10145
|
-
"class": [bem$
|
|
10519
|
+
"class": [bem$10(), {
|
|
10146
10520
|
[BORDER_TOP_BOTTOM]: props2.border
|
|
10147
10521
|
}]
|
|
10148
10522
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
|
10149
10523
|
};
|
|
10150
10524
|
}
|
|
10151
10525
|
});
|
|
10152
|
-
const Collapse = withInstall(stdin_default$
|
|
10153
|
-
const [name$
|
|
10526
|
+
const Collapse = withInstall(stdin_default$1a);
|
|
10527
|
+
const [name$10, bem$$] = createNamespace("collapse-item");
|
|
10154
10528
|
const CELL_SLOTS = ["icon", "title", "value", "label", "right-icon"];
|
|
10155
10529
|
const collapseItemProps = extend$1({}, cellSharedProps, {
|
|
10156
10530
|
name: numericProp,
|
|
@@ -10159,8 +10533,8 @@
|
|
|
10159
10533
|
readonly: Boolean,
|
|
10160
10534
|
lazyRender: truthProp
|
|
10161
10535
|
});
|
|
10162
|
-
var stdin_default$
|
|
10163
|
-
name: name$
|
|
10536
|
+
var stdin_default$19 = vue.defineComponent({
|
|
10537
|
+
name: name$10,
|
|
10164
10538
|
props: collapseItemProps,
|
|
10165
10539
|
setup(props2, {
|
|
10166
10540
|
slots
|
|
@@ -10239,7 +10613,7 @@
|
|
|
10239
10613
|
}
|
|
10240
10614
|
return vue.createVNode(Cell, vue.mergeProps({
|
|
10241
10615
|
"role": "button",
|
|
10242
|
-
"class": bem
|
|
10616
|
+
"class": bem$$("title", {
|
|
10243
10617
|
disabled,
|
|
10244
10618
|
expanded: expanded.value,
|
|
10245
10619
|
borderless: !border
|
|
@@ -10252,11 +10626,11 @@
|
|
|
10252
10626
|
var _a;
|
|
10253
10627
|
return vue.withDirectives(vue.createVNode("div", {
|
|
10254
10628
|
"ref": wrapperRef,
|
|
10255
|
-
"class": bem
|
|
10629
|
+
"class": bem$$("wrapper"),
|
|
10256
10630
|
"onTransitionend": onTransitionEnd
|
|
10257
10631
|
}, [vue.createVNode("div", {
|
|
10258
10632
|
"ref": contentRef,
|
|
10259
|
-
"class": bem
|
|
10633
|
+
"class": bem$$("content")
|
|
10260
10634
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]), [[vue.vShow, show.value]]);
|
|
10261
10635
|
});
|
|
10262
10636
|
useExpose({
|
|
@@ -10265,15 +10639,15 @@
|
|
|
10265
10639
|
itemName: name2
|
|
10266
10640
|
});
|
|
10267
10641
|
return () => vue.createVNode("div", {
|
|
10268
|
-
"class": [bem
|
|
10642
|
+
"class": [bem$$({
|
|
10269
10643
|
border: index.value && props2.border
|
|
10270
10644
|
})]
|
|
10271
10645
|
}, [renderTitle(), renderContent()]);
|
|
10272
10646
|
}
|
|
10273
10647
|
});
|
|
10274
|
-
const CollapseItem = withInstall(stdin_default$
|
|
10648
|
+
const CollapseItem = withInstall(stdin_default$19);
|
|
10275
10649
|
const ConfigProvider = withInstall(stdin_default$24);
|
|
10276
|
-
const [name
|
|
10650
|
+
const [name$$, bem$_, t$b] = createNamespace("contact-card");
|
|
10277
10651
|
const contactCardProps = {
|
|
10278
10652
|
tel: String,
|
|
10279
10653
|
name: String,
|
|
@@ -10281,8 +10655,8 @@
|
|
|
10281
10655
|
addText: String,
|
|
10282
10656
|
editable: truthProp
|
|
10283
10657
|
};
|
|
10284
|
-
var stdin_default$
|
|
10285
|
-
name: name
|
|
10658
|
+
var stdin_default$18 = vue.defineComponent({
|
|
10659
|
+
name: name$$,
|
|
10286
10660
|
props: contactCardProps,
|
|
10287
10661
|
emits: ["click"],
|
|
10288
10662
|
setup(props2, {
|
|
@@ -10295,25 +10669,25 @@
|
|
|
10295
10669
|
};
|
|
10296
10670
|
const renderContent = () => {
|
|
10297
10671
|
if (props2.type === "add") {
|
|
10298
|
-
return props2.addText || t$
|
|
10672
|
+
return props2.addText || t$b("addContact");
|
|
10299
10673
|
}
|
|
10300
|
-
return [vue.createVNode("div", null, [`${t$
|
|
10674
|
+
return [vue.createVNode("div", null, [`${t$b("name")}:${props2.name}`]), vue.createVNode("div", null, [`${t$b("tel")}:${props2.tel}`])];
|
|
10301
10675
|
};
|
|
10302
10676
|
return () => vue.createVNode(Cell, {
|
|
10303
10677
|
"center": true,
|
|
10304
10678
|
"icon": props2.type === "edit" ? "contact" : "add-square",
|
|
10305
|
-
"class": bem$
|
|
10679
|
+
"class": bem$_([props2.type]),
|
|
10306
10680
|
"border": false,
|
|
10307
10681
|
"isLink": props2.editable,
|
|
10308
|
-
"valueClass": bem$
|
|
10682
|
+
"valueClass": bem$_("value"),
|
|
10309
10683
|
"onClick": onClick
|
|
10310
10684
|
}, {
|
|
10311
10685
|
value: renderContent
|
|
10312
10686
|
});
|
|
10313
10687
|
}
|
|
10314
10688
|
});
|
|
10315
|
-
const ContactCard = withInstall(stdin_default$
|
|
10316
|
-
const [name$
|
|
10689
|
+
const ContactCard = withInstall(stdin_default$18);
|
|
10690
|
+
const [name$_, bem$Z, t$a] = createNamespace("contact-edit");
|
|
10317
10691
|
const DEFAULT_CONTACT = {
|
|
10318
10692
|
tel: "",
|
|
10319
10693
|
name: ""
|
|
@@ -10333,8 +10707,8 @@
|
|
|
10333
10707
|
default: isMobile
|
|
10334
10708
|
}
|
|
10335
10709
|
};
|
|
10336
|
-
var stdin_default$
|
|
10337
|
-
name: name$
|
|
10710
|
+
var stdin_default$17 = vue.defineComponent({
|
|
10711
|
+
name: name$_,
|
|
10338
10712
|
props: contactEditProps,
|
|
10339
10713
|
emits: ["save", "delete", "change-default"],
|
|
10340
10714
|
setup(props2, {
|
|
@@ -10348,20 +10722,20 @@
|
|
|
10348
10722
|
};
|
|
10349
10723
|
const onDelete = () => emit("delete", contact);
|
|
10350
10724
|
const renderButtons = () => vue.createVNode("div", {
|
|
10351
|
-
"class": bem$
|
|
10725
|
+
"class": bem$Z("buttons")
|
|
10352
10726
|
}, [vue.createVNode(Button, {
|
|
10353
10727
|
"block": true,
|
|
10354
10728
|
"round": true,
|
|
10355
10729
|
"type": "primary",
|
|
10356
|
-
"text": t$
|
|
10357
|
-
"class": bem$
|
|
10730
|
+
"text": t$a("save"),
|
|
10731
|
+
"class": bem$Z("button"),
|
|
10358
10732
|
"loading": props2.isSaving,
|
|
10359
10733
|
"nativeType": "submit"
|
|
10360
10734
|
}, null), props2.isEdit && vue.createVNode(Button, {
|
|
10361
10735
|
"block": true,
|
|
10362
10736
|
"round": true,
|
|
10363
|
-
"text": t$
|
|
10364
|
-
"class": bem$
|
|
10737
|
+
"text": t$a("delete"),
|
|
10738
|
+
"class": bem$Z("button"),
|
|
10365
10739
|
"loading": props2.isDeleting,
|
|
10366
10740
|
"onClick": onDelete
|
|
10367
10741
|
}, null)]);
|
|
@@ -10375,7 +10749,7 @@
|
|
|
10375
10749
|
if (props2.showSetDefault) {
|
|
10376
10750
|
return vue.createVNode(Cell, {
|
|
10377
10751
|
"title": props2.setDefaultLabel,
|
|
10378
|
-
"class": bem$
|
|
10752
|
+
"class": bem$Z("switch-cell"),
|
|
10379
10753
|
"border": false
|
|
10380
10754
|
}, {
|
|
10381
10755
|
"right-icon": renderSwitch
|
|
@@ -10384,47 +10758,47 @@
|
|
|
10384
10758
|
};
|
|
10385
10759
|
vue.watch(() => props2.contactInfo, (value) => extend$1(contact, DEFAULT_CONTACT, value));
|
|
10386
10760
|
return () => vue.createVNode(Form, {
|
|
10387
|
-
"class": bem$
|
|
10761
|
+
"class": bem$Z(),
|
|
10388
10762
|
"onSubmit": onSave
|
|
10389
10763
|
}, {
|
|
10390
10764
|
default: () => [vue.createVNode("div", {
|
|
10391
|
-
"class": bem$
|
|
10765
|
+
"class": bem$Z("fields")
|
|
10392
10766
|
}, [vue.createVNode(Field, {
|
|
10393
10767
|
"modelValue": contact.name,
|
|
10394
10768
|
"onUpdate:modelValue": ($event) => contact.name = $event,
|
|
10395
10769
|
"clearable": true,
|
|
10396
|
-
"label": t$
|
|
10770
|
+
"label": t$a("name"),
|
|
10397
10771
|
"rules": [{
|
|
10398
10772
|
required: true,
|
|
10399
|
-
message: t$
|
|
10773
|
+
message: t$a("nameEmpty")
|
|
10400
10774
|
}],
|
|
10401
10775
|
"maxlength": "30",
|
|
10402
|
-
"placeholder": t$
|
|
10776
|
+
"placeholder": t$a("name")
|
|
10403
10777
|
}, null), vue.createVNode(Field, {
|
|
10404
10778
|
"modelValue": contact.tel,
|
|
10405
10779
|
"onUpdate:modelValue": ($event) => contact.tel = $event,
|
|
10406
10780
|
"clearable": true,
|
|
10407
10781
|
"type": "tel",
|
|
10408
|
-
"label": t$
|
|
10782
|
+
"label": t$a("tel"),
|
|
10409
10783
|
"rules": [{
|
|
10410
10784
|
validator: props2.telValidator,
|
|
10411
|
-
message: t$
|
|
10785
|
+
message: t$a("telInvalid")
|
|
10412
10786
|
}],
|
|
10413
|
-
"placeholder": t$
|
|
10787
|
+
"placeholder": t$a("tel")
|
|
10414
10788
|
}, null)]), renderSetDefault(), renderButtons()]
|
|
10415
10789
|
});
|
|
10416
10790
|
}
|
|
10417
10791
|
});
|
|
10418
|
-
const ContactEdit = withInstall(stdin_default$
|
|
10419
|
-
const [name$
|
|
10792
|
+
const ContactEdit = withInstall(stdin_default$17);
|
|
10793
|
+
const [name$Z, bem$Y, t$9] = createNamespace("contact-list");
|
|
10420
10794
|
const contactListProps = {
|
|
10421
10795
|
list: Array,
|
|
10422
10796
|
addText: String,
|
|
10423
10797
|
modelValue: unknownProp,
|
|
10424
10798
|
defaultTagText: String
|
|
10425
10799
|
};
|
|
10426
|
-
var stdin_default$
|
|
10427
|
-
name: name$
|
|
10800
|
+
var stdin_default$16 = vue.defineComponent({
|
|
10801
|
+
name: name$Z,
|
|
10428
10802
|
props: contactListProps,
|
|
10429
10803
|
emits: ["add", "edit", "select", "update:modelValue"],
|
|
10430
10804
|
setup(props2, {
|
|
@@ -10436,13 +10810,13 @@
|
|
|
10436
10810
|
emit("select", item, index);
|
|
10437
10811
|
};
|
|
10438
10812
|
const renderRightIcon = () => vue.createVNode(Radio, {
|
|
10439
|
-
"class": bem
|
|
10813
|
+
"class": bem$Y("radio"),
|
|
10440
10814
|
"name": item.id,
|
|
10441
10815
|
"size": "large"
|
|
10442
10816
|
}, null);
|
|
10443
10817
|
const renderEditIcon = () => vue.createVNode(Icon, {
|
|
10444
10818
|
"name": "edit",
|
|
10445
|
-
"class": bem
|
|
10819
|
+
"class": bem$Y("edit"),
|
|
10446
10820
|
"onClick": (event) => {
|
|
10447
10821
|
event.stopPropagation();
|
|
10448
10822
|
emit("edit", item, index);
|
|
@@ -10454,7 +10828,7 @@
|
|
|
10454
10828
|
nodes.push(vue.createVNode(Tag, {
|
|
10455
10829
|
"type": "primary",
|
|
10456
10830
|
"round": true,
|
|
10457
|
-
"class": bem
|
|
10831
|
+
"class": bem$Y("item-tag")
|
|
10458
10832
|
}, {
|
|
10459
10833
|
default: () => [props2.defaultTagText]
|
|
10460
10834
|
}));
|
|
@@ -10465,8 +10839,8 @@
|
|
|
10465
10839
|
"key": item.id,
|
|
10466
10840
|
"isLink": true,
|
|
10467
10841
|
"center": true,
|
|
10468
|
-
"class": bem
|
|
10469
|
-
"valueClass": bem
|
|
10842
|
+
"class": bem$Y("item"),
|
|
10843
|
+
"valueClass": bem$Y("item-value"),
|
|
10470
10844
|
"onClick": onClick
|
|
10471
10845
|
}, {
|
|
10472
10846
|
icon: renderEditIcon,
|
|
@@ -10475,34 +10849,34 @@
|
|
|
10475
10849
|
});
|
|
10476
10850
|
};
|
|
10477
10851
|
return () => vue.createVNode("div", {
|
|
10478
|
-
"class": bem
|
|
10852
|
+
"class": bem$Y()
|
|
10479
10853
|
}, [vue.createVNode(RadioGroup, {
|
|
10480
10854
|
"modelValue": props2.modelValue,
|
|
10481
|
-
"class": bem
|
|
10855
|
+
"class": bem$Y("group")
|
|
10482
10856
|
}, {
|
|
10483
10857
|
default: () => [props2.list && props2.list.map(renderItem)]
|
|
10484
10858
|
}), vue.createVNode("div", {
|
|
10485
|
-
"class": [bem
|
|
10859
|
+
"class": [bem$Y("bottom"), "van-safe-area-bottom"]
|
|
10486
10860
|
}, [vue.createVNode(Button, {
|
|
10487
10861
|
"round": true,
|
|
10488
10862
|
"block": true,
|
|
10489
10863
|
"type": "primary",
|
|
10490
|
-
"class": bem
|
|
10491
|
-
"text": props2.addText || t$
|
|
10864
|
+
"class": bem$Y("add"),
|
|
10865
|
+
"text": props2.addText || t$9("addContact"),
|
|
10492
10866
|
"onClick": () => emit("add")
|
|
10493
10867
|
}, null)])]);
|
|
10494
10868
|
}
|
|
10495
10869
|
});
|
|
10496
|
-
const ContactList = withInstall(stdin_default$
|
|
10497
|
-
const [name
|
|
10870
|
+
const ContactList = withInstall(stdin_default$16);
|
|
10871
|
+
const [name$Y, bem$X] = createNamespace("content-panel");
|
|
10498
10872
|
const contentPanelProps = {
|
|
10499
10873
|
show: Boolean,
|
|
10500
10874
|
title: String,
|
|
10501
10875
|
confirmText: makeStringProp("我已知晓"),
|
|
10502
10876
|
showFooter: truthProp
|
|
10503
10877
|
};
|
|
10504
|
-
var stdin_default$
|
|
10505
|
-
name: name
|
|
10878
|
+
var stdin_default$15 = vue.defineComponent({
|
|
10879
|
+
name: name$Y,
|
|
10506
10880
|
props: contentPanelProps,
|
|
10507
10881
|
emits: ["update:show", "confirm", "close"],
|
|
10508
10882
|
setup(props2, {
|
|
@@ -10519,7 +10893,7 @@
|
|
|
10519
10893
|
};
|
|
10520
10894
|
return () => vue.createVNode(ActionSheet, {
|
|
10521
10895
|
"show": props2.show,
|
|
10522
|
-
"class": bem$
|
|
10896
|
+
"class": bem$X(),
|
|
10523
10897
|
"onUpdate:show": (show) => {
|
|
10524
10898
|
emit("update:show", show);
|
|
10525
10899
|
if (!show)
|
|
@@ -10529,13 +10903,13 @@
|
|
|
10529
10903
|
default: () => {
|
|
10530
10904
|
var _a, _b;
|
|
10531
10905
|
return [vue.createVNode("div", {
|
|
10532
|
-
"class": bem$
|
|
10906
|
+
"class": bem$X("content")
|
|
10533
10907
|
}, [vue.createVNode("div", {
|
|
10534
|
-
"class": bem$
|
|
10908
|
+
"class": bem$X("nav-wrapper")
|
|
10535
10909
|
}, [vue.createVNode(NavBar, {
|
|
10536
10910
|
"title": props2.title,
|
|
10537
10911
|
"border": false,
|
|
10538
|
-
"class": bem$
|
|
10912
|
+
"class": bem$X("nav")
|
|
10539
10913
|
}, {
|
|
10540
10914
|
left: () => vue.createVNode(Icon, {
|
|
10541
10915
|
"name": "cross",
|
|
@@ -10543,9 +10917,9 @@
|
|
|
10543
10917
|
"onClick": close
|
|
10544
10918
|
}, null)
|
|
10545
10919
|
})]), vue.createVNode("div", {
|
|
10546
|
-
"class": bem$
|
|
10920
|
+
"class": bem$X("body")
|
|
10547
10921
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), props2.showFooter && vue.createVNode("div", {
|
|
10548
|
-
"class": bem$
|
|
10922
|
+
"class": bem$X("footer")
|
|
10549
10923
|
}, [((_b = slots.footer) == null ? void 0 : _b.call(slots)) || vue.createVNode(Button, {
|
|
10550
10924
|
"block": true,
|
|
10551
10925
|
"type": "primary",
|
|
@@ -10557,7 +10931,7 @@
|
|
|
10557
10931
|
});
|
|
10558
10932
|
}
|
|
10559
10933
|
});
|
|
10560
|
-
const ContentPanel = withInstall(stdin_default$
|
|
10934
|
+
const ContentPanel = withInstall(stdin_default$15);
|
|
10561
10935
|
function parseFormat(format2, currentTime) {
|
|
10562
10936
|
const { days } = currentTime;
|
|
10563
10937
|
let { hours, minutes, seconds, milliseconds } = currentTime;
|
|
@@ -10593,15 +10967,15 @@
|
|
|
10593
10967
|
}
|
|
10594
10968
|
return format2;
|
|
10595
10969
|
}
|
|
10596
|
-
const [name$
|
|
10970
|
+
const [name$X, bem$W] = createNamespace("count-down");
|
|
10597
10971
|
const countDownProps = {
|
|
10598
10972
|
time: makeNumericProp(0),
|
|
10599
10973
|
format: makeStringProp("HH:mm:ss"),
|
|
10600
10974
|
autoStart: truthProp,
|
|
10601
10975
|
millisecond: Boolean
|
|
10602
10976
|
};
|
|
10603
|
-
var stdin_default$
|
|
10604
|
-
name: name$
|
|
10977
|
+
var stdin_default$14 = vue.defineComponent({
|
|
10978
|
+
name: name$X,
|
|
10605
10979
|
props: countDownProps,
|
|
10606
10980
|
emits: ["change", "finish"],
|
|
10607
10981
|
setup(props2, {
|
|
@@ -10636,11 +11010,11 @@
|
|
|
10636
11010
|
});
|
|
10637
11011
|
return () => vue.createVNode("div", {
|
|
10638
11012
|
"role": "timer",
|
|
10639
|
-
"class": bem$
|
|
11013
|
+
"class": bem$W()
|
|
10640
11014
|
}, [slots.default ? slots.default(current2.value) : timeText.value]);
|
|
10641
11015
|
}
|
|
10642
11016
|
});
|
|
10643
|
-
const CountDown = withInstall(stdin_default$
|
|
11017
|
+
const CountDown = withInstall(stdin_default$14);
|
|
10644
11018
|
function getDate(timeStamp) {
|
|
10645
11019
|
const date = new Date(timeStamp * 1e3);
|
|
10646
11020
|
return `${date.getFullYear()}.${padZero(date.getMonth() + 1)}.${padZero(
|
|
@@ -10649,9 +11023,9 @@
|
|
|
10649
11023
|
}
|
|
10650
11024
|
const formatDiscount = (discount) => (discount / 10).toFixed(discount % 10 === 0 ? 0 : 1);
|
|
10651
11025
|
const formatAmount = (amount) => (amount / 100).toFixed(amount % 100 === 0 ? 0 : amount % 10 === 0 ? 1 : 2);
|
|
10652
|
-
const [name$
|
|
10653
|
-
var stdin_default$
|
|
10654
|
-
name: name$
|
|
11026
|
+
const [name$W, bem$V, t$8] = createNamespace("coupon");
|
|
11027
|
+
var stdin_default$13 = vue.defineComponent({
|
|
11028
|
+
name: name$W,
|
|
10655
11029
|
props: {
|
|
10656
11030
|
chosen: Boolean,
|
|
10657
11031
|
coupon: makeRequiredProp(Object),
|
|
@@ -10679,13 +11053,13 @@
|
|
|
10679
11053
|
return [vue.createVNode("span", null, [currency]), ` ${denominations}`];
|
|
10680
11054
|
}
|
|
10681
11055
|
if (coupon.discount) {
|
|
10682
|
-
return t$
|
|
11056
|
+
return t$8("discount", formatDiscount(coupon.discount));
|
|
10683
11057
|
}
|
|
10684
11058
|
return "";
|
|
10685
11059
|
});
|
|
10686
11060
|
const conditionMessage = vue.computed(() => {
|
|
10687
11061
|
const condition = formatAmount(props2.coupon.originCondition || 0);
|
|
10688
|
-
return condition === "0" ? t$
|
|
11062
|
+
return condition === "0" ? t$8("unlimited") : t$8("condition", condition);
|
|
10689
11063
|
});
|
|
10690
11064
|
return () => {
|
|
10691
11065
|
const {
|
|
@@ -10695,34 +11069,34 @@
|
|
|
10695
11069
|
} = props2;
|
|
10696
11070
|
const description = disabled && coupon.reason || coupon.description;
|
|
10697
11071
|
return vue.createVNode("div", {
|
|
10698
|
-
"class": bem$
|
|
11072
|
+
"class": bem$V({
|
|
10699
11073
|
disabled
|
|
10700
11074
|
})
|
|
10701
11075
|
}, [vue.createVNode("div", {
|
|
10702
|
-
"class": bem$
|
|
11076
|
+
"class": bem$V("content")
|
|
10703
11077
|
}, [vue.createVNode("div", {
|
|
10704
|
-
"class": bem$
|
|
11078
|
+
"class": bem$V("head")
|
|
10705
11079
|
}, [vue.createVNode("h2", {
|
|
10706
|
-
"class": bem$
|
|
11080
|
+
"class": bem$V("amount")
|
|
10707
11081
|
}, [faceAmount.value]), vue.createVNode("p", {
|
|
10708
|
-
"class": bem$
|
|
11082
|
+
"class": bem$V("condition")
|
|
10709
11083
|
}, [coupon.condition || conditionMessage.value])]), vue.createVNode("div", {
|
|
10710
|
-
"class": bem$
|
|
11084
|
+
"class": bem$V("body")
|
|
10711
11085
|
}, [vue.createVNode("p", {
|
|
10712
|
-
"class": bem$
|
|
11086
|
+
"class": bem$V("name")
|
|
10713
11087
|
}, [coupon.name]), vue.createVNode("p", {
|
|
10714
|
-
"class": bem$
|
|
11088
|
+
"class": bem$V("valid")
|
|
10715
11089
|
}, [validPeriod.value]), !disabled && vue.createVNode(Checkbox, {
|
|
10716
|
-
"class": bem$
|
|
11090
|
+
"class": bem$V("corner"),
|
|
10717
11091
|
"modelValue": chosen
|
|
10718
11092
|
}, null)])]), description && vue.createVNode("p", {
|
|
10719
|
-
"class": bem$
|
|
11093
|
+
"class": bem$V("description")
|
|
10720
11094
|
}, [description])]);
|
|
10721
11095
|
};
|
|
10722
11096
|
}
|
|
10723
11097
|
});
|
|
10724
|
-
const Coupon = withInstall(stdin_default$
|
|
10725
|
-
const [name$
|
|
11098
|
+
const Coupon = withInstall(stdin_default$13);
|
|
11099
|
+
const [name$V, bem$U, t$7] = createNamespace("coupon-cell");
|
|
10726
11100
|
const couponCellProps = {
|
|
10727
11101
|
title: String,
|
|
10728
11102
|
border: truthProp,
|
|
@@ -10748,78 +11122,29 @@
|
|
|
10748
11122
|
}
|
|
10749
11123
|
return `-${currency} ${(value / 100).toFixed(2)}`;
|
|
10750
11124
|
}
|
|
10751
|
-
return coupons.length === 0 ? t$
|
|
11125
|
+
return coupons.length === 0 ? t$7("noCoupon") : t$7("count", coupons.length);
|
|
10752
11126
|
}
|
|
10753
|
-
var stdin_default$
|
|
10754
|
-
name: name$
|
|
11127
|
+
var stdin_default$12 = vue.defineComponent({
|
|
11128
|
+
name: name$V,
|
|
10755
11129
|
props: couponCellProps,
|
|
10756
11130
|
setup(props2) {
|
|
10757
11131
|
return () => {
|
|
10758
11132
|
const selected = props2.coupons[+props2.chosenCoupon];
|
|
10759
11133
|
return vue.createVNode(Cell, {
|
|
10760
|
-
"class": bem$
|
|
11134
|
+
"class": bem$U(),
|
|
10761
11135
|
"value": formatValue(props2),
|
|
10762
|
-
"title": props2.title || t$
|
|
11136
|
+
"title": props2.title || t$7("title"),
|
|
10763
11137
|
"border": props2.border,
|
|
10764
11138
|
"isLink": props2.editable,
|
|
10765
|
-
"valueClass": bem$
|
|
11139
|
+
"valueClass": bem$U("value", {
|
|
10766
11140
|
selected
|
|
10767
11141
|
})
|
|
10768
11142
|
}, null);
|
|
10769
11143
|
};
|
|
10770
11144
|
}
|
|
10771
11145
|
});
|
|
10772
|
-
const CouponCell = withInstall(stdin_default$
|
|
10773
|
-
const [name$
|
|
10774
|
-
const emptyProps = {
|
|
10775
|
-
image: makeStringProp("default"),
|
|
10776
|
-
imageSize: [Number, String, Array],
|
|
10777
|
-
description: String
|
|
10778
|
-
};
|
|
10779
|
-
var stdin_default$14 = vue.defineComponent({
|
|
10780
|
-
name: name$X,
|
|
10781
|
-
props: emptyProps,
|
|
10782
|
-
setup(props2, {
|
|
10783
|
-
slots
|
|
10784
|
-
}) {
|
|
10785
|
-
const renderDescription = () => {
|
|
10786
|
-
const description = slots.description ? slots.description() : props2.description;
|
|
10787
|
-
if (description) {
|
|
10788
|
-
return vue.createVNode("p", {
|
|
10789
|
-
"class": bem$W("description")
|
|
10790
|
-
}, [description]);
|
|
10791
|
-
}
|
|
10792
|
-
};
|
|
10793
|
-
const renderBottom = () => {
|
|
10794
|
-
if (slots.default) {
|
|
10795
|
-
return vue.createVNode("div", {
|
|
10796
|
-
"class": bem$W("bottom")
|
|
10797
|
-
}, [slots.default()]);
|
|
10798
|
-
}
|
|
10799
|
-
};
|
|
10800
|
-
const renderImage = () => {
|
|
10801
|
-
if (slots.image) {
|
|
10802
|
-
return slots.image();
|
|
10803
|
-
}
|
|
10804
|
-
if (props2.image === "default" || props2.image === "network") {
|
|
10805
|
-
return vue.createVNode("div", {
|
|
10806
|
-
"class": bem$W("image-preset", props2.image)
|
|
10807
|
-
}, null);
|
|
10808
|
-
}
|
|
10809
|
-
return vue.createVNode("img", {
|
|
10810
|
-
"src": props2.image
|
|
10811
|
-
}, null);
|
|
10812
|
-
};
|
|
10813
|
-
return () => vue.createVNode("div", {
|
|
10814
|
-
"class": bem$W()
|
|
10815
|
-
}, [vue.createVNode("div", {
|
|
10816
|
-
"class": bem$W("image"),
|
|
10817
|
-
"style": getSizeStyle(props2.imageSize)
|
|
10818
|
-
}, [renderImage()]), renderDescription(), renderBottom()]);
|
|
10819
|
-
}
|
|
10820
|
-
});
|
|
10821
|
-
const Empty = withInstall(stdin_default$14);
|
|
10822
|
-
const [name$W, bem$V, t$8] = createNamespace("coupon-list");
|
|
11146
|
+
const CouponCell = withInstall(stdin_default$12);
|
|
11147
|
+
const [name$U, bem$T, t$6] = createNamespace("coupon-list");
|
|
10823
11148
|
const couponListProps = {
|
|
10824
11149
|
code: makeStringProp(""),
|
|
10825
11150
|
coupons: makeArrayProp(),
|
|
@@ -10840,8 +11165,8 @@
|
|
|
10840
11165
|
exchangeButtonLoading: Boolean,
|
|
10841
11166
|
exchangeButtonDisabled: Boolean
|
|
10842
11167
|
};
|
|
10843
|
-
var stdin_default$
|
|
10844
|
-
name: name$
|
|
11168
|
+
var stdin_default$11 = vue.defineComponent({
|
|
11169
|
+
name: name$U,
|
|
10845
11170
|
props: couponListProps,
|
|
10846
11171
|
emits: ["change", "exchange", "update:code"],
|
|
10847
11172
|
setup(props2, {
|
|
@@ -10877,27 +11202,27 @@
|
|
|
10877
11202
|
"image": props2.emptyImage
|
|
10878
11203
|
}, {
|
|
10879
11204
|
default: () => [vue.createVNode("p", {
|
|
10880
|
-
"class": bem$
|
|
10881
|
-
}, [t$
|
|
11205
|
+
"class": bem$T("empty-tip")
|
|
11206
|
+
}, [t$6("noCoupon")])]
|
|
10882
11207
|
});
|
|
10883
11208
|
const renderExchangeBar = () => {
|
|
10884
11209
|
if (props2.showExchangeBar) {
|
|
10885
11210
|
return vue.createVNode("div", {
|
|
10886
11211
|
"ref": barRef,
|
|
10887
|
-
"class": bem$
|
|
11212
|
+
"class": bem$T("exchange-bar")
|
|
10888
11213
|
}, [vue.createVNode(Field, {
|
|
10889
11214
|
"modelValue": currentCode.value,
|
|
10890
11215
|
"onUpdate:modelValue": ($event) => currentCode.value = $event,
|
|
10891
11216
|
"clearable": true,
|
|
10892
11217
|
"border": false,
|
|
10893
|
-
"class": bem$
|
|
10894
|
-
"placeholder": props2.inputPlaceholder || t$
|
|
11218
|
+
"class": bem$T("field"),
|
|
11219
|
+
"placeholder": props2.inputPlaceholder || t$6("placeholder"),
|
|
10895
11220
|
"maxlength": "20"
|
|
10896
11221
|
}, null), vue.createVNode(Button, {
|
|
10897
11222
|
"plain": true,
|
|
10898
11223
|
"type": "primary",
|
|
10899
|
-
"class": bem$
|
|
10900
|
-
"text": props2.exchangeButtonText || t$
|
|
11224
|
+
"class": bem$T("exchange"),
|
|
11225
|
+
"text": props2.exchangeButtonText || t$6("exchange"),
|
|
10901
11226
|
"loading": props2.exchangeButtonLoading,
|
|
10902
11227
|
"disabled": buttonDisabled.value,
|
|
10903
11228
|
"onClick": onExchange
|
|
@@ -10909,14 +11234,14 @@
|
|
|
10909
11234
|
coupons
|
|
10910
11235
|
} = props2;
|
|
10911
11236
|
const count = props2.showCount ? ` (${coupons.length})` : "";
|
|
10912
|
-
const title = (props2.enabledTitle || t$
|
|
11237
|
+
const title = (props2.enabledTitle || t$6("enable")) + count;
|
|
10913
11238
|
return vue.createVNode(Tab, {
|
|
10914
11239
|
"title": title
|
|
10915
11240
|
}, {
|
|
10916
11241
|
default: () => {
|
|
10917
11242
|
var _a;
|
|
10918
11243
|
return [vue.createVNode("div", {
|
|
10919
|
-
"class": bem$
|
|
11244
|
+
"class": bem$T("list", {
|
|
10920
11245
|
"with-bottom": props2.showCloseButton
|
|
10921
11246
|
}),
|
|
10922
11247
|
"style": {
|
|
@@ -10938,14 +11263,14 @@
|
|
|
10938
11263
|
disabledCoupons
|
|
10939
11264
|
} = props2;
|
|
10940
11265
|
const count = props2.showCount ? ` (${disabledCoupons.length})` : "";
|
|
10941
|
-
const title = (props2.disabledTitle || t$
|
|
11266
|
+
const title = (props2.disabledTitle || t$6("disabled")) + count;
|
|
10942
11267
|
return vue.createVNode(Tab, {
|
|
10943
11268
|
"title": title
|
|
10944
11269
|
}, {
|
|
10945
11270
|
default: () => {
|
|
10946
11271
|
var _a;
|
|
10947
11272
|
return [vue.createVNode("div", {
|
|
10948
|
-
"class": bem$
|
|
11273
|
+
"class": bem$T("list", {
|
|
10949
11274
|
"with-bottom": props2.showCloseButton
|
|
10950
11275
|
}),
|
|
10951
11276
|
"style": {
|
|
@@ -10972,27 +11297,27 @@
|
|
|
10972
11297
|
});
|
|
10973
11298
|
return () => vue.createVNode("div", {
|
|
10974
11299
|
"ref": root,
|
|
10975
|
-
"class": bem$
|
|
11300
|
+
"class": bem$T()
|
|
10976
11301
|
}, [renderExchangeBar(), vue.createVNode(Tabs, {
|
|
10977
11302
|
"active": activeTab.value,
|
|
10978
11303
|
"onUpdate:active": ($event) => activeTab.value = $event,
|
|
10979
|
-
"class": bem$
|
|
11304
|
+
"class": bem$T("tab")
|
|
10980
11305
|
}, {
|
|
10981
11306
|
default: () => [renderCouponTab(), renderDisabledTab()]
|
|
10982
11307
|
}), vue.createVNode("div", {
|
|
10983
|
-
"class": bem$
|
|
11308
|
+
"class": bem$T("bottom")
|
|
10984
11309
|
}, [vue.withDirectives(vue.createVNode(Button, {
|
|
10985
11310
|
"round": true,
|
|
10986
11311
|
"block": true,
|
|
10987
11312
|
"type": "primary",
|
|
10988
|
-
"class": bem$
|
|
10989
|
-
"text": props2.closeButtonText || t$
|
|
11313
|
+
"class": bem$T("close"),
|
|
11314
|
+
"text": props2.closeButtonText || t$6("close"),
|
|
10990
11315
|
"onClick": () => emit("change", -1)
|
|
10991
11316
|
}, null), [[vue.vShow, props2.showCloseButton]])])]);
|
|
10992
11317
|
}
|
|
10993
11318
|
});
|
|
10994
|
-
const CouponList = withInstall(stdin_default$
|
|
10995
|
-
const [name$
|
|
11319
|
+
const CouponList = withInstall(stdin_default$11);
|
|
11320
|
+
const [name$T, bem$S] = createNamespace("filter-tag");
|
|
10996
11321
|
const filterTagProps = {
|
|
10997
11322
|
selected: Boolean,
|
|
10998
11323
|
disabled: Boolean,
|
|
@@ -11009,8 +11334,8 @@
|
|
|
11009
11334
|
dot: Boolean,
|
|
11010
11335
|
badge: numericProp
|
|
11011
11336
|
};
|
|
11012
|
-
var stdin_default$
|
|
11013
|
-
name: name$
|
|
11337
|
+
var stdin_default$10 = vue.defineComponent({
|
|
11338
|
+
name: name$T,
|
|
11014
11339
|
props: filterTagProps,
|
|
11015
11340
|
emits: ["click"],
|
|
11016
11341
|
setup(props2, {
|
|
@@ -11019,7 +11344,7 @@
|
|
|
11019
11344
|
}) {
|
|
11020
11345
|
const renderIcon = () => props2.icon && vue.createVNode(Icon, {
|
|
11021
11346
|
"name": props2.icon,
|
|
11022
|
-
"class": bem$
|
|
11347
|
+
"class": bem$S("icon"),
|
|
11023
11348
|
"classPrefix": props2.iconPrefix
|
|
11024
11349
|
}, null);
|
|
11025
11350
|
const renderBadge = () => {
|
|
@@ -11040,7 +11365,7 @@
|
|
|
11040
11365
|
const content = (_a = slots.default) == null ? void 0 : _a.call(slots);
|
|
11041
11366
|
return vue.createVNode("button", {
|
|
11042
11367
|
"type": "button",
|
|
11043
|
-
"class": bem$
|
|
11368
|
+
"class": bem$S({
|
|
11044
11369
|
selected: props2.selected,
|
|
11045
11370
|
disabled: props2.disabled,
|
|
11046
11371
|
large: props2.size === "large"
|
|
@@ -11048,15 +11373,15 @@
|
|
|
11048
11373
|
"disabled": props2.disabled,
|
|
11049
11374
|
"onClick": (event) => emit("click", event)
|
|
11050
11375
|
}, [props2.iconPosition === "left" && icon, vue.createVNode("span", {
|
|
11051
|
-
"class": bem$
|
|
11376
|
+
"class": bem$S("text")
|
|
11052
11377
|
}, [content]), props2.iconPosition === "right" && icon, renderBadge()]);
|
|
11053
11378
|
};
|
|
11054
11379
|
}
|
|
11055
11380
|
});
|
|
11056
|
-
const FilterTag = withInstall(stdin_default$
|
|
11057
|
-
const [name$
|
|
11058
|
-
var stdin_default
|
|
11059
|
-
name: name$
|
|
11381
|
+
const FilterTag = withInstall(stdin_default$10);
|
|
11382
|
+
const [name$S] = createNamespace("time-picker");
|
|
11383
|
+
var stdin_default$$ = vue.defineComponent({
|
|
11384
|
+
name: name$S,
|
|
11060
11385
|
props: extend$1({}, sharedProps, {
|
|
11061
11386
|
minHour: makeNumericProp(0),
|
|
11062
11387
|
maxHour: makeNumericProp(23),
|
|
@@ -11163,9 +11488,9 @@
|
|
|
11163
11488
|
}
|
|
11164
11489
|
});
|
|
11165
11490
|
const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
|
|
11166
|
-
const [name$
|
|
11167
|
-
var stdin_default$
|
|
11168
|
-
name: name$
|
|
11491
|
+
const [name$R] = createNamespace("date-picker");
|
|
11492
|
+
var stdin_default$_ = vue.defineComponent({
|
|
11493
|
+
name: name$R,
|
|
11169
11494
|
props: extend$1({}, sharedProps, {
|
|
11170
11495
|
type: makeStringProp("datetime"),
|
|
11171
11496
|
modelValue: Date,
|
|
@@ -11403,10 +11728,10 @@
|
|
|
11403
11728
|
}, pick(props2, pickerInheritKeys)), slots);
|
|
11404
11729
|
}
|
|
11405
11730
|
});
|
|
11406
|
-
const [name$
|
|
11407
|
-
const timePickerPropKeys = Object.keys(stdin_default
|
|
11408
|
-
const datePickerPropKeys = Object.keys(stdin_default$
|
|
11409
|
-
const datetimePickerProps = extend$1({}, stdin_default
|
|
11731
|
+
const [name$Q, bem$R] = createNamespace("datetime-picker");
|
|
11732
|
+
const timePickerPropKeys = Object.keys(stdin_default$$.props);
|
|
11733
|
+
const datePickerPropKeys = Object.keys(stdin_default$_.props);
|
|
11734
|
+
const datetimePickerProps = extend$1({}, stdin_default$$.props, stdin_default$_.props, {
|
|
11410
11735
|
modelValue: [String, Date],
|
|
11411
11736
|
showTimeRange: Boolean,
|
|
11412
11737
|
startTimeFromCurrent: {
|
|
@@ -11424,8 +11749,8 @@
|
|
|
11424
11749
|
default: "结束时间"
|
|
11425
11750
|
}
|
|
11426
11751
|
});
|
|
11427
|
-
var stdin_default
|
|
11428
|
-
name: name$
|
|
11752
|
+
var stdin_default$Z = vue.defineComponent({
|
|
11753
|
+
name: name$Q,
|
|
11429
11754
|
props: datetimePickerProps,
|
|
11430
11755
|
emits: ["update:startTime", "update:endTime", "time-range-change"],
|
|
11431
11756
|
setup(props2, {
|
|
@@ -11494,7 +11819,7 @@
|
|
|
11494
11819
|
});
|
|
11495
11820
|
return () => {
|
|
11496
11821
|
const isTimePicker = props2.type === "time";
|
|
11497
|
-
const Component = isTimePicker ? stdin_default
|
|
11822
|
+
const Component = isTimePicker ? stdin_default$$ : stdin_default$_;
|
|
11498
11823
|
const inheritProps = pick(props2, isTimePicker ? timePickerPropKeys : datePickerPropKeys);
|
|
11499
11824
|
const showTimeRange = props2.showTimeRange && props2.type === "datetime";
|
|
11500
11825
|
const timeRangeSlots = showTimeRange ? {
|
|
@@ -11507,7 +11832,7 @@
|
|
|
11507
11832
|
"columns-top": () => {
|
|
11508
11833
|
var _a;
|
|
11509
11834
|
return [vue.createVNode("div", {
|
|
11510
|
-
"class": bem$
|
|
11835
|
+
"class": bem$R("time-range")
|
|
11511
11836
|
}, [vue.createVNode(FilterTag, {
|
|
11512
11837
|
"selected": activeTimeRange.value === "start",
|
|
11513
11838
|
"onClick": () => onTimeRangeClick("start")
|
|
@@ -11523,14 +11848,14 @@
|
|
|
11523
11848
|
"columns-bottom": () => {
|
|
11524
11849
|
var _a;
|
|
11525
11850
|
return [vue.createVNode("div", {
|
|
11526
|
-
"class": bem$
|
|
11851
|
+
"class": bem$R("time-range-bottom")
|
|
11527
11852
|
}, null), (_a = slots["columns-bottom"]) == null ? void 0 : _a.call(slots)];
|
|
11528
11853
|
}
|
|
11529
11854
|
} : slots;
|
|
11530
11855
|
if (showTimeRange) {
|
|
11531
|
-
return vue.createVNode(stdin_default$
|
|
11856
|
+
return vue.createVNode(stdin_default$_, vue.mergeProps({
|
|
11532
11857
|
"ref": root,
|
|
11533
|
-
"class": bem$
|
|
11858
|
+
"class": bem$R()
|
|
11534
11859
|
}, pick(props2, datePickerPropKeys), attrs, {
|
|
11535
11860
|
"modelValue": rangeModelValue.value,
|
|
11536
11861
|
"minDate": rangeMinDate.value,
|
|
@@ -11541,13 +11866,13 @@
|
|
|
11541
11866
|
}
|
|
11542
11867
|
return vue.createVNode(Component, vue.mergeProps({
|
|
11543
11868
|
"ref": root,
|
|
11544
|
-
"class": bem$
|
|
11869
|
+
"class": bem$R()
|
|
11545
11870
|
}, inheritProps, attrs), timeRangeSlots);
|
|
11546
11871
|
};
|
|
11547
11872
|
}
|
|
11548
11873
|
});
|
|
11549
|
-
const DatetimePicker = withInstall(stdin_default
|
|
11550
|
-
const [name$
|
|
11874
|
+
const DatetimePicker = withInstall(stdin_default$Z);
|
|
11875
|
+
const [name$P, bem$Q, t$5] = createNamespace("dialog");
|
|
11551
11876
|
const dialogProps = extend$1({}, popupSharedProps, {
|
|
11552
11877
|
title: String,
|
|
11553
11878
|
theme: String,
|
|
@@ -11579,8 +11904,8 @@
|
|
|
11579
11904
|
closeOnClickOverlay: Boolean
|
|
11580
11905
|
});
|
|
11581
11906
|
const popupInheritKeys$1 = [...popupSharedPropKeys, "transition", "closeOnPopstate"];
|
|
11582
|
-
var stdin_default$
|
|
11583
|
-
name: name$
|
|
11907
|
+
var stdin_default$Y = vue.defineComponent({
|
|
11908
|
+
name: name$P,
|
|
11584
11909
|
props: dialogProps,
|
|
11585
11910
|
emits: ["confirm", "cancel", "third", "keydown", "input", "update:show", "update:inputValue"],
|
|
11586
11911
|
setup(props2, {
|
|
@@ -11640,7 +11965,7 @@
|
|
|
11640
11965
|
const title = slots.title ? slots.title() : props2.title;
|
|
11641
11966
|
if (title) {
|
|
11642
11967
|
return vue.createVNode("div", {
|
|
11643
|
-
"class": bem$
|
|
11968
|
+
"class": bem$Q("header", {
|
|
11644
11969
|
isolated: !props2.message && !props2.showInput && !slots.default
|
|
11645
11970
|
})
|
|
11646
11971
|
}, [title]);
|
|
@@ -11652,7 +11977,7 @@
|
|
|
11652
11977
|
allowHtml,
|
|
11653
11978
|
messageAlign
|
|
11654
11979
|
} = props2;
|
|
11655
|
-
const classNames = bem$
|
|
11980
|
+
const classNames = bem$Q("message", {
|
|
11656
11981
|
"has-title": hasTitle,
|
|
11657
11982
|
[messageAlign]: messageAlign
|
|
11658
11983
|
});
|
|
@@ -11679,7 +12004,7 @@
|
|
|
11679
12004
|
"ref": inputRef,
|
|
11680
12005
|
"size": "normal",
|
|
11681
12006
|
"border": false,
|
|
11682
|
-
"class": bem$
|
|
12007
|
+
"class": bem$Q("input"),
|
|
11683
12008
|
"modelValue": props2.inputValue,
|
|
11684
12009
|
"inputAlign": props2.inputAlign,
|
|
11685
12010
|
"placeholder": props2.inputPlaceholder,
|
|
@@ -11698,7 +12023,7 @@
|
|
|
11698
12023
|
const hasTitle = !!(title || slots.title);
|
|
11699
12024
|
return vue.createVNode("div", {
|
|
11700
12025
|
"key": allowHtml ? 1 : 0,
|
|
11701
|
-
"class": bem$
|
|
12026
|
+
"class": bem$Q("content", {
|
|
11702
12027
|
isolated: !hasTitle,
|
|
11703
12028
|
"with-input": showInput
|
|
11704
12029
|
})
|
|
@@ -11706,13 +12031,13 @@
|
|
|
11706
12031
|
}
|
|
11707
12032
|
};
|
|
11708
12033
|
const renderButtons = () => vue.createVNode("div", {
|
|
11709
|
-
"class": [BORDER_TOP, bem$
|
|
12034
|
+
"class": [BORDER_TOP, bem$Q("footer", {
|
|
11710
12035
|
vertical: props2.showThirdButton
|
|
11711
12036
|
})]
|
|
11712
12037
|
}, [props2.showCancelButton && vue.createVNode(Button, {
|
|
11713
12038
|
"size": "large",
|
|
11714
|
-
"text": props2.cancelButtonText || t$
|
|
11715
|
-
"class": bem$
|
|
12039
|
+
"text": props2.cancelButtonText || t$5("cancel"),
|
|
12040
|
+
"class": bem$Q("cancel"),
|
|
11716
12041
|
"style": {
|
|
11717
12042
|
color: props2.cancelButtonColor
|
|
11718
12043
|
},
|
|
@@ -11721,8 +12046,8 @@
|
|
|
11721
12046
|
"onClick": onCancel
|
|
11722
12047
|
}, null), props2.showConfirmButton && vue.createVNode(Button, {
|
|
11723
12048
|
"size": "large",
|
|
11724
|
-
"text": props2.confirmButtonText || t$
|
|
11725
|
-
"class": [bem$
|
|
12049
|
+
"text": props2.confirmButtonText || t$5("confirm"),
|
|
12050
|
+
"class": [bem$Q("confirm"), {
|
|
11726
12051
|
[BORDER_LEFT]: props2.showCancelButton && !props2.showThirdButton
|
|
11727
12052
|
}],
|
|
11728
12053
|
"style": {
|
|
@@ -11734,7 +12059,7 @@
|
|
|
11734
12059
|
}, null), props2.showThirdButton && vue.createVNode(Button, {
|
|
11735
12060
|
"size": "large",
|
|
11736
12061
|
"text": props2.thirdButtonText,
|
|
11737
|
-
"class": bem$
|
|
12062
|
+
"class": bem$Q("third"),
|
|
11738
12063
|
"style": {
|
|
11739
12064
|
color: props2.thirdButtonColor
|
|
11740
12065
|
},
|
|
@@ -11743,20 +12068,20 @@
|
|
|
11743
12068
|
"onClick": onThird
|
|
11744
12069
|
}, null)]);
|
|
11745
12070
|
const renderRoundButtons = () => vue.createVNode(ActionBar, {
|
|
11746
|
-
"class": bem$
|
|
12071
|
+
"class": bem$Q("footer")
|
|
11747
12072
|
}, {
|
|
11748
12073
|
default: () => [props2.showCancelButton && vue.createVNode(ActionBarButton, {
|
|
11749
12074
|
"type": "warning",
|
|
11750
|
-
"text": props2.cancelButtonText || t$
|
|
11751
|
-
"class": bem$
|
|
12075
|
+
"text": props2.cancelButtonText || t$5("cancel"),
|
|
12076
|
+
"class": bem$Q("cancel"),
|
|
11752
12077
|
"color": props2.cancelButtonColor,
|
|
11753
12078
|
"loading": loading.cancel,
|
|
11754
12079
|
"disabled": props2.cancelButtonDisabled,
|
|
11755
12080
|
"onClick": onCancel
|
|
11756
12081
|
}, null), props2.showConfirmButton && vue.createVNode(ActionBarButton, {
|
|
11757
12082
|
"type": "primary",
|
|
11758
|
-
"text": props2.confirmButtonText || t$
|
|
11759
|
-
"class": bem$
|
|
12083
|
+
"text": props2.confirmButtonText || t$5("confirm"),
|
|
12084
|
+
"class": bem$Q("confirm"),
|
|
11760
12085
|
"color": props2.confirmButtonColor,
|
|
11761
12086
|
"loading": loading.confirm,
|
|
11762
12087
|
"disabled": props2.confirmButtonDisabled,
|
|
@@ -11788,7 +12113,7 @@
|
|
|
11788
12113
|
return vue.createVNode(Popup, vue.mergeProps({
|
|
11789
12114
|
"ref": root,
|
|
11790
12115
|
"role": "dialog",
|
|
11791
|
-
"class": [bem$
|
|
12116
|
+
"class": [bem$Q([theme]), className],
|
|
11792
12117
|
"style": {
|
|
11793
12118
|
width: addUnit(width2)
|
|
11794
12119
|
},
|
|
@@ -11811,7 +12136,7 @@
|
|
|
11811
12136
|
state,
|
|
11812
12137
|
toggle
|
|
11813
12138
|
} = usePopupState();
|
|
11814
|
-
return () => vue.createVNode(stdin_default$
|
|
12139
|
+
return () => vue.createVNode(stdin_default$Y, vue.mergeProps(state, {
|
|
11815
12140
|
"onUpdate:show": toggle
|
|
11816
12141
|
}), null);
|
|
11817
12142
|
}
|
|
@@ -11878,12 +12203,12 @@
|
|
|
11878
12203
|
Dialog.resetDefaultOptions = () => {
|
|
11879
12204
|
Dialog.currentOptions = extend$1({}, Dialog.defaultOptions);
|
|
11880
12205
|
};
|
|
11881
|
-
Dialog.Component = withInstall(stdin_default$
|
|
12206
|
+
Dialog.Component = withInstall(stdin_default$Y);
|
|
11882
12207
|
Dialog.install = (app) => {
|
|
11883
12208
|
app.use(Dialog.Component);
|
|
11884
12209
|
app.config.globalProperties.$dialog = Dialog;
|
|
11885
12210
|
};
|
|
11886
|
-
const [name$
|
|
12211
|
+
const [name$O, bem$P] = createNamespace("dropdown-menu");
|
|
11887
12212
|
const dropdownMenuProps = {
|
|
11888
12213
|
overlay: truthProp,
|
|
11889
12214
|
zIndex: numericProp,
|
|
@@ -11895,9 +12220,9 @@
|
|
|
11895
12220
|
closeOnClickOutside: truthProp,
|
|
11896
12221
|
closeOnClickOverlay: truthProp
|
|
11897
12222
|
};
|
|
11898
|
-
const DROPDOWN_KEY = Symbol(name$
|
|
11899
|
-
var stdin_default$
|
|
11900
|
-
name: name$
|
|
12223
|
+
const DROPDOWN_KEY = Symbol(name$O);
|
|
12224
|
+
var stdin_default$X = vue.defineComponent({
|
|
12225
|
+
name: name$O,
|
|
11901
12226
|
props: dropdownMenuProps,
|
|
11902
12227
|
setup(props2, {
|
|
11903
12228
|
slots
|
|
@@ -11969,7 +12294,7 @@
|
|
|
11969
12294
|
"id": `${id}-${index}`,
|
|
11970
12295
|
"role": "button",
|
|
11971
12296
|
"tabindex": disabled ? void 0 : 0,
|
|
11972
|
-
"class": [bem$
|
|
12297
|
+
"class": [bem$P("item", {
|
|
11973
12298
|
disabled
|
|
11974
12299
|
}), {
|
|
11975
12300
|
[HAPTICS_FEEDBACK]: !disabled
|
|
@@ -11980,7 +12305,7 @@
|
|
|
11980
12305
|
}
|
|
11981
12306
|
}
|
|
11982
12307
|
}, [vue.createVNode("span", {
|
|
11983
|
-
"class": [bem$
|
|
12308
|
+
"class": [bem$P("title", {
|
|
11984
12309
|
down: showPopup === (props2.direction === "down"),
|
|
11985
12310
|
active: showPopup
|
|
11986
12311
|
}), titleClass],
|
|
@@ -12005,18 +12330,18 @@
|
|
|
12005
12330
|
var _a;
|
|
12006
12331
|
return vue.createVNode("div", {
|
|
12007
12332
|
"ref": root,
|
|
12008
|
-
"class": bem$
|
|
12333
|
+
"class": bem$P()
|
|
12009
12334
|
}, [props2.showBar && vue.createVNode("div", {
|
|
12010
12335
|
"ref": barRef,
|
|
12011
12336
|
"style": barStyle.value,
|
|
12012
|
-
"class": bem$
|
|
12337
|
+
"class": bem$P("bar", {
|
|
12013
12338
|
opened: opened.value
|
|
12014
12339
|
})
|
|
12015
12340
|
}, [children.map(renderTitle)]), (_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
|
12016
12341
|
};
|
|
12017
12342
|
}
|
|
12018
12343
|
});
|
|
12019
|
-
const [name$
|
|
12344
|
+
const [name$N, bem$O] = createNamespace("dropdown-item");
|
|
12020
12345
|
const dropdownItemProps = {
|
|
12021
12346
|
title: String,
|
|
12022
12347
|
options: makeArrayProp(),
|
|
@@ -12026,8 +12351,8 @@
|
|
|
12026
12351
|
modelValue: unknownProp,
|
|
12027
12352
|
titleClass: unknownProp
|
|
12028
12353
|
};
|
|
12029
|
-
var stdin_default$
|
|
12030
|
-
name: name$
|
|
12354
|
+
var stdin_default$W = vue.defineComponent({
|
|
12355
|
+
name: name$N,
|
|
12031
12356
|
props: dropdownItemProps,
|
|
12032
12357
|
emits: ["open", "opened", "close", "closed", "change", "update:modelValue"],
|
|
12033
12358
|
setup(props2, {
|
|
@@ -12094,7 +12419,7 @@
|
|
|
12094
12419
|
const renderIcon = () => {
|
|
12095
12420
|
if (active) {
|
|
12096
12421
|
return vue.createVNode(Icon, {
|
|
12097
|
-
"class": bem$
|
|
12422
|
+
"class": bem$O("icon"),
|
|
12098
12423
|
"color": activeColor,
|
|
12099
12424
|
"name": "success"
|
|
12100
12425
|
}, null);
|
|
@@ -12105,7 +12430,7 @@
|
|
|
12105
12430
|
"key": option.value,
|
|
12106
12431
|
"icon": option.icon,
|
|
12107
12432
|
"title": option.text,
|
|
12108
|
-
"class": bem$
|
|
12433
|
+
"class": bem$O("option", {
|
|
12109
12434
|
active
|
|
12110
12435
|
}),
|
|
12111
12436
|
"style": {
|
|
@@ -12137,13 +12462,13 @@
|
|
|
12137
12462
|
}
|
|
12138
12463
|
return vue.withDirectives(vue.createVNode("div", {
|
|
12139
12464
|
"style": style,
|
|
12140
|
-
"class": bem$
|
|
12465
|
+
"class": bem$O([direction]),
|
|
12141
12466
|
"onClick": onClickWrapper
|
|
12142
12467
|
}, [vue.createVNode(Popup, {
|
|
12143
12468
|
"show": state.showPopup,
|
|
12144
12469
|
"onUpdate:show": ($event) => state.showPopup = $event,
|
|
12145
12470
|
"role": "menu",
|
|
12146
|
-
"class": bem$
|
|
12471
|
+
"class": bem$O("content"),
|
|
12147
12472
|
"overlay": overlay,
|
|
12148
12473
|
"position": direction === "down" ? "top" : "bottom",
|
|
12149
12474
|
"duration": state.transition ? duration : 0,
|
|
@@ -12181,15 +12506,15 @@
|
|
|
12181
12506
|
};
|
|
12182
12507
|
}
|
|
12183
12508
|
});
|
|
12184
|
-
const DropdownItem = withInstall(stdin_default$
|
|
12185
|
-
const DropdownMenu = withInstall(stdin_default$
|
|
12186
|
-
const [name$
|
|
12187
|
-
const SIDEBAR_KEY = Symbol(name$
|
|
12509
|
+
const DropdownItem = withInstall(stdin_default$W);
|
|
12510
|
+
const DropdownMenu = withInstall(stdin_default$X);
|
|
12511
|
+
const [name$M, bem$N] = createNamespace("sidebar");
|
|
12512
|
+
const SIDEBAR_KEY = Symbol(name$M);
|
|
12188
12513
|
const sidebarProps = {
|
|
12189
12514
|
modelValue: makeNumericProp(0)
|
|
12190
12515
|
};
|
|
12191
|
-
var stdin_default$
|
|
12192
|
-
name: name$
|
|
12516
|
+
var stdin_default$V = vue.defineComponent({
|
|
12517
|
+
name: name$M,
|
|
12193
12518
|
props: sidebarProps,
|
|
12194
12519
|
emits: ["change", "update:modelValue"],
|
|
12195
12520
|
setup(props2, {
|
|
@@ -12214,13 +12539,13 @@
|
|
|
12214
12539
|
var _a;
|
|
12215
12540
|
return vue.createVNode("div", {
|
|
12216
12541
|
"role": "tablist",
|
|
12217
|
-
"class": bem$
|
|
12542
|
+
"class": bem$N()
|
|
12218
12543
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
|
12219
12544
|
};
|
|
12220
12545
|
}
|
|
12221
12546
|
});
|
|
12222
|
-
const Sidebar = withInstall(stdin_default$
|
|
12223
|
-
const [name$
|
|
12547
|
+
const Sidebar = withInstall(stdin_default$V);
|
|
12548
|
+
const [name$L, bem$M] = createNamespace("sidebar-item");
|
|
12224
12549
|
const sidebarItemProps = extend$1({}, routeProps, {
|
|
12225
12550
|
dot: Boolean,
|
|
12226
12551
|
title: String,
|
|
@@ -12228,8 +12553,8 @@
|
|
|
12228
12553
|
disabled: Boolean,
|
|
12229
12554
|
badgeProps: Object
|
|
12230
12555
|
});
|
|
12231
|
-
var stdin_default$
|
|
12232
|
-
name: name$
|
|
12556
|
+
var stdin_default$U = vue.defineComponent({
|
|
12557
|
+
name: name$L,
|
|
12233
12558
|
props: sidebarItemProps,
|
|
12234
12559
|
emits: ["click"],
|
|
12235
12560
|
setup(props2, {
|
|
@@ -12262,7 +12587,7 @@
|
|
|
12262
12587
|
const selected = index.value === parent.getActive();
|
|
12263
12588
|
return vue.createVNode("div", {
|
|
12264
12589
|
"role": "tab",
|
|
12265
|
-
"class": bem$
|
|
12590
|
+
"class": bem$M({
|
|
12266
12591
|
select: selected,
|
|
12267
12592
|
disabled
|
|
12268
12593
|
}),
|
|
@@ -12271,7 +12596,7 @@
|
|
|
12271
12596
|
"onClick": onClick
|
|
12272
12597
|
}, [vue.createVNode(Badge, vue.mergeProps({
|
|
12273
12598
|
"dot": dot,
|
|
12274
|
-
"class": bem$
|
|
12599
|
+
"class": bem$M("text"),
|
|
12275
12600
|
"content": badge
|
|
12276
12601
|
}, props2.badgeProps), {
|
|
12277
12602
|
default: () => [slots.title ? slots.title() : title]
|
|
@@ -12279,8 +12604,8 @@
|
|
|
12279
12604
|
};
|
|
12280
12605
|
}
|
|
12281
12606
|
});
|
|
12282
|
-
const SidebarItem = withInstall(stdin_default$
|
|
12283
|
-
const [name$
|
|
12607
|
+
const SidebarItem = withInstall(stdin_default$U);
|
|
12608
|
+
const [name$K, bem$L] = createNamespace("floor-select");
|
|
12284
12609
|
const defaultBuildings = [{
|
|
12285
12610
|
id: "building-a",
|
|
12286
12611
|
text: "建筑A座",
|
|
@@ -12395,8 +12720,8 @@
|
|
|
12395
12720
|
},
|
|
12396
12721
|
more: Boolean
|
|
12397
12722
|
};
|
|
12398
|
-
var stdin_default$
|
|
12399
|
-
name: name$
|
|
12723
|
+
var stdin_default$T = vue.defineComponent({
|
|
12724
|
+
name: name$K,
|
|
12400
12725
|
props: floorSelectProps,
|
|
12401
12726
|
emits: ["change", "update:activeBuilding", "update:modelValue"],
|
|
12402
12727
|
setup(props2, {
|
|
@@ -12454,7 +12779,7 @@
|
|
|
12454
12779
|
});
|
|
12455
12780
|
return vue.createVNode("div", {
|
|
12456
12781
|
"key": item.id,
|
|
12457
|
-
"class": bem$
|
|
12782
|
+
"class": bem$L("cell")
|
|
12458
12783
|
}, [cell || vue.createVNode(Cell, {
|
|
12459
12784
|
"title": item.text,
|
|
12460
12785
|
"border": index < spaces.value.length - 1,
|
|
@@ -12466,14 +12791,14 @@
|
|
|
12466
12791
|
}, null)]);
|
|
12467
12792
|
};
|
|
12468
12793
|
return () => vue.createVNode("div", {
|
|
12469
|
-
"class": bem$
|
|
12794
|
+
"class": bem$L()
|
|
12470
12795
|
}, [vue.createVNode(Tabs, {
|
|
12471
12796
|
"active": activeBuilding.value,
|
|
12472
12797
|
"type": "filter",
|
|
12473
12798
|
"shrink": true,
|
|
12474
12799
|
"more": props2.more,
|
|
12475
12800
|
"showMore": showMore.value,
|
|
12476
|
-
"class": bem$
|
|
12801
|
+
"class": bem$L("tabs"),
|
|
12477
12802
|
"onUpdate:active": selectBuilding,
|
|
12478
12803
|
"onUpdate:showMore": (value) => {
|
|
12479
12804
|
showMore.value = value;
|
|
@@ -12485,10 +12810,10 @@
|
|
|
12485
12810
|
"title": building.text
|
|
12486
12811
|
}, null))]
|
|
12487
12812
|
}), vue.createVNode("div", {
|
|
12488
|
-
"class": bem$
|
|
12813
|
+
"class": bem$L("content")
|
|
12489
12814
|
}, [vue.createVNode(Sidebar, {
|
|
12490
12815
|
"modelValue": activeFloor.value,
|
|
12491
|
-
"class": bem$
|
|
12816
|
+
"class": bem$L("sidebar"),
|
|
12492
12817
|
"onUpdate:modelValue": (value) => {
|
|
12493
12818
|
activeFloor.value = +value;
|
|
12494
12819
|
}
|
|
@@ -12503,19 +12828,19 @@
|
|
|
12503
12828
|
"disabled": floor.disabled
|
|
12504
12829
|
}, null))]
|
|
12505
12830
|
}), vue.createVNode("div", {
|
|
12506
|
-
"class": bem$
|
|
12831
|
+
"class": bem$L("cells")
|
|
12507
12832
|
}, [spaces.value.map(renderCell)])])]);
|
|
12508
12833
|
}
|
|
12509
12834
|
});
|
|
12510
|
-
const FloorSelect = withInstall(stdin_default$
|
|
12511
|
-
const [name$
|
|
12835
|
+
const FloorSelect = withInstall(stdin_default$T);
|
|
12836
|
+
const [name$J, bem$K] = createNamespace("form-panel");
|
|
12512
12837
|
const formPanelProps = {
|
|
12513
12838
|
show: Boolean,
|
|
12514
12839
|
title: String,
|
|
12515
12840
|
confirmText: makeStringProp("确定")
|
|
12516
12841
|
};
|
|
12517
|
-
var stdin_default$
|
|
12518
|
-
name: name$
|
|
12842
|
+
var stdin_default$S = vue.defineComponent({
|
|
12843
|
+
name: name$J,
|
|
12519
12844
|
props: formPanelProps,
|
|
12520
12845
|
emits: ["update:show", "confirm"],
|
|
12521
12846
|
setup(props2, {
|
|
@@ -12529,19 +12854,19 @@
|
|
|
12529
12854
|
};
|
|
12530
12855
|
return () => vue.createVNode(ActionSheet, {
|
|
12531
12856
|
"show": props2.show,
|
|
12532
|
-
"class": bem$
|
|
12857
|
+
"class": bem$K(),
|
|
12533
12858
|
"onUpdate:show": (show) => emit("update:show", show)
|
|
12534
12859
|
}, {
|
|
12535
12860
|
default: () => {
|
|
12536
12861
|
var _a;
|
|
12537
12862
|
return [vue.createVNode("div", {
|
|
12538
|
-
"class": bem$
|
|
12863
|
+
"class": bem$K("content")
|
|
12539
12864
|
}, [vue.createVNode("div", {
|
|
12540
|
-
"class": bem$
|
|
12865
|
+
"class": bem$K("nav-wrapper")
|
|
12541
12866
|
}, [vue.createVNode(NavBar, {
|
|
12542
12867
|
"title": props2.title,
|
|
12543
12868
|
"border": false,
|
|
12544
|
-
"class": bem$
|
|
12869
|
+
"class": bem$K("nav")
|
|
12545
12870
|
}, {
|
|
12546
12871
|
left: () => vue.createVNode(Icon, {
|
|
12547
12872
|
"name": "cross",
|
|
@@ -12549,9 +12874,9 @@
|
|
|
12549
12874
|
"onClick": close
|
|
12550
12875
|
}, null)
|
|
12551
12876
|
})]), vue.createVNode("div", {
|
|
12552
|
-
"class": bem$
|
|
12877
|
+
"class": bem$K("body")
|
|
12553
12878
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), vue.createVNode("div", {
|
|
12554
|
-
"class": bem$
|
|
12879
|
+
"class": bem$K("footer")
|
|
12555
12880
|
}, [vue.createVNode(Button, {
|
|
12556
12881
|
"block": true,
|
|
12557
12882
|
"type": "primary",
|
|
@@ -12563,8 +12888,8 @@
|
|
|
12563
12888
|
});
|
|
12564
12889
|
}
|
|
12565
12890
|
});
|
|
12566
|
-
const FormPanel = withInstall(stdin_default$
|
|
12567
|
-
const [name$
|
|
12891
|
+
const FormPanel = withInstall(stdin_default$S);
|
|
12892
|
+
const [name$I, bem$J] = createNamespace("friendly-tip");
|
|
12568
12893
|
const friendlyTipProps = {
|
|
12569
12894
|
show: truthProp,
|
|
12570
12895
|
message: String,
|
|
@@ -12581,8 +12906,8 @@
|
|
|
12581
12906
|
default: "body"
|
|
12582
12907
|
}
|
|
12583
12908
|
};
|
|
12584
|
-
var stdin_default$
|
|
12585
|
-
name: name$
|
|
12909
|
+
var stdin_default$R = vue.defineComponent({
|
|
12910
|
+
name: name$I,
|
|
12586
12911
|
props: friendlyTipProps,
|
|
12587
12912
|
emits: ["update:show"],
|
|
12588
12913
|
setup(props2, {
|
|
@@ -12593,7 +12918,7 @@
|
|
|
12593
12918
|
return () => vue.createVNode(Popover, {
|
|
12594
12919
|
"show": props2.show,
|
|
12595
12920
|
"trigger": "manual",
|
|
12596
|
-
"class": bem$
|
|
12921
|
+
"class": bem$J("popover"),
|
|
12597
12922
|
"placement": props2.placement,
|
|
12598
12923
|
"showArrow": props2.showArrow,
|
|
12599
12924
|
"iconPrefix": props2.iconPrefix,
|
|
@@ -12606,19 +12931,19 @@
|
|
|
12606
12931
|
return (_a = slots.reference) == null ? void 0 : _a.call(slots);
|
|
12607
12932
|
},
|
|
12608
12933
|
default: () => vue.createVNode("div", {
|
|
12609
|
-
"class": bem$
|
|
12934
|
+
"class": bem$J()
|
|
12610
12935
|
}, [props2.icon && vue.createVNode(Icon, {
|
|
12611
12936
|
"name": props2.icon,
|
|
12612
|
-
"class": bem$
|
|
12937
|
+
"class": bem$J("icon"),
|
|
12613
12938
|
"classPrefix": props2.iconPrefix
|
|
12614
12939
|
}, null), vue.createVNode("span", {
|
|
12615
|
-
"class": bem$
|
|
12940
|
+
"class": bem$J("message")
|
|
12616
12941
|
}, [slots.default ? slots.default() : props2.message])])
|
|
12617
12942
|
});
|
|
12618
12943
|
}
|
|
12619
12944
|
});
|
|
12620
|
-
const FriendlyTip = withInstall(stdin_default$
|
|
12621
|
-
const [name$
|
|
12945
|
+
const FriendlyTip = withInstall(stdin_default$R);
|
|
12946
|
+
const [name$H, bem$I] = createNamespace("grid");
|
|
12622
12947
|
const gridProps = {
|
|
12623
12948
|
square: Boolean,
|
|
12624
12949
|
center: truthProp,
|
|
@@ -12630,9 +12955,9 @@
|
|
|
12630
12955
|
clickable: Boolean,
|
|
12631
12956
|
columnNum: makeNumericProp(4)
|
|
12632
12957
|
};
|
|
12633
|
-
const GRID_KEY = Symbol(name$
|
|
12634
|
-
var stdin_default$
|
|
12635
|
-
name: name$
|
|
12958
|
+
const GRID_KEY = Symbol(name$H);
|
|
12959
|
+
var stdin_default$Q = vue.defineComponent({
|
|
12960
|
+
name: name$H,
|
|
12636
12961
|
props: gridProps,
|
|
12637
12962
|
setup(props2, {
|
|
12638
12963
|
slots
|
|
@@ -12649,15 +12974,15 @@
|
|
|
12649
12974
|
"style": {
|
|
12650
12975
|
paddingLeft: addUnit(props2.gutter)
|
|
12651
12976
|
},
|
|
12652
|
-
"class": [bem$
|
|
12977
|
+
"class": [bem$I(), {
|
|
12653
12978
|
[BORDER_TOP]: props2.border && !props2.gutter
|
|
12654
12979
|
}]
|
|
12655
12980
|
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
|
12656
12981
|
};
|
|
12657
12982
|
}
|
|
12658
12983
|
});
|
|
12659
|
-
const Grid = withInstall(stdin_default$
|
|
12660
|
-
const [name$
|
|
12984
|
+
const Grid = withInstall(stdin_default$Q);
|
|
12985
|
+
const [name$G, bem$H] = createNamespace("grid-item");
|
|
12661
12986
|
const gridItemProps = extend$1({}, routeProps, {
|
|
12662
12987
|
dot: Boolean,
|
|
12663
12988
|
text: String,
|
|
@@ -12667,8 +12992,8 @@
|
|
|
12667
12992
|
iconPrefix: String,
|
|
12668
12993
|
badgeProps: Object
|
|
12669
12994
|
});
|
|
12670
|
-
var stdin_default$
|
|
12671
|
-
name: name$
|
|
12995
|
+
var stdin_default$P = vue.defineComponent({
|
|
12996
|
+
name: name$G,
|
|
12672
12997
|
props: gridItemProps,
|
|
12673
12998
|
setup(props2, {
|
|
12674
12999
|
slots
|
|
@@ -12731,7 +13056,7 @@
|
|
|
12731
13056
|
"name": props2.icon,
|
|
12732
13057
|
"size": parent.props.iconSize,
|
|
12733
13058
|
"badge": props2.badge,
|
|
12734
|
-
"class": bem$
|
|
13059
|
+
"class": bem$H("icon"),
|
|
12735
13060
|
"color": props2.iconColor,
|
|
12736
13061
|
"badgeProps": props2.badgeProps,
|
|
12737
13062
|
"classPrefix": props2.iconPrefix
|
|
@@ -12744,7 +13069,7 @@
|
|
|
12744
13069
|
}
|
|
12745
13070
|
if (props2.text) {
|
|
12746
13071
|
return vue.createVNode("span", {
|
|
12747
|
-
"class": bem$
|
|
13072
|
+
"class": bem$H("text")
|
|
12748
13073
|
}, [props2.text]);
|
|
12749
13074
|
}
|
|
12750
13075
|
};
|
|
@@ -12764,7 +13089,7 @@
|
|
|
12764
13089
|
direction,
|
|
12765
13090
|
clickable
|
|
12766
13091
|
} = parent.props;
|
|
12767
|
-
const classes = [bem$
|
|
13092
|
+
const classes = [bem$H("content", [direction, {
|
|
12768
13093
|
center,
|
|
12769
13094
|
square,
|
|
12770
13095
|
reverse,
|
|
@@ -12774,7 +13099,7 @@
|
|
|
12774
13099
|
[BORDER]: border
|
|
12775
13100
|
}];
|
|
12776
13101
|
return vue.createVNode("div", {
|
|
12777
|
-
"class": [bem$
|
|
13102
|
+
"class": [bem$H({
|
|
12778
13103
|
square
|
|
12779
13104
|
})],
|
|
12780
13105
|
"style": rootStyle.value
|
|
@@ -12788,10 +13113,10 @@
|
|
|
12788
13113
|
};
|
|
12789
13114
|
}
|
|
12790
13115
|
});
|
|
12791
|
-
const GridItem = withInstall(stdin_default$
|
|
13116
|
+
const GridItem = withInstall(stdin_default$P);
|
|
12792
13117
|
const getDistance = (touches) => Math.sqrt((touches[0].clientX - touches[1].clientX) ** 2 + (touches[0].clientY - touches[1].clientY) ** 2);
|
|
12793
|
-
const bem$
|
|
12794
|
-
var stdin_default$
|
|
13118
|
+
const bem$G = createNamespace("image-preview")[1];
|
|
13119
|
+
var stdin_default$O = vue.defineComponent({
|
|
12795
13120
|
props: {
|
|
12796
13121
|
src: String,
|
|
12797
13122
|
show: Boolean,
|
|
@@ -13017,19 +13342,19 @@
|
|
|
13017
13342
|
};
|
|
13018
13343
|
return vue.createVNode(SwipeItem, {
|
|
13019
13344
|
"ref": swipeItem,
|
|
13020
|
-
"class": bem$
|
|
13345
|
+
"class": bem$G("swipe-item"),
|
|
13021
13346
|
"onTouchstartPassive": onTouchStart,
|
|
13022
13347
|
"onTouchend": onTouchEnd,
|
|
13023
13348
|
"onTouchcancel": onTouchEnd
|
|
13024
13349
|
}, {
|
|
13025
13350
|
default: () => [slots.image ? vue.createVNode("div", {
|
|
13026
|
-
"class": bem$
|
|
13351
|
+
"class": bem$G("image-wrap")
|
|
13027
13352
|
}, [slots.image({
|
|
13028
13353
|
src: props2.src
|
|
13029
13354
|
})]) : vue.createVNode(Image$1, {
|
|
13030
13355
|
"src": props2.src,
|
|
13031
13356
|
"fit": "contain",
|
|
13032
|
-
"class": bem$
|
|
13357
|
+
"class": bem$G("image", {
|
|
13033
13358
|
vertical: vertical.value
|
|
13034
13359
|
}),
|
|
13035
13360
|
"style": imageStyle.value,
|
|
@@ -13039,7 +13364,7 @@
|
|
|
13039
13364
|
};
|
|
13040
13365
|
}
|
|
13041
13366
|
});
|
|
13042
|
-
const [name$
|
|
13367
|
+
const [name$F, bem$F] = createNamespace("image-preview");
|
|
13043
13368
|
const popupProps$1 = ["show", "transition", "overlayStyle", "closeOnPopstate"];
|
|
13044
13369
|
const imagePreviewProps = {
|
|
13045
13370
|
show: Boolean,
|
|
@@ -13062,8 +13387,8 @@
|
|
|
13062
13387
|
closeOnPopstate: truthProp,
|
|
13063
13388
|
closeIconPosition: makeStringProp("top-right")
|
|
13064
13389
|
};
|
|
13065
|
-
var stdin_default$
|
|
13066
|
-
name: name$
|
|
13390
|
+
var stdin_default$N = vue.defineComponent({
|
|
13391
|
+
name: name$F,
|
|
13067
13392
|
props: imagePreviewProps,
|
|
13068
13393
|
emits: ["scale", "close", "closed", "change", "update:show"],
|
|
13069
13394
|
setup(props2, {
|
|
@@ -13101,7 +13426,7 @@
|
|
|
13101
13426
|
const renderIndex = () => {
|
|
13102
13427
|
if (props2.showIndex) {
|
|
13103
13428
|
return vue.createVNode("div", {
|
|
13104
|
-
"class": bem$
|
|
13429
|
+
"class": bem$F("index")
|
|
13105
13430
|
}, [slots.index ? slots.index({
|
|
13106
13431
|
index: state.active
|
|
13107
13432
|
}) : `${state.active + 1} / ${props2.images.length}`]);
|
|
@@ -13110,7 +13435,7 @@
|
|
|
13110
13435
|
const renderCover = () => {
|
|
13111
13436
|
if (slots.cover) {
|
|
13112
13437
|
return vue.createVNode("div", {
|
|
13113
|
-
"class": bem$
|
|
13438
|
+
"class": bem$F("cover")
|
|
13114
13439
|
}, [slots.cover()]);
|
|
13115
13440
|
}
|
|
13116
13441
|
};
|
|
@@ -13118,14 +13443,14 @@
|
|
|
13118
13443
|
"ref": swipeRef,
|
|
13119
13444
|
"lazyRender": true,
|
|
13120
13445
|
"loop": props2.loop,
|
|
13121
|
-
"class": bem$
|
|
13446
|
+
"class": bem$F("swipe"),
|
|
13122
13447
|
"duration": props2.swipeDuration,
|
|
13123
13448
|
"initialSwipe": props2.startPosition,
|
|
13124
13449
|
"showIndicators": props2.showIndicators,
|
|
13125
13450
|
"indicatorColor": "white",
|
|
13126
13451
|
"onChange": setActive
|
|
13127
13452
|
}, {
|
|
13128
|
-
default: () => [props2.images.map((image) => vue.createVNode(stdin_default$
|
|
13453
|
+
default: () => [props2.images.map((image) => vue.createVNode(stdin_default$O, {
|
|
13129
13454
|
"src": image,
|
|
13130
13455
|
"show": props2.show,
|
|
13131
13456
|
"active": state.active,
|
|
@@ -13144,7 +13469,7 @@
|
|
|
13144
13469
|
return vue.createVNode(Icon, {
|
|
13145
13470
|
"role": "button",
|
|
13146
13471
|
"name": props2.closeIcon,
|
|
13147
|
-
"class": [bem$
|
|
13472
|
+
"class": [bem$F("close-icon", props2.closeIconPosition), HAPTICS_FEEDBACK],
|
|
13148
13473
|
"onClick": emitClose
|
|
13149
13474
|
}, null);
|
|
13150
13475
|
}
|
|
@@ -13181,8 +13506,8 @@
|
|
|
13181
13506
|
}
|
|
13182
13507
|
});
|
|
13183
13508
|
return () => vue.createVNode(Popup, vue.mergeProps({
|
|
13184
|
-
"class": [bem$
|
|
13185
|
-
"overlayClass": [bem$
|
|
13509
|
+
"class": [bem$F(), props2.className],
|
|
13510
|
+
"overlayClass": [bem$F("overlay"), props2.overlayClass],
|
|
13186
13511
|
"onClosed": onClosed,
|
|
13187
13512
|
"onUpdate:show": updateShow
|
|
13188
13513
|
}, pick(props2, popupProps$1)), {
|
|
@@ -13226,7 +13551,7 @@
|
|
|
13226
13551
|
const onClosed = () => {
|
|
13227
13552
|
state.images = [];
|
|
13228
13553
|
};
|
|
13229
|
-
return () => vue.createVNode(stdin_default$
|
|
13554
|
+
return () => vue.createVNode(stdin_default$N, vue.mergeProps(state, {
|
|
13230
13555
|
"onClosed": onClosed,
|
|
13231
13556
|
"onUpdate:show": toggle
|
|
13232
13557
|
}), null);
|
|
@@ -13247,7 +13572,7 @@
|
|
|
13247
13572
|
instance$2.open(extend$1({}, defaultConfig$1, options));
|
|
13248
13573
|
return instance$2;
|
|
13249
13574
|
};
|
|
13250
|
-
ImagePreview.Component = withInstall(stdin_default$
|
|
13575
|
+
ImagePreview.Component = withInstall(stdin_default$N);
|
|
13251
13576
|
ImagePreview.install = (app) => {
|
|
13252
13577
|
app.use(ImagePreview.Component);
|
|
13253
13578
|
};
|
|
@@ -13256,7 +13581,7 @@
|
|
|
13256
13581
|
const indexList = Array(26).fill("").map((_, i) => String.fromCharCode(charCodeOfA + i));
|
|
13257
13582
|
return indexList;
|
|
13258
13583
|
}
|
|
13259
|
-
const [name$
|
|
13584
|
+
const [name$E, bem$E] = createNamespace("index-bar");
|
|
13260
13585
|
const indexBarProps = {
|
|
13261
13586
|
sticky: truthProp,
|
|
13262
13587
|
zIndex: numericProp,
|
|
@@ -13268,9 +13593,9 @@
|
|
|
13268
13593
|
default: genAlphabet
|
|
13269
13594
|
}
|
|
13270
13595
|
};
|
|
13271
|
-
const INDEX_BAR_KEY = Symbol(name$
|
|
13272
|
-
var stdin_default$
|
|
13273
|
-
name: name$
|
|
13596
|
+
const INDEX_BAR_KEY = Symbol(name$E);
|
|
13597
|
+
var stdin_default$M = vue.defineComponent({
|
|
13598
|
+
name: name$E,
|
|
13274
13599
|
props: indexBarProps,
|
|
13275
13600
|
emits: ["select", "change"],
|
|
13276
13601
|
setup(props2, {
|
|
@@ -13382,7 +13707,7 @@
|
|
|
13382
13707
|
const renderIndexes = () => props2.indexList.map((index) => {
|
|
13383
13708
|
const active = index === activeAnchor.value;
|
|
13384
13709
|
return vue.createVNode("span", {
|
|
13385
|
-
"class": bem$
|
|
13710
|
+
"class": bem$E("index", {
|
|
13386
13711
|
active
|
|
13387
13712
|
}),
|
|
13388
13713
|
"style": active ? highlightStyle.value : void 0,
|
|
@@ -13443,7 +13768,7 @@
|
|
|
13443
13768
|
};
|
|
13444
13769
|
const renderSidebar = () => vue.createVNode("div", {
|
|
13445
13770
|
"ref": sidebar,
|
|
13446
|
-
"class": bem$
|
|
13771
|
+
"class": bem$E("sidebar"),
|
|
13447
13772
|
"style": sidebarStyle.value,
|
|
13448
13773
|
"onClick": onClickSidebar,
|
|
13449
13774
|
"onTouchstartPassive": touch.start
|
|
@@ -13459,7 +13784,7 @@
|
|
|
13459
13784
|
var _a;
|
|
13460
13785
|
return vue.createVNode("div", {
|
|
13461
13786
|
"ref": root,
|
|
13462
|
-
"class": bem$
|
|
13787
|
+
"class": bem$E()
|
|
13463
13788
|
}, [props2.teleport ? vue.createVNode(vue.Teleport, {
|
|
13464
13789
|
"to": props2.teleport
|
|
13465
13790
|
}, {
|
|
@@ -13468,12 +13793,12 @@
|
|
|
13468
13793
|
};
|
|
13469
13794
|
}
|
|
13470
13795
|
});
|
|
13471
|
-
const [name$
|
|
13796
|
+
const [name$D, bem$D] = createNamespace("index-anchor");
|
|
13472
13797
|
const indexAnchorProps = {
|
|
13473
13798
|
index: numericProp
|
|
13474
13799
|
};
|
|
13475
|
-
var stdin_default$
|
|
13476
|
-
name: name$
|
|
13800
|
+
var stdin_default$L = vue.defineComponent({
|
|
13801
|
+
name: name$D,
|
|
13477
13802
|
props: indexAnchorProps,
|
|
13478
13803
|
setup(props2, {
|
|
13479
13804
|
slots
|
|
@@ -13533,7 +13858,7 @@
|
|
|
13533
13858
|
}
|
|
13534
13859
|
}, [vue.createVNode("div", {
|
|
13535
13860
|
"style": anchorStyle.value,
|
|
13536
|
-
"class": [bem$
|
|
13861
|
+
"class": [bem$D({
|
|
13537
13862
|
sticky
|
|
13538
13863
|
}), {
|
|
13539
13864
|
[BORDER_BOTTOM]: sticky
|
|
@@ -13542,9 +13867,9 @@
|
|
|
13542
13867
|
};
|
|
13543
13868
|
}
|
|
13544
13869
|
});
|
|
13545
|
-
const IndexAnchor = withInstall(stdin_default$
|
|
13546
|
-
const IndexBar = withInstall(stdin_default$
|
|
13547
|
-
const [name$
|
|
13870
|
+
const IndexAnchor = withInstall(stdin_default$L);
|
|
13871
|
+
const IndexBar = withInstall(stdin_default$M);
|
|
13872
|
+
const [name$C, bem$C] = createNamespace("label");
|
|
13548
13873
|
const labelProps = {
|
|
13549
13874
|
label: makeStringProp(""),
|
|
13550
13875
|
showLabel: truthProp,
|
|
@@ -13554,6 +13879,10 @@
|
|
|
13554
13879
|
default: void 0
|
|
13555
13880
|
},
|
|
13556
13881
|
content: makeStringProp(""),
|
|
13882
|
+
contentList: {
|
|
13883
|
+
type: Array,
|
|
13884
|
+
default: () => []
|
|
13885
|
+
},
|
|
13557
13886
|
type: makeStringProp("default"),
|
|
13558
13887
|
size: makeStringProp("default"),
|
|
13559
13888
|
contentAlign: makeStringProp("follow"),
|
|
@@ -13573,8 +13902,8 @@
|
|
|
13573
13902
|
default: () => []
|
|
13574
13903
|
}
|
|
13575
13904
|
};
|
|
13576
|
-
var stdin_default$
|
|
13577
|
-
name: name$
|
|
13905
|
+
var stdin_default$K = vue.defineComponent({
|
|
13906
|
+
name: name$C,
|
|
13578
13907
|
props: labelProps,
|
|
13579
13908
|
emits: ["click", "click-media", "long-press"],
|
|
13580
13909
|
setup(props2, {
|
|
@@ -13583,7 +13912,9 @@
|
|
|
13583
13912
|
}) {
|
|
13584
13913
|
let longPressTimer;
|
|
13585
13914
|
const vertical = vue.computed(() => props2.vertical || props2.type === "media");
|
|
13586
|
-
const
|
|
13915
|
+
const hasContentList = vue.computed(() => props2.contentList.length > 0);
|
|
13916
|
+
const displayContent = vue.computed(() => hasContentList.value ? props2.contentList.join("、") : props2.content);
|
|
13917
|
+
const ellipsis = vue.computed(() => props2.ellipsis && !hasContentList.value && !vertical.value && !["tag", "media"].includes(props2.type));
|
|
13587
13918
|
const displayLabel = vue.computed(() => {
|
|
13588
13919
|
var _a;
|
|
13589
13920
|
const showColon = (_a = props2.showColon) != null ? _a : !vertical.value && props2.contentAlign !== "right";
|
|
@@ -13615,24 +13946,24 @@
|
|
|
13615
13946
|
};
|
|
13616
13947
|
const renderText = () => {
|
|
13617
13948
|
var _a;
|
|
13618
|
-
const content = ((_a = slots.default) == null ? void 0 : _a.call(slots)) ||
|
|
13949
|
+
const content = ((_a = slots.default) == null ? void 0 : _a.call(slots)) || displayContent.value;
|
|
13619
13950
|
if (props2.type === "link") {
|
|
13620
13951
|
return props2.href ? vue.createVNode("a", {
|
|
13621
|
-
"class": bem$
|
|
13952
|
+
"class": bem$C("link"),
|
|
13622
13953
|
"href": props2.href,
|
|
13623
13954
|
"onClick": (event) => emit("click", event)
|
|
13624
13955
|
}, [content]) : vue.createVNode("button", {
|
|
13625
|
-
"class": bem$
|
|
13956
|
+
"class": bem$C("link"),
|
|
13626
13957
|
"type": "button",
|
|
13627
13958
|
"onClick": (event) => emit("click", event)
|
|
13628
13959
|
}, [content]);
|
|
13629
13960
|
}
|
|
13630
13961
|
return vue.createVNode("span", {
|
|
13631
|
-
"class": bem$
|
|
13962
|
+
"class": bem$C("text")
|
|
13632
13963
|
}, [content]);
|
|
13633
13964
|
};
|
|
13634
13965
|
const renderTags = () => vue.createVNode("div", {
|
|
13635
|
-
"class": bem$
|
|
13966
|
+
"class": bem$C("tags")
|
|
13636
13967
|
}, [props2.tags.map((tag) => vue.createVNode(Tag, {
|
|
13637
13968
|
"key": tag,
|
|
13638
13969
|
"type": "gray"
|
|
@@ -13640,10 +13971,10 @@
|
|
|
13640
13971
|
default: () => [tag]
|
|
13641
13972
|
}))]);
|
|
13642
13973
|
const renderMedia = () => vue.createVNode("div", {
|
|
13643
|
-
"class": bem$
|
|
13974
|
+
"class": bem$C("media")
|
|
13644
13975
|
}, [props2.media.map((item, index) => vue.createVNode("button", {
|
|
13645
13976
|
"key": `${item.url}-${index}`,
|
|
13646
|
-
"class": bem$
|
|
13977
|
+
"class": bem$C("media-item"),
|
|
13647
13978
|
"type": "button",
|
|
13648
13979
|
"onClick": (event) => emit("click-media", item, index, event)
|
|
13649
13980
|
}, [vue.createVNode(Image$1, {
|
|
@@ -13652,7 +13983,7 @@
|
|
|
13652
13983
|
"fit": "cover"
|
|
13653
13984
|
}, null), item.type === "video" && vue.createVNode(Icon, {
|
|
13654
13985
|
"name": "play-circle-o",
|
|
13655
|
-
"class": bem$
|
|
13986
|
+
"class": bem$C("play")
|
|
13656
13987
|
}, null)]))]);
|
|
13657
13988
|
const renderContent = () => {
|
|
13658
13989
|
if (props2.type === "tag")
|
|
@@ -13662,40 +13993,41 @@
|
|
|
13662
13993
|
return renderText();
|
|
13663
13994
|
};
|
|
13664
13995
|
return () => vue.createVNode("div", {
|
|
13665
|
-
"class": bem$
|
|
13996
|
+
"class": bem$C([props2.type, {
|
|
13666
13997
|
mini: props2.size === "mini",
|
|
13667
13998
|
vertical: vertical.value,
|
|
13668
13999
|
ellipsis: ellipsis.value,
|
|
13669
14000
|
location: showLocation.value,
|
|
13670
14001
|
"content-right": props2.contentAlign === "right",
|
|
13671
|
-
"same-color": props2.sameColor
|
|
14002
|
+
"same-color": props2.sameColor,
|
|
14003
|
+
"multiple-content": hasContentList.value
|
|
13672
14004
|
}])
|
|
13673
14005
|
}, [showLeftIcon.value && vue.createVNode("div", {
|
|
13674
|
-
"class": bem$
|
|
14006
|
+
"class": bem$C("left-icon")
|
|
13675
14007
|
}, [vue.createVNode(Icon, {
|
|
13676
14008
|
"name": props2.leftIcon,
|
|
13677
14009
|
"size": "12"
|
|
13678
14010
|
}, null)]), props2.showLabel && vue.createVNode("span", {
|
|
13679
|
-
"class": bem$
|
|
14011
|
+
"class": bem$C("label"),
|
|
13680
14012
|
"onPointerdown": () => startLongPress("label", displayLabel.value),
|
|
13681
14013
|
"onPointerup": clearLongPress,
|
|
13682
14014
|
"onPointercancel": clearLongPress,
|
|
13683
14015
|
"onPointerleave": clearLongPress
|
|
13684
14016
|
}, [displayLabel.value]), props2.showContent && vue.createVNode("div", {
|
|
13685
|
-
"class": bem$
|
|
13686
|
-
"onPointerdown": () => startLongPress("content",
|
|
14017
|
+
"class": bem$C("value"),
|
|
14018
|
+
"onPointerdown": () => startLongPress("content", displayContent.value),
|
|
13687
14019
|
"onPointerup": clearLongPress,
|
|
13688
14020
|
"onPointercancel": clearLongPress,
|
|
13689
14021
|
"onPointerleave": clearLongPress
|
|
13690
14022
|
}, [renderContent(), showLocation.value && vue.createVNode("div", {
|
|
13691
|
-
"class": bem$
|
|
14023
|
+
"class": bem$C("location")
|
|
13692
14024
|
}, [vue.createVNode(Icon, {
|
|
13693
14025
|
"name": "location-o"
|
|
13694
14026
|
}, null), vue.createVNode("span", null, [props2.location])])])]);
|
|
13695
14027
|
}
|
|
13696
14028
|
});
|
|
13697
|
-
const Label = withInstall(stdin_default$
|
|
13698
|
-
const [name$
|
|
14029
|
+
const Label = withInstall(stdin_default$K);
|
|
14030
|
+
const [name$B, bem$B] = createNamespace("info-card");
|
|
13699
14031
|
const infoCardProps = {
|
|
13700
14032
|
title: makeStringProp(""),
|
|
13701
14033
|
showTitle: truthProp,
|
|
@@ -13717,8 +14049,8 @@
|
|
|
13717
14049
|
expandText: makeStringProp("查看更多"),
|
|
13718
14050
|
collapseText: makeStringProp("收起")
|
|
13719
14051
|
};
|
|
13720
|
-
var stdin_default$
|
|
13721
|
-
name: name$
|
|
14052
|
+
var stdin_default$J = vue.defineComponent({
|
|
14053
|
+
name: name$B,
|
|
13722
14054
|
props: infoCardProps,
|
|
13723
14055
|
emits: ["update:modelValue", "change", "click", "click-media"],
|
|
13724
14056
|
setup(props2, {
|
|
@@ -13766,22 +14098,22 @@
|
|
|
13766
14098
|
"name": "van-info-card-expand"
|
|
13767
14099
|
}, {
|
|
13768
14100
|
default: () => [showExtra.value && vue.createVNode("div", {
|
|
13769
|
-
"class": bem$
|
|
14101
|
+
"class": bem$B("extra")
|
|
13770
14102
|
}, [visibleExtraFields.value.map(renderField), extraSlot])]
|
|
13771
14103
|
});
|
|
13772
14104
|
};
|
|
13773
14105
|
return () => {
|
|
13774
14106
|
var _a, _b;
|
|
13775
14107
|
return vue.createVNode("section", {
|
|
13776
|
-
"class": bem$
|
|
14108
|
+
"class": bem$B()
|
|
13777
14109
|
}, [props2.showCacheBadge && vue.createVNode("div", {
|
|
13778
|
-
"class": bem$
|
|
14110
|
+
"class": bem$B("cache-badge")
|
|
13779
14111
|
}, [vue.createVNode(Icon, {
|
|
13780
14112
|
"name": "success",
|
|
13781
14113
|
"size": "12",
|
|
13782
|
-
"class": bem$
|
|
14114
|
+
"class": bem$B("cache-badge-icon")
|
|
13783
14115
|
}, null), vue.createVNode("span", null, [props2.cacheText])]), props2.showTitle && (slots.title || props2.title) && vue.createVNode("div", {
|
|
13784
|
-
"class": bem$
|
|
14116
|
+
"class": bem$B("title", {
|
|
13785
14117
|
collapsible: showTitleCollapse.value
|
|
13786
14118
|
}),
|
|
13787
14119
|
"role": showTitleCollapse.value ? "button" : void 0,
|
|
@@ -13790,14 +14122,14 @@
|
|
|
13790
14122
|
"onClick": showTitleCollapse.value ? onTitleCollapse : void 0,
|
|
13791
14123
|
"onKeydown": showTitleCollapse.value ? onTitleCollapseKeydown : void 0
|
|
13792
14124
|
}, [vue.createVNode("span", {
|
|
13793
|
-
"class": bem$
|
|
14125
|
+
"class": bem$B("title-content")
|
|
13794
14126
|
}, [((_a = slots.title) == null ? void 0 : _a.call(slots)) || props2.title]), showTitleCollapse.value && vue.createVNode("div", {
|
|
13795
|
-
"class": bem$
|
|
14127
|
+
"class": bem$B("title-collapse"),
|
|
13796
14128
|
"aria-hidden": "true"
|
|
13797
14129
|
}, [vue.createVNode(Icon, {
|
|
13798
14130
|
"name": "trangle-down",
|
|
13799
14131
|
"size": "16",
|
|
13800
|
-
"class": bem$
|
|
14132
|
+
"class": bem$B("title-collapse-icon", {
|
|
13801
14133
|
expanded: props2.modelValue
|
|
13802
14134
|
})
|
|
13803
14135
|
}, null)])]), visibleFields.value.map(renderField), (_b = slots.default) == null ? void 0 : _b.call(slots), hasExtra.value && showCollapse.value && !showTitleCollapse.value && vue.createVNode(CollapseToggle, {
|
|
@@ -13808,255 +14140,12 @@
|
|
|
13808
14140
|
"onUpdate:modelValue": (value) => emit("update:modelValue", value),
|
|
13809
14141
|
"onChange": (value) => emit("change", value)
|
|
13810
14142
|
}, null), hasExtra.value && !showCollapse.value && props2.divider && vue.createVNode(Divider, {
|
|
13811
|
-
"class": bem$
|
|
14143
|
+
"class": bem$B("divider")
|
|
13812
14144
|
}, null), renderExtra()]);
|
|
13813
14145
|
};
|
|
13814
14146
|
}
|
|
13815
14147
|
});
|
|
13816
|
-
const InfoCard = withInstall(stdin_default$
|
|
13817
|
-
const [name$C, bem$C, t$6] = createNamespace("list");
|
|
13818
|
-
const listProps = {
|
|
13819
|
-
error: Boolean,
|
|
13820
|
-
offset: makeNumericProp(300),
|
|
13821
|
-
loading: Boolean,
|
|
13822
|
-
finished: Boolean,
|
|
13823
|
-
errorText: String,
|
|
13824
|
-
direction: makeStringProp("down"),
|
|
13825
|
-
loadingText: String,
|
|
13826
|
-
finishedText: String,
|
|
13827
|
-
immediateCheck: truthProp
|
|
13828
|
-
};
|
|
13829
|
-
var stdin_default$K = vue.defineComponent({
|
|
13830
|
-
name: name$C,
|
|
13831
|
-
props: listProps,
|
|
13832
|
-
emits: ["load", "update:error", "update:loading"],
|
|
13833
|
-
setup(props2, {
|
|
13834
|
-
emit,
|
|
13835
|
-
slots
|
|
13836
|
-
}) {
|
|
13837
|
-
const loading = vue.ref(props2.loading);
|
|
13838
|
-
const root = vue.ref();
|
|
13839
|
-
const placeholder = vue.ref();
|
|
13840
|
-
const tabStatus = useTabStatus();
|
|
13841
|
-
const scrollParent = useScrollParent(root);
|
|
13842
|
-
const check = () => {
|
|
13843
|
-
vue.nextTick(() => {
|
|
13844
|
-
if (loading.value || props2.finished || props2.error || // skip check when inside an inactive tab
|
|
13845
|
-
(tabStatus == null ? void 0 : tabStatus.value) === false) {
|
|
13846
|
-
return;
|
|
13847
|
-
}
|
|
13848
|
-
const {
|
|
13849
|
-
offset: offset2,
|
|
13850
|
-
direction
|
|
13851
|
-
} = props2;
|
|
13852
|
-
const scrollParentRect = useRect(scrollParent);
|
|
13853
|
-
if (!scrollParentRect.height || isHidden(root)) {
|
|
13854
|
-
return;
|
|
13855
|
-
}
|
|
13856
|
-
let isReachEdge = false;
|
|
13857
|
-
const placeholderRect = useRect(placeholder);
|
|
13858
|
-
if (direction === "up") {
|
|
13859
|
-
isReachEdge = scrollParentRect.top - placeholderRect.top <= offset2;
|
|
13860
|
-
} else {
|
|
13861
|
-
isReachEdge = placeholderRect.bottom - scrollParentRect.bottom <= offset2;
|
|
13862
|
-
}
|
|
13863
|
-
if (isReachEdge) {
|
|
13864
|
-
loading.value = true;
|
|
13865
|
-
emit("update:loading", true);
|
|
13866
|
-
emit("load");
|
|
13867
|
-
}
|
|
13868
|
-
});
|
|
13869
|
-
};
|
|
13870
|
-
const renderFinishedText = () => {
|
|
13871
|
-
if (props2.finished) {
|
|
13872
|
-
const text = slots.finished ? slots.finished() : props2.finishedText;
|
|
13873
|
-
if (text) {
|
|
13874
|
-
return vue.createVNode("div", {
|
|
13875
|
-
"class": bem$C("finished-text")
|
|
13876
|
-
}, [text]);
|
|
13877
|
-
}
|
|
13878
|
-
}
|
|
13879
|
-
};
|
|
13880
|
-
const clickErrorText = () => {
|
|
13881
|
-
emit("update:error", false);
|
|
13882
|
-
check();
|
|
13883
|
-
};
|
|
13884
|
-
const renderErrorText = () => {
|
|
13885
|
-
if (props2.error) {
|
|
13886
|
-
const text = slots.error ? slots.error() : props2.errorText;
|
|
13887
|
-
if (text) {
|
|
13888
|
-
return vue.createVNode("div", {
|
|
13889
|
-
"role": "button",
|
|
13890
|
-
"class": bem$C("error-text"),
|
|
13891
|
-
"tabindex": 0,
|
|
13892
|
-
"onClick": clickErrorText
|
|
13893
|
-
}, [text]);
|
|
13894
|
-
}
|
|
13895
|
-
}
|
|
13896
|
-
};
|
|
13897
|
-
const renderLoading = () => {
|
|
13898
|
-
if (loading.value && !props2.finished) {
|
|
13899
|
-
return vue.createVNode("div", {
|
|
13900
|
-
"class": bem$C("loading")
|
|
13901
|
-
}, [slots.loading ? slots.loading() : vue.createVNode(Loading, {
|
|
13902
|
-
"class": bem$C("loading-icon")
|
|
13903
|
-
}, {
|
|
13904
|
-
default: () => [props2.loadingText || t$6("loading")]
|
|
13905
|
-
})]);
|
|
13906
|
-
}
|
|
13907
|
-
};
|
|
13908
|
-
vue.watch(() => [props2.loading, props2.finished, props2.error], check);
|
|
13909
|
-
if (tabStatus) {
|
|
13910
|
-
vue.watch(tabStatus, (tabActive) => {
|
|
13911
|
-
if (tabActive) {
|
|
13912
|
-
check();
|
|
13913
|
-
}
|
|
13914
|
-
});
|
|
13915
|
-
}
|
|
13916
|
-
vue.onUpdated(() => {
|
|
13917
|
-
loading.value = props2.loading;
|
|
13918
|
-
});
|
|
13919
|
-
vue.onMounted(() => {
|
|
13920
|
-
if (props2.immediateCheck) {
|
|
13921
|
-
check();
|
|
13922
|
-
}
|
|
13923
|
-
});
|
|
13924
|
-
useExpose({
|
|
13925
|
-
check
|
|
13926
|
-
});
|
|
13927
|
-
useEventListener("scroll", check, {
|
|
13928
|
-
target: scrollParent,
|
|
13929
|
-
passive: true
|
|
13930
|
-
});
|
|
13931
|
-
return () => {
|
|
13932
|
-
var _a;
|
|
13933
|
-
const Content = (_a = slots.default) == null ? void 0 : _a.call(slots);
|
|
13934
|
-
const Placeholder = vue.createVNode("div", {
|
|
13935
|
-
"ref": placeholder,
|
|
13936
|
-
"class": bem$C("placeholder")
|
|
13937
|
-
}, null);
|
|
13938
|
-
return vue.createVNode("div", {
|
|
13939
|
-
"ref": root,
|
|
13940
|
-
"role": "feed",
|
|
13941
|
-
"class": bem$C(),
|
|
13942
|
-
"aria-busy": loading.value
|
|
13943
|
-
}, [props2.direction === "down" ? Content : Placeholder, renderLoading(), renderFinishedText(), renderErrorText(), props2.direction === "up" ? Content : Placeholder]);
|
|
13944
|
-
};
|
|
13945
|
-
}
|
|
13946
|
-
});
|
|
13947
|
-
const List = withInstall(stdin_default$K);
|
|
13948
|
-
const [name$B, bem$B, t$5] = createNamespace("search");
|
|
13949
|
-
const searchProps = extend$1({}, fieldSharedProps, {
|
|
13950
|
-
label: String,
|
|
13951
|
-
shape: makeStringProp("round"),
|
|
13952
|
-
variant: makeStringProp("default"),
|
|
13953
|
-
inputAlign: makeStringProp("left"),
|
|
13954
|
-
leftIcon: makeStringProp("search"),
|
|
13955
|
-
clearable: truthProp,
|
|
13956
|
-
actionText: String,
|
|
13957
|
-
background: String,
|
|
13958
|
-
showAction: Boolean
|
|
13959
|
-
});
|
|
13960
|
-
var stdin_default$J = vue.defineComponent({
|
|
13961
|
-
name: name$B,
|
|
13962
|
-
props: searchProps,
|
|
13963
|
-
emits: ["blur", "focus", "clear", "search", "cancel", "click-input", "click-left-icon", "click-right-icon", "update:modelValue"],
|
|
13964
|
-
setup(props2, {
|
|
13965
|
-
emit,
|
|
13966
|
-
slots,
|
|
13967
|
-
attrs
|
|
13968
|
-
}) {
|
|
13969
|
-
const id = useId();
|
|
13970
|
-
const filedRef = vue.ref();
|
|
13971
|
-
const onCancel = () => {
|
|
13972
|
-
if (!slots.action) {
|
|
13973
|
-
emit("update:modelValue", "");
|
|
13974
|
-
emit("cancel");
|
|
13975
|
-
}
|
|
13976
|
-
};
|
|
13977
|
-
const onKeypress = (event) => {
|
|
13978
|
-
const ENTER_CODE = 13;
|
|
13979
|
-
if (event.keyCode === ENTER_CODE) {
|
|
13980
|
-
preventDefault(event);
|
|
13981
|
-
emit("search", props2.modelValue);
|
|
13982
|
-
}
|
|
13983
|
-
};
|
|
13984
|
-
const getInputId = () => props2.id || `${id}-input`;
|
|
13985
|
-
const renderLabel = () => {
|
|
13986
|
-
if (slots.label || props2.label) {
|
|
13987
|
-
return vue.createVNode("label", {
|
|
13988
|
-
"class": bem$B("label"),
|
|
13989
|
-
"for": getInputId()
|
|
13990
|
-
}, [slots.label ? slots.label() : props2.label]);
|
|
13991
|
-
}
|
|
13992
|
-
};
|
|
13993
|
-
const renderAction = () => {
|
|
13994
|
-
if (props2.showAction) {
|
|
13995
|
-
const text = props2.actionText || t$5("cancel");
|
|
13996
|
-
return vue.createVNode("div", {
|
|
13997
|
-
"class": bem$B("action"),
|
|
13998
|
-
"role": "button",
|
|
13999
|
-
"tabindex": 0,
|
|
14000
|
-
"onClick": onCancel
|
|
14001
|
-
}, [slots.action ? slots.action() : text]);
|
|
14002
|
-
}
|
|
14003
|
-
};
|
|
14004
|
-
const blur = () => {
|
|
14005
|
-
var _a;
|
|
14006
|
-
return (_a = filedRef.value) == null ? void 0 : _a.blur();
|
|
14007
|
-
};
|
|
14008
|
-
const focus = () => {
|
|
14009
|
-
var _a;
|
|
14010
|
-
return (_a = filedRef.value) == null ? void 0 : _a.focus();
|
|
14011
|
-
};
|
|
14012
|
-
const onBlur = (event) => emit("blur", event);
|
|
14013
|
-
const onFocus = (event) => emit("focus", event);
|
|
14014
|
-
const onClear = (event) => emit("clear", event);
|
|
14015
|
-
const onClickInput = (event) => emit("click-input", event);
|
|
14016
|
-
const onClickLeftIcon = (event) => emit("click-left-icon", event);
|
|
14017
|
-
const onClickRightIcon = (event) => emit("click-right-icon", event);
|
|
14018
|
-
const fieldPropNames = Object.keys(fieldSharedProps);
|
|
14019
|
-
const renderField = () => {
|
|
14020
|
-
const fieldAttrs = extend$1({}, attrs, pick(props2, fieldPropNames), {
|
|
14021
|
-
id: getInputId()
|
|
14022
|
-
});
|
|
14023
|
-
const onInput = (value) => emit("update:modelValue", value);
|
|
14024
|
-
return vue.createVNode(Field, vue.mergeProps({
|
|
14025
|
-
"ref": filedRef,
|
|
14026
|
-
"type": "search",
|
|
14027
|
-
"class": bem$B("field"),
|
|
14028
|
-
"border": false,
|
|
14029
|
-
"onBlur": onBlur,
|
|
14030
|
-
"onFocus": onFocus,
|
|
14031
|
-
"onClear": onClear,
|
|
14032
|
-
"onKeypress": onKeypress,
|
|
14033
|
-
"onClick-input": onClickInput,
|
|
14034
|
-
"onClick-left-icon": onClickLeftIcon,
|
|
14035
|
-
"onClick-right-icon": onClickRightIcon,
|
|
14036
|
-
"onUpdate:modelValue": onInput
|
|
14037
|
-
}, fieldAttrs), pick(slots, ["left-icon", "right-icon"]));
|
|
14038
|
-
};
|
|
14039
|
-
useExpose({
|
|
14040
|
-
focus,
|
|
14041
|
-
blur
|
|
14042
|
-
});
|
|
14043
|
-
return () => {
|
|
14044
|
-
var _a;
|
|
14045
|
-
return vue.createVNode("div", {
|
|
14046
|
-
"class": bem$B({
|
|
14047
|
-
"show-action": props2.showAction,
|
|
14048
|
-
pure: props2.variant === "pure"
|
|
14049
|
-
}),
|
|
14050
|
-
"style": {
|
|
14051
|
-
background: props2.variant === "default" ? props2.background : void 0
|
|
14052
|
-
}
|
|
14053
|
-
}, [(_a = slots.left) == null ? void 0 : _a.call(slots), vue.createVNode("div", {
|
|
14054
|
-
"class": bem$B("content", props2.shape)
|
|
14055
|
-
}, [renderLabel(), renderField()]), renderAction()]);
|
|
14056
|
-
};
|
|
14057
|
-
}
|
|
14058
|
-
});
|
|
14059
|
-
const Search = withInstall(stdin_default$J);
|
|
14148
|
+
const InfoCard = withInstall(stdin_default$J);
|
|
14060
14149
|
var __defProp = Object.defineProperty;
|
|
14061
14150
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
14062
14151
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
@@ -14768,6 +14857,8 @@
|
|
|
14768
14857
|
default: ""
|
|
14769
14858
|
},
|
|
14770
14859
|
selected: Boolean,
|
|
14860
|
+
showDetail: truthProp,
|
|
14861
|
+
stepperTheme: makeStringProp("round-outline"),
|
|
14771
14862
|
enableInputDialog: truthProp,
|
|
14772
14863
|
showWarning: Boolean,
|
|
14773
14864
|
warning: {
|
|
@@ -14843,7 +14934,7 @@
|
|
|
14843
14934
|
};
|
|
14844
14935
|
vue.onBeforeUnmount(clearDetailLongPress);
|
|
14845
14936
|
return () => {
|
|
14846
|
-
var _a, _b, _c, _d
|
|
14937
|
+
var _a, _b, _c, _d;
|
|
14847
14938
|
return vue.createVNode("div", {
|
|
14848
14939
|
"class": bem$x({
|
|
14849
14940
|
selected: props2.selected
|
|
@@ -14872,7 +14963,7 @@
|
|
|
14872
14963
|
"modelValue": props2.modelValue,
|
|
14873
14964
|
"min": 0,
|
|
14874
14965
|
"max": props2.max,
|
|
14875
|
-
"theme":
|
|
14966
|
+
"theme": props2.stepperTheme,
|
|
14876
14967
|
"buttonSize": 18,
|
|
14877
14968
|
"disableInput": true,
|
|
14878
14969
|
"onUpdate:modelValue": (value) => emit("update:modelValue", Number(value))
|
|
@@ -14883,7 +14974,7 @@
|
|
|
14883
14974
|
"onClick": openInputDialog
|
|
14884
14975
|
}, null)]), vue.createVNode("span", {
|
|
14885
14976
|
"class": bem$x("unit")
|
|
14886
|
-
}, [props2.item.unit])]), vue.createVNode("p", {
|
|
14977
|
+
}, [props2.item.unit])]), props2.showDetail && vue.createVNode("p", {
|
|
14887
14978
|
"class": bem$x("desc"),
|
|
14888
14979
|
"onTouchstart": onDetailLongPressStart,
|
|
14889
14980
|
"onTouchmove": clearDetailLongPress,
|
|
@@ -14904,7 +14995,9 @@
|
|
|
14904
14995
|
"style": {
|
|
14905
14996
|
fontWeight: props2.picking.outboundBold ? 600 : 400
|
|
14906
14997
|
}
|
|
14907
|
-
}, [props2.picking.outboundValue])]),
|
|
14998
|
+
}, [props2.picking.outboundValue])]), slots.default && vue.createVNode("div", {
|
|
14999
|
+
"class": bem$x("bottom")
|
|
15000
|
+
}, [slots.default()]), vue.createVNode(Dialog.Component, {
|
|
14908
15001
|
"show": showInputDialog.value,
|
|
14909
15002
|
"inputValue": inputValue.value,
|
|
14910
15003
|
"inputAlign": "left",
|
|
@@ -15941,7 +16034,6 @@
|
|
|
15941
16034
|
return vue.createVNode(Label, {
|
|
15942
16035
|
"key": `${field.label}-${index}`,
|
|
15943
16036
|
"class": bem$t("field"),
|
|
15944
|
-
"size": "mini",
|
|
15945
16037
|
"label": field.label,
|
|
15946
16038
|
"showLabel": field.showLabel,
|
|
15947
16039
|
"showContent": field.showContent,
|
|
@@ -18479,7 +18571,7 @@
|
|
|
18479
18571
|
installRate(app);
|
|
18480
18572
|
app.use(RateCell);
|
|
18481
18573
|
};
|
|
18482
|
-
const Row = withInstall(stdin_default$
|
|
18574
|
+
const Row = withInstall(stdin_default$1c);
|
|
18483
18575
|
const popupInheritKeys = [...popupSharedPropKeys, "round", "closeOnPopstate", "safeAreaInsetBottom"];
|
|
18484
18576
|
const iconMap = {
|
|
18485
18577
|
qq: "qq",
|
|
@@ -19652,8 +19744,11 @@
|
|
|
19652
19744
|
description: makeStringProp(""),
|
|
19653
19745
|
icon: String,
|
|
19654
19746
|
showIcon: Boolean,
|
|
19747
|
+
rightIcon: makeStringProp("cross"),
|
|
19748
|
+
showRightIcon: Boolean,
|
|
19655
19749
|
showDescription: Boolean,
|
|
19656
19750
|
showArrow: Boolean,
|
|
19751
|
+
showExpandIcon: truthProp,
|
|
19657
19752
|
actionText: makeStringProp("操作"),
|
|
19658
19753
|
showAction: Boolean,
|
|
19659
19754
|
size: makeStringProp("default"),
|
|
@@ -19724,11 +19819,14 @@
|
|
|
19724
19819
|
"onClick": onActionClick
|
|
19725
19820
|
}, null)])]), props2.size !== "mini" && props2.showDescription && props2.description && vue.createVNode("span", {
|
|
19726
19821
|
"class": bem$4("description")
|
|
19727
|
-
}, [((_b = slots.description) == null ? void 0 : _b.call(slots)) || props2.description])]), (props2.showArrow || props2.expandable) && vue.createVNode(Icon, {
|
|
19822
|
+
}, [((_b = slots.description) == null ? void 0 : _b.call(slots)) || props2.description])]), (props2.showArrow || props2.expandable && props2.showExpandIcon) && vue.createVNode(Icon, {
|
|
19728
19823
|
"name": "arrow-up",
|
|
19729
19824
|
"class": bem$4("arrow", {
|
|
19730
19825
|
expanded: props2.expandable && props2.modelValue
|
|
19731
19826
|
})
|
|
19827
|
+
}, null), props2.showRightIcon && vue.createVNode(Icon, {
|
|
19828
|
+
"name": props2.rightIcon,
|
|
19829
|
+
"class": bem$4("right-icon")
|
|
19732
19830
|
}, null)]), (!props2.expandable || props2.modelValue) && ((_c = slots.default) == null ? void 0 : _c.call(slots))]);
|
|
19733
19831
|
};
|
|
19734
19832
|
}
|
|
@@ -24528,7 +24626,7 @@
|
|
|
24528
24626
|
});
|
|
24529
24627
|
}
|
|
24530
24628
|
};
|
|
24531
|
-
const version = "0.0.
|
|
24629
|
+
const version = "0.0.41";
|
|
24532
24630
|
function install(app) {
|
|
24533
24631
|
const components = [
|
|
24534
24632
|
ActionBar,
|