vant 4.0.0-rc.5 → 4.0.0-rc.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/es/action-sheet/index.css +1 -1
  2. package/es/calendar/Calendar.mjs +10 -3
  3. package/es/calendar/CalendarHeader.d.ts +2 -0
  4. package/es/calendar/CalendarHeader.mjs +5 -1
  5. package/es/cell/Cell.d.ts +17 -0
  6. package/es/cell/Cell.mjs +11 -4
  7. package/es/cell/index.d.ts +9 -0
  8. package/es/collapse-item/CollapseItem.d.ts +13 -0
  9. package/es/collapse-item/index.d.ts +9 -0
  10. package/es/composables/use-sync-prop-ref.d.ts +2 -0
  11. package/es/composables/use-sync-prop-ref.mjs +18 -0
  12. package/es/coupon/index.css +1 -1
  13. package/es/coupon-list/index.css +1 -1
  14. package/es/date-picker/DatePicker.mjs +4 -1
  15. package/es/field/Field.d.ts +13 -0
  16. package/es/field/index.d.ts +9 -0
  17. package/es/image-preview/ImagePreview.d.ts +2 -1
  18. package/es/image-preview/ImagePreview.mjs +9 -4
  19. package/es/image-preview/ImagePreviewItem.d.ts +2 -1
  20. package/es/image-preview/ImagePreviewItem.mjs +22 -13
  21. package/es/image-preview/index.css +1 -1
  22. package/es/image-preview/index.d.ts +2 -1
  23. package/es/index.d.ts +1 -1
  24. package/es/index.mjs +1 -1
  25. package/es/lazyload/vue-lazyload/lazy-image.mjs +5 -5
  26. package/es/picker/Picker.mjs +4 -2
  27. package/es/picker/PickerColumn.mjs +5 -4
  28. package/es/popover/Popover.mjs +13 -8
  29. package/es/skeleton/Skeleton.d.ts +23 -23
  30. package/es/skeleton/Skeleton.mjs +28 -23
  31. package/es/skeleton/SkeletonAvatar.d.ts +26 -0
  32. package/es/skeleton/SkeletonAvatar.mjs +22 -0
  33. package/es/skeleton/SkeletonImage.d.ts +26 -0
  34. package/es/skeleton/SkeletonImage.mjs +26 -0
  35. package/es/skeleton/SkeletonParagraph.d.ts +27 -0
  36. package/es/skeleton/SkeletonParagraph.mjs +31 -0
  37. package/es/skeleton/SkeletonTitle.d.ts +16 -0
  38. package/es/skeleton/SkeletonTitle.mjs +26 -0
  39. package/es/skeleton/index.css +1 -1
  40. package/es/skeleton/index.d.ts +85 -18
  41. package/es/skeleton/index.mjs +22 -2
  42. package/es/skeleton/style/index.mjs +2 -0
  43. package/es/skeleton/types.d.ts +7 -3
  44. package/es/stepper/Stepper.d.ts +1 -1
  45. package/es/stepper/Stepper.mjs +1 -2
  46. package/es/stepper/index.d.ts +1 -1
  47. package/es/swipe/Swipe.mjs +1 -1
  48. package/es/time-picker/TimePicker.mjs +4 -1
  49. package/es/toast/Toast.d.ts +4 -1
  50. package/es/toast/Toast.mjs +2 -1
  51. package/es/toast/index.css +1 -1
  52. package/es/toast/index.d.ts +3 -1
  53. package/es/toast/types.d.ts +2 -0
  54. package/es/uploader/Uploader.mjs +4 -4
  55. package/es/utils/constant.d.ts +1 -0
  56. package/es/utils/constant.mjs +3 -1
  57. package/lib/action-sheet/index.css +1 -1
  58. package/lib/calendar/Calendar.js +10 -3
  59. package/lib/calendar/CalendarHeader.d.ts +2 -0
  60. package/lib/calendar/CalendarHeader.js +5 -1
  61. package/lib/cell/Cell.d.ts +17 -0
  62. package/lib/cell/Cell.js +10 -3
  63. package/lib/cell/index.d.ts +9 -0
  64. package/lib/collapse-item/CollapseItem.d.ts +13 -0
  65. package/lib/collapse-item/index.d.ts +9 -0
  66. package/lib/composables/use-sync-prop-ref.d.ts +2 -0
  67. package/lib/composables/use-sync-prop-ref.js +37 -0
  68. package/lib/coupon/index.css +1 -1
  69. package/lib/coupon-list/index.css +1 -1
  70. package/lib/date-picker/DatePicker.js +4 -1
  71. package/lib/field/Field.d.ts +13 -0
  72. package/lib/field/index.d.ts +9 -0
  73. package/lib/image-preview/ImagePreview.d.ts +2 -1
  74. package/lib/image-preview/ImagePreview.js +9 -4
  75. package/lib/image-preview/ImagePreviewItem.d.ts +2 -1
  76. package/lib/image-preview/ImagePreviewItem.js +21 -12
  77. package/lib/image-preview/index.css +1 -1
  78. package/lib/image-preview/index.d.ts +2 -1
  79. package/lib/index.css +1 -1
  80. package/lib/index.d.ts +1 -1
  81. package/lib/index.js +1 -1
  82. package/lib/lazyload/vue-lazyload/lazy-image.js +6 -6
  83. package/lib/picker/Picker.js +3 -1
  84. package/lib/picker/PickerColumn.js +5 -4
  85. package/lib/popover/Popover.js +13 -8
  86. package/lib/skeleton/Skeleton.d.ts +23 -23
  87. package/lib/skeleton/Skeleton.js +34 -23
  88. package/lib/skeleton/SkeletonAvatar.d.ts +26 -0
  89. package/lib/skeleton/SkeletonAvatar.js +41 -0
  90. package/lib/skeleton/SkeletonImage.d.ts +26 -0
  91. package/lib/skeleton/SkeletonImage.js +45 -0
  92. package/lib/skeleton/SkeletonParagraph.d.ts +27 -0
  93. package/lib/skeleton/SkeletonParagraph.js +50 -0
  94. package/lib/skeleton/SkeletonTitle.d.ts +16 -0
  95. package/lib/skeleton/SkeletonTitle.js +45 -0
  96. package/lib/skeleton/index.css +1 -1
  97. package/lib/skeleton/index.d.ts +85 -18
  98. package/lib/skeleton/index.js +22 -2
  99. package/lib/skeleton/style/index.js +2 -0
  100. package/lib/skeleton/types.d.ts +7 -3
  101. package/lib/stepper/Stepper.d.ts +1 -1
  102. package/lib/stepper/Stepper.js +1 -2
  103. package/lib/stepper/index.d.ts +1 -1
  104. package/lib/swipe/Swipe.js +1 -1
  105. package/lib/time-picker/TimePicker.js +4 -1
  106. package/lib/toast/Toast.d.ts +4 -1
  107. package/lib/toast/Toast.js +2 -1
  108. package/lib/toast/index.css +1 -1
  109. package/lib/toast/index.d.ts +3 -1
  110. package/lib/toast/types.d.ts +2 -0
  111. package/lib/uploader/Uploader.js +3 -3
  112. package/lib/utils/constant.d.ts +1 -0
  113. package/lib/utils/constant.js +3 -1
  114. package/lib/vant.cjs.js +936 -788
  115. package/lib/vant.es.js +936 -788
  116. package/lib/vant.js +930 -788
  117. package/lib/vant.min.js +1 -1
  118. package/lib/web-types.json +1 -12150
  119. package/package.json +1 -1
  120. package/changelog.generated.md +0 -71
package/lib/vant.js CHANGED
@@ -604,7 +604,7 @@
604
604
  });
605
605
  return to;
606
606
  }
607
- var stdin_default$1F = {
607
+ var stdin_default$1J = {
608
608
  name: "\u59D3\u540D",
609
609
  tel: "\u7535\u8BDD",
610
610
  save: "\u4FDD\u5B58",
@@ -667,7 +667,7 @@
667
667
  };
668
668
  const lang = vue.ref("zh-CN");
669
669
  const messages = vue.reactive({
670
- "zh-CN": stdin_default$1F
670
+ "zh-CN": stdin_default$1J
671
671
  });
672
672
  const Locale = {
673
673
  messages() {
@@ -681,11 +681,11 @@
681
681
  deepAssign(messages, newMessages);
682
682
  }
683
683
  };
684
- var stdin_default$1E = Locale;
684
+ var stdin_default$1I = Locale;
685
685
  function createTranslate(name2) {
686
686
  const prefix = camelize(name2) + ".";
687
687
  return (path, ...args) => {
688
- const messages2 = stdin_default$1E.messages();
688
+ const messages2 = stdin_default$1I.messages();
689
689
  const message = get(messages2, prefix + path) || get(messages2, path);
690
690
  return isFunction(message) ? message(...args) : message;
691
691
  };
@@ -735,6 +735,7 @@
735
735
  const BORDER_UNSET_TOP_BOTTOM = `${BORDER}-unset--top-bottom`;
736
736
  const HAPTICS_FEEDBACK = "van-haptics-feedback";
737
737
  const FORM_KEY = Symbol("van-form");
738
+ const LONG_PRESS_START_TIME = 500;
738
739
  function callInterceptor(interceptor, {
739
740
  args = [],
740
741
  done,
@@ -805,20 +806,20 @@
805
806
  }
806
807
  }, [renderContent()]);
807
808
  }
808
- const [name$1w, bem$1r] = createNamespace("action-bar");
809
- const ACTION_BAR_KEY = Symbol(name$1w);
809
+ const [name$1A, bem$1v] = createNamespace("action-bar");
810
+ const ACTION_BAR_KEY = Symbol(name$1A);
810
811
  const actionBarProps = {
811
812
  placeholder: Boolean,
812
813
  safeAreaInsetBottom: truthProp
813
814
  };
814
- var stdin_default$1D = vue.defineComponent({
815
- name: name$1w,
815
+ var stdin_default$1H = vue.defineComponent({
816
+ name: name$1A,
816
817
  props: actionBarProps,
817
818
  setup(props, {
818
819
  slots
819
820
  }) {
820
821
  const root = vue.ref();
821
- const renderPlaceholder = usePlaceholder(root, bem$1r);
822
+ const renderPlaceholder = usePlaceholder(root, bem$1v);
822
823
  const {
823
824
  linkChildren
824
825
  } = useChildren(ACTION_BAR_KEY);
@@ -827,7 +828,7 @@
827
828
  var _a;
828
829
  return vue.createVNode("div", {
829
830
  "ref": root,
830
- "class": [bem$1r(), {
831
+ "class": [bem$1v(), {
831
832
  "van-safe-area-bottom": props.safeAreaInsetBottom
832
833
  }]
833
834
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
@@ -840,7 +841,7 @@
840
841
  };
841
842
  }
842
843
  });
843
- const ActionBar = withInstall(stdin_default$1D);
844
+ const ActionBar = withInstall(stdin_default$1H);
844
845
  function useExpose(apis) {
845
846
  const instance2 = vue.getCurrentInstance();
846
847
  if (instance2) {
@@ -868,7 +869,7 @@
868
869
  const vm = vue.getCurrentInstance().proxy;
869
870
  return () => route(vm);
870
871
  }
871
- const [name$1v, bem$1q] = createNamespace("badge");
872
+ const [name$1z, bem$1u] = createNamespace("badge");
872
873
  const badgeProps = {
873
874
  dot: Boolean,
874
875
  max: numericProp,
@@ -879,8 +880,8 @@
879
880
  showZero: truthProp,
880
881
  position: makeStringProp("top-right")
881
882
  };
882
- var stdin_default$1C = vue.defineComponent({
883
- name: name$1v,
883
+ var stdin_default$1G = vue.defineComponent({
884
+ name: name$1z,
884
885
  props: badgeProps,
885
886
  setup(props, {
886
887
  slots
@@ -934,7 +935,7 @@
934
935
  const renderBadge = () => {
935
936
  if (hasContent() || props.dot) {
936
937
  return vue.createVNode("div", {
937
- "class": bem$1q([props.position, {
938
+ "class": bem$1u([props.position, {
938
939
  dot: props.dot,
939
940
  fixed: !!slots.default
940
941
  }]),
@@ -948,7 +949,7 @@
948
949
  tag
949
950
  } = props;
950
951
  return vue.createVNode(tag, {
951
- "class": bem$1q("wrapper")
952
+ "class": bem$1u("wrapper")
952
953
  }, {
953
954
  default: () => [slots.default(), renderBadge()]
954
955
  });
@@ -957,14 +958,14 @@
957
958
  };
958
959
  }
959
960
  });
960
- const Badge = withInstall(stdin_default$1C);
961
+ const Badge = withInstall(stdin_default$1G);
961
962
  let globalZIndex = 2e3;
962
963
  const useGlobalZIndex = () => ++globalZIndex;
963
964
  const setGlobalZIndex = (val) => {
964
965
  globalZIndex = val;
965
966
  };
966
- const [name$1u, bem$1p] = createNamespace("config-provider");
967
- const CONFIG_PROVIDER_KEY = Symbol(name$1u);
967
+ const [name$1y, bem$1t] = createNamespace("config-provider");
968
+ const CONFIG_PROVIDER_KEY = Symbol(name$1y);
968
969
  const configProviderProps = {
969
970
  tag: makeStringProp("div"),
970
971
  theme: makeStringProp("light"),
@@ -981,8 +982,8 @@
981
982
  });
982
983
  return cssVars;
983
984
  }
984
- var stdin_default$1B = vue.defineComponent({
985
- name: name$1u,
985
+ var stdin_default$1F = vue.defineComponent({
986
+ name: name$1y,
986
987
  props: configProviderProps,
987
988
  setup(props, {
988
989
  slots
@@ -1014,7 +1015,7 @@
1014
1015
  }
1015
1016
  });
1016
1017
  return () => vue.createVNode(props.tag, {
1017
- "class": bem$1p(),
1018
+ "class": bem$1t(),
1018
1019
  "style": style.value
1019
1020
  }, {
1020
1021
  default: () => {
@@ -1024,7 +1025,7 @@
1024
1025
  });
1025
1026
  }
1026
1027
  });
1027
- const [name$1t, bem$1o] = createNamespace("icon");
1028
+ const [name$1x, bem$1s] = createNamespace("icon");
1028
1029
  const isImage = (name2) => name2 == null ? void 0 : name2.includes("/");
1029
1030
  const iconProps = {
1030
1031
  dot: Boolean,
@@ -1036,14 +1037,14 @@
1036
1037
  badgeProps: Object,
1037
1038
  classPrefix: String
1038
1039
  };
1039
- var stdin_default$1A = vue.defineComponent({
1040
- name: name$1t,
1040
+ var stdin_default$1E = vue.defineComponent({
1041
+ name: name$1x,
1041
1042
  props: iconProps,
1042
1043
  setup(props, {
1043
1044
  slots
1044
1045
  }) {
1045
1046
  const config = vue.inject(CONFIG_PROVIDER_KEY, null);
1046
- const classPrefix = vue.computed(() => props.classPrefix || (config == null ? void 0 : config.iconPrefix) || bem$1o());
1047
+ const classPrefix = vue.computed(() => props.classPrefix || (config == null ? void 0 : config.iconPrefix) || bem$1s());
1047
1048
  return () => {
1048
1049
  const {
1049
1050
  tag,
@@ -1067,7 +1068,7 @@
1067
1068
  default: () => {
1068
1069
  var _a;
1069
1070
  return [(_a = slots.default) == null ? void 0 : _a.call(slots), isImageIcon && vue.createVNode("img", {
1070
- "class": bem$1o("image"),
1071
+ "class": bem$1s("image"),
1071
1072
  "src": name2
1072
1073
  }, null)];
1073
1074
  }
@@ -1075,13 +1076,13 @@
1075
1076
  };
1076
1077
  }
1077
1078
  });
1078
- const Icon = withInstall(stdin_default$1A);
1079
- const [name$1s, bem$1n] = createNamespace("loading");
1079
+ const Icon = withInstall(stdin_default$1E);
1080
+ const [name$1w, bem$1r] = createNamespace("loading");
1080
1081
  const SpinIcon = Array(12).fill(null).map((_, index) => vue.createVNode("i", {
1081
- "class": bem$1n("line", String(index + 1))
1082
+ "class": bem$1r("line", String(index + 1))
1082
1083
  }, null));
1083
1084
  const CircularIcon = vue.createVNode("svg", {
1084
- "class": bem$1n("circular"),
1085
+ "class": bem$1r("circular"),
1085
1086
  "viewBox": "25 25 50 50"
1086
1087
  }, [vue.createVNode("circle", {
1087
1088
  "cx": "50",
@@ -1097,8 +1098,8 @@
1097
1098
  textSize: numericProp,
1098
1099
  textColor: String
1099
1100
  };
1100
- var stdin_default$1z = vue.defineComponent({
1101
- name: name$1s,
1101
+ var stdin_default$1D = vue.defineComponent({
1102
+ name: name$1w,
1102
1103
  props: loadingProps,
1103
1104
  setup(props, {
1104
1105
  slots
@@ -1109,7 +1110,7 @@
1109
1110
  const renderIcon = () => {
1110
1111
  const DefaultIcon = props.type === "spinner" ? SpinIcon : CircularIcon;
1111
1112
  return vue.createVNode("span", {
1112
- "class": bem$1n("spinner", props.type),
1113
+ "class": bem$1r("spinner", props.type),
1113
1114
  "style": spinnerStyle.value
1114
1115
  }, [slots.icon ? slots.icon() : DefaultIcon]);
1115
1116
  };
@@ -1117,7 +1118,7 @@
1117
1118
  var _a;
1118
1119
  if (slots.default) {
1119
1120
  return vue.createVNode("span", {
1120
- "class": bem$1n("text"),
1121
+ "class": bem$1r("text"),
1121
1122
  "style": {
1122
1123
  fontSize: addUnit(props.textSize),
1123
1124
  color: (_a = props.textColor) != null ? _a : props.color
@@ -1131,7 +1132,7 @@
1131
1132
  vertical
1132
1133
  } = props;
1133
1134
  return vue.createVNode("div", {
1134
- "class": bem$1n([type, {
1135
+ "class": bem$1r([type, {
1135
1136
  vertical
1136
1137
  }]),
1137
1138
  "aria-live": "polite",
@@ -1140,8 +1141,8 @@
1140
1141
  };
1141
1142
  }
1142
1143
  });
1143
- const Loading = withInstall(stdin_default$1z);
1144
- const [name$1r, bem$1m] = createNamespace("button");
1144
+ const Loading = withInstall(stdin_default$1D);
1145
+ const [name$1v, bem$1q] = createNamespace("button");
1145
1146
  const buttonProps = extend({}, routeProps, {
1146
1147
  tag: makeStringProp("button"),
1147
1148
  text: String,
@@ -1163,8 +1164,8 @@
1163
1164
  loadingType: String,
1164
1165
  iconPosition: makeStringProp("left")
1165
1166
  });
1166
- var stdin_default$1y = vue.defineComponent({
1167
- name: name$1r,
1167
+ var stdin_default$1C = vue.defineComponent({
1168
+ name: name$1v,
1168
1169
  props: buttonProps,
1169
1170
  emits: ["click"],
1170
1171
  setup(props, {
@@ -1179,7 +1180,7 @@
1179
1180
  return vue.createVNode(Loading, {
1180
1181
  "size": props.loadingSize,
1181
1182
  "type": props.loadingType,
1182
- "class": bem$1m("loading")
1183
+ "class": bem$1q("loading")
1183
1184
  }, null);
1184
1185
  };
1185
1186
  const renderIcon = () => {
@@ -1188,13 +1189,13 @@
1188
1189
  }
1189
1190
  if (slots.icon) {
1190
1191
  return vue.createVNode("div", {
1191
- "class": bem$1m("icon")
1192
+ "class": bem$1q("icon")
1192
1193
  }, [slots.icon()]);
1193
1194
  }
1194
1195
  if (props.icon) {
1195
1196
  return vue.createVNode(Icon, {
1196
1197
  "name": props.icon,
1197
- "class": bem$1m("icon"),
1198
+ "class": bem$1q("icon"),
1198
1199
  "classPrefix": props.iconPrefix
1199
1200
  }, null);
1200
1201
  }
@@ -1208,7 +1209,7 @@
1208
1209
  }
1209
1210
  if (text) {
1210
1211
  return vue.createVNode("span", {
1211
- "class": bem$1m("text")
1212
+ "class": bem$1q("text")
1212
1213
  }, [text]);
1213
1214
  }
1214
1215
  };
@@ -1255,7 +1256,7 @@
1255
1256
  nativeType,
1256
1257
  iconPosition
1257
1258
  } = props;
1258
- const classes = [bem$1m([type, size, {
1259
+ const classes = [bem$1q([type, size, {
1259
1260
  plain,
1260
1261
  block,
1261
1262
  round: round2,
@@ -1274,14 +1275,14 @@
1274
1275
  "onClick": onClick
1275
1276
  }, {
1276
1277
  default: () => [vue.createVNode("div", {
1277
- "class": bem$1m("content")
1278
+ "class": bem$1q("content")
1278
1279
  }, [iconPosition === "left" && renderIcon(), renderText(), iconPosition === "right" && renderIcon()])]
1279
1280
  });
1280
1281
  };
1281
1282
  }
1282
1283
  });
1283
- const Button = withInstall(stdin_default$1y);
1284
- const [name$1q, bem$1l] = createNamespace("action-bar-button");
1284
+ const Button = withInstall(stdin_default$1C);
1285
+ const [name$1u, bem$1p] = createNamespace("action-bar-button");
1285
1286
  const actionBarButtonProps = extend({}, routeProps, {
1286
1287
  type: String,
1287
1288
  text: String,
@@ -1290,8 +1291,8 @@
1290
1291
  loading: Boolean,
1291
1292
  disabled: Boolean
1292
1293
  });
1293
- var stdin_default$1x = vue.defineComponent({
1294
- name: name$1q,
1294
+ var stdin_default$1B = vue.defineComponent({
1295
+ name: name$1u,
1295
1296
  props: actionBarButtonProps,
1296
1297
  setup(props, {
1297
1298
  slots
@@ -1326,7 +1327,7 @@
1326
1327
  disabled
1327
1328
  } = props;
1328
1329
  return vue.createVNode(Button, {
1329
- "class": bem$1l([type, {
1330
+ "class": bem$1p([type, {
1330
1331
  last: isLast.value,
1331
1332
  first: isFirst.value
1332
1333
  }]),
@@ -1343,8 +1344,8 @@
1343
1344
  };
1344
1345
  }
1345
1346
  });
1346
- const ActionBarButton = withInstall(stdin_default$1x);
1347
- const [name$1p, bem$1k] = createNamespace("action-bar-icon");
1347
+ const ActionBarButton = withInstall(stdin_default$1B);
1348
+ const [name$1t, bem$1o] = createNamespace("action-bar-icon");
1348
1349
  const actionBarIconProps = extend({}, routeProps, {
1349
1350
  dot: Boolean,
1350
1351
  text: String,
@@ -1355,8 +1356,8 @@
1355
1356
  badgeProps: Object,
1356
1357
  iconPrefix: String
1357
1358
  });
1358
- var stdin_default$1w = vue.defineComponent({
1359
- name: name$1p,
1359
+ var stdin_default$1A = vue.defineComponent({
1360
+ name: name$1t,
1360
1361
  props: actionBarIconProps,
1361
1362
  setup(props, {
1362
1363
  slots
@@ -1376,7 +1377,7 @@
1376
1377
  if (slots.icon) {
1377
1378
  return vue.createVNode(Badge, vue.mergeProps({
1378
1379
  "dot": dot,
1379
- "class": bem$1k("icon"),
1380
+ "class": bem$1o("icon"),
1380
1381
  "content": badge
1381
1382
  }, badgeProps2), {
1382
1383
  default: slots.icon
@@ -1388,20 +1389,20 @@
1388
1389
  "name": icon,
1389
1390
  "badge": badge,
1390
1391
  "color": color,
1391
- "class": [bem$1k("icon"), iconClass],
1392
+ "class": [bem$1o("icon"), iconClass],
1392
1393
  "badgeProps": badgeProps2,
1393
1394
  "classPrefix": iconPrefix
1394
1395
  }, null);
1395
1396
  };
1396
1397
  return () => vue.createVNode("div", {
1397
1398
  "role": "button",
1398
- "class": bem$1k(),
1399
+ "class": bem$1o(),
1399
1400
  "tabindex": 0,
1400
1401
  "onClick": route2
1401
1402
  }, [renderIcon(), slots.default ? slots.default() : props.text]);
1402
1403
  }
1403
1404
  });
1404
- const ActionBarIcon = withInstall(stdin_default$1w);
1405
+ const ActionBarIcon = withInstall(stdin_default$1A);
1405
1406
  const popupSharedProps = {
1406
1407
  show: Boolean,
1407
1408
  zIndex: numericProp,
@@ -1540,7 +1541,7 @@
1540
1541
  );
1541
1542
  return (render) => () => inited.value ? render() : null;
1542
1543
  }
1543
- const [name$1o, bem$1j] = createNamespace("overlay");
1544
+ const [name$1s, bem$1n] = createNamespace("overlay");
1544
1545
  const overlayProps = {
1545
1546
  show: Boolean,
1546
1547
  zIndex: numericProp,
@@ -1550,8 +1551,8 @@
1550
1551
  lazyRender: truthProp,
1551
1552
  customStyle: Object
1552
1553
  };
1553
- var stdin_default$1v = vue.defineComponent({
1554
- name: name$1o,
1554
+ var stdin_default$1z = vue.defineComponent({
1555
+ name: name$1s,
1555
1556
  props: overlayProps,
1556
1557
  setup(props, {
1557
1558
  slots
@@ -1572,7 +1573,7 @@
1572
1573
  return vue.withDirectives(vue.createVNode("div", {
1573
1574
  "ref": root,
1574
1575
  "style": style,
1575
- "class": [bem$1j(), props.className]
1576
+ "class": [bem$1n(), props.className]
1576
1577
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), [[vue.vShow, props.show]]);
1577
1578
  });
1578
1579
  useEventListener("touchmove", onTouchMove, {
@@ -1586,7 +1587,7 @@
1586
1587
  });
1587
1588
  }
1588
1589
  });
1589
- const Overlay = withInstall(stdin_default$1v);
1590
+ const Overlay = withInstall(stdin_default$1z);
1590
1591
  const popupProps$2 = extend({}, popupSharedProps, {
1591
1592
  round: Boolean,
1592
1593
  position: makeStringProp("center"),
@@ -1599,9 +1600,9 @@
1599
1600
  safeAreaInsetTop: Boolean,
1600
1601
  safeAreaInsetBottom: Boolean
1601
1602
  });
1602
- const [name$1n, bem$1i] = createNamespace("popup");
1603
- var stdin_default$1u = vue.defineComponent({
1604
- name: name$1n,
1603
+ const [name$1r, bem$1m] = createNamespace("popup");
1604
+ var stdin_default$1y = vue.defineComponent({
1605
+ name: name$1r,
1605
1606
  inheritAttrs: false,
1606
1607
  props: popupProps$2,
1607
1608
  emits: ["open", "close", "opened", "closed", "keydown", "update:show", "clickOverlay", "clickCloseIcon"],
@@ -1675,7 +1676,7 @@
1675
1676
  "role": "button",
1676
1677
  "tabindex": 0,
1677
1678
  "name": props.closeIcon,
1678
- "class": [bem$1i("close-icon", props.closeIconPosition), HAPTICS_FEEDBACK],
1679
+ "class": [bem$1m("close-icon", props.closeIconPosition), HAPTICS_FEEDBACK],
1679
1680
  "classPrefix": props.iconPrefix,
1680
1681
  "onClick": onClickCloseIcon
1681
1682
  }, null);
@@ -1697,7 +1698,7 @@
1697
1698
  "style": style.value,
1698
1699
  "role": "dialog",
1699
1700
  "tabindex": 0,
1700
- "class": [bem$1i({
1701
+ "class": [bem$1m({
1701
1702
  round: round2,
1702
1703
  [position]: position
1703
1704
  }), {
@@ -1778,8 +1779,8 @@
1778
1779
  };
1779
1780
  }
1780
1781
  });
1781
- const Popup = withInstall(stdin_default$1u);
1782
- const [name$1m, bem$1h] = createNamespace("action-sheet");
1782
+ const Popup = withInstall(stdin_default$1y);
1783
+ const [name$1q, bem$1l] = createNamespace("action-sheet");
1783
1784
  const actionSheetProps = extend({}, popupSharedProps, {
1784
1785
  title: String,
1785
1786
  round: truthProp,
@@ -1793,8 +1794,8 @@
1793
1794
  safeAreaInsetBottom: truthProp
1794
1795
  });
1795
1796
  const popupInheritKeys$2 = [...popupSharedPropKeys, "round", "closeOnPopstate", "safeAreaInsetBottom"];
1796
- var stdin_default$1t = vue.defineComponent({
1797
- name: name$1m,
1797
+ var stdin_default$1x = vue.defineComponent({
1798
+ name: name$1q,
1798
1799
  props: actionSheetProps,
1799
1800
  emits: ["select", "cancel", "update:show"],
1800
1801
  setup(props, {
@@ -1809,10 +1810,10 @@
1809
1810
  const renderHeader = () => {
1810
1811
  if (props.title) {
1811
1812
  return vue.createVNode("div", {
1812
- "class": bem$1h("header")
1813
+ "class": bem$1l("header")
1813
1814
  }, [props.title, props.closeable && vue.createVNode(Icon, {
1814
1815
  "name": props.closeIcon,
1815
- "class": [bem$1h("close"), HAPTICS_FEEDBACK],
1816
+ "class": [bem$1l("close"), HAPTICS_FEEDBACK],
1816
1817
  "onClick": onCancel
1817
1818
  }, null)]);
1818
1819
  }
@@ -1820,10 +1821,10 @@
1820
1821
  const renderCancel = () => {
1821
1822
  if (slots.cancel || props.cancelText) {
1822
1823
  return [vue.createVNode("div", {
1823
- "class": bem$1h("gap")
1824
+ "class": bem$1l("gap")
1824
1825
  }, null), vue.createVNode("button", {
1825
1826
  "type": "button",
1826
- "class": bem$1h("cancel"),
1827
+ "class": bem$1l("cancel"),
1827
1828
  "onClick": onCancel
1828
1829
  }, [slots.cancel ? slots.cancel() : props.cancelText])];
1829
1830
  }
@@ -1831,7 +1832,7 @@
1831
1832
  const renderActionContent = (action, index) => {
1832
1833
  if (action.loading) {
1833
1834
  return vue.createVNode(Loading, {
1834
- "class": bem$1h("loading-icon")
1835
+ "class": bem$1l("loading-icon")
1835
1836
  }, null);
1836
1837
  }
1837
1838
  if (slots.action) {
@@ -1841,9 +1842,9 @@
1841
1842
  });
1842
1843
  }
1843
1844
  return [vue.createVNode("span", {
1844
- "class": bem$1h("name")
1845
+ "class": bem$1l("name")
1845
1846
  }, [action.name]), action.subname && vue.createVNode("div", {
1846
- "class": bem$1h("subname")
1847
+ "class": bem$1l("subname")
1847
1848
  }, [action.subname])];
1848
1849
  };
1849
1850
  const renderAction = (action, index) => {
@@ -1871,7 +1872,7 @@
1871
1872
  "style": {
1872
1873
  color
1873
1874
  },
1874
- "class": [bem$1h("item", {
1875
+ "class": [bem$1l("item", {
1875
1876
  loading,
1876
1877
  disabled
1877
1878
  }), className],
@@ -1882,26 +1883,26 @@
1882
1883
  if (props.description || slots.description) {
1883
1884
  const content = slots.description ? slots.description() : props.description;
1884
1885
  return vue.createVNode("div", {
1885
- "class": bem$1h("description")
1886
+ "class": bem$1l("description")
1886
1887
  }, [content]);
1887
1888
  }
1888
1889
  };
1889
1890
  return () => vue.createVNode(Popup, vue.mergeProps({
1890
- "class": bem$1h(),
1891
+ "class": bem$1l(),
1891
1892
  "position": "bottom",
1892
1893
  "onUpdate:show": updateShow
1893
1894
  }, pick(props, popupInheritKeys$2)), {
1894
1895
  default: () => {
1895
1896
  var _a;
1896
1897
  return [renderHeader(), renderDescription(), vue.createVNode("div", {
1897
- "class": bem$1h("content")
1898
+ "class": bem$1l("content")
1898
1899
  }, [props.actions.map(renderAction), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderCancel()];
1899
1900
  }
1900
1901
  });
1901
1902
  }
1902
1903
  });
1903
- const ActionSheet = withInstall(stdin_default$1t);
1904
- const [name$1l, bem$1g, t$j] = createNamespace("picker");
1904
+ const ActionSheet = withInstall(stdin_default$1x);
1905
+ const [name$1p, bem$1k, t$j] = createNamespace("picker");
1905
1906
  const getFirstEnabledOption = (options) => options.find((option) => !option.disabled) || options[0];
1906
1907
  function getColumnsType(columns, fields) {
1907
1908
  const firstColumn = columns[0];
@@ -1970,10 +1971,10 @@
1970
1971
  const DEFAULT_DURATION = 200;
1971
1972
  const MOMENTUM_TIME = 300;
1972
1973
  const MOMENTUM_DISTANCE = 15;
1973
- const [name$1k, bem$1f] = createNamespace("picker-column");
1974
- const PICKER_KEY = Symbol(name$1k);
1975
- var stdin_default$1s = vue.defineComponent({
1976
- name: name$1k,
1974
+ const [name$1o, bem$1j] = createNamespace("picker-column");
1975
+ const PICKER_KEY = Symbol(name$1o);
1976
+ var stdin_default$1w = vue.defineComponent({
1977
+ name: name$1o,
1977
1978
  props: {
1978
1979
  value: numericProp,
1979
1980
  fields: makeRequiredProp(Object),
@@ -2017,8 +2018,9 @@
2017
2018
  }
2018
2019
  currentOffset.value = offset2;
2019
2020
  };
2021
+ const isReadonly = () => props.readonly || !props.options.length;
2020
2022
  const onClickOption = (index) => {
2021
- if (moving || props.readonly) {
2023
+ if (moving || isReadonly()) {
2022
2024
  return;
2023
2025
  }
2024
2026
  transitionEndTrigger = null;
@@ -2043,7 +2045,7 @@
2043
2045
  }
2044
2046
  };
2045
2047
  const onTouchStart = (event) => {
2046
- if (props.readonly) {
2048
+ if (isReadonly()) {
2047
2049
  return;
2048
2050
  }
2049
2051
  touch.start(event);
@@ -2058,7 +2060,7 @@
2058
2060
  transitionEndTrigger = null;
2059
2061
  };
2060
2062
  const onTouchMove = (event) => {
2061
- if (props.readonly) {
2063
+ if (isReadonly()) {
2062
2064
  return;
2063
2065
  }
2064
2066
  touch.move(event);
@@ -2074,7 +2076,7 @@
2074
2076
  }
2075
2077
  };
2076
2078
  const onTouchEnd = () => {
2077
- if (props.readonly) {
2079
+ if (isReadonly()) {
2078
2080
  return;
2079
2081
  }
2080
2082
  const distance = currentOffset.value - momentumOffset;
@@ -2105,7 +2107,7 @@
2105
2107
  role: "button",
2106
2108
  style: optionStyle,
2107
2109
  tabindex: disabled ? -1 : 0,
2108
- class: [bem$1f("item", {
2110
+ class: [bem$1j("item", {
2109
2111
  disabled,
2110
2112
  selected: value === props.value
2111
2113
  }), option.className],
@@ -2133,7 +2135,7 @@
2133
2135
  });
2134
2136
  return () => vue.createVNode("div", {
2135
2137
  "ref": root,
2136
- "class": bem$1f(),
2138
+ "class": bem$1j(),
2137
2139
  "onTouchstartPassive": onTouchStart,
2138
2140
  "onTouchend": onTouchEnd,
2139
2141
  "onTouchcancel": onTouchEnd
@@ -2144,12 +2146,12 @@
2144
2146
  transitionDuration: `${currentDuration.value}ms`,
2145
2147
  transitionProperty: currentDuration.value ? "all" : "none"
2146
2148
  },
2147
- "class": bem$1f("wrapper"),
2149
+ "class": bem$1j("wrapper"),
2148
2150
  "onTransitionend": stopMomentum
2149
2151
  }, [renderOptions()])]);
2150
2152
  }
2151
2153
  });
2152
- const [name$1j] = createNamespace("picker-toolbar");
2154
+ const [name$1n] = createNamespace("picker-toolbar");
2153
2155
  const pickerToolbarProps = {
2154
2156
  title: String,
2155
2157
  cancelButtonText: String,
@@ -2157,8 +2159,8 @@
2157
2159
  };
2158
2160
  const pickerToolbarSlots = ["cancel", "confirm", "title", "toolbar"];
2159
2161
  const pickerToolbarPropKeys = Object.keys(pickerToolbarProps);
2160
- var stdin_default$1r = vue.defineComponent({
2161
- name: name$1j,
2162
+ var stdin_default$1v = vue.defineComponent({
2163
+ name: name$1n,
2162
2164
  props: pickerToolbarProps,
2163
2165
  emits: ["confirm", "cancel"],
2164
2166
  setup(props, {
@@ -2171,7 +2173,7 @@
2171
2173
  }
2172
2174
  if (props.title) {
2173
2175
  return vue.createVNode("div", {
2174
- "class": [bem$1g("title"), "van-ellipsis"]
2176
+ "class": [bem$1k("title"), "van-ellipsis"]
2175
2177
  }, [props.title]);
2176
2178
  }
2177
2179
  };
@@ -2181,7 +2183,7 @@
2181
2183
  const text = props.cancelButtonText || t$j("cancel");
2182
2184
  return vue.createVNode("button", {
2183
2185
  "type": "button",
2184
- "class": [bem$1g("cancel"), HAPTICS_FEEDBACK],
2186
+ "class": [bem$1k("cancel"), HAPTICS_FEEDBACK],
2185
2187
  "onClick": onCancel
2186
2188
  }, [slots.cancel ? slots.cancel() : text]);
2187
2189
  };
@@ -2189,12 +2191,12 @@
2189
2191
  const text = props.confirmButtonText || t$j("confirm");
2190
2192
  return vue.createVNode("button", {
2191
2193
  "type": "button",
2192
- "class": [bem$1g("confirm"), HAPTICS_FEEDBACK],
2194
+ "class": [bem$1k("confirm"), HAPTICS_FEEDBACK],
2193
2195
  "onClick": onConfirm
2194
2196
  }, [slots.confirm ? slots.confirm() : text]);
2195
2197
  };
2196
2198
  return () => vue.createVNode("div", {
2197
- "class": bem$1g("toolbar")
2199
+ "class": bem$1k("toolbar")
2198
2200
  }, [slots.toolbar ? slots.toolbar() : [renderCancel(), renderTitle(), renderConfirm()]]);
2199
2201
  }
2200
2202
  });
@@ -2275,7 +2277,7 @@
2275
2277
  vue.onBeforeUnmount(unobserve);
2276
2278
  onMountedOrActivated(observe);
2277
2279
  }
2278
- const [name$1i, bem$1e] = createNamespace("sticky");
2280
+ const [name$1m, bem$1i] = createNamespace("sticky");
2279
2281
  const stickyProps = {
2280
2282
  zIndex: numericProp,
2281
2283
  position: makeStringProp("top"),
@@ -2283,8 +2285,8 @@
2283
2285
  offsetTop: makeNumericProp(0),
2284
2286
  offsetBottom: makeNumericProp(0)
2285
2287
  };
2286
- var stdin_default$1q = vue.defineComponent({
2287
- name: name$1i,
2288
+ var stdin_default$1u = vue.defineComponent({
2289
+ name: name$1m,
2288
2290
  props: stickyProps,
2289
2291
  emits: ["scroll", "change"],
2290
2292
  setup(props, {
@@ -2379,7 +2381,7 @@
2379
2381
  "ref": root,
2380
2382
  "style": rootStyle.value
2381
2383
  }, [vue.createVNode("div", {
2382
- "class": bem$1e({
2384
+ "class": bem$1i({
2383
2385
  fixed: state.fixed
2384
2386
  }),
2385
2387
  "style": stickyStyle.value
@@ -2387,10 +2389,10 @@
2387
2389
  };
2388
2390
  }
2389
2391
  });
2390
- const Sticky = withInstall(stdin_default$1q);
2391
- const [name$1h, bem$1d] = createNamespace("tab");
2392
- var stdin_default$1p = vue.defineComponent({
2393
- name: name$1h,
2392
+ const Sticky = withInstall(stdin_default$1u);
2393
+ const [name$1l, bem$1h] = createNamespace("tab");
2394
+ var stdin_default$1t = vue.defineComponent({
2395
+ name: name$1l,
2394
2396
  props: {
2395
2397
  id: String,
2396
2398
  dot: Boolean,
@@ -2439,7 +2441,7 @@
2439
2441
  });
2440
2442
  const renderText = () => {
2441
2443
  const Text2 = vue.createVNode("span", {
2442
- "class": bem$1d("text", {
2444
+ "class": bem$1h("text", {
2443
2445
  ellipsis: !props.scrollable
2444
2446
  })
2445
2447
  }, [slots.title ? slots.title() : props.title]);
@@ -2457,7 +2459,7 @@
2457
2459
  return () => vue.createVNode("div", {
2458
2460
  "id": props.id,
2459
2461
  "role": "tab",
2460
- "class": [bem$1d([props.type, {
2462
+ "class": [bem$1h([props.type, {
2461
2463
  grow: props.scrollable && !props.shrink,
2462
2464
  shrink: props.shrink,
2463
2465
  active: props.isActive,
@@ -2471,7 +2473,7 @@
2471
2473
  }, [renderText()]);
2472
2474
  }
2473
2475
  });
2474
- const [name$1g, bem$1c] = createNamespace("swipe");
2476
+ const [name$1k, bem$1g] = createNamespace("swipe");
2475
2477
  const swipeProps = {
2476
2478
  loop: truthProp,
2477
2479
  width: numericProp,
@@ -2486,9 +2488,9 @@
2486
2488
  showIndicators: truthProp,
2487
2489
  stopPropagation: truthProp
2488
2490
  };
2489
- const SWIPE_KEY = Symbol(name$1g);
2490
- var stdin_default$1o = vue.defineComponent({
2491
- name: name$1g,
2491
+ const SWIPE_KEY = Symbol(name$1k);
2492
+ var stdin_default$1s = vue.defineComponent({
2493
+ name: name$1k,
2492
2494
  props: swipeProps,
2493
2495
  emits: ["change"],
2494
2496
  setup(props, {
@@ -2520,7 +2522,7 @@
2520
2522
  }
2521
2523
  return 0;
2522
2524
  });
2523
- const maxCount = vue.computed(() => Math.ceil(Math.abs(minOffset.value) / size.value));
2525
+ const maxCount = vue.computed(() => size.value ? Math.ceil(Math.abs(minOffset.value) / size.value) : count.value);
2524
2526
  const trackSize = vue.computed(() => count.value * size.value);
2525
2527
  const activeIndicator = vue.computed(() => (state.active + count.value) % count.value);
2526
2528
  const isCorrectDirection = vue.computed(() => {
@@ -2750,7 +2752,7 @@
2750
2752
  } : void 0;
2751
2753
  return vue.createVNode("i", {
2752
2754
  "style": style,
2753
- "class": bem$1c("indicator", {
2755
+ "class": bem$1g("indicator", {
2754
2756
  active
2755
2757
  })
2756
2758
  }, null);
@@ -2764,7 +2766,7 @@
2764
2766
  }
2765
2767
  if (props.showIndicators && count.value > 1) {
2766
2768
  return vue.createVNode("div", {
2767
- "class": bem$1c("indicators", {
2769
+ "class": bem$1g("indicators", {
2768
2770
  vertical: props.vertical
2769
2771
  })
2770
2772
  }, [Array(count.value).fill("").map(renderDot)]);
@@ -2806,11 +2808,11 @@
2806
2808
  var _a;
2807
2809
  return vue.createVNode("div", {
2808
2810
  "ref": root,
2809
- "class": bem$1c()
2811
+ "class": bem$1g()
2810
2812
  }, [vue.createVNode("div", {
2811
2813
  "ref": track,
2812
2814
  "style": trackStyle.value,
2813
- "class": bem$1c("track", {
2815
+ "class": bem$1g("track", {
2814
2816
  vertical: props.vertical
2815
2817
  }),
2816
2818
  "onTouchstartPassive": onTouchStart,
@@ -2820,10 +2822,10 @@
2820
2822
  };
2821
2823
  }
2822
2824
  });
2823
- const Swipe = withInstall(stdin_default$1o);
2824
- const [name$1f, bem$1b] = createNamespace("tabs");
2825
- var stdin_default$1n = vue.defineComponent({
2826
- name: name$1f,
2825
+ const Swipe = withInstall(stdin_default$1s);
2826
+ const [name$1j, bem$1f] = createNamespace("tabs");
2827
+ var stdin_default$1r = vue.defineComponent({
2828
+ name: name$1j,
2827
2829
  props: {
2828
2830
  count: makeRequiredProp(Number),
2829
2831
  inited: Boolean,
@@ -2847,7 +2849,7 @@
2847
2849
  return vue.createVNode(Swipe, {
2848
2850
  "ref": swipeRef,
2849
2851
  "loop": false,
2850
- "class": bem$1b("track"),
2852
+ "class": bem$1f("track"),
2851
2853
  "duration": +props.duration * 1e3,
2852
2854
  "touchable": props.swipeable,
2853
2855
  "lazyRender": props.lazyRender,
@@ -2875,13 +2877,13 @@
2875
2877
  swipeRef
2876
2878
  });
2877
2879
  return () => vue.createVNode("div", {
2878
- "class": bem$1b("content", {
2880
+ "class": bem$1f("content", {
2879
2881
  animated: props.animated || props.swipeable
2880
2882
  })
2881
2883
  }, [renderChildren()]);
2882
2884
  }
2883
2885
  });
2884
- const [name$1e, bem$1a] = createNamespace("tabs");
2886
+ const [name$1i, bem$1e] = createNamespace("tabs");
2885
2887
  const tabsProps = {
2886
2888
  type: makeStringProp("line"),
2887
2889
  color: String,
@@ -2904,9 +2906,9 @@
2904
2906
  titleActiveColor: String,
2905
2907
  titleInactiveColor: String
2906
2908
  };
2907
- const TABS_KEY = Symbol(name$1e);
2908
- var stdin_default$1m = vue.defineComponent({
2909
- name: name$1e,
2909
+ const TABS_KEY = Symbol(name$1i);
2910
+ var stdin_default$1q = vue.defineComponent({
2911
+ name: name$1i,
2910
2912
  props: tabsProps,
2911
2913
  emits: ["change", "scroll", "rendered", "clickTab", "update:active"],
2912
2914
  setup(props, {
@@ -3095,7 +3097,7 @@
3095
3097
  setCurrentIndex(index);
3096
3098
  }
3097
3099
  };
3098
- const renderNav = () => children.map((item, index) => vue.createVNode(stdin_default$1p, vue.mergeProps({
3100
+ const renderNav = () => children.map((item, index) => vue.createVNode(stdin_default$1t, vue.mergeProps({
3099
3101
  "key": item.id,
3100
3102
  "id": `${id}-${index}`,
3101
3103
  "ref": setTitleRefs(index),
@@ -3116,7 +3118,7 @@
3116
3118
  const renderLine = () => {
3117
3119
  if (props.type === "line" && children.length) {
3118
3120
  return vue.createVNode("div", {
3119
- "class": bem$1a("line"),
3121
+ "class": bem$1e("line"),
3120
3122
  "style": state.lineStyle
3121
3123
  }, null);
3122
3124
  }
@@ -3130,13 +3132,13 @@
3130
3132
  } = props;
3131
3133
  const Header = [vue.createVNode("div", {
3132
3134
  "ref": sticky ? void 0 : wrapRef,
3133
- "class": [bem$1a("wrap"), {
3135
+ "class": [bem$1e("wrap"), {
3134
3136
  [BORDER_TOP_BOTTOM]: type === "line" && border
3135
3137
  }]
3136
3138
  }, [vue.createVNode("div", {
3137
3139
  "ref": navRef,
3138
3140
  "role": "tablist",
3139
- "class": bem$1a("nav", [type, {
3141
+ "class": bem$1e("nav", [type, {
3140
3142
  shrink: props.shrink,
3141
3143
  complete: scrollable.value
3142
3144
  }]),
@@ -3204,14 +3206,14 @@
3204
3206
  });
3205
3207
  return () => vue.createVNode("div", {
3206
3208
  "ref": root,
3207
- "class": bem$1a([props.type])
3209
+ "class": bem$1e([props.type])
3208
3210
  }, [props.sticky ? vue.createVNode(Sticky, {
3209
3211
  "container": root.value,
3210
3212
  "offsetTop": offsetTopPx.value,
3211
3213
  "onScroll": onStickyScroll
3212
3214
  }, {
3213
3215
  default: () => [renderHeader()]
3214
- }) : renderHeader(), vue.createVNode(stdin_default$1n, {
3216
+ }) : renderHeader(), vue.createVNode(stdin_default$1r, {
3215
3217
  "ref": contentRef,
3216
3218
  "count": children.length,
3217
3219
  "inited": state.inited,
@@ -3231,9 +3233,9 @@
3231
3233
  });
3232
3234
  const TAB_STATUS_KEY = Symbol();
3233
3235
  const useTabStatus = () => vue.inject(TAB_STATUS_KEY, null);
3234
- const [name$1d, bem$19] = createNamespace("swipe-item");
3235
- var stdin_default$1l = vue.defineComponent({
3236
- name: name$1d,
3236
+ const [name$1h, bem$1d] = createNamespace("swipe-item");
3237
+ var stdin_default$1p = vue.defineComponent({
3238
+ name: name$1h,
3237
3239
  setup(props, {
3238
3240
  slots
3239
3241
  }) {
@@ -3295,14 +3297,14 @@
3295
3297
  return () => {
3296
3298
  var _a;
3297
3299
  return vue.createVNode("div", {
3298
- "class": bem$19(),
3300
+ "class": bem$1d(),
3299
3301
  "style": style.value
3300
3302
  }, [shouldRender.value ? (_a = slots.default) == null ? void 0 : _a.call(slots) : null]);
3301
3303
  };
3302
3304
  }
3303
3305
  });
3304
- const SwipeItem = withInstall(stdin_default$1l);
3305
- const [name$1c, bem$18] = createNamespace("tab");
3306
+ const SwipeItem = withInstall(stdin_default$1p);
3307
+ const [name$1g, bem$1c] = createNamespace("tab");
3306
3308
  const tabProps = extend({}, routeProps, {
3307
3309
  dot: Boolean,
3308
3310
  name: numericProp,
@@ -3313,8 +3315,8 @@
3313
3315
  titleStyle: [String, Object],
3314
3316
  showZeroBadge: truthProp
3315
3317
  });
3316
- var stdin_default$1k = vue.defineComponent({
3317
- name: name$1c,
3318
+ var stdin_default$1o = vue.defineComponent({
3319
+ name: name$1g,
3318
3320
  props: tabProps,
3319
3321
  setup(props, {
3320
3322
  slots
@@ -3379,7 +3381,7 @@
3379
3381
  return vue.createVNode(SwipeItem, {
3380
3382
  "id": id,
3381
3383
  "role": "tabpanel",
3382
- "class": bem$18("panel-wrapper", {
3384
+ "class": bem$1c("panel-wrapper", {
3383
3385
  inactive: hasInactiveClass.value
3384
3386
  }),
3385
3387
  "tabindex": active.value ? 0 : -1,
@@ -3389,7 +3391,7 @@
3389
3391
  default: () => {
3390
3392
  var _a2;
3391
3393
  return [vue.createVNode("div", {
3392
- "class": bem$18("panel")
3394
+ "class": bem$1c("panel")
3393
3395
  }, [(_a2 = slots.default) == null ? void 0 : _a2.call(slots)])];
3394
3396
  }
3395
3397
  });
@@ -3402,22 +3404,22 @@
3402
3404
  return vue.withDirectives(vue.createVNode("div", {
3403
3405
  "id": id,
3404
3406
  "role": "tabpanel",
3405
- "class": bem$18("panel"),
3407
+ "class": bem$1c("panel"),
3406
3408
  "tabindex": show ? 0 : -1,
3407
3409
  "aria-labelledby": label
3408
3410
  }, [Content]), [[vue.vShow, show]]);
3409
3411
  };
3410
3412
  }
3411
3413
  });
3412
- const Tab = withInstall(stdin_default$1k);
3413
- const Tabs = withInstall(stdin_default$1m);
3414
- const [name$1b, bem$17] = createNamespace("picker-group");
3415
- const PICKER_GROUP_KEY = Symbol(name$1b);
3414
+ const Tab = withInstall(stdin_default$1o);
3415
+ const Tabs = withInstall(stdin_default$1q);
3416
+ const [name$1f, bem$1b] = createNamespace("picker-group");
3417
+ const PICKER_GROUP_KEY = Symbol(name$1f);
3416
3418
  const pickerGroupProps = extend({
3417
3419
  tabs: makeArrayProp()
3418
3420
  }, pickerToolbarProps);
3419
- var stdin_default$1j = vue.defineComponent({
3420
- name: name$1b,
3421
+ var stdin_default$1n = vue.defineComponent({
3422
+ name: name$1f,
3421
3423
  props: pickerGroupProps,
3422
3424
  emits: ["confirm", "cancel"],
3423
3425
  setup(props, {
@@ -3437,18 +3439,18 @@
3437
3439
  var _a;
3438
3440
  const childNodes = (_a = slots.default) == null ? void 0 : _a.call(slots);
3439
3441
  return vue.createVNode("div", {
3440
- "class": bem$17()
3441
- }, [vue.createVNode(stdin_default$1r, vue.mergeProps(props, {
3442
+ "class": bem$1b()
3443
+ }, [vue.createVNode(stdin_default$1v, vue.mergeProps(props, {
3442
3444
  "onConfirm": onConfirm,
3443
3445
  "onCancel": onCancel
3444
3446
  }), null), vue.createVNode(Tabs, {
3445
3447
  "shrink": true,
3446
- "class": bem$17("tabs"),
3448
+ "class": bem$1b("tabs"),
3447
3449
  "animated": true
3448
3450
  }, {
3449
3451
  default: () => [props.tabs.map((title, index) => vue.createVNode(Tab, {
3450
3452
  "title": title,
3451
- "titleClass": bem$17("tab-title")
3453
+ "titleClass": bem$1b("tab-title")
3452
3454
  }, {
3453
3455
  default: () => [childNodes == null ? void 0 : childNodes[index]]
3454
3456
  }))]
@@ -3471,8 +3473,8 @@
3471
3473
  toolbarPosition: makeStringProp("top"),
3472
3474
  columnsFieldNames: Object
3473
3475
  });
3474
- var stdin_default$1i = vue.defineComponent({
3475
- name: name$1l,
3476
+ var stdin_default$1m = vue.defineComponent({
3477
+ name: name$1p,
3476
3478
  props: pickerProps,
3477
3479
  emits: ["confirm", "cancel", "change", "clickOption", "update:modelValue"],
3478
3480
  setup(props, {
@@ -3539,11 +3541,13 @@
3539
3541
  const confirm = () => {
3540
3542
  children.forEach((child) => child.stopMomentum());
3541
3543
  const params = getEventParams();
3542
- emit("confirm", params);
3544
+ vue.nextTick(() => {
3545
+ emit("confirm", params);
3546
+ });
3543
3547
  return params;
3544
3548
  };
3545
3549
  const cancel = () => emit("cancel", getEventParams());
3546
- const renderColumnItems = () => currentColumns.value.map((options, columnIndex) => vue.createVNode(stdin_default$1s, {
3550
+ const renderColumnItems = () => currentColumns.value.map((options, columnIndex) => vue.createVNode(stdin_default$1w, {
3547
3551
  "value": selectedValues.value[columnIndex],
3548
3552
  "fields": fields.value,
3549
3553
  "options": options,
@@ -3566,10 +3570,10 @@
3566
3570
  backgroundSize: `100% ${(wrapHeight - optionHeight.value) / 2}px`
3567
3571
  };
3568
3572
  return [vue.createVNode("div", {
3569
- "class": bem$1g("mask"),
3573
+ "class": bem$1k("mask"),
3570
3574
  "style": maskStyle
3571
3575
  }, null), vue.createVNode("div", {
3572
- "class": [BORDER_UNSET_TOP_BOTTOM, bem$1g("frame")],
3576
+ "class": [BORDER_UNSET_TOP_BOTTOM, bem$1k("frame")],
3573
3577
  "style": frameStyle
3574
3578
  }, null)];
3575
3579
  }
@@ -3581,13 +3585,13 @@
3581
3585
  };
3582
3586
  return vue.createVNode("div", {
3583
3587
  "ref": columnsRef,
3584
- "class": bem$1g("columns"),
3588
+ "class": bem$1k("columns"),
3585
3589
  "style": columnsStyle
3586
3590
  }, [renderColumnItems(), renderMask(wrapHeight)]);
3587
3591
  };
3588
3592
  const renderToolbar = () => {
3589
3593
  if (props.showToolbar && !parent) {
3590
- return vue.createVNode(stdin_default$1r, vue.mergeProps(pick(props, pickerToolbarPropKeys), {
3594
+ return vue.createVNode(stdin_default$1v, vue.mergeProps(pick(props, pickerToolbarPropKeys), {
3591
3595
  "onConfirm": confirm,
3592
3596
  "onCancel": cancel
3593
3597
  }), pick(slots, pickerToolbarSlots));
@@ -3629,9 +3633,9 @@
3629
3633
  return () => {
3630
3634
  var _a, _b;
3631
3635
  return vue.createVNode("div", {
3632
- "class": bem$1g()
3636
+ "class": bem$1k()
3633
3637
  }, [props.toolbarPosition === "top" ? renderToolbar() : null, props.loading ? vue.createVNode(Loading, {
3634
- "class": bem$1g("loading")
3638
+ "class": bem$1k("loading")
3635
3639
  }, null) : null, (_a = slots["columns-top"]) == null ? void 0 : _a.call(slots), renderColumns(), (_b = slots["columns-bottom"]) == null ? void 0 : _b.call(slots), props.toolbarPosition === "bottom" ? renderToolbar() : null]);
3636
3640
  };
3637
3641
  }
@@ -3722,8 +3726,8 @@
3722
3726
  }
3723
3727
  return options;
3724
3728
  }
3725
- const Picker = withInstall(stdin_default$1i);
3726
- const [name$1a, bem$16] = createNamespace("area");
3729
+ const Picker = withInstall(stdin_default$1m);
3730
+ const [name$1e, bem$1a] = createNamespace("area");
3727
3731
  const areaProps = extend({}, pickerSharedProps, {
3728
3732
  modelValue: String,
3729
3733
  columnsNum: makeNumericProp(3),
@@ -3733,8 +3737,8 @@
3733
3737
  default: () => ({})
3734
3738
  }
3735
3739
  });
3736
- var stdin_default$1h = vue.defineComponent({
3737
- name: name$1a,
3740
+ var stdin_default$1l = vue.defineComponent({
3741
+ name: name$1e,
3738
3742
  props: areaProps,
3739
3743
  emits: ["change", "confirm", "cancel", "update:modelValue"],
3740
3744
  setup(props, {
@@ -3781,7 +3785,7 @@
3781
3785
  "ref": picker,
3782
3786
  "modelValue": codes.value,
3783
3787
  "onUpdate:modelValue": ($event) => codes.value = $event,
3784
- "class": bem$16(),
3788
+ "class": bem$1a(),
3785
3789
  "columns": columns.value,
3786
3790
  "onChange": onChange,
3787
3791
  "onCancel": onCancel,
@@ -3789,9 +3793,10 @@
3789
3793
  }, pick(props, INHERIT_PROPS)), pick(slots, INHERIT_SLOTS));
3790
3794
  }
3791
3795
  });
3792
- const Area = withInstall(stdin_default$1h);
3793
- const [name$19, bem$15] = createNamespace("cell");
3796
+ const Area = withInstall(stdin_default$1l);
3797
+ const [name$1d, bem$19] = createNamespace("cell");
3794
3798
  const cellSharedProps = {
3799
+ tag: makeStringProp("div"),
3795
3800
  icon: String,
3796
3801
  size: String,
3797
3802
  title: numericProp,
@@ -3813,8 +3818,8 @@
3813
3818
  }
3814
3819
  };
3815
3820
  const cellProps = extend({}, cellSharedProps, routeProps);
3816
- var stdin_default$1g = vue.defineComponent({
3817
- name: name$19,
3821
+ var stdin_default$1k = vue.defineComponent({
3822
+ name: name$1d,
3818
3823
  props: cellProps,
3819
3824
  setup(props, {
3820
3825
  slots
@@ -3824,14 +3829,14 @@
3824
3829
  const showLabel = slots.label || isDef(props.label);
3825
3830
  if (showLabel) {
3826
3831
  return vue.createVNode("div", {
3827
- "class": [bem$15("label"), props.labelClass]
3832
+ "class": [bem$19("label"), props.labelClass]
3828
3833
  }, [slots.label ? slots.label() : props.label]);
3829
3834
  }
3830
3835
  };
3831
3836
  const renderTitle = () => {
3832
3837
  if (slots.title || isDef(props.title)) {
3833
3838
  return vue.createVNode("div", {
3834
- "class": [bem$15("title"), props.titleClass],
3839
+ "class": [bem$19("title"), props.titleClass],
3835
3840
  "style": props.titleStyle
3836
3841
  }, [slots.title ? slots.title() : vue.createVNode("span", null, [props.title]), renderLabel()]);
3837
3842
  }
@@ -3841,7 +3846,7 @@
3841
3846
  const hasValue = slot || isDef(props.value);
3842
3847
  if (hasValue) {
3843
3848
  return vue.createVNode("div", {
3844
- "class": [bem$15("value"), props.valueClass]
3849
+ "class": [bem$19("value"), props.valueClass]
3845
3850
  }, [slot ? slot() : vue.createVNode("span", null, [props.value])]);
3846
3851
  }
3847
3852
  };
@@ -3852,7 +3857,7 @@
3852
3857
  if (props.icon) {
3853
3858
  return vue.createVNode(Icon, {
3854
3859
  "name": props.icon,
3855
- "class": bem$15("left-icon"),
3860
+ "class": bem$19("left-icon"),
3856
3861
  "classPrefix": props.iconPrefix
3857
3862
  }, null);
3858
3863
  }
@@ -3865,13 +3870,14 @@
3865
3870
  const name2 = props.arrowDirection ? `arrow-${props.arrowDirection}` : "arrow";
3866
3871
  return vue.createVNode(Icon, {
3867
3872
  "name": name2,
3868
- "class": bem$15("right-icon")
3873
+ "class": bem$19("right-icon")
3869
3874
  }, null);
3870
3875
  }
3871
3876
  };
3872
3877
  return () => {
3873
- var _a, _b;
3878
+ var _a;
3874
3879
  const {
3880
+ tag,
3875
3881
  size,
3876
3882
  center,
3877
3883
  border,
@@ -3888,17 +3894,22 @@
3888
3894
  if (size) {
3889
3895
  classes[size] = !!size;
3890
3896
  }
3891
- return vue.createVNode("div", {
3892
- "class": bem$15(classes),
3897
+ return vue.createVNode(tag, {
3898
+ "class": bem$19(classes),
3893
3899
  "role": clickable ? "button" : void 0,
3894
3900
  "tabindex": clickable ? 0 : void 0,
3895
3901
  "onClick": route2
3896
- }, [renderLeftIcon(), renderTitle(), renderValue(), renderRightIcon(), (_b = slots.extra) == null ? void 0 : _b.call(slots)]);
3902
+ }, {
3903
+ default: () => {
3904
+ var _a2;
3905
+ return [renderLeftIcon(), renderTitle(), renderValue(), renderRightIcon(), (_a2 = slots.extra) == null ? void 0 : _a2.call(slots)];
3906
+ }
3907
+ });
3897
3908
  };
3898
3909
  }
3899
3910
  });
3900
- const Cell = withInstall(stdin_default$1g);
3901
- const [name$18, bem$14] = createNamespace("form");
3911
+ const Cell = withInstall(stdin_default$1k);
3912
+ const [name$1c, bem$18] = createNamespace("form");
3902
3913
  const formProps = {
3903
3914
  colon: Boolean,
3904
3915
  disabled: Boolean,
@@ -3917,8 +3928,8 @@
3917
3928
  default: "onBlur"
3918
3929
  }
3919
3930
  };
3920
- var stdin_default$1f = vue.defineComponent({
3921
- name: name$18,
3931
+ var stdin_default$1j = vue.defineComponent({
3932
+ name: name$1c,
3922
3933
  props: formProps,
3923
3934
  emits: ["submit", "failed"],
3924
3935
  setup(props, {
@@ -4042,13 +4053,13 @@
4042
4053
  return () => {
4043
4054
  var _a;
4044
4055
  return vue.createVNode("form", {
4045
- "class": bem$14(),
4056
+ "class": bem$18(),
4046
4057
  "onSubmit": onSubmit
4047
4058
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
4048
4059
  };
4049
4060
  }
4050
4061
  });
4051
- const Form = withInstall(stdin_default$1f);
4062
+ const Form = withInstall(stdin_default$1j);
4052
4063
  function isEmptyValue(value) {
4053
4064
  if (Array.isArray(value)) {
4054
4065
  return !value.length;
@@ -4137,7 +4148,7 @@
4137
4148
  function cutString(str, maxlength) {
4138
4149
  return [...str].slice(0, maxlength).join("");
4139
4150
  }
4140
- const [name$17, bem$13] = createNamespace("field");
4151
+ const [name$1b, bem$17] = createNamespace("field");
4141
4152
  const fieldSharedProps = {
4142
4153
  id: String,
4143
4154
  name: String,
@@ -4184,8 +4195,8 @@
4184
4195
  default: null
4185
4196
  }
4186
4197
  });
4187
- var stdin_default$1e = vue.defineComponent({
4188
- name: name$17,
4198
+ var stdin_default$1i = vue.defineComponent({
4199
+ name: name$1b,
4189
4200
  props: fieldProps,
4190
4201
  emits: ["blur", "focus", "clear", "keypress", "clickInput", "endValidate", "startValidate", "clickLeftIcon", "clickRightIcon", "update:modelValue"],
4191
4202
  setup(props, {
@@ -4414,7 +4425,7 @@
4414
4425
  const getInputId = () => props.id || `${id}-input`;
4415
4426
  const getValidationStatus = () => state.status;
4416
4427
  const renderInput = () => {
4417
- const controlClass = bem$13("control", [getProp("inputAlign"), {
4428
+ const controlClass = bem$17("control", [getProp("inputAlign"), {
4418
4429
  error: showError.value,
4419
4430
  custom: !!slots.input,
4420
4431
  "min-height": props.type === "textarea" && !props.autosize
@@ -4456,7 +4467,7 @@
4456
4467
  const leftIconSlot = slots["left-icon"];
4457
4468
  if (props.leftIcon || leftIconSlot) {
4458
4469
  return vue.createVNode("div", {
4459
- "class": bem$13("left-icon"),
4470
+ "class": bem$17("left-icon"),
4460
4471
  "onClick": onClickLeftIcon
4461
4472
  }, [leftIconSlot ? leftIconSlot() : vue.createVNode(Icon, {
4462
4473
  "name": props.leftIcon,
@@ -4468,7 +4479,7 @@
4468
4479
  const rightIconSlot = slots["right-icon"];
4469
4480
  if (props.rightIcon || rightIconSlot) {
4470
4481
  return vue.createVNode("div", {
4471
- "class": bem$13("right-icon"),
4482
+ "class": bem$17("right-icon"),
4472
4483
  "onClick": onClickRightIcon
4473
4484
  }, [rightIconSlot ? rightIconSlot() : vue.createVNode(Icon, {
4474
4485
  "name": props.rightIcon,
@@ -4480,9 +4491,9 @@
4480
4491
  if (props.showWordLimit && props.maxlength) {
4481
4492
  const count = getStringLength(getModelValue());
4482
4493
  return vue.createVNode("div", {
4483
- "class": bem$13("word-limit")
4494
+ "class": bem$17("word-limit")
4484
4495
  }, [vue.createVNode("span", {
4485
- "class": bem$13("word-num")
4496
+ "class": bem$17("word-num")
4486
4497
  }, [count]), vue.createTextVNode("/"), props.maxlength]);
4487
4498
  }
4488
4499
  };
@@ -4495,7 +4506,7 @@
4495
4506
  const slot = slots["error-message"];
4496
4507
  const errorMessageAlign = getProp("errorMessageAlign");
4497
4508
  return vue.createVNode("div", {
4498
- "class": bem$13("error-message", errorMessageAlign)
4509
+ "class": bem$17("error-message", errorMessageAlign)
4499
4510
  }, [slot ? slot({
4500
4511
  message
4501
4512
  }) : message]);
@@ -4514,13 +4525,13 @@
4514
4525
  }
4515
4526
  };
4516
4527
  const renderFieldBody = () => [vue.createVNode("div", {
4517
- "class": bem$13("body")
4528
+ "class": bem$17("body")
4518
4529
  }, [renderInput(), showClear.value && vue.createVNode(Icon, {
4519
4530
  "ref": clearIconRef,
4520
4531
  "name": props.clearIcon,
4521
- "class": bem$13("clear")
4532
+ "class": bem$17("clear")
4522
4533
  }, null), renderRightIcon(), slots.button && vue.createVNode("div", {
4523
- "class": bem$13("button")
4534
+ "class": bem$17("button")
4524
4535
  }, [slots.button()])]), renderWordLimit(), renderMessage()];
4525
4536
  useExpose({
4526
4537
  blur,
@@ -4559,7 +4570,7 @@
4559
4570
  const renderTitle = () => labelAlign === "top" ? [LeftIcon, Label] : Label;
4560
4571
  return vue.createVNode(Cell, {
4561
4572
  "size": props.size,
4562
- "class": bem$13({
4573
+ "class": bem$17({
4563
4574
  error: showError.value,
4564
4575
  disabled,
4565
4576
  [`label-${labelAlign}`]: labelAlign
@@ -4569,8 +4580,8 @@
4569
4580
  "isLink": props.isLink,
4570
4581
  "clickable": props.clickable,
4571
4582
  "titleStyle": labelStyle.value,
4572
- "valueClass": bem$13("value"),
4573
- "titleClass": [bem$13("label", [labelAlign, {
4583
+ "valueClass": bem$17("value"),
4584
+ "titleClass": [bem$17("label", [labelAlign, {
4574
4585
  required: props.required
4575
4586
  }]), props.labelClass],
4576
4587
  "arrowDirection": props.arrowDirection
@@ -4583,7 +4594,7 @@
4583
4594
  };
4584
4595
  }
4585
4596
  });
4586
- const Field = withInstall(stdin_default$1e);
4597
+ const Field = withInstall(stdin_default$1i);
4587
4598
  let lockCount = 0;
4588
4599
  function lockClick(lock) {
4589
4600
  if (lock) {
@@ -4598,7 +4609,7 @@
4598
4609
  }
4599
4610
  }
4600
4611
  }
4601
- const [name$16, bem$12] = createNamespace("toast");
4612
+ const [name$1a, bem$16] = createNamespace("toast");
4602
4613
  const popupInheritProps = ["show", "overlay", "teleport", "transition", "overlayClass", "overlayStyle", "closeOnClickOverlay"];
4603
4614
  const toastProps = {
4604
4615
  icon: String,
@@ -4610,6 +4621,7 @@
4610
4621
  duration: makeNumberProp(2e3),
4611
4622
  position: makeStringProp("middle"),
4612
4623
  teleport: [String, Object],
4624
+ wordBreak: String,
4613
4625
  className: unknownProp,
4614
4626
  iconPrefix: String,
4615
4627
  transition: makeStringProp("van-fade"),
@@ -4620,8 +4632,8 @@
4620
4632
  closeOnClick: Boolean,
4621
4633
  closeOnClickOverlay: Boolean
4622
4634
  };
4623
- var stdin_default$1d = vue.defineComponent({
4624
- name: name$16,
4635
+ var stdin_default$1h = vue.defineComponent({
4636
+ name: name$1a,
4625
4637
  props: toastProps,
4626
4638
  emits: ["update:show"],
4627
4639
  setup(props, {
@@ -4657,13 +4669,13 @@
4657
4669
  return vue.createVNode(Icon, {
4658
4670
  "name": icon || type,
4659
4671
  "size": iconSize,
4660
- "class": bem$12("icon"),
4672
+ "class": bem$16("icon"),
4661
4673
  "classPrefix": iconPrefix
4662
4674
  }, null);
4663
4675
  }
4664
4676
  if (type === "loading") {
4665
4677
  return vue.createVNode(Loading, {
4666
- "class": bem$12("loading"),
4678
+ "class": bem$16("loading"),
4667
4679
  "size": iconSize,
4668
4680
  "type": loadingType
4669
4681
  }, null);
@@ -4676,16 +4688,16 @@
4676
4688
  } = props;
4677
4689
  if (slots.message) {
4678
4690
  return vue.createVNode("div", {
4679
- "class": bem$12("text")
4691
+ "class": bem$16("text")
4680
4692
  }, [slots.message()]);
4681
4693
  }
4682
4694
  if (isDef(message) && message !== "") {
4683
4695
  return type === "html" ? vue.createVNode("div", {
4684
4696
  "key": 0,
4685
- "class": bem$12("text"),
4697
+ "class": bem$16("text"),
4686
4698
  "innerHTML": String(message)
4687
4699
  }, null) : vue.createVNode("div", {
4688
- "class": bem$12("text")
4700
+ "class": bem$16("text")
4689
4701
  }, [message]);
4690
4702
  }
4691
4703
  };
@@ -4701,7 +4713,7 @@
4701
4713
  vue.onMounted(toggleClickable);
4702
4714
  vue.onUnmounted(toggleClickable);
4703
4715
  return () => vue.createVNode(Popup, vue.mergeProps({
4704
- "class": [bem$12([props.position, {
4716
+ "class": [bem$16([props.position, props.wordBreak === "normal" ? "break-normal" : props.wordBreak, {
4705
4717
  [props.type]: !props.icon
4706
4718
  }]), props.className],
4707
4719
  "lockScroll": false,
@@ -4802,7 +4814,7 @@
4802
4814
  onClosed,
4803
4815
  "onUpdate:show": toggle
4804
4816
  };
4805
- return vue.createVNode(stdin_default$1d, vue.mergeProps(state, attrs), null);
4817
+ return vue.createVNode(stdin_default$1h, vue.mergeProps(state, attrs), null);
4806
4818
  };
4807
4819
  vue.watch(message, (val) => {
4808
4820
  state.message = val;
@@ -4872,8 +4884,8 @@
4872
4884
  const allowMultipleToast = (value = true) => {
4873
4885
  allowMultiple = value;
4874
4886
  };
4875
- const Toast = withInstall(stdin_default$1d);
4876
- const [name$15, bem$11] = createNamespace("switch");
4887
+ const Toast = withInstall(stdin_default$1h);
4888
+ const [name$19, bem$15] = createNamespace("switch");
4877
4889
  const switchProps = {
4878
4890
  size: numericProp,
4879
4891
  loading: Boolean,
@@ -4890,8 +4902,8 @@
4890
4902
  default: false
4891
4903
  }
4892
4904
  };
4893
- var stdin_default$1c = vue.defineComponent({
4894
- name: name$15,
4905
+ var stdin_default$1g = vue.defineComponent({
4906
+ name: name$19,
4895
4907
  props: switchProps,
4896
4908
  emits: ["change", "update:modelValue"],
4897
4909
  setup(props, {
@@ -4910,7 +4922,7 @@
4910
4922
  if (props.loading) {
4911
4923
  const color = isChecked() ? props.activeColor : props.inactiveColor;
4912
4924
  return vue.createVNode(Loading, {
4913
- "class": bem$11("loading"),
4925
+ "class": bem$15("loading"),
4914
4926
  "color": color
4915
4927
  }, null);
4916
4928
  }
@@ -4935,7 +4947,7 @@
4935
4947
  };
4936
4948
  return vue.createVNode("div", {
4937
4949
  "role": "switch",
4938
- "class": bem$11({
4950
+ "class": bem$15({
4939
4951
  on: checked,
4940
4952
  loading,
4941
4953
  disabled
@@ -4945,16 +4957,16 @@
4945
4957
  "aria-checked": checked,
4946
4958
  "onClick": onClick
4947
4959
  }, [vue.createVNode("div", {
4948
- "class": bem$11("node")
4960
+ "class": bem$15("node")
4949
4961
  }, [renderLoading()]), (_a = slots.background) == null ? void 0 : _a.call(slots)]);
4950
4962
  };
4951
4963
  }
4952
4964
  });
4953
- const Switch = withInstall(stdin_default$1c);
4954
- const [name$14, bem$10] = createNamespace("address-edit-detail");
4965
+ const Switch = withInstall(stdin_default$1g);
4966
+ const [name$18, bem$14] = createNamespace("address-edit-detail");
4955
4967
  const t$i = createNamespace("address-edit")[2];
4956
- var stdin_default$1b = vue.defineComponent({
4957
- name: name$14,
4968
+ var stdin_default$1f = vue.defineComponent({
4969
+ name: name$18,
4958
4970
  props: {
4959
4971
  show: Boolean,
4960
4972
  rows: numericProp,
@@ -4988,7 +5000,7 @@
4988
5000
  "icon": "location-o",
4989
5001
  "title": express.name,
4990
5002
  "label": express.address,
4991
- "class": bem$10("search-item"),
5003
+ "class": bem$14("search-item"),
4992
5004
  "border": false,
4993
5005
  "onClick": () => onSelect(express)
4994
5006
  }, null));
@@ -5002,7 +5014,7 @@
5002
5014
  "autosize": true,
5003
5015
  "clearable": true,
5004
5016
  "ref": field,
5005
- "class": bem$10(),
5017
+ "class": bem$14(),
5006
5018
  "rows": props.rows,
5007
5019
  "type": "textarea",
5008
5020
  "rules": props.rules,
@@ -5019,7 +5031,7 @@
5019
5031
  };
5020
5032
  }
5021
5033
  });
5022
- const [name$13, bem$$, t$h] = createNamespace("address-edit");
5034
+ const [name$17, bem$13, t$h] = createNamespace("address-edit");
5023
5035
  const DEFAULT_DATA = {
5024
5036
  name: "",
5025
5037
  tel: "",
@@ -5059,8 +5071,8 @@
5059
5071
  default: isMobile
5060
5072
  }
5061
5073
  };
5062
- var stdin_default$1a = vue.defineComponent({
5063
- name: name$13,
5074
+ var stdin_default$1e = vue.defineComponent({
5075
+ name: name$17,
5064
5076
  props: addressEditProps,
5065
5077
  emits: ["save", "focus", "delete", "clickArea", "changeArea", "changeDetail", "selectSearch", "changeDefault"],
5066
5078
  setup(props, {
@@ -5171,7 +5183,7 @@
5171
5183
  return vue.withDirectives(vue.createVNode(Cell, {
5172
5184
  "center": true,
5173
5185
  "title": t$h("defaultAddress"),
5174
- "class": bem$$("default")
5186
+ "class": bem$13("default")
5175
5187
  }, slots2), [[vue.vShow, !hideBottomFields.value]]);
5176
5188
  }
5177
5189
  };
@@ -5197,13 +5209,13 @@
5197
5209
  disableArea
5198
5210
  } = props;
5199
5211
  return vue.createVNode(Form, {
5200
- "class": bem$$(),
5212
+ "class": bem$13(),
5201
5213
  "onSubmit": onSave
5202
5214
  }, {
5203
5215
  default: () => {
5204
5216
  var _a;
5205
5217
  return [vue.createVNode("div", {
5206
- "class": bem$$("fields")
5218
+ "class": bem$13("fields")
5207
5219
  }, [vue.createVNode(Field, {
5208
5220
  "modelValue": data.name,
5209
5221
  "onUpdate:modelValue": ($event) => data.name = $event,
@@ -5234,7 +5246,7 @@
5234
5246
  emit("clickArea");
5235
5247
  showAreaPopup.value = !disableArea;
5236
5248
  }
5237
- }, null), [[vue.vShow, props.showArea]]), vue.createVNode(stdin_default$1b, {
5249
+ }, null), [[vue.vShow, props.showArea]]), vue.createVNode(stdin_default$1f, {
5238
5250
  "show": props.showDetail,
5239
5251
  "rows": props.detailRows,
5240
5252
  "rules": rules.value.addressDetail,
@@ -5248,19 +5260,19 @@
5248
5260
  "onInput": onChangeDetail,
5249
5261
  "onSelectSearch": (event) => emit("selectSearch", event)
5250
5262
  }, null), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderSetDefaultCell(), vue.withDirectives(vue.createVNode("div", {
5251
- "class": bem$$("buttons")
5263
+ "class": bem$13("buttons")
5252
5264
  }, [vue.createVNode(Button, {
5253
5265
  "block": true,
5254
5266
  "round": true,
5255
5267
  "type": "primary",
5256
5268
  "text": props.saveButtonText || t$h("save"),
5257
- "class": bem$$("button"),
5269
+ "class": bem$13("button"),
5258
5270
  "loading": props.isSaving,
5259
5271
  "nativeType": "submit"
5260
5272
  }, null), props.showDelete && vue.createVNode(Button, {
5261
5273
  "block": true,
5262
5274
  "round": true,
5263
- "class": bem$$("button"),
5275
+ "class": bem$13("button"),
5264
5276
  "loading": props.isDeleting,
5265
5277
  "text": props.deleteButtonText || t$h("delete"),
5266
5278
  "onClick": onDelete
@@ -5290,8 +5302,8 @@
5290
5302
  };
5291
5303
  }
5292
5304
  });
5293
- const AddressEdit = withInstall(stdin_default$1a);
5294
- const [name$12, bem$_] = createNamespace("radio-group");
5305
+ const AddressEdit = withInstall(stdin_default$1e);
5306
+ const [name$16, bem$12] = createNamespace("radio-group");
5295
5307
  const radioGroupProps = {
5296
5308
  disabled: Boolean,
5297
5309
  iconSize: numericProp,
@@ -5299,9 +5311,9 @@
5299
5311
  modelValue: unknownProp,
5300
5312
  checkedColor: String
5301
5313
  };
5302
- const RADIO_KEY = Symbol(name$12);
5303
- var stdin_default$19 = vue.defineComponent({
5304
- name: name$12,
5314
+ const RADIO_KEY = Symbol(name$16);
5315
+ var stdin_default$1d = vue.defineComponent({
5316
+ name: name$16,
5305
5317
  props: radioGroupProps,
5306
5318
  emits: ["change", "update:modelValue"],
5307
5319
  setup(props, {
@@ -5321,14 +5333,14 @@
5321
5333
  return () => {
5322
5334
  var _a;
5323
5335
  return vue.createVNode("div", {
5324
- "class": bem$_([props.direction]),
5336
+ "class": bem$12([props.direction]),
5325
5337
  "role": "radiogroup"
5326
5338
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
5327
5339
  };
5328
5340
  }
5329
5341
  });
5330
- const RadioGroup = withInstall(stdin_default$19);
5331
- const [name$11, bem$Z] = createNamespace("tag");
5342
+ const RadioGroup = withInstall(stdin_default$1d);
5343
+ const [name$15, bem$11] = createNamespace("tag");
5332
5344
  const tagProps = {
5333
5345
  size: String,
5334
5346
  mark: Boolean,
@@ -5340,8 +5352,8 @@
5340
5352
  textColor: String,
5341
5353
  closeable: Boolean
5342
5354
  };
5343
- var stdin_default$18 = vue.defineComponent({
5344
- name: name$11,
5355
+ var stdin_default$1c = vue.defineComponent({
5356
+ name: name$15,
5345
5357
  props: tagProps,
5346
5358
  emits: ["close"],
5347
5359
  setup(props, {
@@ -5384,12 +5396,12 @@
5384
5396
  }
5385
5397
  const CloseIcon = closeable && vue.createVNode(Icon, {
5386
5398
  "name": "cross",
5387
- "class": [bem$Z("close"), HAPTICS_FEEDBACK],
5399
+ "class": [bem$11("close"), HAPTICS_FEEDBACK],
5388
5400
  "onClick": onClose
5389
5401
  }, null);
5390
5402
  return vue.createVNode("span", {
5391
5403
  "style": getStyle(),
5392
- "class": bem$Z([classes, type])
5404
+ "class": bem$11([classes, type])
5393
5405
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots), CloseIcon]);
5394
5406
  };
5395
5407
  return () => vue.createVNode(vue.Transition, {
@@ -5399,7 +5411,7 @@
5399
5411
  });
5400
5412
  }
5401
5413
  });
5402
- const Tag = withInstall(stdin_default$18);
5414
+ const Tag = withInstall(stdin_default$1c);
5403
5415
  const checkerProps = {
5404
5416
  name: unknownProp,
5405
5417
  shape: makeStringProp("round"),
@@ -5410,7 +5422,7 @@
5410
5422
  labelPosition: String,
5411
5423
  labelDisabled: Boolean
5412
5424
  };
5413
- var stdin_default$17 = vue.defineComponent({
5425
+ var stdin_default$1b = vue.defineComponent({
5414
5426
  props: extend({}, checkerProps, {
5415
5427
  bem: makeRequiredProp(Function),
5416
5428
  role: String,
@@ -5500,9 +5512,9 @@
5500
5512
  }
5501
5513
  });
5502
5514
  const radioProps = checkerProps;
5503
- const [name$10, bem$Y] = createNamespace("radio");
5504
- var stdin_default$16 = vue.defineComponent({
5505
- name: name$10,
5515
+ const [name$14, bem$10] = createNamespace("radio");
5516
+ var stdin_default$1a = vue.defineComponent({
5517
+ name: name$14,
5506
5518
  props: checkerProps,
5507
5519
  emits: ["update:modelValue"],
5508
5520
  setup(props, {
@@ -5523,8 +5535,8 @@
5523
5535
  emit("update:modelValue", props.name);
5524
5536
  }
5525
5537
  };
5526
- return () => vue.createVNode(stdin_default$17, vue.mergeProps({
5527
- "bem": bem$Y,
5538
+ return () => vue.createVNode(stdin_default$1b, vue.mergeProps({
5539
+ "bem": bem$10,
5528
5540
  "role": "radio",
5529
5541
  "parent": parent,
5530
5542
  "checked": checked(),
@@ -5532,10 +5544,10 @@
5532
5544
  }, props), pick(slots, ["default", "icon"]));
5533
5545
  }
5534
5546
  });
5535
- const Radio = withInstall(stdin_default$16);
5536
- const [name$$, bem$X] = createNamespace("address-item");
5537
- var stdin_default$15 = vue.defineComponent({
5538
- name: name$$,
5547
+ const Radio = withInstall(stdin_default$1a);
5548
+ const [name$13, bem$$] = createNamespace("address-item");
5549
+ var stdin_default$19 = vue.defineComponent({
5550
+ name: name$13,
5539
5551
  props: {
5540
5552
  address: makeRequiredProp(Object),
5541
5553
  disabled: Boolean,
@@ -5555,7 +5567,7 @@
5555
5567
  };
5556
5568
  const renderRightIcon = () => vue.createVNode(Icon, {
5557
5569
  "name": "edit",
5558
- "class": bem$X("edit"),
5570
+ "class": bem$$("edit"),
5559
5571
  "onClick": (event) => {
5560
5572
  event.stopPropagation();
5561
5573
  emit("edit");
@@ -5570,7 +5582,7 @@
5570
5582
  return vue.createVNode(Tag, {
5571
5583
  "type": "primary",
5572
5584
  "round": true,
5573
- "class": bem$X("tag")
5585
+ "class": bem$$("tag")
5574
5586
  }, {
5575
5587
  default: () => [props.defaultTagText]
5576
5588
  });
@@ -5583,9 +5595,9 @@
5583
5595
  switchable
5584
5596
  } = props;
5585
5597
  const Info = [vue.createVNode("div", {
5586
- "class": bem$X("name")
5598
+ "class": bem$$("name")
5587
5599
  }, [`${address.name} ${address.tel}`, renderTag()]), vue.createVNode("div", {
5588
- "class": bem$X("address")
5600
+ "class": bem$$("address")
5589
5601
  }, [address.address])];
5590
5602
  if (switchable && !disabled) {
5591
5603
  return vue.createVNode(Radio, {
@@ -5603,13 +5615,13 @@
5603
5615
  disabled
5604
5616
  } = props;
5605
5617
  return vue.createVNode("div", {
5606
- "class": bem$X({
5618
+ "class": bem$$({
5607
5619
  disabled
5608
5620
  }),
5609
5621
  "onClick": onClick
5610
5622
  }, [vue.createVNode(Cell, {
5611
5623
  "border": false,
5612
- "titleClass": bem$X("title")
5624
+ "titleClass": bem$$("title")
5613
5625
  }, {
5614
5626
  title: renderContent,
5615
5627
  "right-icon": renderRightIcon
@@ -5619,7 +5631,7 @@
5619
5631
  };
5620
5632
  }
5621
5633
  });
5622
- const [name$_, bem$W, t$g] = createNamespace("address-list");
5634
+ const [name$12, bem$_, t$g] = createNamespace("address-list");
5623
5635
  const addressListProps = {
5624
5636
  list: makeArrayProp(),
5625
5637
  modelValue: numericProp,
@@ -5629,8 +5641,8 @@
5629
5641
  addButtonText: String,
5630
5642
  defaultTagText: String
5631
5643
  };
5632
- var stdin_default$14 = vue.defineComponent({
5633
- name: name$_,
5644
+ var stdin_default$18 = vue.defineComponent({
5645
+ name: name$12,
5634
5646
  props: addressListProps,
5635
5647
  emits: ["add", "edit", "select", "clickItem", "editDisabled", "selectDisabled", "update:modelValue"],
5636
5648
  setup(props, {
@@ -5646,7 +5658,7 @@
5646
5658
  emit("update:modelValue", item.id);
5647
5659
  }
5648
5660
  };
5649
- return vue.createVNode(stdin_default$15, {
5661
+ return vue.createVNode(stdin_default$19, {
5650
5662
  "key": item.id,
5651
5663
  "address": item,
5652
5664
  "disabled": disabled,
@@ -5666,13 +5678,13 @@
5666
5678
  }
5667
5679
  };
5668
5680
  const renderBottom = () => vue.createVNode("div", {
5669
- "class": [bem$W("bottom"), "van-safe-area-bottom"]
5681
+ "class": [bem$_("bottom"), "van-safe-area-bottom"]
5670
5682
  }, [vue.createVNode(Button, {
5671
5683
  "round": true,
5672
5684
  "block": true,
5673
5685
  "type": "primary",
5674
5686
  "text": props.addButtonText || t$g("add"),
5675
- "class": bem$W("add"),
5687
+ "class": bem$_("add"),
5676
5688
  "onClick": () => emit("add")
5677
5689
  }, null)]);
5678
5690
  return () => {
@@ -5680,10 +5692,10 @@
5680
5692
  const List2 = renderList(props.list);
5681
5693
  const DisabledList = renderList(props.disabledList, true);
5682
5694
  const DisabledText = props.disabledText && vue.createVNode("div", {
5683
- "class": bem$W("disabled-text")
5695
+ "class": bem$_("disabled-text")
5684
5696
  }, [props.disabledText]);
5685
5697
  return vue.createVNode("div", {
5686
- "class": bem$W()
5698
+ "class": bem$_()
5687
5699
  }, [(_a = slots.top) == null ? void 0 : _a.call(slots), vue.createVNode(RadioGroup, {
5688
5700
  "modelValue": props.modelValue
5689
5701
  }, {
@@ -5692,8 +5704,8 @@
5692
5704
  };
5693
5705
  }
5694
5706
  });
5695
- const AddressList = withInstall(stdin_default$14);
5696
- const [name$Z, bem$V, t$f] = createNamespace("calendar");
5707
+ const AddressList = withInstall(stdin_default$18);
5708
+ const [name$11, bem$Z, t$f] = createNamespace("calendar");
5697
5709
  const formatMonthTitle = (date) => t$f("monthTitle", date.getFullYear(), date.getMonth() + 1);
5698
5710
  function compareMonth(date1, date2) {
5699
5711
  const year1 = date1.getFullYear();
@@ -5774,9 +5786,9 @@
5774
5786
  }
5775
5787
  return value;
5776
5788
  });
5777
- const [name$Y] = createNamespace("calendar-day");
5778
- var stdin_default$13 = vue.defineComponent({
5779
- name: name$Y,
5789
+ const [name$10] = createNamespace("calendar-day");
5790
+ var stdin_default$17 = vue.defineComponent({
5791
+ name: name$10,
5780
5792
  props: {
5781
5793
  item: makeRequiredProp(Object),
5782
5794
  color: String,
@@ -5838,7 +5850,7 @@
5838
5850
  } = props.item;
5839
5851
  if (topInfo || slots["top-info"]) {
5840
5852
  return vue.createVNode("div", {
5841
- "class": bem$V("top-info")
5853
+ "class": bem$Z("top-info")
5842
5854
  }, [slots["top-info"] ? slots["top-info"](props.item) : topInfo]);
5843
5855
  }
5844
5856
  };
@@ -5848,7 +5860,7 @@
5848
5860
  } = props.item;
5849
5861
  if (bottomInfo || slots["bottom-info"]) {
5850
5862
  return vue.createVNode("div", {
5851
- "class": bem$V("bottom-info")
5863
+ "class": bem$Z("bottom-info")
5852
5864
  }, [slots["bottom-info"] ? slots["bottom-info"](props.item) : bottomInfo]);
5853
5865
  }
5854
5866
  };
@@ -5865,7 +5877,7 @@
5865
5877
  const Nodes = [renderTopInfo(), text, renderBottomInfo()];
5866
5878
  if (type === "selected") {
5867
5879
  return vue.createVNode("div", {
5868
- "class": bem$V("selected-day"),
5880
+ "class": bem$Z("selected-day"),
5869
5881
  "style": {
5870
5882
  width: rowHeight,
5871
5883
  height: rowHeight,
@@ -5882,21 +5894,21 @@
5882
5894
  } = props.item;
5883
5895
  if (type === "placeholder") {
5884
5896
  return vue.createVNode("div", {
5885
- "class": bem$V("day"),
5897
+ "class": bem$Z("day"),
5886
5898
  "style": style.value
5887
5899
  }, null);
5888
5900
  }
5889
5901
  return vue.createVNode("div", {
5890
5902
  "role": "gridcell",
5891
5903
  "style": style.value,
5892
- "class": [bem$V("day", type), className],
5904
+ "class": [bem$Z("day", type), className],
5893
5905
  "tabindex": type === "disabled" ? void 0 : -1,
5894
5906
  "onClick": onClick
5895
5907
  }, [renderContent()]);
5896
5908
  };
5897
5909
  }
5898
5910
  });
5899
- const [name$X] = createNamespace("calendar-month");
5911
+ const [name$$] = createNamespace("calendar-month");
5900
5912
  const calendarMonthProps = {
5901
5913
  date: makeRequiredProp(Date),
5902
5914
  type: String,
@@ -5913,8 +5925,8 @@
5913
5925
  showMonthTitle: Boolean,
5914
5926
  firstDayOfWeek: Number
5915
5927
  };
5916
- var stdin_default$12 = vue.defineComponent({
5917
- name: name$X,
5928
+ var stdin_default$16 = vue.defineComponent({
5929
+ name: name$$,
5918
5930
  props: calendarMonthProps,
5919
5931
  emits: ["click"],
5920
5932
  setup(props, {
@@ -6019,14 +6031,14 @@
6019
6031
  const renderTitle = () => {
6020
6032
  if (props.showMonthTitle) {
6021
6033
  return vue.createVNode("div", {
6022
- "class": bem$V("month-title")
6034
+ "class": bem$Z("month-title")
6023
6035
  }, [title.value]);
6024
6036
  }
6025
6037
  };
6026
6038
  const renderMark = () => {
6027
6039
  if (props.showMark && shouldRender.value) {
6028
6040
  return vue.createVNode("div", {
6029
- "class": bem$V("month-mark")
6041
+ "class": bem$Z("month-mark")
6030
6042
  }, [props.date.getMonth() + 1]);
6031
6043
  }
6032
6044
  };
@@ -6066,7 +6078,7 @@
6066
6078
  setScrollTop(body, daysRect.top + rowOffset + body.scrollTop - useRect(body).top);
6067
6079
  }
6068
6080
  };
6069
- const renderDay = (item, index) => vue.createVNode(stdin_default$13, {
6081
+ const renderDay = (item, index) => vue.createVNode(stdin_default$17, {
6070
6082
  "item": item,
6071
6083
  "index": index,
6072
6084
  "color": props.color,
@@ -6077,7 +6089,7 @@
6077
6089
  const renderDays = () => vue.createVNode("div", {
6078
6090
  "ref": daysRef,
6079
6091
  "role": "grid",
6080
- "class": bem$V("days")
6092
+ "class": bem$Z("days")
6081
6093
  }, [renderMark(), (shouldRender.value ? days : placeholders).value.map(renderDay)]);
6082
6094
  useExpose({
6083
6095
  getTitle,
@@ -6087,15 +6099,16 @@
6087
6099
  disabledDays
6088
6100
  });
6089
6101
  return () => vue.createVNode("div", {
6090
- "class": bem$V("month"),
6102
+ "class": bem$Z("month"),
6091
6103
  "ref": monthRef
6092
6104
  }, [renderTitle(), renderDays()]);
6093
6105
  }
6094
6106
  });
6095
- const [name$W] = createNamespace("calendar-header");
6096
- var stdin_default$11 = vue.defineComponent({
6097
- name: name$W,
6107
+ const [name$_] = createNamespace("calendar-header");
6108
+ var stdin_default$15 = vue.defineComponent({
6109
+ name: name$_,
6098
6110
  props: {
6111
+ date: Date,
6099
6112
  title: String,
6100
6113
  subtitle: String,
6101
6114
  showTitle: Boolean,
@@ -6112,16 +6125,19 @@
6112
6125
  const text = props.title || t$f("title");
6113
6126
  const title = slots.title ? slots.title() : text;
6114
6127
  return vue.createVNode("div", {
6115
- "class": bem$V("header-title")
6128
+ "class": bem$Z("header-title")
6116
6129
  }, [title]);
6117
6130
  }
6118
6131
  };
6119
6132
  const onClickSubtitle = (event) => emit("clickSubtitle", event);
6120
6133
  const renderSubtitle = () => {
6121
6134
  if (props.showSubtitle) {
6122
- const title = slots.subtitle ? slots.subtitle() : props.subtitle;
6135
+ const title = slots.subtitle ? slots.subtitle({
6136
+ date: props.date,
6137
+ text: props.subtitle
6138
+ }) : props.subtitle;
6123
6139
  return vue.createVNode("div", {
6124
- "class": bem$V("header-subtitle"),
6140
+ "class": bem$Z("header-subtitle"),
6125
6141
  "onClick": onClickSubtitle
6126
6142
  }, [title]);
6127
6143
  }
@@ -6133,13 +6149,13 @@
6133
6149
  const weekdays = t$f("weekdays");
6134
6150
  const renderWeekDays2 = [...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek)];
6135
6151
  return vue.createVNode("div", {
6136
- "class": bem$V("weekdays")
6152
+ "class": bem$Z("weekdays")
6137
6153
  }, [renderWeekDays2.map((text) => vue.createVNode("span", {
6138
- "class": bem$V("weekday")
6154
+ "class": bem$Z("weekday")
6139
6155
  }, [text]))]);
6140
6156
  };
6141
6157
  return () => vue.createVNode("div", {
6142
- "class": bem$V("header")
6158
+ "class": bem$Z("header")
6143
6159
  }, [renderTitle(), renderSubtitle(), renderWeekDays()]);
6144
6160
  }
6145
6161
  });
@@ -6190,8 +6206,8 @@
6190
6206
  validator: (val) => val >= 0 && val <= 6
6191
6207
  }
6192
6208
  };
6193
- var stdin_default$10 = vue.defineComponent({
6194
- name: name$Z,
6209
+ var stdin_default$14 = vue.defineComponent({
6210
+ name: name$11,
6195
6211
  props: calendarProps,
6196
6212
  emits: ["select", "confirm", "unselect", "monthShow", "overRange", "update:show", "clickSubtitle"],
6197
6213
  setup(props, {
@@ -6239,7 +6255,10 @@
6239
6255
  };
6240
6256
  let bodyHeight;
6241
6257
  const bodyRef = vue.ref();
6242
- const subtitle = vue.ref("");
6258
+ const subtitle = vue.ref({
6259
+ text: "",
6260
+ date: void 0
6261
+ });
6243
6262
  const currentDate = vue.ref(getInitialDate());
6244
6263
  const [monthRefs, setMonthRefs] = useRefs();
6245
6264
  const dayOffset = vue.computed(() => props.firstDayOfWeek ? +props.firstDayOfWeek % 7 : 0);
@@ -6300,7 +6319,10 @@
6300
6319
  monthRefs.value[index].setVisible(visible);
6301
6320
  });
6302
6321
  if (currentMonth) {
6303
- subtitle.value = currentMonth.getTitle();
6322
+ subtitle.value = {
6323
+ text: currentMonth.getTitle(),
6324
+ date: currentMonth.date
6325
+ };
6304
6326
  }
6305
6327
  };
6306
6328
  const scrollToDate = (targetDate) => {
@@ -6448,7 +6470,7 @@
6448
6470
  const updateShow = (value) => emit("update:show", value);
6449
6471
  const renderMonth = (date, index) => {
6450
6472
  const showMonthTitle = index !== 0 || !props.showSubtitle;
6451
- return vue.createVNode(stdin_default$12, vue.mergeProps({
6473
+ return vue.createVNode(stdin_default$16, vue.mergeProps({
6452
6474
  "ref": setMonthRefs(index),
6453
6475
  "date": date,
6454
6476
  "currentDate": currentDate.value,
@@ -6471,7 +6493,7 @@
6471
6493
  "block": true,
6472
6494
  "type": "primary",
6473
6495
  "color": props.color,
6474
- "class": bem$V("confirm"),
6496
+ "class": bem$Z("confirm"),
6475
6497
  "disabled": disabled,
6476
6498
  "nativeType": "button",
6477
6499
  "onClick": onConfirm
@@ -6483,22 +6505,23 @@
6483
6505
  }
6484
6506
  };
6485
6507
  const renderFooter = () => vue.createVNode("div", {
6486
- "class": [bem$V("footer"), {
6508
+ "class": [bem$Z("footer"), {
6487
6509
  "van-safe-area-bottom": props.safeAreaInsetBottom
6488
6510
  }]
6489
6511
  }, [renderFooterButton()]);
6490
6512
  const renderCalendar = () => vue.createVNode("div", {
6491
- "class": bem$V()
6492
- }, [vue.createVNode(stdin_default$11, {
6513
+ "class": bem$Z()
6514
+ }, [vue.createVNode(stdin_default$15, {
6515
+ "date": subtitle.value.date,
6493
6516
  "title": props.title,
6494
- "subtitle": subtitle.value,
6517
+ "subtitle": subtitle.value.text,
6495
6518
  "showTitle": props.showTitle,
6496
6519
  "showSubtitle": props.showSubtitle,
6497
6520
  "firstDayOfWeek": dayOffset.value,
6498
6521
  "onClickSubtitle": (event) => emit("clickSubtitle", event)
6499
6522
  }, pick(slots, ["title", "subtitle"])), vue.createVNode("div", {
6500
6523
  "ref": bodyRef,
6501
- "class": bem$V("body"),
6524
+ "class": bem$Z("body"),
6502
6525
  "onScroll": onScroll
6503
6526
  }, [months.value.map(renderMonth)]), renderFooter()]);
6504
6527
  vue.watch(() => props.show, init);
@@ -6517,7 +6540,7 @@
6517
6540
  if (props.poppable) {
6518
6541
  return vue.createVNode(Popup, {
6519
6542
  "show": props.show,
6520
- "class": bem$V("popup"),
6543
+ "class": bem$Z("popup"),
6521
6544
  "round": props.round,
6522
6545
  "position": props.position,
6523
6546
  "closeable": props.showTitle || props.showSubtitle,
@@ -6534,8 +6557,8 @@
6534
6557
  };
6535
6558
  }
6536
6559
  });
6537
- const Calendar = withInstall(stdin_default$10);
6538
- const [name$V, bem$U] = createNamespace("image");
6560
+ const Calendar = withInstall(stdin_default$14);
6561
+ const [name$Z, bem$Y] = createNamespace("image");
6539
6562
  const imageProps = {
6540
6563
  src: String,
6541
6564
  alt: String,
@@ -6554,8 +6577,8 @@
6554
6577
  showLoading: truthProp,
6555
6578
  loadingIcon: makeStringProp("photo")
6556
6579
  };
6557
- var stdin_default$$ = vue.defineComponent({
6558
- name: name$V,
6580
+ var stdin_default$13 = vue.defineComponent({
6581
+ name: name$Z,
6559
6582
  props: imageProps,
6560
6583
  emits: ["load", "error"],
6561
6584
  setup(props, {
@@ -6606,13 +6629,13 @@
6606
6629
  const renderPlaceholder = () => {
6607
6630
  if (loading.value && props.showLoading) {
6608
6631
  return vue.createVNode("div", {
6609
- "class": bem$U("loading")
6610
- }, [renderIcon(props.loadingIcon, bem$U("loading-icon"), slots.loading)]);
6632
+ "class": bem$Y("loading")
6633
+ }, [renderIcon(props.loadingIcon, bem$Y("loading-icon"), slots.loading)]);
6611
6634
  }
6612
6635
  if (error.value && props.showError) {
6613
6636
  return vue.createVNode("div", {
6614
- "class": bem$U("error")
6615
- }, [renderIcon(props.errorIcon, bem$U("error-icon"), slots.error)]);
6637
+ "class": bem$Y("error")
6638
+ }, [renderIcon(props.errorIcon, bem$Y("error-icon"), slots.error)]);
6616
6639
  }
6617
6640
  };
6618
6641
  const renderImage = () => {
@@ -6621,7 +6644,7 @@
6621
6644
  }
6622
6645
  const attrs = {
6623
6646
  alt: props.alt,
6624
- class: bem$U("img"),
6647
+ class: bem$Y("img"),
6625
6648
  style: {
6626
6649
  objectFit: props.fit,
6627
6650
  objectPosition: props.position
@@ -6670,7 +6693,7 @@
6670
6693
  return () => {
6671
6694
  var _a;
6672
6695
  return vue.createVNode("div", {
6673
- "class": bem$U({
6696
+ "class": bem$Y({
6674
6697
  round: props.round,
6675
6698
  block: props.block
6676
6699
  }),
@@ -6679,8 +6702,8 @@
6679
6702
  };
6680
6703
  }
6681
6704
  });
6682
- const Image$1 = withInstall(stdin_default$$);
6683
- const [name$U, bem$T] = createNamespace("card");
6705
+ const Image$1 = withInstall(stdin_default$13);
6706
+ const [name$Y, bem$X] = createNamespace("card");
6684
6707
  const cardProps = {
6685
6708
  tag: String,
6686
6709
  num: numericProp,
@@ -6694,8 +6717,8 @@
6694
6717
  thumbLink: String,
6695
6718
  originPrice: numericProp
6696
6719
  };
6697
- var stdin_default$_ = vue.defineComponent({
6698
- name: name$U,
6720
+ var stdin_default$12 = vue.defineComponent({
6721
+ name: name$Y,
6699
6722
  props: cardProps,
6700
6723
  emits: ["clickThumb"],
6701
6724
  setup(props, {
@@ -6708,14 +6731,14 @@
6708
6731
  }
6709
6732
  if (props.title) {
6710
6733
  return vue.createVNode("div", {
6711
- "class": [bem$T("title"), "van-multi-ellipsis--l2"]
6734
+ "class": [bem$X("title"), "van-multi-ellipsis--l2"]
6712
6735
  }, [props.title]);
6713
6736
  }
6714
6737
  };
6715
6738
  const renderThumbTag = () => {
6716
6739
  if (slots.tag || props.tag) {
6717
6740
  return vue.createVNode("div", {
6718
- "class": bem$T("tag")
6741
+ "class": bem$X("tag")
6719
6742
  }, [slots.tag ? slots.tag() : vue.createVNode(Tag, {
6720
6743
  "mark": true,
6721
6744
  "type": "primary"
@@ -6740,7 +6763,7 @@
6740
6763
  if (slots.thumb || props.thumb) {
6741
6764
  return vue.createVNode("a", {
6742
6765
  "href": props.thumbLink,
6743
- "class": bem$T("thumb"),
6766
+ "class": bem$X("thumb"),
6744
6767
  "onClick": (event) => emit("clickThumb", event)
6745
6768
  }, [renderThumbImage(), renderThumbTag()]);
6746
6769
  }
@@ -6751,18 +6774,18 @@
6751
6774
  }
6752
6775
  if (props.desc) {
6753
6776
  return vue.createVNode("div", {
6754
- "class": [bem$T("desc"), "van-ellipsis"]
6777
+ "class": [bem$X("desc"), "van-ellipsis"]
6755
6778
  }, [props.desc]);
6756
6779
  }
6757
6780
  };
6758
6781
  const renderPriceText = () => {
6759
6782
  const priceArr = props.price.toString().split(".");
6760
6783
  return vue.createVNode("div", null, [vue.createVNode("span", {
6761
- "class": bem$T("price-currency")
6784
+ "class": bem$X("price-currency")
6762
6785
  }, [props.currency]), vue.createVNode("span", {
6763
- "class": bem$T("price-integer")
6786
+ "class": bem$X("price-integer")
6764
6787
  }, [priceArr[0]]), vue.createTextVNode("."), vue.createVNode("span", {
6765
- "class": bem$T("price-decimal")
6788
+ "class": bem$X("price-decimal")
6766
6789
  }, [priceArr[1]])]);
6767
6790
  };
6768
6791
  return () => {
@@ -6772,34 +6795,34 @@
6772
6795
  const showOriginPrice = slots["origin-price"] || isDef(props.originPrice);
6773
6796
  const showBottom = showNum || showPrice || showOriginPrice || slots.bottom;
6774
6797
  const Price = showPrice && vue.createVNode("div", {
6775
- "class": bem$T("price")
6798
+ "class": bem$X("price")
6776
6799
  }, [slots.price ? slots.price() : renderPriceText()]);
6777
6800
  const OriginPrice = showOriginPrice && vue.createVNode("div", {
6778
- "class": bem$T("origin-price")
6801
+ "class": bem$X("origin-price")
6779
6802
  }, [slots["origin-price"] ? slots["origin-price"]() : `${props.currency} ${props.originPrice}`]);
6780
6803
  const Num = showNum && vue.createVNode("div", {
6781
- "class": bem$T("num")
6804
+ "class": bem$X("num")
6782
6805
  }, [slots.num ? slots.num() : `x${props.num}`]);
6783
6806
  const Footer = slots.footer && vue.createVNode("div", {
6784
- "class": bem$T("footer")
6807
+ "class": bem$X("footer")
6785
6808
  }, [slots.footer()]);
6786
6809
  const Bottom = showBottom && vue.createVNode("div", {
6787
- "class": bem$T("bottom")
6810
+ "class": bem$X("bottom")
6788
6811
  }, [(_a = slots["price-top"]) == null ? void 0 : _a.call(slots), Price, OriginPrice, Num, (_b = slots.bottom) == null ? void 0 : _b.call(slots)]);
6789
6812
  return vue.createVNode("div", {
6790
- "class": bem$T()
6813
+ "class": bem$X()
6791
6814
  }, [vue.createVNode("div", {
6792
- "class": bem$T("header")
6815
+ "class": bem$X("header")
6793
6816
  }, [renderThumb(), vue.createVNode("div", {
6794
- "class": bem$T("content", {
6817
+ "class": bem$X("content", {
6795
6818
  centered: props.centered
6796
6819
  })
6797
6820
  }, [vue.createVNode("div", null, [renderTitle(), renderDesc(), (_c = slots.tags) == null ? void 0 : _c.call(slots)]), Bottom])]), Footer]);
6798
6821
  };
6799
6822
  }
6800
6823
  });
6801
- const Card = withInstall(stdin_default$_);
6802
- const [name$T, bem$S, t$e] = createNamespace("cascader");
6824
+ const Card = withInstall(stdin_default$12);
6825
+ const [name$X, bem$W, t$e] = createNamespace("cascader");
6803
6826
  const cascaderProps = {
6804
6827
  title: String,
6805
6828
  options: makeArrayProp(),
@@ -6812,8 +6835,8 @@
6812
6835
  placeholder: String,
6813
6836
  activeColor: String
6814
6837
  };
6815
- var stdin_default$Z = vue.defineComponent({
6816
- name: name$T,
6838
+ var stdin_default$11 = vue.defineComponent({
6839
+ name: name$X,
6817
6840
  props: cascaderProps,
6818
6841
  emits: ["close", "change", "finish", "clickTab", "update:modelValue"],
6819
6842
  setup(props, {
@@ -6921,12 +6944,12 @@
6921
6944
  title
6922
6945
  }) => emit("clickTab", name2, title);
6923
6946
  const renderHeader = () => props.showHeader ? vue.createVNode("div", {
6924
- "class": bem$S("header")
6947
+ "class": bem$W("header")
6925
6948
  }, [vue.createVNode("h2", {
6926
- "class": bem$S("title")
6949
+ "class": bem$W("title")
6927
6950
  }, [slots.title ? slots.title() : props.title]), props.closeable ? vue.createVNode(Icon, {
6928
6951
  "name": props.closeIcon,
6929
- "class": [bem$S("close-icon"), HAPTICS_FEEDBACK],
6952
+ "class": [bem$W("close-icon"), HAPTICS_FEEDBACK],
6930
6953
  "onClick": onClose
6931
6954
  }, null) : null]) : null;
6932
6955
  const renderOption = (option, selectedOption, tabIndex) => {
@@ -6941,7 +6964,7 @@
6941
6964
  }) : vue.createVNode("span", null, [option[textKey]]);
6942
6965
  return vue.createVNode("li", {
6943
6966
  "role": "menuitemradio",
6944
- "class": [bem$S("option", {
6967
+ "class": [bem$W("option", {
6945
6968
  selected,
6946
6969
  disabled
6947
6970
  }), option.className],
@@ -6954,12 +6977,12 @@
6954
6977
  "onClick": () => onSelect(option, tabIndex)
6955
6978
  }, [Text2, selected ? vue.createVNode(Icon, {
6956
6979
  "name": "success",
6957
- "class": bem$S("selected-icon")
6980
+ "class": bem$W("selected-icon")
6958
6981
  }, null) : null]);
6959
6982
  };
6960
6983
  const renderOptions = (options, selectedOption, tabIndex) => vue.createVNode("ul", {
6961
6984
  "role": "menu",
6962
- "class": bem$S("options")
6985
+ "class": bem$W("options")
6963
6986
  }, [options.map((option) => renderOption(option, selectedOption, tabIndex))]);
6964
6987
  const renderTab = (tab, tabIndex) => {
6965
6988
  const {
@@ -6970,7 +6993,7 @@
6970
6993
  const title = selected ? selected[textKey] : placeholder;
6971
6994
  return vue.createVNode(Tab, {
6972
6995
  "title": title,
6973
- "titleClass": bem$S("tab", {
6996
+ "titleClass": bem$W("tab", {
6974
6997
  unselected: !selected
6975
6998
  })
6976
6999
  }, {
@@ -6989,7 +7012,7 @@
6989
7012
  "onUpdate:active": ($event) => activeTab.value = $event,
6990
7013
  "shrink": true,
6991
7014
  "animated": true,
6992
- "class": bem$S("tabs"),
7015
+ "class": bem$W("tabs"),
6993
7016
  "color": props.activeColor,
6994
7017
  "swipeable": props.swipeable,
6995
7018
  "onClickTab": onClickTab
@@ -7013,19 +7036,19 @@
7013
7036
  updateTabs();
7014
7037
  });
7015
7038
  return () => vue.createVNode("div", {
7016
- "class": bem$S()
7039
+ "class": bem$W()
7017
7040
  }, [renderHeader(), renderTabs()]);
7018
7041
  }
7019
7042
  });
7020
- const Cascader = withInstall(stdin_default$Z);
7021
- const [name$S, bem$R] = createNamespace("cell-group");
7043
+ const Cascader = withInstall(stdin_default$11);
7044
+ const [name$W, bem$V] = createNamespace("cell-group");
7022
7045
  const cellGroupProps = {
7023
7046
  title: String,
7024
7047
  inset: Boolean,
7025
7048
  border: truthProp
7026
7049
  };
7027
- var stdin_default$Y = vue.defineComponent({
7028
- name: name$S,
7050
+ var stdin_default$10 = vue.defineComponent({
7051
+ name: name$W,
7029
7052
  inheritAttrs: false,
7030
7053
  props: cellGroupProps,
7031
7054
  setup(props, {
@@ -7035,7 +7058,7 @@
7035
7058
  const renderGroup = () => {
7036
7059
  var _a;
7037
7060
  return vue.createVNode("div", vue.mergeProps({
7038
- "class": [bem$R({
7061
+ "class": [bem$V({
7039
7062
  inset: props.inset
7040
7063
  }), {
7041
7064
  [BORDER_TOP_BOTTOM]: props.border && !props.inset
@@ -7043,7 +7066,7 @@
7043
7066
  }, attrs), [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
7044
7067
  };
7045
7068
  const renderTitle = () => vue.createVNode("div", {
7046
- "class": bem$R("title", {
7069
+ "class": bem$V("title", {
7047
7070
  inset: props.inset
7048
7071
  })
7049
7072
  }, [slots.title ? slots.title() : props.title]);
@@ -7055,8 +7078,8 @@
7055
7078
  };
7056
7079
  }
7057
7080
  });
7058
- const CellGroup = withInstall(stdin_default$Y);
7059
- const [name$R, bem$Q] = createNamespace("checkbox-group");
7081
+ const CellGroup = withInstall(stdin_default$10);
7082
+ const [name$V, bem$U] = createNamespace("checkbox-group");
7060
7083
  const checkboxGroupProps = {
7061
7084
  max: numericProp,
7062
7085
  disabled: Boolean,
@@ -7065,9 +7088,9 @@
7065
7088
  modelValue: makeArrayProp(),
7066
7089
  checkedColor: String
7067
7090
  };
7068
- const CHECKBOX_GROUP_KEY = Symbol(name$R);
7069
- var stdin_default$X = vue.defineComponent({
7070
- name: name$R,
7091
+ const CHECKBOX_GROUP_KEY = Symbol(name$V);
7092
+ var stdin_default$$ = vue.defineComponent({
7093
+ name: name$V,
7071
7094
  props: checkboxGroupProps,
7072
7095
  emits: ["change", "update:modelValue"],
7073
7096
  setup(props, {
@@ -7113,17 +7136,17 @@
7113
7136
  return () => {
7114
7137
  var _a;
7115
7138
  return vue.createVNode("div", {
7116
- "class": bem$Q([props.direction])
7139
+ "class": bem$U([props.direction])
7117
7140
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
7118
7141
  };
7119
7142
  }
7120
7143
  });
7121
- const [name$Q, bem$P] = createNamespace("checkbox");
7144
+ const [name$U, bem$T] = createNamespace("checkbox");
7122
7145
  const checkboxProps = extend({}, checkerProps, {
7123
7146
  bindGroup: truthProp
7124
7147
  });
7125
- var stdin_default$W = vue.defineComponent({
7126
- name: name$Q,
7148
+ var stdin_default$_ = vue.defineComponent({
7149
+ name: name$U,
7127
7150
  props: checkboxProps,
7128
7151
  emits: ["change", "update:modelValue"],
7129
7152
  setup(props, {
@@ -7180,8 +7203,8 @@
7180
7203
  checked
7181
7204
  });
7182
7205
  useCustomFieldValue(() => props.modelValue);
7183
- return () => vue.createVNode(stdin_default$17, vue.mergeProps({
7184
- "bem": bem$P,
7206
+ return () => vue.createVNode(stdin_default$1b, vue.mergeProps({
7207
+ "bem": bem$T,
7185
7208
  "role": "checkbox",
7186
7209
  "parent": parent,
7187
7210
  "checked": checked.value,
@@ -7189,9 +7212,9 @@
7189
7212
  }, props), pick(slots, ["default", "icon"]));
7190
7213
  }
7191
7214
  });
7192
- const Checkbox = withInstall(stdin_default$W);
7193
- const CheckboxGroup = withInstall(stdin_default$X);
7194
- const [name$P, bem$O] = createNamespace("circle");
7215
+ const Checkbox = withInstall(stdin_default$_);
7216
+ const CheckboxGroup = withInstall(stdin_default$$);
7217
+ const [name$T, bem$S] = createNamespace("circle");
7195
7218
  let uid = 0;
7196
7219
  const format$1 = (rate) => Math.min(Math.max(+rate, 0), 100);
7197
7220
  function getPath(clockwise, viewBoxSize) {
@@ -7212,8 +7235,8 @@
7212
7235
  strokeLinecap: String,
7213
7236
  startPosition: makeStringProp("top")
7214
7237
  };
7215
- var stdin_default$V = vue.defineComponent({
7216
- name: name$P,
7238
+ var stdin_default$Z = vue.defineComponent({
7239
+ name: name$T,
7217
7240
  props: circleProps,
7218
7241
  emits: ["update:currentRate"],
7219
7242
  setup(props, {
@@ -7281,7 +7304,7 @@
7281
7304
  return vue.createVNode("path", {
7282
7305
  "d": path.value,
7283
7306
  "style": style,
7284
- "class": bem$O("hover"),
7307
+ "class": bem$S("hover"),
7285
7308
  "stroke": color
7286
7309
  }, null);
7287
7310
  };
@@ -7292,7 +7315,7 @@
7292
7315
  strokeWidth: `${props.strokeWidth}px`
7293
7316
  };
7294
7317
  return vue.createVNode("path", {
7295
- "class": bem$O("layer"),
7318
+ "class": bem$S("layer"),
7296
7319
  "style": style,
7297
7320
  "d": path.value
7298
7321
  }, null);
@@ -7323,12 +7346,12 @@
7323
7346
  }
7324
7347
  if (props.text) {
7325
7348
  return vue.createVNode("div", {
7326
- "class": bem$O("text")
7349
+ "class": bem$S("text")
7327
7350
  }, [props.text]);
7328
7351
  }
7329
7352
  };
7330
7353
  return () => vue.createVNode("div", {
7331
- "class": bem$O(),
7354
+ "class": bem$S(),
7332
7355
  "style": getSizeStyle(props.size)
7333
7356
  }, [vue.createVNode("svg", {
7334
7357
  "viewBox": `0 0 ${viewBoxSize.value} ${viewBoxSize.value}`,
@@ -7336,9 +7359,9 @@
7336
7359
  }, [renderGradient(), renderLayer(), renderHover()]), renderText()]);
7337
7360
  }
7338
7361
  });
7339
- const Circle = withInstall(stdin_default$V);
7340
- const [name$O, bem$N] = createNamespace("row");
7341
- const ROW_KEY = Symbol(name$O);
7362
+ const Circle = withInstall(stdin_default$Z);
7363
+ const [name$S, bem$R] = createNamespace("row");
7364
+ const ROW_KEY = Symbol(name$S);
7342
7365
  const rowProps = {
7343
7366
  tag: makeStringProp("div"),
7344
7367
  wrap: truthProp,
@@ -7346,8 +7369,8 @@
7346
7369
  gutter: makeNumericProp(0),
7347
7370
  justify: String
7348
7371
  };
7349
- var stdin_default$U = vue.defineComponent({
7350
- name: name$O,
7372
+ var stdin_default$Y = vue.defineComponent({
7373
+ name: name$S,
7351
7374
  props: rowProps,
7352
7375
  setup(props, {
7353
7376
  slots
@@ -7406,7 +7429,7 @@
7406
7429
  justify
7407
7430
  } = props;
7408
7431
  return vue.createVNode(tag, {
7409
- "class": bem$N({
7432
+ "class": bem$R({
7410
7433
  [`align-${align}`]: align,
7411
7434
  [`justify-${justify}`]: justify,
7412
7435
  nowrap: !wrap
@@ -7420,14 +7443,14 @@
7420
7443
  };
7421
7444
  }
7422
7445
  });
7423
- const [name$N, bem$M] = createNamespace("col");
7446
+ const [name$R, bem$Q] = createNamespace("col");
7424
7447
  const colProps = {
7425
7448
  tag: makeStringProp("div"),
7426
7449
  span: makeNumericProp(0),
7427
7450
  offset: numericProp
7428
7451
  };
7429
- var stdin_default$T = vue.defineComponent({
7430
- name: name$N,
7452
+ var stdin_default$X = vue.defineComponent({
7453
+ name: name$R,
7431
7454
  props: colProps,
7432
7455
  setup(props, {
7433
7456
  slots
@@ -7462,7 +7485,7 @@
7462
7485
  } = props;
7463
7486
  return vue.createVNode(tag, {
7464
7487
  "style": style.value,
7465
- "class": bem$M({
7488
+ "class": bem$Q({
7466
7489
  [span]: span,
7467
7490
  [`offset-${offset2}`]: offset2
7468
7491
  })
@@ -7475,9 +7498,9 @@
7475
7498
  };
7476
7499
  }
7477
7500
  });
7478
- const Col = withInstall(stdin_default$T);
7479
- const [name$M, bem$L] = createNamespace("collapse");
7480
- const COLLAPSE_KEY = Symbol(name$M);
7501
+ const Col = withInstall(stdin_default$X);
7502
+ const [name$Q, bem$P] = createNamespace("collapse");
7503
+ const COLLAPSE_KEY = Symbol(name$Q);
7481
7504
  const collapseProps = {
7482
7505
  border: truthProp,
7483
7506
  accordion: Boolean,
@@ -7486,8 +7509,8 @@
7486
7509
  default: ""
7487
7510
  }
7488
7511
  };
7489
- var stdin_default$S = vue.defineComponent({
7490
- name: name$M,
7512
+ var stdin_default$W = vue.defineComponent({
7513
+ name: name$Q,
7491
7514
  props: collapseProps,
7492
7515
  emits: ["change", "update:modelValue"],
7493
7516
  setup(props, {
@@ -7554,15 +7577,15 @@
7554
7577
  return () => {
7555
7578
  var _a;
7556
7579
  return vue.createVNode("div", {
7557
- "class": [bem$L(), {
7580
+ "class": [bem$P(), {
7558
7581
  [BORDER_TOP_BOTTOM]: props.border
7559
7582
  }]
7560
7583
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
7561
7584
  };
7562
7585
  }
7563
7586
  });
7564
- const Collapse = withInstall(stdin_default$S);
7565
- const [name$L, bem$K] = createNamespace("collapse-item");
7587
+ const Collapse = withInstall(stdin_default$W);
7588
+ const [name$P, bem$O] = createNamespace("collapse-item");
7566
7589
  const CELL_SLOTS = ["icon", "title", "value", "label", "right-icon"];
7567
7590
  const collapseItemProps = extend({}, cellSharedProps, {
7568
7591
  name: numericProp,
@@ -7571,8 +7594,8 @@
7571
7594
  readonly: Boolean,
7572
7595
  lazyRender: truthProp
7573
7596
  });
7574
- var stdin_default$R = vue.defineComponent({
7575
- name: name$L,
7597
+ var stdin_default$V = vue.defineComponent({
7598
+ name: name$P,
7576
7599
  props: collapseItemProps,
7577
7600
  setup(props, {
7578
7601
  slots
@@ -7651,7 +7674,7 @@
7651
7674
  }
7652
7675
  return vue.createVNode(Cell, vue.mergeProps({
7653
7676
  "role": "button",
7654
- "class": bem$K("title", {
7677
+ "class": bem$O("title", {
7655
7678
  disabled,
7656
7679
  expanded: expanded.value,
7657
7680
  borderless: !border
@@ -7664,11 +7687,11 @@
7664
7687
  var _a;
7665
7688
  return vue.withDirectives(vue.createVNode("div", {
7666
7689
  "ref": wrapperRef,
7667
- "class": bem$K("wrapper"),
7690
+ "class": bem$O("wrapper"),
7668
7691
  "onTransitionend": onTransitionEnd
7669
7692
  }, [vue.createVNode("div", {
7670
7693
  "ref": contentRef,
7671
- "class": bem$K("content")
7694
+ "class": bem$O("content")
7672
7695
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]), [[vue.vShow, show.value]]);
7673
7696
  });
7674
7697
  useExpose({
@@ -7677,15 +7700,15 @@
7677
7700
  itemName: name2
7678
7701
  });
7679
7702
  return () => vue.createVNode("div", {
7680
- "class": [bem$K({
7703
+ "class": [bem$O({
7681
7704
  border: index.value && props.border
7682
7705
  })]
7683
7706
  }, [renderTitle(), renderContent()]);
7684
7707
  }
7685
7708
  });
7686
- const CollapseItem = withInstall(stdin_default$R);
7687
- const ConfigProvider = withInstall(stdin_default$1B);
7688
- const [name$K, bem$J, t$d] = createNamespace("contact-card");
7709
+ const CollapseItem = withInstall(stdin_default$V);
7710
+ const ConfigProvider = withInstall(stdin_default$1F);
7711
+ const [name$O, bem$N, t$d] = createNamespace("contact-card");
7689
7712
  const contactCardProps = {
7690
7713
  tel: String,
7691
7714
  name: String,
@@ -7693,8 +7716,8 @@
7693
7716
  addText: String,
7694
7717
  editable: truthProp
7695
7718
  };
7696
- var stdin_default$Q = vue.defineComponent({
7697
- name: name$K,
7719
+ var stdin_default$U = vue.defineComponent({
7720
+ name: name$O,
7698
7721
  props: contactCardProps,
7699
7722
  emits: ["click"],
7700
7723
  setup(props, {
@@ -7714,18 +7737,18 @@
7714
7737
  return () => vue.createVNode(Cell, {
7715
7738
  "center": true,
7716
7739
  "icon": props.type === "edit" ? "contact" : "add-square",
7717
- "class": bem$J([props.type]),
7740
+ "class": bem$N([props.type]),
7718
7741
  "border": false,
7719
7742
  "isLink": props.editable,
7720
- "titleClass": bem$J("title"),
7743
+ "titleClass": bem$N("title"),
7721
7744
  "onClick": onClick
7722
7745
  }, {
7723
7746
  title: renderContent
7724
7747
  });
7725
7748
  }
7726
7749
  });
7727
- const ContactCard = withInstall(stdin_default$Q);
7728
- const [name$J, bem$I, t$c] = createNamespace("contact-edit");
7750
+ const ContactCard = withInstall(stdin_default$U);
7751
+ const [name$N, bem$M, t$c] = createNamespace("contact-edit");
7729
7752
  const DEFAULT_CONTACT = {
7730
7753
  tel: "",
7731
7754
  name: ""
@@ -7745,8 +7768,8 @@
7745
7768
  default: isMobile
7746
7769
  }
7747
7770
  };
7748
- var stdin_default$P = vue.defineComponent({
7749
- name: name$J,
7771
+ var stdin_default$T = vue.defineComponent({
7772
+ name: name$N,
7750
7773
  props: contactEditProps,
7751
7774
  emits: ["save", "delete", "changeDefault"],
7752
7775
  setup(props, {
@@ -7760,20 +7783,20 @@
7760
7783
  };
7761
7784
  const onDelete = () => emit("delete", contact);
7762
7785
  const renderButtons = () => vue.createVNode("div", {
7763
- "class": bem$I("buttons")
7786
+ "class": bem$M("buttons")
7764
7787
  }, [vue.createVNode(Button, {
7765
7788
  "block": true,
7766
7789
  "round": true,
7767
7790
  "type": "primary",
7768
7791
  "text": t$c("save"),
7769
- "class": bem$I("button"),
7792
+ "class": bem$M("button"),
7770
7793
  "loading": props.isSaving,
7771
7794
  "nativeType": "submit"
7772
7795
  }, null), props.isEdit && vue.createVNode(Button, {
7773
7796
  "block": true,
7774
7797
  "round": true,
7775
7798
  "text": t$c("delete"),
7776
- "class": bem$I("button"),
7799
+ "class": bem$M("button"),
7777
7800
  "loading": props.isDeleting,
7778
7801
  "onClick": onDelete
7779
7802
  }, null)]);
@@ -7786,7 +7809,7 @@
7786
7809
  if (props.showSetDefault) {
7787
7810
  return vue.createVNode(Cell, {
7788
7811
  "title": props.setDefaultLabel,
7789
- "class": bem$I("switch-cell"),
7812
+ "class": bem$M("switch-cell"),
7790
7813
  "border": false
7791
7814
  }, {
7792
7815
  "right-icon": renderSwitch
@@ -7795,11 +7818,11 @@
7795
7818
  };
7796
7819
  vue.watch(() => props.contactInfo, (value) => extend(contact, DEFAULT_CONTACT, value));
7797
7820
  return () => vue.createVNode(Form, {
7798
- "class": bem$I(),
7821
+ "class": bem$M(),
7799
7822
  "onSubmit": onSave
7800
7823
  }, {
7801
7824
  default: () => [vue.createVNode("div", {
7802
- "class": bem$I("fields")
7825
+ "class": bem$M("fields")
7803
7826
  }, [vue.createVNode(Field, {
7804
7827
  "modelValue": contact.name,
7805
7828
  "onUpdate:modelValue": ($event) => contact.name = $event,
@@ -7826,16 +7849,16 @@
7826
7849
  });
7827
7850
  }
7828
7851
  });
7829
- const ContactEdit = withInstall(stdin_default$P);
7830
- const [name$I, bem$H, t$b] = createNamespace("contact-list");
7852
+ const ContactEdit = withInstall(stdin_default$T);
7853
+ const [name$M, bem$L, t$b] = createNamespace("contact-list");
7831
7854
  const contactListProps = {
7832
7855
  list: Array,
7833
7856
  addText: String,
7834
7857
  modelValue: unknownProp,
7835
7858
  defaultTagText: String
7836
7859
  };
7837
- var stdin_default$O = vue.defineComponent({
7838
- name: name$I,
7860
+ var stdin_default$S = vue.defineComponent({
7861
+ name: name$M,
7839
7862
  props: contactListProps,
7840
7863
  emits: ["add", "edit", "select", "update:modelValue"],
7841
7864
  setup(props, {
@@ -7847,13 +7870,13 @@
7847
7870
  emit("select", item, index);
7848
7871
  };
7849
7872
  const renderRightIcon = () => vue.createVNode(Radio, {
7850
- "class": bem$H("radio"),
7873
+ "class": bem$L("radio"),
7851
7874
  "name": item.id,
7852
7875
  "iconSize": 16
7853
7876
  }, null);
7854
7877
  const renderEditIcon = () => vue.createVNode(Icon, {
7855
7878
  "name": "edit",
7856
- "class": bem$H("edit"),
7879
+ "class": bem$L("edit"),
7857
7880
  "onClick": (event) => {
7858
7881
  event.stopPropagation();
7859
7882
  emit("edit", item, index);
@@ -7865,7 +7888,7 @@
7865
7888
  nodes.push(vue.createVNode(Tag, {
7866
7889
  "type": "primary",
7867
7890
  "round": true,
7868
- "class": bem$H("item-tag")
7891
+ "class": bem$L("item-tag")
7869
7892
  }, {
7870
7893
  default: () => [props.defaultTagText]
7871
7894
  }));
@@ -7876,8 +7899,8 @@
7876
7899
  "key": item.id,
7877
7900
  "isLink": true,
7878
7901
  "center": true,
7879
- "class": bem$H("item"),
7880
- "titleClass": bem$H("item-title"),
7902
+ "class": bem$L("item"),
7903
+ "titleClass": bem$L("item-title"),
7881
7904
  "onClick": onClick
7882
7905
  }, {
7883
7906
  icon: renderEditIcon,
@@ -7886,25 +7909,25 @@
7886
7909
  });
7887
7910
  };
7888
7911
  return () => vue.createVNode("div", {
7889
- "class": bem$H()
7912
+ "class": bem$L()
7890
7913
  }, [vue.createVNode(RadioGroup, {
7891
7914
  "modelValue": props.modelValue,
7892
- "class": bem$H("group")
7915
+ "class": bem$L("group")
7893
7916
  }, {
7894
7917
  default: () => [props.list && props.list.map(renderItem)]
7895
7918
  }), vue.createVNode("div", {
7896
- "class": [bem$H("bottom"), "van-safe-area-bottom"]
7919
+ "class": [bem$L("bottom"), "van-safe-area-bottom"]
7897
7920
  }, [vue.createVNode(Button, {
7898
7921
  "round": true,
7899
7922
  "block": true,
7900
7923
  "type": "primary",
7901
- "class": bem$H("add"),
7924
+ "class": bem$L("add"),
7902
7925
  "text": props.addText || t$b("addContact"),
7903
7926
  "onClick": () => emit("add")
7904
7927
  }, null)])]);
7905
7928
  }
7906
7929
  });
7907
- const ContactList = withInstall(stdin_default$O);
7930
+ const ContactList = withInstall(stdin_default$S);
7908
7931
  function parseFormat(format2, currentTime) {
7909
7932
  const { days } = currentTime;
7910
7933
  let { hours, minutes, seconds, milliseconds } = currentTime;
@@ -7940,15 +7963,15 @@
7940
7963
  }
7941
7964
  return format2;
7942
7965
  }
7943
- const [name$H, bem$G] = createNamespace("count-down");
7966
+ const [name$L, bem$K] = createNamespace("count-down");
7944
7967
  const countDownProps = {
7945
7968
  time: makeNumericProp(0),
7946
7969
  format: makeStringProp("HH:mm:ss"),
7947
7970
  autoStart: truthProp,
7948
7971
  millisecond: Boolean
7949
7972
  };
7950
- var stdin_default$N = vue.defineComponent({
7951
- name: name$H,
7973
+ var stdin_default$R = vue.defineComponent({
7974
+ name: name$L,
7952
7975
  props: countDownProps,
7953
7976
  emits: ["change", "finish"],
7954
7977
  setup(props, {
@@ -7983,11 +8006,11 @@
7983
8006
  });
7984
8007
  return () => vue.createVNode("div", {
7985
8008
  "role": "timer",
7986
- "class": bem$G()
8009
+ "class": bem$K()
7987
8010
  }, [slots.default ? slots.default(current2.value) : timeText.value]);
7988
8011
  }
7989
8012
  });
7990
- const CountDown = withInstall(stdin_default$N);
8013
+ const CountDown = withInstall(stdin_default$R);
7991
8014
  function getDate(timeStamp) {
7992
8015
  const date = new Date(timeStamp * 1e3);
7993
8016
  return `${date.getFullYear()}.${padZero(date.getMonth() + 1)}.${padZero(
@@ -7996,9 +8019,9 @@
7996
8019
  }
7997
8020
  const formatDiscount = (discount) => (discount / 10).toFixed(discount % 10 === 0 ? 0 : 1);
7998
8021
  const formatAmount = (amount) => (amount / 100).toFixed(amount % 100 === 0 ? 0 : amount % 10 === 0 ? 1 : 2);
7999
- const [name$G, bem$F, t$a] = createNamespace("coupon");
8000
- var stdin_default$M = vue.defineComponent({
8001
- name: name$G,
8022
+ const [name$K, bem$J, t$a] = createNamespace("coupon");
8023
+ var stdin_default$Q = vue.defineComponent({
8024
+ name: name$K,
8002
8025
  props: {
8003
8026
  chosen: Boolean,
8004
8027
  coupon: makeRequiredProp(Object),
@@ -8042,34 +8065,34 @@
8042
8065
  } = props;
8043
8066
  const description = disabled && coupon.reason || coupon.description;
8044
8067
  return vue.createVNode("div", {
8045
- "class": bem$F({
8068
+ "class": bem$J({
8046
8069
  disabled
8047
8070
  })
8048
8071
  }, [vue.createVNode("div", {
8049
- "class": bem$F("content")
8072
+ "class": bem$J("content")
8050
8073
  }, [vue.createVNode("div", {
8051
- "class": bem$F("head")
8074
+ "class": bem$J("head")
8052
8075
  }, [vue.createVNode("h2", {
8053
- "class": bem$F("amount")
8076
+ "class": bem$J("amount")
8054
8077
  }, [faceAmount.value]), vue.createVNode("p", {
8055
- "class": bem$F("condition")
8078
+ "class": bem$J("condition")
8056
8079
  }, [coupon.condition || conditionMessage.value])]), vue.createVNode("div", {
8057
- "class": bem$F("body")
8080
+ "class": bem$J("body")
8058
8081
  }, [vue.createVNode("p", {
8059
- "class": bem$F("name")
8082
+ "class": bem$J("name")
8060
8083
  }, [coupon.name]), vue.createVNode("p", {
8061
- "class": bem$F("valid")
8084
+ "class": bem$J("valid")
8062
8085
  }, [validPeriod.value]), !disabled && vue.createVNode(Checkbox, {
8063
- "class": bem$F("corner"),
8086
+ "class": bem$J("corner"),
8064
8087
  "modelValue": chosen
8065
8088
  }, null)])]), description && vue.createVNode("p", {
8066
- "class": bem$F("description")
8089
+ "class": bem$J("description")
8067
8090
  }, [description])]);
8068
8091
  };
8069
8092
  }
8070
8093
  });
8071
- const Coupon = withInstall(stdin_default$M);
8072
- const [name$F, bem$E, t$9] = createNamespace("coupon-cell");
8094
+ const Coupon = withInstall(stdin_default$Q);
8095
+ const [name$J, bem$I, t$9] = createNamespace("coupon-cell");
8073
8096
  const couponCellProps = {
8074
8097
  title: String,
8075
8098
  border: truthProp,
@@ -8097,34 +8120,34 @@
8097
8120
  }
8098
8121
  return coupons.length === 0 ? t$9("noCoupon") : t$9("count", coupons.length);
8099
8122
  }
8100
- var stdin_default$L = vue.defineComponent({
8101
- name: name$F,
8123
+ var stdin_default$P = vue.defineComponent({
8124
+ name: name$J,
8102
8125
  props: couponCellProps,
8103
8126
  setup(props) {
8104
8127
  return () => {
8105
8128
  const selected = props.coupons[+props.chosenCoupon];
8106
8129
  return vue.createVNode(Cell, {
8107
- "class": bem$E(),
8130
+ "class": bem$I(),
8108
8131
  "value": formatValue(props),
8109
8132
  "title": props.title || t$9("title"),
8110
8133
  "border": props.border,
8111
8134
  "isLink": props.editable,
8112
- "valueClass": bem$E("value", {
8135
+ "valueClass": bem$I("value", {
8113
8136
  selected
8114
8137
  })
8115
8138
  }, null);
8116
8139
  };
8117
8140
  }
8118
8141
  });
8119
- const CouponCell = withInstall(stdin_default$L);
8120
- const [name$E, bem$D] = createNamespace("empty");
8142
+ const CouponCell = withInstall(stdin_default$P);
8143
+ const [name$I, bem$H] = createNamespace("empty");
8121
8144
  const emptyProps = {
8122
8145
  image: makeStringProp("default"),
8123
8146
  imageSize: [Number, String, Array],
8124
8147
  description: String
8125
8148
  };
8126
- var stdin_default$K = vue.defineComponent({
8127
- name: name$E,
8149
+ var stdin_default$O = vue.defineComponent({
8150
+ name: name$I,
8128
8151
  props: emptyProps,
8129
8152
  setup(props, {
8130
8153
  slots
@@ -8133,14 +8156,14 @@
8133
8156
  const description = slots.description ? slots.description() : props.description;
8134
8157
  if (description) {
8135
8158
  return vue.createVNode("p", {
8136
- "class": bem$D("description")
8159
+ "class": bem$H("description")
8137
8160
  }, [description]);
8138
8161
  }
8139
8162
  };
8140
8163
  const renderBottom = () => {
8141
8164
  if (slots.default) {
8142
8165
  return vue.createVNode("div", {
8143
- "class": bem$D("bottom")
8166
+ "class": bem$H("bottom")
8144
8167
  }, [slots.default()]);
8145
8168
  }
8146
8169
  };
@@ -8425,15 +8448,15 @@
8425
8448
  }, null);
8426
8449
  };
8427
8450
  return () => vue.createVNode("div", {
8428
- "class": bem$D()
8451
+ "class": bem$H()
8429
8452
  }, [vue.createVNode("div", {
8430
- "class": bem$D("image"),
8453
+ "class": bem$H("image"),
8431
8454
  "style": getSizeStyle(props.imageSize)
8432
8455
  }, [renderImage()]), renderDescription(), renderBottom()]);
8433
8456
  }
8434
8457
  });
8435
- const Empty = withInstall(stdin_default$K);
8436
- const [name$D, bem$C, t$8] = createNamespace("coupon-list");
8458
+ const Empty = withInstall(stdin_default$O);
8459
+ const [name$H, bem$G, t$8] = createNamespace("coupon-list");
8437
8460
  const couponListProps = {
8438
8461
  code: makeStringProp(""),
8439
8462
  coupons: makeArrayProp(),
@@ -8454,8 +8477,8 @@
8454
8477
  exchangeButtonLoading: Boolean,
8455
8478
  exchangeButtonDisabled: Boolean
8456
8479
  };
8457
- var stdin_default$J = vue.defineComponent({
8458
- name: name$D,
8480
+ var stdin_default$N = vue.defineComponent({
8481
+ name: name$H,
8459
8482
  props: couponListProps,
8460
8483
  emits: ["change", "exchange", "update:code"],
8461
8484
  setup(props, {
@@ -8491,26 +8514,26 @@
8491
8514
  "image": props.emptyImage
8492
8515
  }, {
8493
8516
  default: () => [vue.createVNode("p", {
8494
- "class": bem$C("empty-tip")
8517
+ "class": bem$G("empty-tip")
8495
8518
  }, [t$8("noCoupon")])]
8496
8519
  });
8497
8520
  const renderExchangeBar = () => {
8498
8521
  if (props.showExchangeBar) {
8499
8522
  return vue.createVNode("div", {
8500
8523
  "ref": barRef,
8501
- "class": bem$C("exchange-bar")
8524
+ "class": bem$G("exchange-bar")
8502
8525
  }, [vue.createVNode(Field, {
8503
8526
  "modelValue": currentCode.value,
8504
8527
  "onUpdate:modelValue": ($event) => currentCode.value = $event,
8505
8528
  "clearable": true,
8506
8529
  "border": false,
8507
- "class": bem$C("field"),
8530
+ "class": bem$G("field"),
8508
8531
  "placeholder": props.inputPlaceholder || t$8("placeholder"),
8509
8532
  "maxlength": "20"
8510
8533
  }, null), vue.createVNode(Button, {
8511
8534
  "plain": true,
8512
8535
  "type": "primary",
8513
- "class": bem$C("exchange"),
8536
+ "class": bem$G("exchange"),
8514
8537
  "text": props.exchangeButtonText || t$8("exchange"),
8515
8538
  "loading": props.exchangeButtonLoading,
8516
8539
  "disabled": buttonDisabled.value,
@@ -8530,7 +8553,7 @@
8530
8553
  default: () => {
8531
8554
  var _a;
8532
8555
  return [vue.createVNode("div", {
8533
- "class": bem$C("list", {
8556
+ "class": bem$G("list", {
8534
8557
  "with-bottom": props.showCloseButton
8535
8558
  }),
8536
8559
  "style": {
@@ -8559,7 +8582,7 @@
8559
8582
  default: () => {
8560
8583
  var _a;
8561
8584
  return [vue.createVNode("div", {
8562
- "class": bem$C("list", {
8585
+ "class": bem$G("list", {
8563
8586
  "with-bottom": props.showCloseButton
8564
8587
  }),
8565
8588
  "style": {
@@ -8586,28 +8609,28 @@
8586
8609
  });
8587
8610
  return () => vue.createVNode("div", {
8588
8611
  "ref": root,
8589
- "class": bem$C()
8612
+ "class": bem$G()
8590
8613
  }, [renderExchangeBar(), vue.createVNode(Tabs, {
8591
8614
  "active": activeTab.value,
8592
8615
  "onUpdate:active": ($event) => activeTab.value = $event,
8593
- "class": bem$C("tab")
8616
+ "class": bem$G("tab")
8594
8617
  }, {
8595
8618
  default: () => [renderCouponTab(), renderDisabledTab()]
8596
8619
  }), vue.createVNode("div", {
8597
- "class": bem$C("bottom")
8620
+ "class": bem$G("bottom")
8598
8621
  }, [vue.withDirectives(vue.createVNode(Button, {
8599
8622
  "round": true,
8600
8623
  "block": true,
8601
8624
  "type": "primary",
8602
- "class": bem$C("close"),
8625
+ "class": bem$G("close"),
8603
8626
  "text": props.closeButtonText || t$8("close"),
8604
8627
  "onClick": () => emit("change", -1)
8605
8628
  }, null), [[vue.vShow, props.showCloseButton]])])]);
8606
8629
  }
8607
8630
  });
8608
- const CouponList = withInstall(stdin_default$J);
8631
+ const CouponList = withInstall(stdin_default$N);
8609
8632
  const currentYear = new Date().getFullYear();
8610
- const [name$C] = createNamespace("date-picker");
8633
+ const [name$G] = createNamespace("date-picker");
8611
8634
  const datePickerProps = extend({}, sharedProps, {
8612
8635
  columnsType: {
8613
8636
  type: Array,
@@ -8624,8 +8647,8 @@
8624
8647
  validator: isDate
8625
8648
  }
8626
8649
  });
8627
- var stdin_default$I = vue.defineComponent({
8628
- name: name$C,
8650
+ var stdin_default$M = vue.defineComponent({
8651
+ name: name$G,
8629
8652
  props: datePickerProps,
8630
8653
  emits: ["confirm", "cancel", "change", "update:modelValue"],
8631
8654
  setup(props, {
@@ -8683,7 +8706,7 @@
8683
8706
  case "day":
8684
8707
  return genDayOptions();
8685
8708
  default:
8686
- throw new Error(`[Vant] DatePicker: unsupported columns type: ${type}`);
8709
+ return [];
8687
8710
  }
8688
8711
  }));
8689
8712
  vue.watch(currentValues, (newValues) => {
@@ -8712,8 +8735,8 @@
8712
8735
  }, pick(props, pickerInheritKeys)), slots);
8713
8736
  }
8714
8737
  });
8715
- const DatePicker = withInstall(stdin_default$I);
8716
- const [name$B, bem$B, t$7] = createNamespace("dialog");
8738
+ const DatePicker = withInstall(stdin_default$M);
8739
+ const [name$F, bem$F, t$7] = createNamespace("dialog");
8717
8740
  const dialogProps = extend({}, popupSharedProps, {
8718
8741
  title: String,
8719
8742
  theme: String,
@@ -8736,8 +8759,8 @@
8736
8759
  closeOnClickOverlay: Boolean
8737
8760
  });
8738
8761
  const popupInheritKeys$1 = [...popupSharedPropKeys, "transition", "closeOnPopstate"];
8739
- var stdin_default$H = vue.defineComponent({
8740
- name: name$B,
8762
+ var stdin_default$L = vue.defineComponent({
8763
+ name: name$F,
8741
8764
  props: dialogProps,
8742
8765
  emits: ["confirm", "cancel", "keydown", "update:show"],
8743
8766
  setup(props, {
@@ -8794,7 +8817,7 @@
8794
8817
  const title = slots.title ? slots.title() : props.title;
8795
8818
  if (title) {
8796
8819
  return vue.createVNode("div", {
8797
- "class": bem$B("header", {
8820
+ "class": bem$F("header", {
8798
8821
  isolated: !props.message && !slots.default
8799
8822
  })
8800
8823
  }, [title]);
@@ -8806,7 +8829,7 @@
8806
8829
  allowHtml,
8807
8830
  messageAlign
8808
8831
  } = props;
8809
- const classNames = bem$B("message", {
8832
+ const classNames = bem$F("message", {
8810
8833
  "has-title": hasTitle,
8811
8834
  [messageAlign]: messageAlign
8812
8835
  });
@@ -8824,7 +8847,7 @@
8824
8847
  const renderContent = () => {
8825
8848
  if (slots.default) {
8826
8849
  return vue.createVNode("div", {
8827
- "class": bem$B("content")
8850
+ "class": bem$F("content")
8828
8851
  }, [slots.default()]);
8829
8852
  }
8830
8853
  const {
@@ -8836,18 +8859,18 @@
8836
8859
  const hasTitle = !!(title || slots.title);
8837
8860
  return vue.createVNode("div", {
8838
8861
  "key": allowHtml ? 1 : 0,
8839
- "class": bem$B("content", {
8862
+ "class": bem$F("content", {
8840
8863
  isolated: !hasTitle
8841
8864
  })
8842
8865
  }, [renderMessage(hasTitle)]);
8843
8866
  }
8844
8867
  };
8845
8868
  const renderButtons = () => vue.createVNode("div", {
8846
- "class": [BORDER_TOP, bem$B("footer")]
8869
+ "class": [BORDER_TOP, bem$F("footer")]
8847
8870
  }, [props.showCancelButton && vue.createVNode(Button, {
8848
8871
  "size": "large",
8849
8872
  "text": props.cancelButtonText || t$7("cancel"),
8850
- "class": bem$B("cancel"),
8873
+ "class": bem$F("cancel"),
8851
8874
  "style": {
8852
8875
  color: props.cancelButtonColor
8853
8876
  },
@@ -8857,7 +8880,7 @@
8857
8880
  }, null), props.showConfirmButton && vue.createVNode(Button, {
8858
8881
  "size": "large",
8859
8882
  "text": props.confirmButtonText || t$7("confirm"),
8860
- "class": [bem$B("confirm"), {
8883
+ "class": [bem$F("confirm"), {
8861
8884
  [BORDER_LEFT]: props.showCancelButton
8862
8885
  }],
8863
8886
  "style": {
@@ -8868,12 +8891,12 @@
8868
8891
  "onClick": onConfirm
8869
8892
  }, null)]);
8870
8893
  const renderRoundButtons = () => vue.createVNode(ActionBar, {
8871
- "class": bem$B("footer")
8894
+ "class": bem$F("footer")
8872
8895
  }, {
8873
8896
  default: () => [props.showCancelButton && vue.createVNode(ActionBarButton, {
8874
8897
  "type": "warning",
8875
8898
  "text": props.cancelButtonText || t$7("cancel"),
8876
- "class": bem$B("cancel"),
8899
+ "class": bem$F("cancel"),
8877
8900
  "color": props.cancelButtonColor,
8878
8901
  "loading": loading.cancel,
8879
8902
  "disabled": props.cancelButtonDisabled,
@@ -8881,7 +8904,7 @@
8881
8904
  }, null), props.showConfirmButton && vue.createVNode(ActionBarButton, {
8882
8905
  "type": "danger",
8883
8906
  "text": props.confirmButtonText || t$7("confirm"),
8884
- "class": bem$B("confirm"),
8907
+ "class": bem$F("confirm"),
8885
8908
  "color": props.confirmButtonColor,
8886
8909
  "loading": loading.confirm,
8887
8910
  "disabled": props.confirmButtonDisabled,
@@ -8905,7 +8928,7 @@
8905
8928
  return vue.createVNode(Popup, vue.mergeProps({
8906
8929
  "ref": root,
8907
8930
  "role": "dialog",
8908
- "class": [bem$B([theme]), className],
8931
+ "class": [bem$F([theme]), className],
8909
8932
  "style": {
8910
8933
  width: addUnit(width2)
8911
8934
  },
@@ -8955,7 +8978,7 @@
8955
8978
  state,
8956
8979
  toggle
8957
8980
  } = usePopupState();
8958
- return () => vue.createVNode(stdin_default$H, vue.mergeProps(state, {
8981
+ return () => vue.createVNode(stdin_default$L, vue.mergeProps(state, {
8959
8982
  "onUpdate:show": toggle
8960
8983
  }), null);
8961
8984
  }
@@ -8993,15 +9016,15 @@
8993
9016
  instance$2.toggle(false);
8994
9017
  }
8995
9018
  };
8996
- const Dialog = withInstall(stdin_default$H);
8997
- const [name$A, bem$A] = createNamespace("divider");
9019
+ const Dialog = withInstall(stdin_default$L);
9020
+ const [name$E, bem$E] = createNamespace("divider");
8998
9021
  const dividerProps = {
8999
9022
  dashed: Boolean,
9000
9023
  hairline: truthProp,
9001
9024
  contentPosition: makeStringProp("center")
9002
9025
  };
9003
- var stdin_default$G = vue.defineComponent({
9004
- name: name$A,
9026
+ var stdin_default$K = vue.defineComponent({
9027
+ name: name$E,
9005
9028
  props: dividerProps,
9006
9029
  setup(props, {
9007
9030
  slots
@@ -9010,7 +9033,7 @@
9010
9033
  var _a;
9011
9034
  return vue.createVNode("div", {
9012
9035
  "role": "separator",
9013
- "class": bem$A({
9036
+ "class": bem$E({
9014
9037
  dashed: props.dashed,
9015
9038
  hairline: props.hairline,
9016
9039
  [`content-${props.contentPosition}`]: !!slots.default
@@ -9019,8 +9042,8 @@
9019
9042
  };
9020
9043
  }
9021
9044
  });
9022
- const Divider = withInstall(stdin_default$G);
9023
- const [name$z, bem$z] = createNamespace("dropdown-menu");
9045
+ const Divider = withInstall(stdin_default$K);
9046
+ const [name$D, bem$D] = createNamespace("dropdown-menu");
9024
9047
  const dropdownMenuProps = {
9025
9048
  overlay: truthProp,
9026
9049
  zIndex: numericProp,
@@ -9030,9 +9053,9 @@
9030
9053
  closeOnClickOutside: truthProp,
9031
9054
  closeOnClickOverlay: truthProp
9032
9055
  };
9033
- const DROPDOWN_KEY = Symbol(name$z);
9034
- var stdin_default$F = vue.defineComponent({
9035
- name: name$z,
9056
+ const DROPDOWN_KEY = Symbol(name$D);
9057
+ var stdin_default$J = vue.defineComponent({
9058
+ name: name$D,
9036
9059
  props: dropdownMenuProps,
9037
9060
  setup(props, {
9038
9061
  slots
@@ -9100,7 +9123,7 @@
9100
9123
  "id": `${id}-${index}`,
9101
9124
  "role": "button",
9102
9125
  "tabindex": disabled ? void 0 : 0,
9103
- "class": [bem$z("item", {
9126
+ "class": [bem$D("item", {
9104
9127
  disabled
9105
9128
  }), {
9106
9129
  [HAPTICS_FEEDBACK]: !disabled
@@ -9111,7 +9134,7 @@
9111
9134
  }
9112
9135
  }
9113
9136
  }, [vue.createVNode("span", {
9114
- "class": [bem$z("title", {
9137
+ "class": [bem$D("title", {
9115
9138
  down: showPopup === (props.direction === "down"),
9116
9139
  active: showPopup
9117
9140
  }), titleClass],
@@ -9136,18 +9159,18 @@
9136
9159
  var _a;
9137
9160
  return vue.createVNode("div", {
9138
9161
  "ref": root,
9139
- "class": bem$z()
9162
+ "class": bem$D()
9140
9163
  }, [vue.createVNode("div", {
9141
9164
  "ref": barRef,
9142
9165
  "style": barStyle.value,
9143
- "class": bem$z("bar", {
9166
+ "class": bem$D("bar", {
9144
9167
  opened: opened.value
9145
9168
  })
9146
9169
  }, [children.map(renderTitle)]), (_a = slots.default) == null ? void 0 : _a.call(slots)]);
9147
9170
  };
9148
9171
  }
9149
9172
  });
9150
- const [name$y, bem$y] = createNamespace("dropdown-item");
9173
+ const [name$C, bem$C] = createNamespace("dropdown-item");
9151
9174
  const dropdownItemProps = {
9152
9175
  title: String,
9153
9176
  options: makeArrayProp(),
@@ -9157,8 +9180,8 @@
9157
9180
  modelValue: unknownProp,
9158
9181
  titleClass: unknownProp
9159
9182
  };
9160
- var stdin_default$E = vue.defineComponent({
9161
- name: name$y,
9183
+ var stdin_default$I = vue.defineComponent({
9184
+ name: name$C,
9162
9185
  props: dropdownItemProps,
9163
9186
  emits: ["open", "opened", "close", "closed", "change", "update:modelValue"],
9164
9187
  setup(props, {
@@ -9225,7 +9248,7 @@
9225
9248
  const renderIcon = () => {
9226
9249
  if (active) {
9227
9250
  return vue.createVNode(Icon, {
9228
- "class": bem$y("icon"),
9251
+ "class": bem$C("icon"),
9229
9252
  "color": activeColor,
9230
9253
  "name": "success"
9231
9254
  }, null);
@@ -9236,7 +9259,7 @@
9236
9259
  "key": option.value,
9237
9260
  "icon": option.icon,
9238
9261
  "title": option.text,
9239
- "class": bem$y("option", {
9262
+ "class": bem$C("option", {
9240
9263
  active
9241
9264
  }),
9242
9265
  "style": {
@@ -9268,13 +9291,13 @@
9268
9291
  }
9269
9292
  return vue.withDirectives(vue.createVNode("div", {
9270
9293
  "style": style,
9271
- "class": bem$y([direction]),
9294
+ "class": bem$C([direction]),
9272
9295
  "onClick": onClickWrapper
9273
9296
  }, [vue.createVNode(Popup, {
9274
9297
  "show": state.showPopup,
9275
9298
  "onUpdate:show": ($event) => state.showPopup = $event,
9276
9299
  "role": "menu",
9277
- "class": bem$y("content"),
9300
+ "class": bem$C("content"),
9278
9301
  "overlay": overlay,
9279
9302
  "position": direction === "down" ? "top" : "bottom",
9280
9303
  "duration": state.transition ? duration : 0,
@@ -9312,9 +9335,9 @@
9312
9335
  };
9313
9336
  }
9314
9337
  });
9315
- const DropdownItem = withInstall(stdin_default$E);
9316
- const DropdownMenu = withInstall(stdin_default$F);
9317
- const [name$x, bem$x] = createNamespace("grid");
9338
+ const DropdownItem = withInstall(stdin_default$I);
9339
+ const DropdownMenu = withInstall(stdin_default$J);
9340
+ const [name$B, bem$B] = createNamespace("grid");
9318
9341
  const gridProps = {
9319
9342
  square: Boolean,
9320
9343
  center: truthProp,
@@ -9326,9 +9349,9 @@
9326
9349
  clickable: Boolean,
9327
9350
  columnNum: makeNumericProp(4)
9328
9351
  };
9329
- const GRID_KEY = Symbol(name$x);
9330
- var stdin_default$D = vue.defineComponent({
9331
- name: name$x,
9352
+ const GRID_KEY = Symbol(name$B);
9353
+ var stdin_default$H = vue.defineComponent({
9354
+ name: name$B,
9332
9355
  props: gridProps,
9333
9356
  setup(props, {
9334
9357
  slots
@@ -9345,15 +9368,15 @@
9345
9368
  "style": {
9346
9369
  paddingLeft: addUnit(props.gutter)
9347
9370
  },
9348
- "class": [bem$x(), {
9371
+ "class": [bem$B(), {
9349
9372
  [BORDER_TOP]: props.border && !props.gutter
9350
9373
  }]
9351
9374
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
9352
9375
  };
9353
9376
  }
9354
9377
  });
9355
- const Grid = withInstall(stdin_default$D);
9356
- const [name$w, bem$w] = createNamespace("grid-item");
9378
+ const Grid = withInstall(stdin_default$H);
9379
+ const [name$A, bem$A] = createNamespace("grid-item");
9357
9380
  const gridItemProps = extend({}, routeProps, {
9358
9381
  dot: Boolean,
9359
9382
  text: String,
@@ -9363,8 +9386,8 @@
9363
9386
  iconPrefix: String,
9364
9387
  badgeProps: Object
9365
9388
  });
9366
- var stdin_default$C = vue.defineComponent({
9367
- name: name$w,
9389
+ var stdin_default$G = vue.defineComponent({
9390
+ name: name$A,
9368
9391
  props: gridItemProps,
9369
9392
  setup(props, {
9370
9393
  slots
@@ -9427,7 +9450,7 @@
9427
9450
  "name": props.icon,
9428
9451
  "size": parent.props.iconSize,
9429
9452
  "badge": props.badge,
9430
- "class": bem$w("icon"),
9453
+ "class": bem$A("icon"),
9431
9454
  "color": props.iconColor,
9432
9455
  "badgeProps": props.badgeProps,
9433
9456
  "classPrefix": props.iconPrefix
@@ -9440,7 +9463,7 @@
9440
9463
  }
9441
9464
  if (props.text) {
9442
9465
  return vue.createVNode("span", {
9443
- "class": bem$w("text")
9466
+ "class": bem$A("text")
9444
9467
  }, [props.text]);
9445
9468
  }
9446
9469
  };
@@ -9460,7 +9483,7 @@
9460
9483
  direction,
9461
9484
  clickable
9462
9485
  } = parent.props;
9463
- const classes = [bem$w("content", [direction, {
9486
+ const classes = [bem$A("content", [direction, {
9464
9487
  center,
9465
9488
  square,
9466
9489
  reverse,
@@ -9470,7 +9493,7 @@
9470
9493
  [BORDER]: border
9471
9494
  }];
9472
9495
  return vue.createVNode("div", {
9473
- "class": [bem$w({
9496
+ "class": [bem$A({
9474
9497
  square
9475
9498
  })],
9476
9499
  "style": rootStyle.value
@@ -9484,10 +9507,10 @@
9484
9507
  };
9485
9508
  }
9486
9509
  });
9487
- const GridItem = withInstall(stdin_default$C);
9510
+ const GridItem = withInstall(stdin_default$G);
9488
9511
  const getDistance = (touches) => Math.sqrt((touches[0].clientX - touches[1].clientX) ** 2 + (touches[0].clientY - touches[1].clientY) ** 2);
9489
- const bem$v = createNamespace("image-preview")[1];
9490
- var stdin_default$B = vue.defineComponent({
9512
+ const bem$z = createNamespace("image-preview")[1];
9513
+ var stdin_default$F = vue.defineComponent({
9491
9514
  props: {
9492
9515
  src: String,
9493
9516
  show: Boolean,
@@ -9497,9 +9520,10 @@
9497
9520
  rootWidth: makeRequiredProp(Number),
9498
9521
  rootHeight: makeRequiredProp(Number)
9499
9522
  },
9500
- emits: ["scale", "close"],
9523
+ emits: ["scale", "close", "longPress"],
9501
9524
  setup(props, {
9502
- emit
9525
+ emit,
9526
+ slots
9503
9527
  }) {
9504
9528
  const state = vue.reactive({
9505
9529
  scale: 1,
@@ -9643,16 +9667,20 @@
9643
9667
  const deltaTime = Date.now() - touchStartTime;
9644
9668
  const TAP_TIME = 250;
9645
9669
  const TAP_OFFSET = 5;
9646
- if (offsetX.value < TAP_OFFSET && offsetY.value < TAP_OFFSET && deltaTime < TAP_TIME) {
9647
- if (doubleTapTimer) {
9648
- clearTimeout(doubleTapTimer);
9649
- doubleTapTimer = null;
9650
- toggleScale();
9651
- } else {
9652
- doubleTapTimer = setTimeout(() => {
9653
- emit("close");
9670
+ if (offsetX.value < TAP_OFFSET && offsetY.value < TAP_OFFSET) {
9671
+ if (deltaTime < TAP_TIME) {
9672
+ if (doubleTapTimer) {
9673
+ clearTimeout(doubleTapTimer);
9654
9674
  doubleTapTimer = null;
9655
- }, TAP_TIME);
9675
+ toggleScale();
9676
+ } else {
9677
+ doubleTapTimer = setTimeout(() => {
9678
+ emit("close");
9679
+ doubleTapTimer = null;
9680
+ }, TAP_TIME);
9681
+ }
9682
+ } else if (deltaTime > LONG_PRESS_START_TIME) {
9683
+ emit("longPress");
9656
9684
  }
9657
9685
  }
9658
9686
  };
@@ -9712,15 +9740,19 @@
9712
9740
  };
9713
9741
  return vue.createVNode(SwipeItem, {
9714
9742
  "ref": swipeItem,
9715
- "class": bem$v("swipe-item"),
9743
+ "class": bem$z("swipe-item"),
9716
9744
  "onTouchstartPassive": onTouchStart,
9717
9745
  "onTouchend": onTouchEnd,
9718
9746
  "onTouchcancel": onTouchEnd
9719
9747
  }, {
9720
- default: () => [vue.createVNode(Image$1, {
9748
+ default: () => [slots.image ? vue.createVNode("div", {
9749
+ "class": bem$z("image-wrap")
9750
+ }, [slots.image({
9751
+ src: props.src
9752
+ })]) : vue.createVNode(Image$1, {
9721
9753
  "src": props.src,
9722
9754
  "fit": "contain",
9723
- "class": bem$v("image", {
9755
+ "class": bem$z("image", {
9724
9756
  vertical: vertical.value
9725
9757
  }),
9726
9758
  "style": imageStyle.value,
@@ -9730,7 +9762,7 @@
9730
9762
  };
9731
9763
  }
9732
9764
  });
9733
- const [name$v, bem$u] = createNamespace("image-preview");
9765
+ const [name$z, bem$y] = createNamespace("image-preview");
9734
9766
  const popupProps$1 = ["show", "transition", "overlayStyle", "closeOnPopstate"];
9735
9767
  const imagePreviewProps = {
9736
9768
  show: Boolean,
@@ -9753,10 +9785,10 @@
9753
9785
  closeOnPopstate: truthProp,
9754
9786
  closeIconPosition: makeStringProp("top-right")
9755
9787
  };
9756
- var stdin_default$A = vue.defineComponent({
9757
- name: name$v,
9788
+ var stdin_default$E = vue.defineComponent({
9789
+ name: name$z,
9758
9790
  props: imagePreviewProps,
9759
- emits: ["scale", "close", "closed", "change", "update:show"],
9791
+ emits: ["scale", "close", "closed", "change", "longPress", "update:show"],
9760
9792
  setup(props, {
9761
9793
  emit,
9762
9794
  slots
@@ -9792,7 +9824,7 @@
9792
9824
  const renderIndex = () => {
9793
9825
  if (props.showIndex) {
9794
9826
  return vue.createVNode("div", {
9795
- "class": bem$u("index")
9827
+ "class": bem$y("index")
9796
9828
  }, [slots.index ? slots.index({
9797
9829
  index: state.active
9798
9830
  }) : `${state.active + 1} / ${props.images.length}`]);
@@ -9801,7 +9833,7 @@
9801
9833
  const renderCover = () => {
9802
9834
  if (slots.cover) {
9803
9835
  return vue.createVNode("div", {
9804
- "class": bem$u("cover")
9836
+ "class": bem$y("cover")
9805
9837
  }, [slots.cover()]);
9806
9838
  }
9807
9839
  };
@@ -9809,14 +9841,14 @@
9809
9841
  "ref": swipeRef,
9810
9842
  "lazyRender": true,
9811
9843
  "loop": props.loop,
9812
- "class": bem$u("swipe"),
9844
+ "class": bem$y("swipe"),
9813
9845
  "duration": props.swipeDuration,
9814
9846
  "initialSwipe": props.startPosition,
9815
9847
  "showIndicators": props.showIndicators,
9816
9848
  "indicatorColor": "white",
9817
9849
  "onChange": setActive
9818
9850
  }, {
9819
- default: () => [props.images.map((image) => vue.createVNode(stdin_default$B, {
9851
+ default: () => [props.images.map((image, index) => vue.createVNode(stdin_default$F, {
9820
9852
  "src": image,
9821
9853
  "show": props.show,
9822
9854
  "active": state.active,
@@ -9825,15 +9857,20 @@
9825
9857
  "rootWidth": state.rootWidth,
9826
9858
  "rootHeight": state.rootHeight,
9827
9859
  "onScale": emitScale,
9828
- "onClose": emitClose
9829
- }, null))]
9860
+ "onClose": emitClose,
9861
+ "onLongPress": () => emit("longPress", {
9862
+ index
9863
+ })
9864
+ }, {
9865
+ image: slots.image
9866
+ }))]
9830
9867
  });
9831
9868
  const renderClose = () => {
9832
9869
  if (props.closeable) {
9833
9870
  return vue.createVNode(Icon, {
9834
9871
  "role": "button",
9835
9872
  "name": props.closeIcon,
9836
- "class": [bem$u("close-icon", props.closeIconPosition), HAPTICS_FEEDBACK],
9873
+ "class": [bem$y("close-icon", props.closeIconPosition), HAPTICS_FEEDBACK],
9837
9874
  "onClick": emitClose
9838
9875
  }, null);
9839
9876
  }
@@ -9870,8 +9907,8 @@
9870
9907
  }
9871
9908
  });
9872
9909
  return () => vue.createVNode(Popup, vue.mergeProps({
9873
- "class": [bem$u(), props.className],
9874
- "overlayClass": [bem$u("overlay"), props.overlayClass],
9910
+ "class": [bem$y(), props.className],
9911
+ "overlayClass": [bem$y("overlay"), props.overlayClass],
9875
9912
  "onClosed": onClosed,
9876
9913
  "onUpdate:show": updateShow
9877
9914
  }, pick(props, popupProps$1)), {
@@ -9915,7 +9952,7 @@
9915
9952
  const onClosed = () => {
9916
9953
  state.images = [];
9917
9954
  };
9918
- return () => vue.createVNode(stdin_default$A, vue.mergeProps(state, {
9955
+ return () => vue.createVNode(stdin_default$E, vue.mergeProps(state, {
9919
9956
  "onClosed": onClosed,
9920
9957
  "onUpdate:show": toggle
9921
9958
  }), null);
@@ -9936,13 +9973,13 @@
9936
9973
  instance$1.open(extend({}, defaultConfig, options));
9937
9974
  return instance$1;
9938
9975
  };
9939
- const ImagePreview = withInstall(stdin_default$A);
9976
+ const ImagePreview = withInstall(stdin_default$E);
9940
9977
  function genAlphabet() {
9941
9978
  const charCodeOfA = "A".charCodeAt(0);
9942
9979
  const indexList = Array(26).fill("").map((_, i) => String.fromCharCode(charCodeOfA + i));
9943
9980
  return indexList;
9944
9981
  }
9945
- const [name$u, bem$t] = createNamespace("index-bar");
9982
+ const [name$y, bem$x] = createNamespace("index-bar");
9946
9983
  const indexBarProps = {
9947
9984
  sticky: truthProp,
9948
9985
  zIndex: numericProp,
@@ -9954,9 +9991,9 @@
9954
9991
  default: genAlphabet
9955
9992
  }
9956
9993
  };
9957
- const INDEX_BAR_KEY = Symbol(name$u);
9958
- var stdin_default$z = vue.defineComponent({
9959
- name: name$u,
9994
+ const INDEX_BAR_KEY = Symbol(name$y);
9995
+ var stdin_default$D = vue.defineComponent({
9996
+ name: name$y,
9960
9997
  props: indexBarProps,
9961
9998
  emits: ["select", "change"],
9962
9999
  setup(props, {
@@ -10068,7 +10105,7 @@
10068
10105
  const renderIndexes = () => props.indexList.map((index) => {
10069
10106
  const active = index === activeAnchor.value;
10070
10107
  return vue.createVNode("span", {
10071
- "class": bem$t("index", {
10108
+ "class": bem$x("index", {
10072
10109
  active
10073
10110
  }),
10074
10111
  "style": active ? highlightStyle.value : void 0,
@@ -10129,7 +10166,7 @@
10129
10166
  };
10130
10167
  const renderSidebar = () => vue.createVNode("div", {
10131
10168
  "ref": sidebar,
10132
- "class": bem$t("sidebar"),
10169
+ "class": bem$x("sidebar"),
10133
10170
  "style": sidebarStyle.value,
10134
10171
  "onClick": onClickSidebar,
10135
10172
  "onTouchstartPassive": touch.start
@@ -10144,7 +10181,7 @@
10144
10181
  var _a;
10145
10182
  return vue.createVNode("div", {
10146
10183
  "ref": root,
10147
- "class": bem$t()
10184
+ "class": bem$x()
10148
10185
  }, [props.teleport ? vue.createVNode(vue.Teleport, {
10149
10186
  "to": props.teleport
10150
10187
  }, {
@@ -10153,12 +10190,12 @@
10153
10190
  };
10154
10191
  }
10155
10192
  });
10156
- const [name$t, bem$s] = createNamespace("index-anchor");
10193
+ const [name$x, bem$w] = createNamespace("index-anchor");
10157
10194
  const indexAnchorProps = {
10158
10195
  index: numericProp
10159
10196
  };
10160
- var stdin_default$y = vue.defineComponent({
10161
- name: name$t,
10197
+ var stdin_default$C = vue.defineComponent({
10198
+ name: name$x,
10162
10199
  props: indexAnchorProps,
10163
10200
  setup(props, {
10164
10201
  slots
@@ -10218,7 +10255,7 @@
10218
10255
  }
10219
10256
  }, [vue.createVNode("div", {
10220
10257
  "style": anchorStyle.value,
10221
- "class": [bem$s({
10258
+ "class": [bem$w({
10222
10259
  sticky
10223
10260
  }), {
10224
10261
  [BORDER_BOTTOM]: sticky
@@ -10227,9 +10264,9 @@
10227
10264
  };
10228
10265
  }
10229
10266
  });
10230
- const IndexAnchor = withInstall(stdin_default$y);
10231
- const IndexBar = withInstall(stdin_default$z);
10232
- const [name$s, bem$r, t$6] = createNamespace("list");
10267
+ const IndexAnchor = withInstall(stdin_default$C);
10268
+ const IndexBar = withInstall(stdin_default$D);
10269
+ const [name$w, bem$v, t$6] = createNamespace("list");
10233
10270
  const listProps = {
10234
10271
  error: Boolean,
10235
10272
  offset: makeNumericProp(300),
@@ -10241,8 +10278,8 @@
10241
10278
  finishedText: String,
10242
10279
  immediateCheck: truthProp
10243
10280
  };
10244
- var stdin_default$x = vue.defineComponent({
10245
- name: name$s,
10281
+ var stdin_default$B = vue.defineComponent({
10282
+ name: name$w,
10246
10283
  props: listProps,
10247
10284
  emits: ["load", "update:error", "update:loading"],
10248
10285
  setup(props, {
@@ -10286,7 +10323,7 @@
10286
10323
  const text = slots.finished ? slots.finished() : props.finishedText;
10287
10324
  if (text) {
10288
10325
  return vue.createVNode("div", {
10289
- "class": bem$r("finished-text")
10326
+ "class": bem$v("finished-text")
10290
10327
  }, [text]);
10291
10328
  }
10292
10329
  }
@@ -10301,7 +10338,7 @@
10301
10338
  if (text) {
10302
10339
  return vue.createVNode("div", {
10303
10340
  "role": "button",
10304
- "class": bem$r("error-text"),
10341
+ "class": bem$v("error-text"),
10305
10342
  "tabindex": 0,
10306
10343
  "onClick": clickErrorText
10307
10344
  }, [text]);
@@ -10311,9 +10348,9 @@
10311
10348
  const renderLoading = () => {
10312
10349
  if (loading.value && !props.finished) {
10313
10350
  return vue.createVNode("div", {
10314
- "class": bem$r("loading")
10351
+ "class": bem$v("loading")
10315
10352
  }, [slots.loading ? slots.loading() : vue.createVNode(Loading, {
10316
- "class": bem$r("loading-icon")
10353
+ "class": bem$v("loading-icon")
10317
10354
  }, {
10318
10355
  default: () => [props.loadingText || t$6("loading")]
10319
10356
  })]);
@@ -10347,19 +10384,19 @@
10347
10384
  const Content = (_a = slots.default) == null ? void 0 : _a.call(slots);
10348
10385
  const Placeholder = vue.createVNode("div", {
10349
10386
  "ref": placeholder,
10350
- "class": bem$r("placeholder")
10387
+ "class": bem$v("placeholder")
10351
10388
  }, null);
10352
10389
  return vue.createVNode("div", {
10353
10390
  "ref": root,
10354
10391
  "role": "feed",
10355
- "class": bem$r(),
10392
+ "class": bem$v(),
10356
10393
  "aria-busy": loading.value
10357
10394
  }, [props.direction === "down" ? Content : Placeholder, renderLoading(), renderFinishedText(), renderErrorText(), props.direction === "up" ? Content : Placeholder]);
10358
10395
  };
10359
10396
  }
10360
10397
  });
10361
- const List = withInstall(stdin_default$x);
10362
- const [name$r, bem$q] = createNamespace("nav-bar");
10398
+ const List = withInstall(stdin_default$B);
10399
+ const [name$v, bem$u] = createNamespace("nav-bar");
10363
10400
  const navBarProps = {
10364
10401
  title: String,
10365
10402
  fixed: Boolean,
@@ -10372,8 +10409,8 @@
10372
10409
  safeAreaInsetTop: Boolean,
10373
10410
  clickable: truthProp
10374
10411
  };
10375
- var stdin_default$w = vue.defineComponent({
10376
- name: name$r,
10412
+ var stdin_default$A = vue.defineComponent({
10413
+ name: name$v,
10377
10414
  props: navBarProps,
10378
10415
  emits: ["clickLeft", "clickRight"],
10379
10416
  setup(props, {
@@ -10381,7 +10418,7 @@
10381
10418
  slots
10382
10419
  }) {
10383
10420
  const navBarRef = vue.ref();
10384
- const renderPlaceholder = usePlaceholder(navBarRef, bem$q);
10421
+ const renderPlaceholder = usePlaceholder(navBarRef, bem$u);
10385
10422
  const onClickLeft = (event) => emit("clickLeft", event);
10386
10423
  const onClickRight = (event) => emit("clickRight", event);
10387
10424
  const renderLeft = () => {
@@ -10389,10 +10426,10 @@
10389
10426
  return slots.left();
10390
10427
  }
10391
10428
  return [props.leftArrow && vue.createVNode(Icon, {
10392
- "class": bem$q("arrow"),
10429
+ "class": bem$u("arrow"),
10393
10430
  "name": "arrow-left"
10394
10431
  }, null), props.leftText && vue.createVNode("span", {
10395
- "class": bem$q("text")
10432
+ "class": bem$u("text")
10396
10433
  }, [props.leftText])];
10397
10434
  };
10398
10435
  const renderRight = () => {
@@ -10400,7 +10437,7 @@
10400
10437
  return slots.right();
10401
10438
  }
10402
10439
  return vue.createVNode("span", {
10403
- "class": bem$q("text")
10440
+ "class": bem$u("text")
10404
10441
  }, [props.rightText]);
10405
10442
  };
10406
10443
  const renderNavBar = () => {
@@ -10416,21 +10453,21 @@
10416
10453
  return vue.createVNode("div", {
10417
10454
  "ref": navBarRef,
10418
10455
  "style": style,
10419
- "class": [bem$q({
10456
+ "class": [bem$u({
10420
10457
  fixed
10421
10458
  }), {
10422
10459
  [BORDER_BOTTOM]: border,
10423
10460
  "van-safe-area-top": props.safeAreaInsetTop
10424
10461
  }]
10425
10462
  }, [vue.createVNode("div", {
10426
- "class": bem$q("content")
10463
+ "class": bem$u("content")
10427
10464
  }, [hasLeft && vue.createVNode("div", {
10428
- "class": [bem$q("left"), props.clickable ? HAPTICS_FEEDBACK : ""],
10465
+ "class": [bem$u("left"), props.clickable ? HAPTICS_FEEDBACK : ""],
10429
10466
  "onClick": onClickLeft
10430
10467
  }, [renderLeft()]), vue.createVNode("div", {
10431
- "class": [bem$q("title"), "van-ellipsis"]
10468
+ "class": [bem$u("title"), "van-ellipsis"]
10432
10469
  }, [slots.title ? slots.title() : title]), hasRight && vue.createVNode("div", {
10433
- "class": [bem$q("right"), props.clickable ? HAPTICS_FEEDBACK : ""],
10470
+ "class": [bem$u("right"), props.clickable ? HAPTICS_FEEDBACK : ""],
10434
10471
  "onClick": onClickRight
10435
10472
  }, [renderRight()])])]);
10436
10473
  };
@@ -10442,8 +10479,8 @@
10442
10479
  };
10443
10480
  }
10444
10481
  });
10445
- const NavBar = withInstall(stdin_default$w);
10446
- const [name$q, bem$p] = createNamespace("notice-bar");
10482
+ const NavBar = withInstall(stdin_default$A);
10483
+ const [name$u, bem$t] = createNamespace("notice-bar");
10447
10484
  const noticeBarProps = {
10448
10485
  text: String,
10449
10486
  mode: String,
@@ -10458,8 +10495,8 @@
10458
10495
  default: null
10459
10496
  }
10460
10497
  };
10461
- var stdin_default$v = vue.defineComponent({
10462
- name: name$q,
10498
+ var stdin_default$z = vue.defineComponent({
10499
+ name: name$u,
10463
10500
  props: noticeBarProps,
10464
10501
  emits: ["close", "replay"],
10465
10502
  setup(props, {
@@ -10482,7 +10519,7 @@
10482
10519
  }
10483
10520
  if (props.leftIcon) {
10484
10521
  return vue.createVNode(Icon, {
10485
- "class": bem$p("left-icon"),
10522
+ "class": bem$t("left-icon"),
10486
10523
  "name": props.leftIcon
10487
10524
  }, null);
10488
10525
  }
@@ -10509,7 +10546,7 @@
10509
10546
  if (name2) {
10510
10547
  return vue.createVNode(Icon, {
10511
10548
  "name": name2,
10512
- "class": bem$p("right-icon"),
10549
+ "class": bem$t("right-icon"),
10513
10550
  "onClick": onClickRightIcon
10514
10551
  }, null);
10515
10552
  }
@@ -10534,11 +10571,11 @@
10534
10571
  return vue.createVNode("div", {
10535
10572
  "ref": wrapRef,
10536
10573
  "role": "marquee",
10537
- "class": bem$p("wrap")
10574
+ "class": bem$t("wrap")
10538
10575
  }, [vue.createVNode("div", {
10539
10576
  "ref": contentRef,
10540
10577
  "style": style,
10541
- "class": [bem$p("content"), {
10578
+ "class": [bem$t("content"), {
10542
10579
  "van-ellipsis": ellipsis
10543
10580
  }],
10544
10581
  "onTransitionend": onTransitionEnd
@@ -10587,7 +10624,7 @@
10587
10624
  } = props;
10588
10625
  return vue.withDirectives(vue.createVNode("div", {
10589
10626
  "role": "alert",
10590
- "class": bem$p({
10627
+ "class": bem$t({
10591
10628
  wrapable
10592
10629
  }),
10593
10630
  "style": {
@@ -10598,8 +10635,8 @@
10598
10635
  };
10599
10636
  }
10600
10637
  });
10601
- const NoticeBar = withInstall(stdin_default$v);
10602
- const [name$p, bem$o] = createNamespace("notify");
10638
+ const NoticeBar = withInstall(stdin_default$z);
10639
+ const [name$t, bem$s] = createNamespace("notify");
10603
10640
  const notifyProps = extend({}, popupSharedProps, {
10604
10641
  type: makeStringProp("danger"),
10605
10642
  color: String,
@@ -10609,8 +10646,8 @@
10609
10646
  background: String,
10610
10647
  lockScroll: Boolean
10611
10648
  });
10612
- var stdin_default$u = vue.defineComponent({
10613
- name: name$p,
10649
+ var stdin_default$y = vue.defineComponent({
10650
+ name: name$t,
10614
10651
  props: notifyProps,
10615
10652
  emits: ["update:show"],
10616
10653
  setup(props, {
@@ -10620,7 +10657,7 @@
10620
10657
  const updateShow = (show) => emit("update:show", show);
10621
10658
  return () => vue.createVNode(Popup, {
10622
10659
  "show": props.show,
10623
- "class": [bem$o([props.type]), props.className],
10660
+ "class": [bem$s([props.type]), props.className],
10624
10661
  "style": {
10625
10662
  color: props.color,
10626
10663
  background: props.background
@@ -10650,7 +10687,7 @@
10650
10687
  state,
10651
10688
  toggle
10652
10689
  } = usePopupState();
10653
- return () => vue.createVNode(stdin_default$u, vue.mergeProps(state, {
10690
+ return () => vue.createVNode(stdin_default$y, vue.mergeProps(state, {
10654
10691
  "onUpdate:show": toggle
10655
10692
  }), null);
10656
10693
  }
@@ -10694,24 +10731,24 @@
10694
10731
  const resetNotifyDefaultOptions = () => {
10695
10732
  currentOptions = getDefaultOptions();
10696
10733
  };
10697
- const Notify = withInstall(stdin_default$u);
10698
- const [name$o, bem$n] = createNamespace("key");
10734
+ const Notify = withInstall(stdin_default$y);
10735
+ const [name$s, bem$r] = createNamespace("key");
10699
10736
  const CollapseIcon = vue.createVNode("svg", {
10700
- "class": bem$n("collapse-icon"),
10737
+ "class": bem$r("collapse-icon"),
10701
10738
  "viewBox": "0 0 30 24"
10702
10739
  }, [vue.createVNode("path", {
10703
10740
  "d": "M26 13h-2v2h2v-2zm-8-3h2V8h-2v2zm2-4h2V4h-2v2zm2 4h4V4h-2v4h-2v2zm-7 14 3-3h-6l3 3zM6 13H4v2h2v-2zm16 0H8v2h14v-2zm-12-3h2V8h-2v2zM28 0l1 1 1 1v15l-1 2H1l-1-2V2l1-1 1-1zm0 2H2v15h26V2zM6 4v2H4V4zm10 2h2V4h-2v2zM8 9v1H4V8zm8 0v1h-2V8zm-6-5v2H8V4zm4 0v2h-2V4z",
10704
10741
  "fill": "currentColor"
10705
10742
  }, null)]);
10706
10743
  const DeleteIcon = vue.createVNode("svg", {
10707
- "class": bem$n("delete-icon"),
10744
+ "class": bem$r("delete-icon"),
10708
10745
  "viewBox": "0 0 32 22"
10709
10746
  }, [vue.createVNode("path", {
10710
10747
  "d": "M28 0a4 4 0 0 1 4 4v14a4 4 0 0 1-4 4H10.4a2 2 0 0 1-1.4-.6L1 13.1c-.6-.5-.9-1.3-.9-2 0-1 .3-1.7.9-2.2L9 .6a2 2 0 0 1 1.4-.6zm0 2H10.4l-8.2 8.3a1 1 0 0 0-.3.7c0 .3.1.5.3.7l8.2 8.4H28a2 2 0 0 0 2-2V4c0-1.1-.9-2-2-2zm-5 4a1 1 0 0 1 .7.3 1 1 0 0 1 0 1.4L20.4 11l3.3 3.3c.2.2.3.5.3.7 0 .3-.1.5-.3.7a1 1 0 0 1-.7.3 1 1 0 0 1-.7-.3L19 12.4l-3.4 3.3a1 1 0 0 1-.6.3 1 1 0 0 1-.7-.3 1 1 0 0 1-.3-.7c0-.2.1-.5.3-.7l3.3-3.3-3.3-3.3A1 1 0 0 1 14 7c0-.3.1-.5.3-.7A1 1 0 0 1 15 6a1 1 0 0 1 .6.3L19 9.6l3.3-3.3A1 1 0 0 1 23 6z",
10711
10748
  "fill": "currentColor"
10712
10749
  }, null)]);
10713
- var stdin_default$t = vue.defineComponent({
10714
- name: name$o,
10750
+ var stdin_default$x = vue.defineComponent({
10751
+ name: name$s,
10715
10752
  props: {
10716
10753
  type: String,
10717
10754
  text: numericProp,
@@ -10749,7 +10786,7 @@
10749
10786
  const renderContent = () => {
10750
10787
  if (props.loading) {
10751
10788
  return vue.createVNode(Loading, {
10752
- "class": bem$n("loading-icon")
10789
+ "class": bem$r("loading-icon")
10753
10790
  }, null);
10754
10791
  }
10755
10792
  const text = slots.default ? slots.default() : props.text;
@@ -10763,7 +10800,7 @@
10763
10800
  }
10764
10801
  };
10765
10802
  return () => vue.createVNode("div", {
10766
- "class": bem$n("wrapper", {
10803
+ "class": bem$r("wrapper", {
10767
10804
  wider: props.wider
10768
10805
  }),
10769
10806
  "onTouchstartPassive": onTouchStart,
@@ -10773,7 +10810,7 @@
10773
10810
  }, [vue.createVNode("div", {
10774
10811
  "role": "button",
10775
10812
  "tabindex": 0,
10776
- "class": bem$n([props.color, {
10813
+ "class": bem$r([props.color, {
10777
10814
  large: props.large,
10778
10815
  active: active.value,
10779
10816
  delete: props.type === "delete"
@@ -10781,7 +10818,7 @@
10781
10818
  }, [renderContent()])]);
10782
10819
  }
10783
10820
  });
10784
- const [name$n, bem$m] = createNamespace("number-keyboard");
10821
+ const [name$r, bem$q] = createNamespace("number-keyboard");
10785
10822
  const numberKeyboardProps = {
10786
10823
  show: Boolean,
10787
10824
  title: String,
@@ -10813,8 +10850,8 @@
10813
10850
  }
10814
10851
  return array;
10815
10852
  }
10816
- var stdin_default$s = vue.defineComponent({
10817
- name: name$n,
10853
+ var stdin_default$w = vue.defineComponent({
10854
+ name: name$r,
10818
10855
  props: numberKeyboardProps,
10819
10856
  emits: ["show", "hide", "blur", "input", "close", "delete", "update:modelValue"],
10820
10857
  setup(props, {
@@ -10911,14 +10948,14 @@
10911
10948
  return;
10912
10949
  }
10913
10950
  return vue.createVNode("div", {
10914
- "class": bem$m("header")
10951
+ "class": bem$q("header")
10915
10952
  }, [leftSlot && vue.createVNode("span", {
10916
- "class": bem$m("title-left")
10953
+ "class": bem$q("title-left")
10917
10954
  }, [leftSlot()]), title && vue.createVNode("h2", {
10918
- "class": bem$m("title")
10955
+ "class": bem$q("title")
10919
10956
  }, [title]), showClose && vue.createVNode("button", {
10920
10957
  "type": "button",
10921
- "class": [bem$m("close"), HAPTICS_FEEDBACK],
10958
+ "class": [bem$q("close"), HAPTICS_FEEDBACK],
10922
10959
  "onClick": onClose
10923
10960
  }, [closeButtonText])]);
10924
10961
  };
@@ -10930,7 +10967,7 @@
10930
10967
  if (key.type === "extra") {
10931
10968
  keySlots.default = slots["extra-key"];
10932
10969
  }
10933
- return vue.createVNode(stdin_default$t, {
10970
+ return vue.createVNode(stdin_default$x, {
10934
10971
  "key": key.text,
10935
10972
  "text": key.text,
10936
10973
  "type": key.type,
@@ -10942,15 +10979,15 @@
10942
10979
  const renderSidebar = () => {
10943
10980
  if (props.theme === "custom") {
10944
10981
  return vue.createVNode("div", {
10945
- "class": bem$m("sidebar")
10946
- }, [props.showDeleteKey && vue.createVNode(stdin_default$t, {
10982
+ "class": bem$q("sidebar")
10983
+ }, [props.showDeleteKey && vue.createVNode(stdin_default$x, {
10947
10984
  "large": true,
10948
10985
  "text": props.deleteButtonText,
10949
10986
  "type": "delete",
10950
10987
  "onPress": onPress
10951
10988
  }, {
10952
10989
  delete: slots.delete
10953
- }), vue.createVNode(stdin_default$t, {
10990
+ }), vue.createVNode(stdin_default$x, {
10954
10991
  "large": true,
10955
10992
  "text": props.closeButtonText,
10956
10993
  "type": "close",
@@ -10978,16 +11015,16 @@
10978
11015
  default: () => [vue.withDirectives(vue.createVNode("div", {
10979
11016
  "ref": root,
10980
11017
  "style": getZIndexStyle(props.zIndex),
10981
- "class": bem$m({
11018
+ "class": bem$q({
10982
11019
  unfit: !props.safeAreaInsetBottom,
10983
11020
  "with-title": !!Title
10984
11021
  }),
10985
11022
  "onAnimationend": onAnimationEnd,
10986
11023
  "onTouchstartPassive": stopPropagation
10987
11024
  }, [Title, vue.createVNode("div", {
10988
- "class": bem$m("body")
11025
+ "class": bem$q("body")
10989
11026
  }, [vue.createVNode("div", {
10990
- "class": bem$m("keys")
11027
+ "class": bem$q("keys")
10991
11028
  }, [renderKeys()]), renderSidebar()])]), [[vue.vShow, props.show]])]
10992
11029
  });
10993
11030
  if (props.teleport) {
@@ -11001,8 +11038,8 @@
11001
11038
  };
11002
11039
  }
11003
11040
  });
11004
- const NumberKeyboard = withInstall(stdin_default$s);
11005
- const [name$m, bem$l, t$5] = createNamespace("pagination");
11041
+ const NumberKeyboard = withInstall(stdin_default$w);
11042
+ const [name$q, bem$p, t$5] = createNamespace("pagination");
11006
11043
  const makePage = (number, text, active) => ({
11007
11044
  number,
11008
11045
  text,
@@ -11019,8 +11056,8 @@
11019
11056
  itemsPerPage: makeNumericProp(10),
11020
11057
  forceEllipses: Boolean
11021
11058
  };
11022
- var stdin_default$r = vue.defineComponent({
11023
- name: name$m,
11059
+ var stdin_default$v = vue.defineComponent({
11060
+ name: name$q,
11024
11061
  props: paginationProps,
11025
11062
  emits: ["change", "update:modelValue"],
11026
11063
  setup(props, {
@@ -11082,7 +11119,7 @@
11082
11119
  };
11083
11120
  vue.watchEffect(() => updateModelValue(props.modelValue));
11084
11121
  const renderDesc = () => vue.createVNode("li", {
11085
- "class": bem$l("page-desc")
11122
+ "class": bem$p("page-desc")
11086
11123
  }, [slots.pageDesc ? slots.pageDesc() : `${props.modelValue}/${count.value}`]);
11087
11124
  const renderPrevButton = () => {
11088
11125
  const {
@@ -11092,7 +11129,7 @@
11092
11129
  const slot = slots["prev-text"];
11093
11130
  const disabled = modelValue === 1;
11094
11131
  return vue.createVNode("li", {
11095
- "class": [bem$l("item", {
11132
+ "class": [bem$p("item", {
11096
11133
  disabled,
11097
11134
  border: mode === "simple",
11098
11135
  prev: true
@@ -11111,7 +11148,7 @@
11111
11148
  const slot = slots["next-text"];
11112
11149
  const disabled = modelValue === count.value;
11113
11150
  return vue.createVNode("li", {
11114
- "class": [bem$l("item", {
11151
+ "class": [bem$p("item", {
11115
11152
  disabled,
11116
11153
  border: mode === "simple",
11117
11154
  next: true
@@ -11123,7 +11160,7 @@
11123
11160
  }, [slot ? slot() : props.nextText || t$5("next")])]);
11124
11161
  };
11125
11162
  const renderPages = () => pages.value.map((page) => vue.createVNode("li", {
11126
- "class": [bem$l("item", {
11163
+ "class": [bem$p("item", {
11127
11164
  active: page.active,
11128
11165
  page: true
11129
11166
  }), BORDER_SURROUND]
@@ -11134,14 +11171,14 @@
11134
11171
  }, [slots.page ? slots.page(page) : page.text])]));
11135
11172
  return () => vue.createVNode("nav", {
11136
11173
  "role": "navigation",
11137
- "class": bem$l()
11174
+ "class": bem$p()
11138
11175
  }, [vue.createVNode("ul", {
11139
- "class": bem$l("items")
11176
+ "class": bem$p("items")
11140
11177
  }, [renderPrevButton(), props.mode === "simple" ? renderDesc() : renderPages(), renderNextButton()])]);
11141
11178
  }
11142
11179
  });
11143
- const Pagination = withInstall(stdin_default$r);
11144
- const [name$l, bem$k] = createNamespace("password-input");
11180
+ const Pagination = withInstall(stdin_default$v);
11181
+ const [name$p, bem$o] = createNamespace("password-input");
11145
11182
  const passwordInputProps = {
11146
11183
  info: String,
11147
11184
  mask: truthProp,
@@ -11151,8 +11188,8 @@
11151
11188
  focused: Boolean,
11152
11189
  errorInfo: String
11153
11190
  };
11154
- var stdin_default$q = vue.defineComponent({
11155
- name: name$l,
11191
+ var stdin_default$u = vue.defineComponent({
11192
+ name: name$p,
11156
11193
  props: passwordInputProps,
11157
11194
  emits: ["focus"],
11158
11195
  setup(props, {
@@ -11184,7 +11221,7 @@
11184
11221
  Points.push(vue.createVNode("li", {
11185
11222
  "class": [{
11186
11223
  [BORDER_LEFT]: showBorder
11187
- }, bem$k("item", {
11224
+ }, bem$o("item", {
11188
11225
  focus: showCursor
11189
11226
  })],
11190
11227
  "style": style
@@ -11193,7 +11230,7 @@
11193
11230
  visibility: char ? "visible" : "hidden"
11194
11231
  }
11195
11232
  }, null) : char, showCursor && vue.createVNode("div", {
11196
- "class": bem$k("cursor")
11233
+ "class": bem$o("cursor")
11197
11234
  }, null)]));
11198
11235
  }
11199
11236
  return Points;
@@ -11201,20 +11238,20 @@
11201
11238
  return () => {
11202
11239
  const info = props.errorInfo || props.info;
11203
11240
  return vue.createVNode("div", {
11204
- "class": bem$k()
11241
+ "class": bem$o()
11205
11242
  }, [vue.createVNode("ul", {
11206
- "class": [bem$k("security"), {
11243
+ "class": [bem$o("security"), {
11207
11244
  [BORDER_SURROUND]: !props.gutter
11208
11245
  }],
11209
11246
  "onTouchstartPassive": onTouchStart
11210
11247
  }, [renderPoints()]), info && vue.createVNode("div", {
11211
- "class": bem$k(props.errorInfo ? "error-info" : "info")
11248
+ "class": bem$o(props.errorInfo ? "error-info" : "info")
11212
11249
  }, [info])]);
11213
11250
  };
11214
11251
  }
11215
11252
  });
11216
- const PasswordInput = withInstall(stdin_default$q);
11217
- const PickerGroup = withInstall(stdin_default$1j);
11253
+ const PasswordInput = withInstall(stdin_default$u);
11254
+ const PickerGroup = withInstall(stdin_default$1n);
11218
11255
  function getWindow(node) {
11219
11256
  if (node == null) {
11220
11257
  return window;
@@ -12124,8 +12161,22 @@
12124
12161
  requires: ["popperOffsets"],
12125
12162
  fn: offset
12126
12163
  };
12127
- const [name$k, bem$j] = createNamespace("popover");
12128
- const popupProps = ["show", "overlay", "duration", "teleport", "overlayStyle", "overlayClass", "closeOnClickOverlay"];
12164
+ const useSyncPropRef = (getProp, setProp) => {
12165
+ const propRef = vue.ref(getProp());
12166
+ vue.watch(getProp, (value) => {
12167
+ if (value !== propRef.value) {
12168
+ propRef.value = value;
12169
+ }
12170
+ });
12171
+ vue.watch(propRef, (value) => {
12172
+ if (value !== getProp()) {
12173
+ setProp(value);
12174
+ }
12175
+ });
12176
+ return propRef;
12177
+ };
12178
+ const [name$o, bem$n] = createNamespace("popover");
12179
+ const popupProps = ["overlay", "duration", "teleport", "overlayStyle", "overlayClass", "closeOnClickOverlay"];
12129
12180
  const popoverProps = {
12130
12181
  show: Boolean,
12131
12182
  theme: makeStringProp("light"),
@@ -12150,8 +12201,8 @@
12150
12201
  default: "body"
12151
12202
  }
12152
12203
  };
12153
- var stdin_default$p = vue.defineComponent({
12154
- name: name$k,
12204
+ var stdin_default$t = vue.defineComponent({
12205
+ name: name$o,
12155
12206
  props: popoverProps,
12156
12207
  emits: ["select", "touchstart", "update:show"],
12157
12208
  setup(props, {
@@ -12163,6 +12214,7 @@
12163
12214
  const popupRef = vue.ref();
12164
12215
  const wrapperRef = vue.ref();
12165
12216
  const popoverRef = vue.ref();
12217
+ const show = useSyncPropRef(() => props.show, (value) => emit("update:show", value));
12166
12218
  const getPopoverOptions = () => ({
12167
12219
  placement: props.placement,
12168
12220
  modifiers: [{
@@ -12185,7 +12237,7 @@
12185
12237
  };
12186
12238
  const updateLocation = () => {
12187
12239
  vue.nextTick(() => {
12188
- if (!props.show) {
12240
+ if (!show.value) {
12189
12241
  return;
12190
12242
  }
12191
12243
  if (!popper) {
@@ -12195,10 +12247,12 @@
12195
12247
  }
12196
12248
  });
12197
12249
  };
12198
- const updateShow = (value) => emit("update:show", value);
12250
+ const updateShow = (value) => {
12251
+ show.value = value;
12252
+ };
12199
12253
  const onClickWrapper = () => {
12200
12254
  if (props.trigger === "click") {
12201
- updateShow(!props.show);
12255
+ show.value = !show.value;
12202
12256
  }
12203
12257
  };
12204
12258
  const onClickAction = (action, index) => {
@@ -12207,12 +12261,12 @@
12207
12261
  }
12208
12262
  emit("select", action, index);
12209
12263
  if (props.closeOnClickAction) {
12210
- updateShow(false);
12264
+ show.value = false;
12211
12265
  }
12212
12266
  };
12213
12267
  const onClickAway = () => {
12214
- if (props.show && props.closeOnClickOutside && (!props.overlay || props.closeOnClickOverlay)) {
12215
- updateShow(false);
12268
+ if (show.value && props.closeOnClickOutside && (!props.overlay || props.closeOnClickOverlay)) {
12269
+ show.value = false;
12216
12270
  }
12217
12271
  };
12218
12272
  const renderActionContent = (action, index) => {
@@ -12225,9 +12279,9 @@
12225
12279
  return [action.icon && vue.createVNode(Icon, {
12226
12280
  "name": action.icon,
12227
12281
  "classPrefix": props.iconPrefix,
12228
- "class": bem$j("action-icon")
12282
+ "class": bem$n("action-icon")
12229
12283
  }, null), vue.createVNode("div", {
12230
- "class": [bem$j("action-text"), BORDER_BOTTOM]
12284
+ "class": [bem$n("action-text"), BORDER_BOTTOM]
12231
12285
  }, [action.text])];
12232
12286
  };
12233
12287
  const renderAction = (action, index) => {
@@ -12239,7 +12293,7 @@
12239
12293
  } = action;
12240
12294
  return vue.createVNode("div", {
12241
12295
  "role": "menuitem",
12242
- "class": [bem$j("action", {
12296
+ "class": [bem$n("action", {
12243
12297
  disabled,
12244
12298
  "with-icon": icon
12245
12299
  }), className],
@@ -12264,7 +12318,7 @@
12264
12318
  popper = null;
12265
12319
  }
12266
12320
  });
12267
- vue.watch(() => [props.show, props.offset, props.placement], updateLocation);
12321
+ vue.watch(() => [show.value, props.offset, props.placement], updateLocation);
12268
12322
  useClickAway([wrapperRef, popupRef], onClickAway, {
12269
12323
  eventName: "touchstart"
12270
12324
  });
@@ -12272,28 +12326,29 @@
12272
12326
  var _a;
12273
12327
  return vue.createVNode(vue.Fragment, null, [vue.createVNode("span", {
12274
12328
  "ref": wrapperRef,
12275
- "class": bem$j("wrapper"),
12329
+ "class": bem$n("wrapper"),
12276
12330
  "onClick": onClickWrapper
12277
12331
  }, [(_a = slots.reference) == null ? void 0 : _a.call(slots)]), vue.createVNode(Popup, vue.mergeProps({
12278
12332
  "ref": popoverRef,
12279
- "class": bem$j([props.theme]),
12333
+ "show": show.value,
12334
+ "class": bem$n([props.theme]),
12280
12335
  "position": "",
12281
12336
  "transition": "van-popover-zoom",
12282
12337
  "lockScroll": false,
12283
12338
  "onUpdate:show": updateShow
12284
12339
  }, attrs, pick(props, popupProps)), {
12285
12340
  default: () => [props.showArrow && vue.createVNode("div", {
12286
- "class": bem$j("arrow")
12341
+ "class": bem$n("arrow")
12287
12342
  }, null), vue.createVNode("div", {
12288
12343
  "role": "menu",
12289
- "class": bem$j("content")
12344
+ "class": bem$n("content")
12290
12345
  }, [slots.default ? slots.default() : props.actions.map(renderAction)])]
12291
12346
  })]);
12292
12347
  };
12293
12348
  }
12294
12349
  });
12295
- const Popover = withInstall(stdin_default$p);
12296
- const [name$j, bem$i] = createNamespace("progress");
12350
+ const Popover = withInstall(stdin_default$t);
12351
+ const [name$n, bem$m] = createNamespace("progress");
12297
12352
  const progressProps = {
12298
12353
  color: String,
12299
12354
  inactive: Boolean,
@@ -12309,8 +12364,8 @@
12309
12364
  validator: (value) => value >= 0 && value <= 100
12310
12365
  }
12311
12366
  };
12312
- var stdin_default$o = vue.defineComponent({
12313
- name: name$j,
12367
+ var stdin_default$s = vue.defineComponent({
12368
+ name: name$n,
12314
12369
  props: progressProps,
12315
12370
  setup(props) {
12316
12371
  const background = vue.computed(() => props.inactive ? void 0 : props.color);
@@ -12331,7 +12386,7 @@
12331
12386
  };
12332
12387
  return vue.createVNode("span", {
12333
12388
  "style": style,
12334
- "class": bem$i("pivot", {
12389
+ "class": bem$m("pivot", {
12335
12390
  inactive: props.inactive
12336
12391
  })
12337
12392
  }, [text]);
@@ -12352,10 +12407,10 @@
12352
12407
  background: background.value
12353
12408
  };
12354
12409
  return vue.createVNode("div", {
12355
- "class": bem$i(),
12410
+ "class": bem$m(),
12356
12411
  "style": rootStyle
12357
12412
  }, [vue.createVNode("span", {
12358
- "class": bem$i("portion", {
12413
+ "class": bem$m("portion", {
12359
12414
  inactive: props.inactive
12360
12415
  }),
12361
12416
  "style": portionStyle
@@ -12363,8 +12418,8 @@
12363
12418
  };
12364
12419
  }
12365
12420
  });
12366
- const Progress = withInstall(stdin_default$o);
12367
- const [name$i, bem$h, t$4] = createNamespace("pull-refresh");
12421
+ const Progress = withInstall(stdin_default$s);
12422
+ const [name$m, bem$l, t$4] = createNamespace("pull-refresh");
12368
12423
  const DEFAULT_HEAD_HEIGHT = 50;
12369
12424
  const TEXT_STATUS = ["pulling", "loosing", "success"];
12370
12425
  const pullRefreshProps = {
@@ -12379,8 +12434,8 @@
12379
12434
  successDuration: makeNumericProp(500),
12380
12435
  animationDuration: makeNumericProp(300)
12381
12436
  };
12382
- var stdin_default$n = vue.defineComponent({
12383
- name: name$i,
12437
+ var stdin_default$r = vue.defineComponent({
12438
+ name: name$m,
12384
12439
  props: pullRefreshProps,
12385
12440
  emits: ["change", "refresh", "update:modelValue"],
12386
12441
  setup(props, {
@@ -12455,12 +12510,12 @@
12455
12510
  const nodes = [];
12456
12511
  if (TEXT_STATUS.includes(status)) {
12457
12512
  nodes.push(vue.createVNode("div", {
12458
- "class": bem$h("text")
12513
+ "class": bem$l("text")
12459
12514
  }, [getStatusText()]));
12460
12515
  }
12461
12516
  if (status === "loading") {
12462
12517
  nodes.push(vue.createVNode(Loading, {
12463
- "class": bem$h("loading")
12518
+ "class": bem$l("loading")
12464
12519
  }, {
12465
12520
  default: getStatusText
12466
12521
  }));
@@ -12533,23 +12588,23 @@
12533
12588
  };
12534
12589
  return vue.createVNode("div", {
12535
12590
  "ref": root,
12536
- "class": bem$h()
12591
+ "class": bem$l()
12537
12592
  }, [vue.createVNode("div", {
12538
12593
  "ref": track,
12539
- "class": bem$h("track"),
12594
+ "class": bem$l("track"),
12540
12595
  "style": trackStyle,
12541
12596
  "onTouchstartPassive": onTouchStart,
12542
12597
  "onTouchend": onTouchEnd,
12543
12598
  "onTouchcancel": onTouchEnd
12544
12599
  }, [vue.createVNode("div", {
12545
- "class": bem$h("head"),
12600
+ "class": bem$l("head"),
12546
12601
  "style": getHeadStyle()
12547
12602
  }, [renderStatus()]), (_a = slots.default) == null ? void 0 : _a.call(slots)])]);
12548
12603
  };
12549
12604
  }
12550
12605
  });
12551
- const PullRefresh = withInstall(stdin_default$n);
12552
- const [name$h, bem$g] = createNamespace("rate");
12606
+ const PullRefresh = withInstall(stdin_default$r);
12607
+ const [name$l, bem$k] = createNamespace("rate");
12553
12608
  function getRateStatus(value, index, allowHalf, readonly) {
12554
12609
  if (value >= index) {
12555
12610
  return {
@@ -12591,8 +12646,8 @@
12591
12646
  modelValue: makeNumberProp(0),
12592
12647
  disabledColor: String
12593
12648
  };
12594
- var stdin_default$m = vue.defineComponent({
12595
- name: name$h,
12649
+ var stdin_default$q = vue.defineComponent({
12650
+ name: name$l,
12596
12651
  props: rateProps,
12597
12652
  emits: ["change", "update:modelValue"],
12598
12653
  setup(props, {
@@ -12711,7 +12766,7 @@
12711
12766
  "ref": setItemRefs(index),
12712
12767
  "role": "radio",
12713
12768
  "style": style,
12714
- "class": bem$g("item"),
12769
+ "class": bem$k("item"),
12715
12770
  "tabindex": disabled ? void 0 : 0,
12716
12771
  "aria-setsize": count,
12717
12772
  "aria-posinset": score,
@@ -12720,7 +12775,7 @@
12720
12775
  }, [vue.createVNode(Icon, {
12721
12776
  "size": size,
12722
12777
  "name": isFull ? icon : voidIcon,
12723
- "class": bem$g("icon", {
12778
+ "class": bem$k("icon", {
12724
12779
  disabled,
12725
12780
  full: isFull
12726
12781
  }),
@@ -12732,7 +12787,7 @@
12732
12787
  width: item.value + "em"
12733
12788
  },
12734
12789
  "name": isVoid ? voidIcon : icon,
12735
- "class": bem$g("icon", ["half", {
12790
+ "class": bem$k("icon", ["half", {
12736
12791
  disabled,
12737
12792
  full: !isVoid
12738
12793
  }]),
@@ -12747,7 +12802,7 @@
12747
12802
  return () => vue.createVNode("div", {
12748
12803
  "ref": groupRef,
12749
12804
  "role": "radiogroup",
12750
- "class": bem$g({
12805
+ "class": bem$k({
12751
12806
  readonly: props.readonly,
12752
12807
  disabled: props.disabled
12753
12808
  }),
@@ -12758,9 +12813,9 @@
12758
12813
  }, [list.value.map(renderStar)]);
12759
12814
  }
12760
12815
  });
12761
- const Rate = withInstall(stdin_default$m);
12762
- const Row = withInstall(stdin_default$U);
12763
- const [name$g, bem$f, t$3] = createNamespace("search");
12816
+ const Rate = withInstall(stdin_default$q);
12817
+ const Row = withInstall(stdin_default$Y);
12818
+ const [name$k, bem$j, t$3] = createNamespace("search");
12764
12819
  const searchProps = extend({}, fieldSharedProps, {
12765
12820
  label: String,
12766
12821
  shape: makeStringProp("square"),
@@ -12770,8 +12825,8 @@
12770
12825
  background: String,
12771
12826
  showAction: Boolean
12772
12827
  });
12773
- var stdin_default$l = vue.defineComponent({
12774
- name: name$g,
12828
+ var stdin_default$p = vue.defineComponent({
12829
+ name: name$k,
12775
12830
  props: searchProps,
12776
12831
  emits: ["blur", "focus", "clear", "search", "cancel", "clickInput", "clickLeftIcon", "clickRightIcon", "update:modelValue"],
12777
12832
  setup(props, {
@@ -12798,7 +12853,7 @@
12798
12853
  const renderLabel = () => {
12799
12854
  if (slots.label || props.label) {
12800
12855
  return vue.createVNode("label", {
12801
- "class": bem$f("label"),
12856
+ "class": bem$j("label"),
12802
12857
  "for": getInputId()
12803
12858
  }, [slots.label ? slots.label() : props.label]);
12804
12859
  }
@@ -12807,7 +12862,7 @@
12807
12862
  if (props.showAction) {
12808
12863
  const text = props.actionText || t$3("cancel");
12809
12864
  return vue.createVNode("div", {
12810
- "class": bem$f("action"),
12865
+ "class": bem$j("action"),
12811
12866
  "role": "button",
12812
12867
  "tabindex": 0,
12813
12868
  "onClick": onCancel
@@ -12837,7 +12892,7 @@
12837
12892
  return vue.createVNode(Field, vue.mergeProps({
12838
12893
  "ref": filedRef,
12839
12894
  "type": "search",
12840
- "class": bem$f("field"),
12895
+ "class": bem$j("field"),
12841
12896
  "border": false,
12842
12897
  "onBlur": onBlur,
12843
12898
  "onFocus": onFocus,
@@ -12856,19 +12911,19 @@
12856
12911
  return () => {
12857
12912
  var _a;
12858
12913
  return vue.createVNode("div", {
12859
- "class": bem$f({
12914
+ "class": bem$j({
12860
12915
  "show-action": props.showAction
12861
12916
  }),
12862
12917
  "style": {
12863
12918
  background: props.background
12864
12919
  }
12865
12920
  }, [(_a = slots.left) == null ? void 0 : _a.call(slots), vue.createVNode("div", {
12866
- "class": bem$f("content", props.shape)
12921
+ "class": bem$j("content", props.shape)
12867
12922
  }, [renderLabel(), renderField()]), renderAction()]);
12868
12923
  };
12869
12924
  }
12870
12925
  });
12871
- const Search = withInstall(stdin_default$l);
12926
+ const Search = withInstall(stdin_default$p);
12872
12927
  const popupInheritKeys = [...popupSharedPropKeys, "round", "closeOnPopstate", "safeAreaInsetBottom"];
12873
12928
  const iconMap = {
12874
12929
  qq: "qq",
@@ -12880,7 +12935,7 @@
12880
12935
  "weapp-qrcode": "miniprogram-o",
12881
12936
  "wechat-moments": "wechat-moments"
12882
12937
  };
12883
- const [name$f, bem$e, t$2] = createNamespace("share-sheet");
12938
+ const [name$j, bem$i, t$2] = createNamespace("share-sheet");
12884
12939
  const shareSheetProps = extend({}, popupSharedProps, {
12885
12940
  title: String,
12886
12941
  round: truthProp,
@@ -12890,8 +12945,8 @@
12890
12945
  closeOnPopstate: truthProp,
12891
12946
  safeAreaInsetBottom: truthProp
12892
12947
  });
12893
- var stdin_default$k = vue.defineComponent({
12894
- name: name$f,
12948
+ var stdin_default$o = vue.defineComponent({
12949
+ name: name$j,
12895
12950
  props: shareSheetProps,
12896
12951
  emits: ["cancel", "select", "update:show"],
12897
12952
  setup(props, {
@@ -12909,25 +12964,25 @@
12909
12964
  const description = slots.description ? slots.description() : props.description;
12910
12965
  if (title || description) {
12911
12966
  return vue.createVNode("div", {
12912
- "class": bem$e("header")
12967
+ "class": bem$i("header")
12913
12968
  }, [title && vue.createVNode("h2", {
12914
- "class": bem$e("title")
12969
+ "class": bem$i("title")
12915
12970
  }, [title]), description && vue.createVNode("span", {
12916
- "class": bem$e("description")
12971
+ "class": bem$i("description")
12917
12972
  }, [description])]);
12918
12973
  }
12919
12974
  };
12920
12975
  const renderIcon = (icon) => {
12921
12976
  if (iconMap[icon]) {
12922
12977
  return vue.createVNode("div", {
12923
- "class": bem$e("icon", [icon])
12978
+ "class": bem$i("icon", [icon])
12924
12979
  }, [vue.createVNode(Icon, {
12925
12980
  "name": iconMap[icon] || icon
12926
12981
  }, null)]);
12927
12982
  }
12928
12983
  return vue.createVNode("img", {
12929
12984
  "src": icon,
12930
- "class": bem$e("image-icon")
12985
+ "class": bem$i("image-icon")
12931
12986
  }, null);
12932
12987
  };
12933
12988
  const renderOption = (option, index) => {
@@ -12940,16 +12995,16 @@
12940
12995
  return vue.createVNode("div", {
12941
12996
  "role": "button",
12942
12997
  "tabindex": 0,
12943
- "class": [bem$e("option"), className, HAPTICS_FEEDBACK],
12998
+ "class": [bem$i("option"), className, HAPTICS_FEEDBACK],
12944
12999
  "onClick": () => onSelect(option, index)
12945
13000
  }, [renderIcon(icon), name2 && vue.createVNode("span", {
12946
- "class": bem$e("name")
13001
+ "class": bem$i("name")
12947
13002
  }, [name2]), description && vue.createVNode("span", {
12948
- "class": bem$e("option-description")
13003
+ "class": bem$i("option-description")
12949
13004
  }, [description])]);
12950
13005
  };
12951
13006
  const renderOptions = (options, border) => vue.createVNode("div", {
12952
- "class": bem$e("options", {
13007
+ "class": bem$i("options", {
12953
13008
  border
12954
13009
  })
12955
13010
  }, [options.map(renderOption)]);
@@ -12968,13 +13023,13 @@
12968
13023
  if (slots.cancel || cancelText) {
12969
13024
  return vue.createVNode("button", {
12970
13025
  "type": "button",
12971
- "class": bem$e("cancel"),
13026
+ "class": bem$i("cancel"),
12972
13027
  "onClick": onCancel
12973
13028
  }, [slots.cancel ? slots.cancel() : cancelText]);
12974
13029
  }
12975
13030
  };
12976
13031
  return () => vue.createVNode(Popup, vue.mergeProps({
12977
- "class": bem$e(),
13032
+ "class": bem$i(),
12978
13033
  "position": "bottom",
12979
13034
  "onUpdate:show": updateShow
12980
13035
  }, pick(props, popupInheritKeys)), {
@@ -12982,14 +13037,14 @@
12982
13037
  });
12983
13038
  }
12984
13039
  });
12985
- const ShareSheet = withInstall(stdin_default$k);
12986
- const [name$e, bem$d] = createNamespace("sidebar");
12987
- const SIDEBAR_KEY = Symbol(name$e);
13040
+ const ShareSheet = withInstall(stdin_default$o);
13041
+ const [name$i, bem$h] = createNamespace("sidebar");
13042
+ const SIDEBAR_KEY = Symbol(name$i);
12988
13043
  const sidebarProps = {
12989
13044
  modelValue: makeNumericProp(0)
12990
13045
  };
12991
- var stdin_default$j = vue.defineComponent({
12992
- name: name$e,
13046
+ var stdin_default$n = vue.defineComponent({
13047
+ name: name$i,
12993
13048
  props: sidebarProps,
12994
13049
  emits: ["change", "update:modelValue"],
12995
13050
  setup(props, {
@@ -13014,13 +13069,13 @@
13014
13069
  var _a;
13015
13070
  return vue.createVNode("div", {
13016
13071
  "role": "tablist",
13017
- "class": bem$d()
13072
+ "class": bem$h()
13018
13073
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
13019
13074
  };
13020
13075
  }
13021
13076
  });
13022
- const Sidebar = withInstall(stdin_default$j);
13023
- const [name$d, bem$c] = createNamespace("sidebar-item");
13077
+ const Sidebar = withInstall(stdin_default$n);
13078
+ const [name$h, bem$g] = createNamespace("sidebar-item");
13024
13079
  const sidebarItemProps = extend({}, routeProps, {
13025
13080
  dot: Boolean,
13026
13081
  title: String,
@@ -13028,8 +13083,8 @@
13028
13083
  disabled: Boolean,
13029
13084
  badgeProps: Object
13030
13085
  });
13031
- var stdin_default$i = vue.defineComponent({
13032
- name: name$d,
13086
+ var stdin_default$m = vue.defineComponent({
13087
+ name: name$h,
13033
13088
  props: sidebarItemProps,
13034
13089
  emits: ["click"],
13035
13090
  setup(props, {
@@ -13062,7 +13117,7 @@
13062
13117
  const selected = index.value === parent.getActive();
13063
13118
  return vue.createVNode("div", {
13064
13119
  "role": "tab",
13065
- "class": bem$c({
13120
+ "class": bem$g({
13066
13121
  select: selected,
13067
13122
  disabled
13068
13123
  }),
@@ -13071,7 +13126,7 @@
13071
13126
  "onClick": onClick
13072
13127
  }, [vue.createVNode(Badge, vue.mergeProps({
13073
13128
  "dot": dot,
13074
- "class": bem$c("text"),
13129
+ "class": bem$g("text"),
13075
13130
  "content": badge
13076
13131
  }, props.badgeProps), {
13077
13132
  default: () => [slots.title ? slots.title() : title]
@@ -13079,27 +13134,83 @@
13079
13134
  };
13080
13135
  }
13081
13136
  });
13082
- const SidebarItem = withInstall(stdin_default$i);
13083
- const [name$c, bem$b] = createNamespace("skeleton");
13137
+ const SidebarItem = withInstall(stdin_default$m);
13138
+ const [name$g, bem$f] = createNamespace("skeleton-title");
13139
+ const skeletonTitleProps = {
13140
+ round: Boolean,
13141
+ titleWidth: numericProp
13142
+ };
13143
+ var stdin_default$l = vue.defineComponent({
13144
+ name: name$g,
13145
+ props: skeletonTitleProps,
13146
+ setup(props) {
13147
+ return () => vue.createVNode("h3", {
13148
+ "class": bem$f([{
13149
+ round: props.round
13150
+ }]),
13151
+ "style": {
13152
+ width: addUnit(props.titleWidth)
13153
+ }
13154
+ }, null);
13155
+ }
13156
+ });
13157
+ const [name$f, bem$e] = createNamespace("skeleton-avatar");
13158
+ const skeletonAvatarProps = {
13159
+ avatarSize: numericProp,
13160
+ avatarShape: makeStringProp("round")
13161
+ };
13162
+ var stdin_default$k = vue.defineComponent({
13163
+ name: name$f,
13164
+ props: skeletonAvatarProps,
13165
+ setup(props) {
13166
+ return () => vue.createVNode("div", {
13167
+ "class": bem$e([props.avatarShape]),
13168
+ "style": getSizeStyle(props.avatarSize)
13169
+ }, null);
13170
+ }
13171
+ });
13084
13172
  const DEFAULT_ROW_WIDTH = "100%";
13173
+ const skeletonParagraphProps = {
13174
+ round: Boolean,
13175
+ rowWidth: {
13176
+ type: numericProp,
13177
+ default: DEFAULT_ROW_WIDTH
13178
+ }
13179
+ };
13180
+ const [name$e, bem$d] = createNamespace("skeleton-paragraph");
13181
+ var stdin_default$j = vue.defineComponent({
13182
+ name: name$e,
13183
+ props: skeletonParagraphProps,
13184
+ setup(props) {
13185
+ return () => vue.createVNode("div", {
13186
+ "class": bem$d([{
13187
+ round: props.round
13188
+ }]),
13189
+ "style": {
13190
+ width: props.rowWidth
13191
+ }
13192
+ }, null);
13193
+ }
13194
+ });
13195
+ const [name$d, bem$c] = createNamespace("skeleton");
13085
13196
  const DEFAULT_LAST_ROW_WIDTH = "60%";
13086
13197
  const skeletonProps = {
13087
13198
  row: makeNumericProp(0),
13088
- title: Boolean,
13089
13199
  round: Boolean,
13200
+ title: Boolean,
13201
+ titleWidth: numericProp,
13090
13202
  avatar: Boolean,
13091
- loading: truthProp,
13092
- animate: truthProp,
13093
13203
  avatarSize: numericProp,
13094
- titleWidth: numericProp,
13095
13204
  avatarShape: makeStringProp("round"),
13205
+ loading: truthProp,
13206
+ animate: truthProp,
13096
13207
  rowWidth: {
13097
13208
  type: [Number, String, Array],
13098
13209
  default: DEFAULT_ROW_WIDTH
13099
13210
  }
13100
13211
  };
13101
- var stdin_default$h = vue.defineComponent({
13102
- name: name$c,
13212
+ var stdin_default$i = vue.defineComponent({
13213
+ name: name$d,
13103
13214
  inheritAttrs: false,
13104
13215
  props: skeletonProps,
13105
13216
  setup(props, {
@@ -13108,19 +13219,17 @@
13108
13219
  }) {
13109
13220
  const renderAvatar = () => {
13110
13221
  if (props.avatar) {
13111
- return vue.createVNode("div", {
13112
- "class": bem$b("avatar", props.avatarShape),
13113
- "style": getSizeStyle(props.avatarSize)
13222
+ return vue.createVNode(stdin_default$k, {
13223
+ "avatarShape": props.avatarShape,
13224
+ "avatarSize": props.avatarSize
13114
13225
  }, null);
13115
13226
  }
13116
13227
  };
13117
13228
  const renderTitle = () => {
13118
13229
  if (props.title) {
13119
- return vue.createVNode("h3", {
13120
- "class": bem$b("title"),
13121
- "style": {
13122
- width: addUnit(props.titleWidth)
13123
- }
13230
+ return vue.createVNode(stdin_default$l, {
13231
+ "round": props.round,
13232
+ "titleWidth": props.titleWidth
13124
13233
  }, null);
13125
13234
  }
13126
13235
  };
@@ -13136,29 +13245,56 @@
13136
13245
  }
13137
13246
  return rowWidth;
13138
13247
  };
13139
- const renderRows = () => Array(+props.row).fill("").map((_, i) => vue.createVNode("div", {
13140
- "class": bem$b("row"),
13141
- "style": {
13142
- width: addUnit(getRowWidth(i))
13143
- }
13248
+ const renderRows = () => Array(+props.row).fill("").map((_, i) => vue.createVNode(stdin_default$j, {
13249
+ "key": i,
13250
+ "round": props.round,
13251
+ "rowWidth": addUnit(getRowWidth(i))
13144
13252
  }, null));
13253
+ const renderContents = () => {
13254
+ if (slots.template) {
13255
+ return slots.template();
13256
+ }
13257
+ return vue.createVNode(vue.Fragment, null, [renderAvatar(), vue.createVNode("div", {
13258
+ "class": bem$c("content")
13259
+ }, [renderTitle(), renderRows()])]);
13260
+ };
13145
13261
  return () => {
13146
13262
  var _a;
13147
13263
  if (!props.loading) {
13148
13264
  return (_a = slots.default) == null ? void 0 : _a.call(slots);
13149
13265
  }
13150
13266
  return vue.createVNode("div", vue.mergeProps({
13151
- "class": bem$b({
13267
+ "class": bem$c({
13152
13268
  animate: props.animate,
13153
13269
  round: props.round
13154
13270
  })
13155
- }, attrs), [renderAvatar(), vue.createVNode("div", {
13156
- "class": bem$b("content")
13157
- }, [renderTitle(), renderRows()])]);
13271
+ }, attrs), [renderContents()]);
13158
13272
  };
13159
13273
  }
13160
13274
  });
13161
- const Skeleton = withInstall(stdin_default$h);
13275
+ const [name$c, bem$b] = createNamespace("skeleton-image");
13276
+ const skeletonImageProps = {
13277
+ imageSize: numericProp,
13278
+ imageShape: makeStringProp("square")
13279
+ };
13280
+ var stdin_default$h = vue.defineComponent({
13281
+ name: name$c,
13282
+ props: skeletonImageProps,
13283
+ setup(props) {
13284
+ return () => vue.createVNode("div", {
13285
+ "class": bem$b([props.imageShape]),
13286
+ "style": getSizeStyle(props.imageSize)
13287
+ }, [vue.createVNode(Icon, {
13288
+ "name": "photo",
13289
+ "class": bem$b("icon")
13290
+ }, null)]);
13291
+ }
13292
+ });
13293
+ const SkeletonImage = withInstall(stdin_default$h);
13294
+ const SkeletonTitle = withInstall(stdin_default$l);
13295
+ const SkeletonAvatar = withInstall(stdin_default$k);
13296
+ const SkeletonParagraph = withInstall(stdin_default$j);
13297
+ const Skeleton = withInstall(stdin_default$i);
13162
13298
  const [name$b, bem$a] = createNamespace("slider");
13163
13299
  const sliderProps = {
13164
13300
  min: makeNumericProp(0),
@@ -13652,7 +13788,6 @@
13652
13788
  const Step = withInstall(stdin_default$d);
13653
13789
  const [name$7, bem$6] = createNamespace("stepper");
13654
13790
  const LONG_PRESS_INTERVAL = 200;
13655
- const LONG_PRESS_START_TIME = 600;
13656
13791
  const isEqual = (value1, value2) => String(value1) === String(value2);
13657
13792
  const stepperProps = {
13658
13793
  min: makeNumericProp(1),
@@ -14372,7 +14507,7 @@
14372
14507
  case "second":
14373
14508
  return genOptions(+props.minSecond, +props.maxSecond, type, formatter, filter);
14374
14509
  default:
14375
- throw new Error(`[Vant] DatePicker: unsupported columns type: ${type}`);
14510
+ return [];
14376
14511
  }
14377
14512
  }));
14378
14513
  vue.watch(currentValues, (newValues) => {
@@ -14854,7 +14989,7 @@
14854
14989
  };
14855
14990
  const onClickUpload = (event) => emit("clickUpload", event);
14856
14991
  const renderUpload = () => {
14857
- if (props.modelValue.length >= props.maxCount || !props.showUpload) {
14992
+ if (props.modelValue.length >= props.maxCount) {
14858
14993
  return;
14859
14994
  }
14860
14995
  const Input = props.readonly ? null : vue.createVNode("input", {
@@ -14873,7 +15008,7 @@
14873
15008
  "onClick": onClickUpload
14874
15009
  }, [slots.default(), Input]);
14875
15010
  }
14876
- return vue.createVNode("div", {
15011
+ return vue.withDirectives(vue.createVNode("div", {
14877
15012
  "class": bem("upload", {
14878
15013
  readonly: props.readonly
14879
15014
  }),
@@ -14884,7 +15019,7 @@
14884
15019
  "class": bem("upload-icon")
14885
15020
  }, null), props.uploadText && vue.createVNode("span", {
14886
15021
  "class": bem("upload-text")
14887
- }, [props.uploadText]), Input]);
15022
+ }, [props.uploadText]), Input]), [[vue.vShow, props.showUpload]]);
14888
15023
  };
14889
15024
  const chooseFile = () => {
14890
15025
  if (inputRef.value && !props.disabled) {
@@ -15685,15 +15820,14 @@
15685
15820
  default: "img"
15686
15821
  }
15687
15822
  },
15688
- render(h) {
15689
- return h(
15823
+ render() {
15824
+ var _a, _b;
15825
+ return vue.h(
15690
15826
  this.tag,
15691
15827
  {
15692
- attrs: {
15693
- src: this.renderSrc
15694
- }
15828
+ src: this.renderSrc
15695
15829
  },
15696
- this.$slots.default
15830
+ (_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)
15697
15831
  );
15698
15832
  },
15699
15833
  data() {
@@ -15790,7 +15924,7 @@
15790
15924
  });
15791
15925
  }
15792
15926
  };
15793
- const version = "4.0.0-rc.5";
15927
+ const version = "4.0.0-rc.7";
15794
15928
  function install(app) {
15795
15929
  const components = [
15796
15930
  ActionBar,
@@ -15963,6 +16097,10 @@
15963
16097
  exports2.Sidebar = Sidebar;
15964
16098
  exports2.SidebarItem = SidebarItem;
15965
16099
  exports2.Skeleton = Skeleton;
16100
+ exports2.SkeletonAvatar = SkeletonAvatar;
16101
+ exports2.SkeletonImage = SkeletonImage;
16102
+ exports2.SkeletonParagraph = SkeletonParagraph;
16103
+ exports2.SkeletonTitle = SkeletonTitle;
15966
16104
  exports2.Slider = Slider;
15967
16105
  exports2.Space = Space;
15968
16106
  exports2.Step = Step;
@@ -16068,7 +16206,11 @@
16068
16206
  exports2.showToast = showToast;
16069
16207
  exports2.sidebarItemProps = sidebarItemProps;
16070
16208
  exports2.sidebarProps = sidebarProps;
16209
+ exports2.skeletonAvatarProps = skeletonAvatarProps;
16210
+ exports2.skeletonImageProps = skeletonImageProps;
16211
+ exports2.skeletonParagraphProps = skeletonParagraphProps;
16071
16212
  exports2.skeletonProps = skeletonProps;
16213
+ exports2.skeletonTitleProps = skeletonTitleProps;
16072
16214
  exports2.sliderProps = sliderProps;
16073
16215
  exports2.spaceProps = spaceProps;
16074
16216
  exports2.stepperProps = stepperProps;