vant 4.7.2 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +1 -0
  2. package/es/address-edit/AddressEdit.mjs +1 -1
  3. package/es/calendar/Calendar.mjs +20 -17
  4. package/es/cell/Cell.d.ts +17 -5
  5. package/es/cell/Cell.mjs +5 -2
  6. package/es/cell/index.d.ts +9 -3
  7. package/es/checkbox/Checker.mjs +7 -1
  8. package/es/col/Col.mjs +11 -3
  9. package/es/collapse-item/CollapseItem.d.ts +13 -4
  10. package/es/collapse-item/index.d.ts +9 -3
  11. package/es/config-provider/types.d.ts +1 -1
  12. package/es/field/Field.d.ts +30 -21
  13. package/es/field/Field.mjs +11 -3
  14. package/es/field/index.css +1 -1
  15. package/es/field/index.d.ts +18 -12
  16. package/es/field/types.d.ts +1 -1
  17. package/es/form/Form.d.ts +3 -0
  18. package/es/form/Form.mjs +1 -0
  19. package/es/form/index.d.ts +2 -0
  20. package/es/highlight/Highlight.d.ts +96 -0
  21. package/es/highlight/Highlight.mjs +122 -0
  22. package/es/highlight/index.css +1 -0
  23. package/es/highlight/index.d.ts +73 -0
  24. package/es/highlight/index.mjs +10 -0
  25. package/es/highlight/style/index.d.ts +1 -0
  26. package/es/highlight/style/index.mjs +2 -0
  27. package/es/highlight/types.d.ts +3 -0
  28. package/es/highlight/types.mjs +0 -0
  29. package/es/image-preview/ImagePreview.mjs +10 -0
  30. package/es/image-preview/ImagePreviewItem.d.ts +27 -1
  31. package/es/image-preview/ImagePreviewItem.mjs +17 -12
  32. package/es/image-preview/types.d.ts +7 -0
  33. package/es/index.d.ts +2 -1
  34. package/es/index.mjs +4 -1
  35. package/es/locale/lang/ar-SA.d.ts +63 -0
  36. package/es/locale/lang/ar-SA.mjs +65 -0
  37. package/es/picker-group/PickerGroup.mjs +3 -3
  38. package/es/progress/types.d.ts +1 -4
  39. package/es/row/Row.d.ts +8 -4
  40. package/es/row/Row.mjs +35 -4
  41. package/es/row/index.d.ts +3 -3
  42. package/es/search/Search.d.ts +13 -13
  43. package/es/search/Search.mjs +3 -1
  44. package/es/search/index.css +1 -1
  45. package/es/search/index.d.ts +9 -9
  46. package/es/signature/Signature.mjs +16 -3
  47. package/es/signature/index.d.ts +1 -1
  48. package/es/signature/types.d.ts +6 -0
  49. package/es/tabs/Tabs.d.ts +13 -0
  50. package/es/tabs/Tabs.mjs +3 -2
  51. package/es/tabs/index.d.ts +9 -0
  52. package/es/text-ellipsis/index.css +1 -1
  53. package/lib/address-edit/AddressEdit.js +1 -1
  54. package/lib/calendar/Calendar.js +20 -17
  55. package/lib/cell/Cell.d.ts +17 -5
  56. package/lib/cell/Cell.js +5 -2
  57. package/lib/cell/index.d.ts +9 -3
  58. package/lib/checkbox/Checker.js +7 -1
  59. package/lib/col/Col.js +10 -2
  60. package/lib/collapse-item/CollapseItem.d.ts +13 -4
  61. package/lib/collapse-item/index.d.ts +9 -3
  62. package/lib/config-provider/types.d.ts +1 -1
  63. package/lib/field/Field.d.ts +30 -21
  64. package/lib/field/Field.js +11 -3
  65. package/lib/field/index.css +1 -1
  66. package/lib/field/index.d.ts +18 -12
  67. package/lib/field/types.d.ts +1 -1
  68. package/lib/form/Form.d.ts +3 -0
  69. package/lib/form/Form.js +1 -0
  70. package/lib/form/index.d.ts +2 -0
  71. package/lib/highlight/Highlight.d.ts +96 -0
  72. package/lib/highlight/Highlight.js +141 -0
  73. package/lib/highlight/index.css +1 -0
  74. package/lib/highlight/index.d.ts +73 -0
  75. package/lib/highlight/index.js +39 -0
  76. package/lib/highlight/style/index.d.ts +1 -0
  77. package/lib/highlight/style/index.js +2 -0
  78. package/lib/highlight/types.d.ts +3 -0
  79. package/lib/highlight/types.js +15 -0
  80. package/lib/image-preview/ImagePreview.js +10 -0
  81. package/lib/image-preview/ImagePreviewItem.d.ts +27 -1
  82. package/lib/image-preview/ImagePreviewItem.js +17 -12
  83. package/lib/image-preview/types.d.ts +7 -0
  84. package/lib/index.css +1 -1
  85. package/lib/index.d.ts +2 -1
  86. package/lib/index.js +4 -1
  87. package/lib/locale/lang/ar-SA.d.ts +63 -0
  88. package/lib/locale/lang/ar-SA.js +84 -0
  89. package/lib/picker-group/PickerGroup.js +2 -2
  90. package/lib/progress/types.d.ts +1 -4
  91. package/lib/row/Row.d.ts +8 -4
  92. package/lib/row/Row.js +34 -3
  93. package/lib/row/index.d.ts +3 -3
  94. package/lib/search/Search.d.ts +13 -13
  95. package/lib/search/Search.js +3 -1
  96. package/lib/search/index.css +1 -1
  97. package/lib/search/index.d.ts +9 -9
  98. package/lib/signature/Signature.js +14 -1
  99. package/lib/signature/index.d.ts +1 -1
  100. package/lib/signature/types.d.ts +6 -0
  101. package/lib/tabs/Tabs.d.ts +13 -0
  102. package/lib/tabs/Tabs.js +3 -2
  103. package/lib/tabs/index.d.ts +9 -0
  104. package/lib/text-ellipsis/index.css +1 -1
  105. package/lib/vant.cjs.js +813 -605
  106. package/lib/vant.es.js +814 -606
  107. package/lib/vant.js +813 -605
  108. package/lib/vant.min.js +1 -1
  109. package/lib/web-types.json +1 -1
  110. package/package.json +2 -2
package/lib/vant.js CHANGED
@@ -629,7 +629,7 @@
629
629
  });
630
630
  return to;
631
631
  }
632
- var stdin_default$1V = {
632
+ var stdin_default$1W = {
633
633
  name: "姓名",
634
634
  tel: "电话",
635
635
  save: "保存",
@@ -693,7 +693,7 @@
693
693
  };
694
694
  const lang = vue.ref("zh-CN");
695
695
  const messages = vue.reactive({
696
- "zh-CN": stdin_default$1V
696
+ "zh-CN": stdin_default$1W
697
697
  });
698
698
  const Locale = {
699
699
  messages() {
@@ -708,11 +708,11 @@
708
708
  }
709
709
  };
710
710
  const useCurrentLang = () => lang;
711
- var stdin_default$1U = Locale;
711
+ var stdin_default$1V = Locale;
712
712
  function createTranslate(name2) {
713
713
  const prefix = camelize(name2) + ".";
714
714
  return (path, ...args) => {
715
- const messages2 = stdin_default$1U.messages();
715
+ const messages2 = stdin_default$1V.messages();
716
716
  const message = get(messages2, prefix + path) || get(messages2, path);
717
717
  return isFunction(message) ? message(...args) : message;
718
718
  };
@@ -842,20 +842,20 @@
842
842
  }
843
843
  }, [renderContent()]);
844
844
  }
845
- const [name$1J, bem$1E] = createNamespace("action-bar");
846
- const ACTION_BAR_KEY = Symbol(name$1J);
845
+ const [name$1K, bem$1F] = createNamespace("action-bar");
846
+ const ACTION_BAR_KEY = Symbol(name$1K);
847
847
  const actionBarProps = {
848
848
  placeholder: Boolean,
849
849
  safeAreaInsetBottom: truthProp
850
850
  };
851
- var stdin_default$1T = vue.defineComponent({
852
- name: name$1J,
851
+ var stdin_default$1U = vue.defineComponent({
852
+ name: name$1K,
853
853
  props: actionBarProps,
854
854
  setup(props2, {
855
855
  slots
856
856
  }) {
857
857
  const root = vue.ref();
858
- const renderPlaceholder = usePlaceholder(root, bem$1E);
858
+ const renderPlaceholder = usePlaceholder(root, bem$1F);
859
859
  const {
860
860
  linkChildren
861
861
  } = useChildren(ACTION_BAR_KEY);
@@ -864,7 +864,7 @@
864
864
  var _a;
865
865
  return vue.createVNode("div", {
866
866
  "ref": root,
867
- "class": [bem$1E(), {
867
+ "class": [bem$1F(), {
868
868
  "van-safe-area-bottom": props2.safeAreaInsetBottom
869
869
  }]
870
870
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
@@ -877,7 +877,7 @@
877
877
  };
878
878
  }
879
879
  });
880
- const ActionBar = withInstall(stdin_default$1T);
880
+ const ActionBar = withInstall(stdin_default$1U);
881
881
  function useExpose(apis) {
882
882
  const instance2 = vue.getCurrentInstance();
883
883
  if (instance2) {
@@ -905,7 +905,7 @@
905
905
  const vm = vue.getCurrentInstance().proxy;
906
906
  return () => route(vm);
907
907
  }
908
- const [name$1I, bem$1D] = createNamespace("badge");
908
+ const [name$1J, bem$1E] = createNamespace("badge");
909
909
  const badgeProps = {
910
910
  dot: Boolean,
911
911
  max: numericProp,
@@ -916,8 +916,8 @@
916
916
  showZero: truthProp,
917
917
  position: makeStringProp("top-right")
918
918
  };
919
- var stdin_default$1S = vue.defineComponent({
920
- name: name$1I,
919
+ var stdin_default$1T = vue.defineComponent({
920
+ name: name$1J,
921
921
  props: badgeProps,
922
922
  setup(props2, {
923
923
  slots
@@ -980,7 +980,7 @@
980
980
  const renderBadge = () => {
981
981
  if (hasContent() || props2.dot) {
982
982
  return vue.createVNode("div", {
983
- "class": bem$1D([props2.position, {
983
+ "class": bem$1E([props2.position, {
984
984
  dot: props2.dot,
985
985
  fixed: !!slots.default
986
986
  }]),
@@ -994,7 +994,7 @@
994
994
  tag
995
995
  } = props2;
996
996
  return vue.createVNode(tag, {
997
- "class": bem$1D("wrapper")
997
+ "class": bem$1E("wrapper")
998
998
  }, {
999
999
  default: () => [slots.default(), renderBadge()]
1000
1000
  });
@@ -1003,14 +1003,14 @@
1003
1003
  };
1004
1004
  }
1005
1005
  });
1006
- const Badge = withInstall(stdin_default$1S);
1006
+ const Badge = withInstall(stdin_default$1T);
1007
1007
  let globalZIndex = 2e3;
1008
1008
  const useGlobalZIndex = () => ++globalZIndex;
1009
1009
  const setGlobalZIndex = (val) => {
1010
1010
  globalZIndex = val;
1011
1011
  };
1012
- const [name$1H, bem$1C] = createNamespace("config-provider");
1013
- const CONFIG_PROVIDER_KEY = Symbol(name$1H);
1012
+ const [name$1I, bem$1D] = createNamespace("config-provider");
1013
+ const CONFIG_PROVIDER_KEY = Symbol(name$1I);
1014
1014
  const configProviderProps = {
1015
1015
  tag: makeStringProp("div"),
1016
1016
  theme: makeStringProp("light"),
@@ -1044,8 +1044,8 @@
1044
1044
  }
1045
1045
  });
1046
1046
  }
1047
- var stdin_default$1R = vue.defineComponent({
1048
- name: name$1H,
1047
+ var stdin_default$1S = vue.defineComponent({
1048
+ name: name$1I,
1049
1049
  props: configProviderProps,
1050
1050
  setup(props2, {
1051
1051
  slots
@@ -1093,7 +1093,7 @@
1093
1093
  }
1094
1094
  });
1095
1095
  return () => vue.createVNode(props2.tag, {
1096
- "class": bem$1C(),
1096
+ "class": bem$1D(),
1097
1097
  "style": props2.themeVarsScope === "local" ? style.value : void 0
1098
1098
  }, {
1099
1099
  default: () => {
@@ -1103,7 +1103,7 @@
1103
1103
  });
1104
1104
  }
1105
1105
  });
1106
- const [name$1G, bem$1B] = createNamespace("icon");
1106
+ const [name$1H, bem$1C] = createNamespace("icon");
1107
1107
  const isImage$1 = (name2) => name2 == null ? void 0 : name2.includes("/");
1108
1108
  const iconProps = {
1109
1109
  dot: Boolean,
@@ -1115,14 +1115,14 @@
1115
1115
  badgeProps: Object,
1116
1116
  classPrefix: String
1117
1117
  };
1118
- var stdin_default$1Q = vue.defineComponent({
1119
- name: name$1G,
1118
+ var stdin_default$1R = vue.defineComponent({
1119
+ name: name$1H,
1120
1120
  props: iconProps,
1121
1121
  setup(props2, {
1122
1122
  slots
1123
1123
  }) {
1124
1124
  const config = vue.inject(CONFIG_PROVIDER_KEY, null);
1125
- const classPrefix = vue.computed(() => props2.classPrefix || (config == null ? void 0 : config.iconPrefix) || bem$1B());
1125
+ const classPrefix = vue.computed(() => props2.classPrefix || (config == null ? void 0 : config.iconPrefix) || bem$1C());
1126
1126
  return () => {
1127
1127
  const {
1128
1128
  tag,
@@ -1146,7 +1146,7 @@
1146
1146
  default: () => {
1147
1147
  var _a;
1148
1148
  return [(_a = slots.default) == null ? void 0 : _a.call(slots), isImageIcon && vue.createVNode("img", {
1149
- "class": bem$1B("image"),
1149
+ "class": bem$1C("image"),
1150
1150
  "src": name2
1151
1151
  }, null)];
1152
1152
  }
@@ -1154,14 +1154,14 @@
1154
1154
  };
1155
1155
  }
1156
1156
  });
1157
- const Icon = withInstall(stdin_default$1Q);
1158
- var stdin_default$1P = Icon;
1159
- const [name$1F, bem$1A] = createNamespace("loading");
1157
+ const Icon = withInstall(stdin_default$1R);
1158
+ var stdin_default$1Q = Icon;
1159
+ const [name$1G, bem$1B] = createNamespace("loading");
1160
1160
  const SpinIcon = Array(12).fill(null).map((_, index) => vue.createVNode("i", {
1161
- "class": bem$1A("line", String(index + 1))
1161
+ "class": bem$1B("line", String(index + 1))
1162
1162
  }, null));
1163
1163
  const CircularIcon = vue.createVNode("svg", {
1164
- "class": bem$1A("circular"),
1164
+ "class": bem$1B("circular"),
1165
1165
  "viewBox": "25 25 50 50"
1166
1166
  }, [vue.createVNode("circle", {
1167
1167
  "cx": "50",
@@ -1177,8 +1177,8 @@
1177
1177
  textSize: numericProp,
1178
1178
  textColor: String
1179
1179
  };
1180
- var stdin_default$1O = vue.defineComponent({
1181
- name: name$1F,
1180
+ var stdin_default$1P = vue.defineComponent({
1181
+ name: name$1G,
1182
1182
  props: loadingProps,
1183
1183
  setup(props2, {
1184
1184
  slots
@@ -1189,7 +1189,7 @@
1189
1189
  const renderIcon = () => {
1190
1190
  const DefaultIcon = props2.type === "spinner" ? SpinIcon : CircularIcon;
1191
1191
  return vue.createVNode("span", {
1192
- "class": bem$1A("spinner", props2.type),
1192
+ "class": bem$1B("spinner", props2.type),
1193
1193
  "style": spinnerStyle.value
1194
1194
  }, [slots.icon ? slots.icon() : DefaultIcon]);
1195
1195
  };
@@ -1197,7 +1197,7 @@
1197
1197
  var _a;
1198
1198
  if (slots.default) {
1199
1199
  return vue.createVNode("span", {
1200
- "class": bem$1A("text"),
1200
+ "class": bem$1B("text"),
1201
1201
  "style": {
1202
1202
  fontSize: addUnit(props2.textSize),
1203
1203
  color: (_a = props2.textColor) != null ? _a : props2.color
@@ -1211,7 +1211,7 @@
1211
1211
  vertical
1212
1212
  } = props2;
1213
1213
  return vue.createVNode("div", {
1214
- "class": bem$1A([type, {
1214
+ "class": bem$1B([type, {
1215
1215
  vertical
1216
1216
  }]),
1217
1217
  "aria-live": "polite",
@@ -1220,8 +1220,8 @@
1220
1220
  };
1221
1221
  }
1222
1222
  });
1223
- const Loading = withInstall(stdin_default$1O);
1224
- const [name$1E, bem$1z] = createNamespace("button");
1223
+ const Loading = withInstall(stdin_default$1P);
1224
+ const [name$1F, bem$1A] = createNamespace("button");
1225
1225
  const buttonProps = extend({}, routeProps, {
1226
1226
  tag: makeStringProp("button"),
1227
1227
  text: String,
@@ -1243,8 +1243,8 @@
1243
1243
  loadingType: String,
1244
1244
  iconPosition: makeStringProp("left")
1245
1245
  });
1246
- var stdin_default$1N = vue.defineComponent({
1247
- name: name$1E,
1246
+ var stdin_default$1O = vue.defineComponent({
1247
+ name: name$1F,
1248
1248
  props: buttonProps,
1249
1249
  emits: ["click"],
1250
1250
  setup(props2, {
@@ -1259,7 +1259,7 @@
1259
1259
  return vue.createVNode(Loading, {
1260
1260
  "size": props2.loadingSize,
1261
1261
  "type": props2.loadingType,
1262
- "class": bem$1z("loading")
1262
+ "class": bem$1A("loading")
1263
1263
  }, null);
1264
1264
  };
1265
1265
  const renderIcon = () => {
@@ -1268,13 +1268,13 @@
1268
1268
  }
1269
1269
  if (slots.icon) {
1270
1270
  return vue.createVNode("div", {
1271
- "class": bem$1z("icon")
1271
+ "class": bem$1A("icon")
1272
1272
  }, [slots.icon()]);
1273
1273
  }
1274
1274
  if (props2.icon) {
1275
1275
  return vue.createVNode(Icon, {
1276
1276
  "name": props2.icon,
1277
- "class": bem$1z("icon"),
1277
+ "class": bem$1A("icon"),
1278
1278
  "classPrefix": props2.iconPrefix
1279
1279
  }, null);
1280
1280
  }
@@ -1288,7 +1288,7 @@
1288
1288
  }
1289
1289
  if (text) {
1290
1290
  return vue.createVNode("span", {
1291
- "class": bem$1z("text")
1291
+ "class": bem$1A("text")
1292
1292
  }, [text]);
1293
1293
  }
1294
1294
  };
@@ -1335,7 +1335,7 @@
1335
1335
  nativeType,
1336
1336
  iconPosition
1337
1337
  } = props2;
1338
- const classes = [bem$1z([type, size, {
1338
+ const classes = [bem$1A([type, size, {
1339
1339
  plain,
1340
1340
  block,
1341
1341
  round: round2,
@@ -1354,14 +1354,14 @@
1354
1354
  "onClick": onClick
1355
1355
  }, {
1356
1356
  default: () => [vue.createVNode("div", {
1357
- "class": bem$1z("content")
1357
+ "class": bem$1A("content")
1358
1358
  }, [iconPosition === "left" && renderIcon(), renderText(), iconPosition === "right" && renderIcon()])]
1359
1359
  });
1360
1360
  };
1361
1361
  }
1362
1362
  });
1363
- const Button = withInstall(stdin_default$1N);
1364
- const [name$1D, bem$1y] = createNamespace("action-bar-button");
1363
+ const Button = withInstall(stdin_default$1O);
1364
+ const [name$1E, bem$1z] = createNamespace("action-bar-button");
1365
1365
  const actionBarButtonProps = extend({}, routeProps, {
1366
1366
  type: String,
1367
1367
  text: String,
@@ -1370,8 +1370,8 @@
1370
1370
  loading: Boolean,
1371
1371
  disabled: Boolean
1372
1372
  });
1373
- var stdin_default$1M = vue.defineComponent({
1374
- name: name$1D,
1373
+ var stdin_default$1N = vue.defineComponent({
1374
+ name: name$1E,
1375
1375
  props: actionBarButtonProps,
1376
1376
  setup(props2, {
1377
1377
  slots
@@ -1406,7 +1406,7 @@
1406
1406
  disabled
1407
1407
  } = props2;
1408
1408
  return vue.createVNode(Button, {
1409
- "class": bem$1y([type, {
1409
+ "class": bem$1z([type, {
1410
1410
  last: isLast.value,
1411
1411
  first: isFirst.value
1412
1412
  }]),
@@ -1423,8 +1423,8 @@
1423
1423
  };
1424
1424
  }
1425
1425
  });
1426
- const ActionBarButton = withInstall(stdin_default$1M);
1427
- const [name$1C, bem$1x] = createNamespace("action-bar-icon");
1426
+ const ActionBarButton = withInstall(stdin_default$1N);
1427
+ const [name$1D, bem$1y] = createNamespace("action-bar-icon");
1428
1428
  const actionBarIconProps = extend({}, routeProps, {
1429
1429
  dot: Boolean,
1430
1430
  text: String,
@@ -1435,8 +1435,8 @@
1435
1435
  badgeProps: Object,
1436
1436
  iconPrefix: String
1437
1437
  });
1438
- var stdin_default$1L = vue.defineComponent({
1439
- name: name$1C,
1438
+ var stdin_default$1M = vue.defineComponent({
1439
+ name: name$1D,
1440
1440
  props: actionBarIconProps,
1441
1441
  setup(props2, {
1442
1442
  slots
@@ -1456,7 +1456,7 @@
1456
1456
  if (slots.icon) {
1457
1457
  return vue.createVNode(Badge, vue.mergeProps({
1458
1458
  "dot": dot,
1459
- "class": bem$1x("icon"),
1459
+ "class": bem$1y("icon"),
1460
1460
  "content": badge
1461
1461
  }, badgeProps2), {
1462
1462
  default: slots.icon
@@ -1468,20 +1468,20 @@
1468
1468
  "name": icon,
1469
1469
  "badge": badge,
1470
1470
  "color": color,
1471
- "class": [bem$1x("icon"), iconClass],
1471
+ "class": [bem$1y("icon"), iconClass],
1472
1472
  "badgeProps": badgeProps2,
1473
1473
  "classPrefix": iconPrefix
1474
1474
  }, null);
1475
1475
  };
1476
1476
  return () => vue.createVNode("div", {
1477
1477
  "role": "button",
1478
- "class": bem$1x(),
1478
+ "class": bem$1y(),
1479
1479
  "tabindex": 0,
1480
1480
  "onClick": route2
1481
1481
  }, [renderIcon(), slots.default ? slots.default() : props2.text]);
1482
1482
  }
1483
1483
  });
1484
- const ActionBarIcon = withInstall(stdin_default$1L);
1484
+ const ActionBarIcon = withInstall(stdin_default$1M);
1485
1485
  const popupSharedProps = {
1486
1486
  // whether to show popup
1487
1487
  show: Boolean,
@@ -1643,7 +1643,7 @@
1643
1643
  const { scopeId } = ((_a = vue.getCurrentInstance()) == null ? void 0 : _a.vnode) || {};
1644
1644
  return scopeId ? { [scopeId]: "" } : null;
1645
1645
  };
1646
- const [name$1B, bem$1w] = createNamespace("overlay");
1646
+ const [name$1C, bem$1x] = createNamespace("overlay");
1647
1647
  const overlayProps = {
1648
1648
  show: Boolean,
1649
1649
  zIndex: numericProp,
@@ -1653,8 +1653,8 @@
1653
1653
  lazyRender: truthProp,
1654
1654
  customStyle: Object
1655
1655
  };
1656
- var stdin_default$1K = vue.defineComponent({
1657
- name: name$1B,
1656
+ var stdin_default$1L = vue.defineComponent({
1657
+ name: name$1C,
1658
1658
  props: overlayProps,
1659
1659
  setup(props2, {
1660
1660
  slots
@@ -1675,7 +1675,7 @@
1675
1675
  return vue.withDirectives(vue.createVNode("div", {
1676
1676
  "ref": root,
1677
1677
  "style": style,
1678
- "class": [bem$1w(), props2.className]
1678
+ "class": [bem$1x(), props2.className]
1679
1679
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), [[vue.vShow, props2.show]]);
1680
1680
  });
1681
1681
  useEventListener("touchmove", onTouchMove, {
@@ -1689,7 +1689,7 @@
1689
1689
  });
1690
1690
  }
1691
1691
  });
1692
- const Overlay = withInstall(stdin_default$1K);
1692
+ const Overlay = withInstall(stdin_default$1L);
1693
1693
  const popupProps$2 = extend({}, popupSharedProps, {
1694
1694
  round: Boolean,
1695
1695
  position: makeStringProp("center"),
@@ -1702,9 +1702,9 @@
1702
1702
  safeAreaInsetTop: Boolean,
1703
1703
  safeAreaInsetBottom: Boolean
1704
1704
  });
1705
- const [name$1A, bem$1v] = createNamespace("popup");
1706
- var stdin_default$1J = vue.defineComponent({
1707
- name: name$1A,
1705
+ const [name$1B, bem$1w] = createNamespace("popup");
1706
+ var stdin_default$1K = vue.defineComponent({
1707
+ name: name$1B,
1708
1708
  inheritAttrs: false,
1709
1709
  props: popupProps$2,
1710
1710
  emits: ["open", "close", "opened", "closed", "keydown", "update:show", "clickOverlay", "clickCloseIcon"],
@@ -1779,7 +1779,7 @@
1779
1779
  "role": "button",
1780
1780
  "tabindex": 0,
1781
1781
  "name": props2.closeIcon,
1782
- "class": [bem$1v("close-icon", props2.closeIconPosition), HAPTICS_FEEDBACK],
1782
+ "class": [bem$1w("close-icon", props2.closeIconPosition), HAPTICS_FEEDBACK],
1783
1783
  "classPrefix": props2.iconPrefix,
1784
1784
  "onClick": onClickCloseIcon
1785
1785
  }, null);
@@ -1808,7 +1808,7 @@
1808
1808
  "style": style.value,
1809
1809
  "role": "dialog",
1810
1810
  "tabindex": 0,
1811
- "class": [bem$1v({
1811
+ "class": [bem$1w({
1812
1812
  round: round2,
1813
1813
  [position]: position
1814
1814
  }), {
@@ -1889,8 +1889,8 @@
1889
1889
  };
1890
1890
  }
1891
1891
  });
1892
- const Popup = withInstall(stdin_default$1J);
1893
- const [name$1z, bem$1u] = createNamespace("action-sheet");
1892
+ const Popup = withInstall(stdin_default$1K);
1893
+ const [name$1A, bem$1v] = createNamespace("action-sheet");
1894
1894
  const actionSheetProps = extend({}, popupSharedProps, {
1895
1895
  title: String,
1896
1896
  round: truthProp,
@@ -1904,8 +1904,8 @@
1904
1904
  safeAreaInsetBottom: truthProp
1905
1905
  });
1906
1906
  const popupInheritKeys$2 = [...popupSharedPropKeys, "round", "closeOnPopstate", "safeAreaInsetBottom"];
1907
- var stdin_default$1I = vue.defineComponent({
1908
- name: name$1z,
1907
+ var stdin_default$1J = vue.defineComponent({
1908
+ name: name$1A,
1909
1909
  props: actionSheetProps,
1910
1910
  emits: ["select", "cancel", "update:show"],
1911
1911
  setup(props2, {
@@ -1920,10 +1920,10 @@
1920
1920
  const renderHeader = () => {
1921
1921
  if (props2.title) {
1922
1922
  return vue.createVNode("div", {
1923
- "class": bem$1u("header")
1923
+ "class": bem$1v("header")
1924
1924
  }, [props2.title, props2.closeable && vue.createVNode(Icon, {
1925
1925
  "name": props2.closeIcon,
1926
- "class": [bem$1u("close"), HAPTICS_FEEDBACK],
1926
+ "class": [bem$1v("close"), HAPTICS_FEEDBACK],
1927
1927
  "onClick": onCancel
1928
1928
  }, null)]);
1929
1929
  }
@@ -1931,10 +1931,10 @@
1931
1931
  const renderCancel = () => {
1932
1932
  if (slots.cancel || props2.cancelText) {
1933
1933
  return [vue.createVNode("div", {
1934
- "class": bem$1u("gap")
1934
+ "class": bem$1v("gap")
1935
1935
  }, null), vue.createVNode("button", {
1936
1936
  "type": "button",
1937
- "class": bem$1u("cancel"),
1937
+ "class": bem$1v("cancel"),
1938
1938
  "onClick": onCancel
1939
1939
  }, [slots.cancel ? slots.cancel() : props2.cancelText])];
1940
1940
  }
@@ -1942,7 +1942,7 @@
1942
1942
  const renderActionContent = (action, index) => {
1943
1943
  if (action.loading) {
1944
1944
  return vue.createVNode(Loading, {
1945
- "class": bem$1u("loading-icon")
1945
+ "class": bem$1v("loading-icon")
1946
1946
  }, null);
1947
1947
  }
1948
1948
  if (slots.action) {
@@ -1952,9 +1952,9 @@
1952
1952
  });
1953
1953
  }
1954
1954
  return [vue.createVNode("span", {
1955
- "class": bem$1u("name")
1955
+ "class": bem$1v("name")
1956
1956
  }, [action.name]), action.subname && vue.createVNode("div", {
1957
- "class": bem$1u("subname")
1957
+ "class": bem$1v("subname")
1958
1958
  }, [action.subname])];
1959
1959
  };
1960
1960
  const renderAction = (action, index) => {
@@ -1982,7 +1982,7 @@
1982
1982
  "style": {
1983
1983
  color
1984
1984
  },
1985
- "class": [bem$1u("item", {
1985
+ "class": [bem$1v("item", {
1986
1986
  loading,
1987
1987
  disabled
1988
1988
  }), className],
@@ -1993,26 +1993,26 @@
1993
1993
  if (props2.description || slots.description) {
1994
1994
  const content = slots.description ? slots.description() : props2.description;
1995
1995
  return vue.createVNode("div", {
1996
- "class": bem$1u("description")
1996
+ "class": bem$1v("description")
1997
1997
  }, [content]);
1998
1998
  }
1999
1999
  };
2000
2000
  return () => vue.createVNode(Popup, vue.mergeProps({
2001
- "class": bem$1u(),
2001
+ "class": bem$1v(),
2002
2002
  "position": "bottom",
2003
2003
  "onUpdate:show": updateShow
2004
2004
  }, pick(props2, popupInheritKeys$2)), {
2005
2005
  default: () => {
2006
2006
  var _a;
2007
2007
  return [renderHeader(), renderDescription(), vue.createVNode("div", {
2008
- "class": bem$1u("content")
2008
+ "class": bem$1v("content")
2009
2009
  }, [props2.actions.map(renderAction), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderCancel()];
2010
2010
  }
2011
2011
  });
2012
2012
  }
2013
2013
  });
2014
- const ActionSheet = withInstall(stdin_default$1I);
2015
- const [name$1y, bem$1t, t$k] = createNamespace("picker");
2014
+ const ActionSheet = withInstall(stdin_default$1J);
2015
+ const [name$1z, bem$1u, t$k] = createNamespace("picker");
2016
2016
  const getFirstEnabledOption = (options) => options.find((option) => !option.disabled) || options[0];
2017
2017
  function getColumnsType(columns, fields) {
2018
2018
  const firstColumn = columns[0];
@@ -2081,10 +2081,10 @@
2081
2081
  const DEFAULT_DURATION = 200;
2082
2082
  const MOMENTUM_TIME = 300;
2083
2083
  const MOMENTUM_DISTANCE = 15;
2084
- const [name$1x, bem$1s] = createNamespace("picker-column");
2085
- const PICKER_KEY = Symbol(name$1x);
2086
- var stdin_default$1H = vue.defineComponent({
2087
- name: name$1x,
2084
+ const [name$1y, bem$1t] = createNamespace("picker-column");
2085
+ const PICKER_KEY = Symbol(name$1y);
2086
+ var stdin_default$1I = vue.defineComponent({
2087
+ name: name$1y,
2088
2088
  props: {
2089
2089
  value: numericProp,
2090
2090
  fields: makeRequiredProp(Object),
@@ -2226,7 +2226,7 @@
2226
2226
  role: "button",
2227
2227
  style: optionStyle,
2228
2228
  tabindex: disabled ? -1 : 0,
2229
- class: [bem$1s("item", {
2229
+ class: [bem$1t("item", {
2230
2230
  disabled,
2231
2231
  selected: value === props2.value
2232
2232
  }), option.className],
@@ -2256,7 +2256,7 @@
2256
2256
  });
2257
2257
  return () => vue.createVNode("div", {
2258
2258
  "ref": root,
2259
- "class": bem$1s(),
2259
+ "class": bem$1t(),
2260
2260
  "onTouchstartPassive": onTouchStart,
2261
2261
  "onTouchend": onTouchEnd,
2262
2262
  "onTouchcancel": onTouchEnd
@@ -2267,12 +2267,12 @@
2267
2267
  transitionDuration: `${currentDuration.value}ms`,
2268
2268
  transitionProperty: currentDuration.value ? "all" : "none"
2269
2269
  },
2270
- "class": bem$1s("wrapper"),
2270
+ "class": bem$1t("wrapper"),
2271
2271
  "onTransitionend": stopMomentum
2272
2272
  }, [renderOptions()])]);
2273
2273
  }
2274
2274
  });
2275
- const [name$1w] = createNamespace("picker-toolbar");
2275
+ const [name$1x] = createNamespace("picker-toolbar");
2276
2276
  const pickerToolbarProps = {
2277
2277
  title: String,
2278
2278
  cancelButtonText: String,
@@ -2280,8 +2280,8 @@
2280
2280
  };
2281
2281
  const pickerToolbarSlots = ["cancel", "confirm", "title", "toolbar"];
2282
2282
  const pickerToolbarPropKeys = Object.keys(pickerToolbarProps);
2283
- var stdin_default$1G = vue.defineComponent({
2284
- name: name$1w,
2283
+ var stdin_default$1H = vue.defineComponent({
2284
+ name: name$1x,
2285
2285
  props: pickerToolbarProps,
2286
2286
  emits: ["confirm", "cancel"],
2287
2287
  setup(props2, {
@@ -2294,7 +2294,7 @@
2294
2294
  }
2295
2295
  if (props2.title) {
2296
2296
  return vue.createVNode("div", {
2297
- "class": [bem$1t("title"), "van-ellipsis"]
2297
+ "class": [bem$1u("title"), "van-ellipsis"]
2298
2298
  }, [props2.title]);
2299
2299
  }
2300
2300
  };
@@ -2304,7 +2304,7 @@
2304
2304
  const text = props2.cancelButtonText || t$k("cancel");
2305
2305
  return vue.createVNode("button", {
2306
2306
  "type": "button",
2307
- "class": [bem$1t("cancel"), HAPTICS_FEEDBACK],
2307
+ "class": [bem$1u("cancel"), HAPTICS_FEEDBACK],
2308
2308
  "onClick": onCancel
2309
2309
  }, [slots.cancel ? slots.cancel() : text]);
2310
2310
  };
@@ -2312,12 +2312,12 @@
2312
2312
  const text = props2.confirmButtonText || t$k("confirm");
2313
2313
  return vue.createVNode("button", {
2314
2314
  "type": "button",
2315
- "class": [bem$1t("confirm"), HAPTICS_FEEDBACK],
2315
+ "class": [bem$1u("confirm"), HAPTICS_FEEDBACK],
2316
2316
  "onClick": onConfirm
2317
2317
  }, [slots.confirm ? slots.confirm() : text]);
2318
2318
  };
2319
2319
  return () => vue.createVNode("div", {
2320
- "class": bem$1t("toolbar")
2320
+ "class": bem$1u("toolbar")
2321
2321
  }, [slots.toolbar ? slots.toolbar() : [renderCancel(), renderTitle(), renderConfirm()]]);
2322
2322
  }
2323
2323
  });
@@ -2502,7 +2502,7 @@
2502
2502
  vue.onBeforeUnmount(unobserve);
2503
2503
  onMountedOrActivated(observe);
2504
2504
  }
2505
- const [name$1v, bem$1r] = createNamespace("sticky");
2505
+ const [name$1w, bem$1s] = createNamespace("sticky");
2506
2506
  const stickyProps = {
2507
2507
  zIndex: numericProp,
2508
2508
  position: makeStringProp("top"),
@@ -2510,8 +2510,8 @@
2510
2510
  offsetTop: makeNumericProp(0),
2511
2511
  offsetBottom: makeNumericProp(0)
2512
2512
  };
2513
- var stdin_default$1F = vue.defineComponent({
2514
- name: name$1v,
2513
+ var stdin_default$1G = vue.defineComponent({
2514
+ name: name$1w,
2515
2515
  props: stickyProps,
2516
2516
  emits: ["scroll", "change"],
2517
2517
  setup(props2, {
@@ -2624,7 +2624,7 @@
2624
2624
  "ref": root,
2625
2625
  "style": rootStyle.value
2626
2626
  }, [vue.createVNode("div", {
2627
- "class": bem$1r({
2627
+ "class": bem$1s({
2628
2628
  fixed: state.fixed && !isReset.value
2629
2629
  }),
2630
2630
  "style": stickyStyle.value
@@ -2632,8 +2632,8 @@
2632
2632
  };
2633
2633
  }
2634
2634
  });
2635
- const Sticky = withInstall(stdin_default$1F);
2636
- const [name$1u, bem$1q] = createNamespace("swipe");
2635
+ const Sticky = withInstall(stdin_default$1G);
2636
+ const [name$1v, bem$1r] = createNamespace("swipe");
2637
2637
  const swipeProps = {
2638
2638
  loop: truthProp,
2639
2639
  width: numericProp,
@@ -2648,9 +2648,9 @@
2648
2648
  showIndicators: truthProp,
2649
2649
  stopPropagation: truthProp
2650
2650
  };
2651
- const SWIPE_KEY = Symbol(name$1u);
2652
- var stdin_default$1E = vue.defineComponent({
2653
- name: name$1u,
2651
+ const SWIPE_KEY = Symbol(name$1v);
2652
+ var stdin_default$1F = vue.defineComponent({
2653
+ name: name$1v,
2654
2654
  props: swipeProps,
2655
2655
  emits: ["change", "dragStart", "dragEnd"],
2656
2656
  setup(props2, {
@@ -2928,7 +2928,7 @@
2928
2928
  } : void 0;
2929
2929
  return vue.createVNode("i", {
2930
2930
  "style": style,
2931
- "class": bem$1q("indicator", {
2931
+ "class": bem$1r("indicator", {
2932
2932
  active
2933
2933
  })
2934
2934
  }, null);
@@ -2942,7 +2942,7 @@
2942
2942
  }
2943
2943
  if (props2.showIndicators && count.value > 1) {
2944
2944
  return vue.createVNode("div", {
2945
- "class": bem$1q("indicators", {
2945
+ "class": bem$1r("indicators", {
2946
2946
  vertical: props2.vertical
2947
2947
  })
2948
2948
  }, [Array(count.value).fill("").map(renderDot)]);
@@ -2984,11 +2984,11 @@
2984
2984
  var _a;
2985
2985
  return vue.createVNode("div", {
2986
2986
  "ref": root,
2987
- "class": bem$1q()
2987
+ "class": bem$1r()
2988
2988
  }, [vue.createVNode("div", {
2989
2989
  "ref": track,
2990
2990
  "style": trackStyle.value,
2991
- "class": bem$1q("track", {
2991
+ "class": bem$1r("track", {
2992
2992
  vertical: props2.vertical
2993
2993
  }),
2994
2994
  "onTouchstartPassive": onTouchStart,
@@ -2998,10 +2998,10 @@
2998
2998
  };
2999
2999
  }
3000
3000
  });
3001
- const Swipe = withInstall(stdin_default$1E);
3002
- const [name$1t, bem$1p] = createNamespace("tabs");
3003
- var stdin_default$1D = vue.defineComponent({
3004
- name: name$1t,
3001
+ const Swipe = withInstall(stdin_default$1F);
3002
+ const [name$1u, bem$1q] = createNamespace("tabs");
3003
+ var stdin_default$1E = vue.defineComponent({
3004
+ name: name$1u,
3005
3005
  props: {
3006
3006
  count: makeRequiredProp(Number),
3007
3007
  inited: Boolean,
@@ -3025,7 +3025,7 @@
3025
3025
  return vue.createVNode(Swipe, {
3026
3026
  "ref": swipeRef,
3027
3027
  "loop": false,
3028
- "class": bem$1p("track"),
3028
+ "class": bem$1q("track"),
3029
3029
  "duration": +props2.duration * 1e3,
3030
3030
  "touchable": props2.swipeable,
3031
3031
  "lazyRender": props2.lazyRender,
@@ -3053,13 +3053,13 @@
3053
3053
  swipeRef
3054
3054
  });
3055
3055
  return () => vue.createVNode("div", {
3056
- "class": bem$1p("content", {
3056
+ "class": bem$1q("content", {
3057
3057
  animated: props2.animated || props2.swipeable
3058
3058
  })
3059
3059
  }, [renderChildren()]);
3060
3060
  }
3061
3061
  });
3062
- const [name$1s, bem$1o] = createNamespace("tabs");
3062
+ const [name$1t, bem$1p] = createNamespace("tabs");
3063
3063
  const tabsProps = {
3064
3064
  type: makeStringProp("line"),
3065
3065
  color: String,
@@ -3075,6 +3075,7 @@
3075
3075
  offsetTop: makeNumericProp(0),
3076
3076
  background: String,
3077
3077
  lazyRender: truthProp,
3078
+ showHeader: truthProp,
3078
3079
  lineWidth: numericProp,
3079
3080
  lineHeight: numericProp,
3080
3081
  beforeChange: Function,
@@ -3082,9 +3083,9 @@
3082
3083
  titleActiveColor: String,
3083
3084
  titleInactiveColor: String
3084
3085
  };
3085
- const TABS_KEY = Symbol(name$1s);
3086
- var stdin_default$1C = vue.defineComponent({
3087
- name: name$1s,
3086
+ const TABS_KEY = Symbol(name$1t);
3087
+ var stdin_default$1D = vue.defineComponent({
3088
+ name: name$1t,
3088
3089
  props: tabsProps,
3089
3090
  emits: ["change", "scroll", "rendered", "clickTab", "update:active"],
3090
3091
  setup(props2, {
@@ -3282,7 +3283,7 @@
3282
3283
  const renderLine = () => {
3283
3284
  if (props2.type === "line" && children.length) {
3284
3285
  return vue.createVNode("div", {
3285
- "class": bem$1o("line"),
3286
+ "class": bem$1p("line"),
3286
3287
  "style": state.lineStyle
3287
3288
  }, null);
3288
3289
  }
@@ -3296,13 +3297,13 @@
3296
3297
  } = props2;
3297
3298
  const Header = [vue.createVNode("div", {
3298
3299
  "ref": sticky ? void 0 : wrapRef,
3299
- "class": [bem$1o("wrap"), {
3300
+ "class": [bem$1p("wrap"), {
3300
3301
  [BORDER_TOP_BOTTOM]: type === "line" && border
3301
3302
  }]
3302
3303
  }, [vue.createVNode("div", {
3303
3304
  "ref": navRef,
3304
3305
  "role": "tablist",
3305
- "class": bem$1o("nav", [type, {
3306
+ "class": bem$1p("nav", [type, {
3306
3307
  shrink: props2.shrink,
3307
3308
  complete: scrollable.value
3308
3309
  }]),
@@ -3375,14 +3376,14 @@
3375
3376
  });
3376
3377
  return () => vue.createVNode("div", {
3377
3378
  "ref": root,
3378
- "class": bem$1o([props2.type])
3379
- }, [props2.sticky ? vue.createVNode(Sticky, {
3379
+ "class": bem$1p([props2.type])
3380
+ }, [props2.showHeader ? props2.sticky ? vue.createVNode(Sticky, {
3380
3381
  "container": root.value,
3381
3382
  "offsetTop": offsetTopPx.value,
3382
3383
  "onScroll": onStickyScroll
3383
3384
  }, {
3384
3385
  default: () => [renderHeader()]
3385
- }) : renderHeader(), vue.createVNode(stdin_default$1D, {
3386
+ }) : renderHeader() : null, vue.createVNode(stdin_default$1E, {
3386
3387
  "ref": contentRef,
3387
3388
  "count": children.length,
3388
3389
  "inited": state.inited,
@@ -3402,9 +3403,9 @@
3402
3403
  });
3403
3404
  const TAB_STATUS_KEY = Symbol();
3404
3405
  const useTabStatus = () => vue.inject(TAB_STATUS_KEY, null);
3405
- const [name$1r, bem$1n] = createNamespace("tab");
3406
+ const [name$1s, bem$1o] = createNamespace("tab");
3406
3407
  const TabTitle = vue.defineComponent({
3407
- name: name$1r,
3408
+ name: name$1s,
3408
3409
  props: {
3409
3410
  id: String,
3410
3411
  dot: Boolean,
@@ -3453,7 +3454,7 @@
3453
3454
  });
3454
3455
  const renderText = () => {
3455
3456
  const Text = vue.createVNode("span", {
3456
- "class": bem$1n("text", {
3457
+ "class": bem$1o("text", {
3457
3458
  ellipsis: !props2.scrollable
3458
3459
  })
3459
3460
  }, [slots.title ? slots.title() : props2.title]);
@@ -3471,7 +3472,7 @@
3471
3472
  return () => vue.createVNode("div", {
3472
3473
  "id": props2.id,
3473
3474
  "role": "tab",
3474
- "class": [bem$1n([props2.type, {
3475
+ "class": [bem$1o([props2.type, {
3475
3476
  grow: props2.scrollable && !props2.shrink,
3476
3477
  shrink: props2.shrink,
3477
3478
  active: props2.isActive,
@@ -3485,9 +3486,9 @@
3485
3486
  }, [renderText()]);
3486
3487
  }
3487
3488
  });
3488
- const [name$1q, bem$1m] = createNamespace("swipe-item");
3489
- var stdin_default$1B = vue.defineComponent({
3490
- name: name$1q,
3489
+ const [name$1r, bem$1n] = createNamespace("swipe-item");
3490
+ var stdin_default$1C = vue.defineComponent({
3491
+ name: name$1r,
3491
3492
  setup(props2, {
3492
3493
  slots
3493
3494
  }) {
@@ -3549,14 +3550,14 @@
3549
3550
  return () => {
3550
3551
  var _a;
3551
3552
  return vue.createVNode("div", {
3552
- "class": bem$1m(),
3553
+ "class": bem$1n(),
3553
3554
  "style": style.value
3554
3555
  }, [shouldRender.value ? (_a = slots.default) == null ? void 0 : _a.call(slots) : null]);
3555
3556
  };
3556
3557
  }
3557
3558
  });
3558
- const SwipeItem = withInstall(stdin_default$1B);
3559
- const [name$1p, bem$1l] = createNamespace("tab");
3559
+ const SwipeItem = withInstall(stdin_default$1C);
3560
+ const [name$1q, bem$1m] = createNamespace("tab");
3560
3561
  const tabProps = extend({}, routeProps, {
3561
3562
  dot: Boolean,
3562
3563
  name: numericProp,
@@ -3567,8 +3568,8 @@
3567
3568
  titleStyle: [String, Object],
3568
3569
  showZeroBadge: truthProp
3569
3570
  });
3570
- var stdin_default$1A = vue.defineComponent({
3571
- name: name$1p,
3571
+ var stdin_default$1B = vue.defineComponent({
3572
+ name: name$1q,
3572
3573
  props: tabProps,
3573
3574
  setup(props2, {
3574
3575
  slots
@@ -3663,7 +3664,7 @@
3663
3664
  return vue.createVNode(SwipeItem, {
3664
3665
  "id": id,
3665
3666
  "role": "tabpanel",
3666
- "class": bem$1l("panel-wrapper", {
3667
+ "class": bem$1m("panel-wrapper", {
3667
3668
  inactive: hasInactiveClass.value
3668
3669
  }),
3669
3670
  "tabindex": active.value ? 0 : -1,
@@ -3673,7 +3674,7 @@
3673
3674
  default: () => {
3674
3675
  var _a2;
3675
3676
  return [vue.createVNode("div", {
3676
- "class": bem$1l("panel")
3677
+ "class": bem$1m("panel")
3677
3678
  }, [(_a2 = slots.default) == null ? void 0 : _a2.call(slots)])];
3678
3679
  }
3679
3680
  });
@@ -3683,24 +3684,24 @@
3683
3684
  return vue.withDirectives(vue.createVNode("div", {
3684
3685
  "id": id,
3685
3686
  "role": "tabpanel",
3686
- "class": bem$1l("panel"),
3687
+ "class": bem$1m("panel"),
3687
3688
  "tabindex": show ? 0 : -1,
3688
3689
  "aria-labelledby": label
3689
3690
  }, [Content]), [[vue.vShow, show]]);
3690
3691
  };
3691
3692
  }
3692
3693
  });
3693
- const Tab = withInstall(stdin_default$1A);
3694
- const Tabs = withInstall(stdin_default$1C);
3695
- const [name$1o, bem$1k] = createNamespace("picker-group");
3696
- const PICKER_GROUP_KEY = Symbol(name$1o);
3694
+ const Tab = withInstall(stdin_default$1B);
3695
+ const Tabs = withInstall(stdin_default$1D);
3696
+ const [name$1p, bem$1l] = createNamespace("picker-group");
3697
+ const PICKER_GROUP_KEY = Symbol(name$1p);
3697
3698
  const pickerGroupProps = extend({
3698
3699
  tabs: makeArrayProp(),
3699
3700
  activeTab: makeNumericProp(0),
3700
3701
  nextStepText: String
3701
3702
  }, pickerToolbarProps);
3702
- var stdin_default$1z = vue.defineComponent({
3703
- name: name$1o,
3703
+ var stdin_default$1A = vue.defineComponent({
3704
+ name: name$1p,
3704
3705
  props: pickerGroupProps,
3705
3706
  emits: ["confirm", "cancel", "update:activeTab"],
3706
3707
  setup(props2, {
@@ -3723,12 +3724,12 @@
3723
3724
  };
3724
3725
  const onCancel = () => emit("cancel");
3725
3726
  return () => {
3726
- var _a;
3727
- const childNodes = (_a = slots.default) == null ? void 0 : _a.call(slots);
3727
+ var _a, _b;
3728
+ const childNodes = (_b = (_a = slots.default) == null ? void 0 : _a.call(slots)) == null ? void 0 : _b.filter((node) => node.type !== vue.Comment);
3728
3729
  const confirmButtonText = showNextButton() ? props2.nextStepText : props2.confirmButtonText;
3729
3730
  return vue.createVNode("div", {
3730
- "class": bem$1k()
3731
- }, [vue.createVNode(stdin_default$1G, {
3731
+ "class": bem$1l()
3732
+ }, [vue.createVNode(stdin_default$1H, {
3732
3733
  "title": props2.title,
3733
3734
  "cancelButtonText": props2.cancelButtonText,
3734
3735
  "confirmButtonText": confirmButtonText,
@@ -3737,14 +3738,14 @@
3737
3738
  }, pick(slots, pickerToolbarSlots)), vue.createVNode(Tabs, {
3738
3739
  "active": activeTab.value,
3739
3740
  "onUpdate:active": ($event) => activeTab.value = $event,
3740
- "class": bem$1k("tabs"),
3741
+ "class": bem$1l("tabs"),
3741
3742
  "shrink": true,
3742
3743
  "animated": true,
3743
3744
  "lazyRender": false
3744
3745
  }, {
3745
3746
  default: () => [props2.tabs.map((title, index) => vue.createVNode(Tab, {
3746
3747
  "title": title,
3747
- "titleClass": bem$1k("tab-title")
3748
+ "titleClass": bem$1l("tab-title")
3748
3749
  }, {
3749
3750
  default: () => [childNodes == null ? void 0 : childNodes[index]]
3750
3751
  }))]
@@ -3767,8 +3768,8 @@
3767
3768
  toolbarPosition: makeStringProp("top"),
3768
3769
  columnsFieldNames: Object
3769
3770
  });
3770
- var stdin_default$1y = vue.defineComponent({
3771
- name: name$1y,
3771
+ var stdin_default$1z = vue.defineComponent({
3772
+ name: name$1z,
3772
3773
  props: pickerProps,
3773
3774
  emits: ["confirm", "cancel", "change", "scrollInto", "clickOption", "update:modelValue"],
3774
3775
  setup(props2, {
@@ -3849,7 +3850,7 @@
3849
3850
  return params;
3850
3851
  };
3851
3852
  const cancel = () => emit("cancel", getEventParams());
3852
- const renderColumnItems = () => currentColumns.value.map((options, columnIndex) => vue.createVNode(stdin_default$1H, {
3853
+ const renderColumnItems = () => currentColumns.value.map((options, columnIndex) => vue.createVNode(stdin_default$1I, {
3853
3854
  "value": selectedValues.value[columnIndex],
3854
3855
  "fields": fields.value,
3855
3856
  "options": options,
@@ -3878,10 +3879,10 @@
3878
3879
  backgroundSize: `100% ${(wrapHeight - optionHeight.value) / 2}px`
3879
3880
  };
3880
3881
  return [vue.createVNode("div", {
3881
- "class": bem$1t("mask"),
3882
+ "class": bem$1u("mask"),
3882
3883
  "style": maskStyle
3883
3884
  }, null), vue.createVNode("div", {
3884
- "class": [BORDER_UNSET_TOP_BOTTOM, bem$1t("frame")],
3885
+ "class": [BORDER_UNSET_TOP_BOTTOM, bem$1u("frame")],
3885
3886
  "style": frameStyle
3886
3887
  }, null)];
3887
3888
  }
@@ -3893,13 +3894,13 @@
3893
3894
  };
3894
3895
  return vue.createVNode("div", {
3895
3896
  "ref": columnsRef,
3896
- "class": bem$1t("columns"),
3897
+ "class": bem$1u("columns"),
3897
3898
  "style": columnsStyle
3898
3899
  }, [renderColumnItems(), renderMask(wrapHeight)]);
3899
3900
  };
3900
3901
  const renderToolbar = () => {
3901
3902
  if (props2.showToolbar && !parent) {
3902
- return vue.createVNode(stdin_default$1G, vue.mergeProps(pick(props2, pickerToolbarPropKeys), {
3903
+ return vue.createVNode(stdin_default$1H, vue.mergeProps(pick(props2, pickerToolbarPropKeys), {
3903
3904
  "onConfirm": confirm,
3904
3905
  "onCancel": cancel
3905
3906
  }), pick(slots, pickerToolbarSlots));
@@ -3942,9 +3943,9 @@
3942
3943
  return () => {
3943
3944
  var _a, _b;
3944
3945
  return vue.createVNode("div", {
3945
- "class": bem$1t()
3946
+ "class": bem$1u()
3946
3947
  }, [props2.toolbarPosition === "top" ? renderToolbar() : null, props2.loading ? vue.createVNode(Loading, {
3947
- "class": bem$1t("loading")
3948
+ "class": bem$1u("loading")
3948
3949
  }, null) : null, (_a = slots["columns-top"]) == null ? void 0 : _a.call(slots), renderColumns(), (_b = slots["columns-bottom"]) == null ? void 0 : _b.call(slots), props2.toolbarPosition === "bottom" ? renderToolbar() : null]);
3949
3950
  };
3950
3951
  }
@@ -4035,8 +4036,8 @@
4035
4036
  }
4036
4037
  return options;
4037
4038
  }
4038
- const Picker = withInstall(stdin_default$1y);
4039
- const [name$1n, bem$1j] = createNamespace("area");
4039
+ const Picker = withInstall(stdin_default$1z);
4040
+ const [name$1o, bem$1k] = createNamespace("area");
4040
4041
  const areaProps = extend({}, pick(pickerSharedProps, INHERIT_PROPS), {
4041
4042
  modelValue: String,
4042
4043
  columnsNum: makeNumericProp(3),
@@ -4046,8 +4047,8 @@
4046
4047
  default: () => ({})
4047
4048
  }
4048
4049
  });
4049
- var stdin_default$1x = vue.defineComponent({
4050
- name: name$1n,
4050
+ var stdin_default$1y = vue.defineComponent({
4051
+ name: name$1o,
4051
4052
  props: areaProps,
4052
4053
  emits: ["change", "confirm", "cancel", "update:modelValue"],
4053
4054
  setup(props2, {
@@ -4094,7 +4095,7 @@
4094
4095
  "ref": picker,
4095
4096
  "modelValue": codes.value,
4096
4097
  "onUpdate:modelValue": ($event) => codes.value = $event,
4097
- "class": bem$1j(),
4098
+ "class": bem$1k(),
4098
4099
  "columns": columns.value,
4099
4100
  "onChange": onChange,
4100
4101
  "onCancel": onCancel,
@@ -4102,8 +4103,8 @@
4102
4103
  }, pick(props2, INHERIT_PROPS)), pick(slots, INHERIT_SLOTS));
4103
4104
  }
4104
4105
  });
4105
- const Area = withInstall(stdin_default$1x);
4106
- const [name$1m, bem$1i] = createNamespace("cell");
4106
+ const Area = withInstall(stdin_default$1y);
4107
+ const [name$1n, bem$1j] = createNamespace("cell");
4107
4108
  const cellSharedProps = {
4108
4109
  tag: makeStringProp("div"),
4109
4110
  icon: String,
@@ -4114,21 +4115,24 @@
4114
4115
  center: Boolean,
4115
4116
  isLink: Boolean,
4116
4117
  border: truthProp,
4117
- required: Boolean,
4118
4118
  iconPrefix: String,
4119
4119
  valueClass: unknownProp,
4120
4120
  labelClass: unknownProp,
4121
4121
  titleClass: unknownProp,
4122
4122
  titleStyle: null,
4123
4123
  arrowDirection: String,
4124
+ required: {
4125
+ type: [Boolean, String],
4126
+ default: null
4127
+ },
4124
4128
  clickable: {
4125
4129
  type: Boolean,
4126
4130
  default: null
4127
4131
  }
4128
4132
  };
4129
4133
  const cellProps = extend({}, cellSharedProps, routeProps);
4130
- var stdin_default$1w = vue.defineComponent({
4131
- name: name$1m,
4134
+ var stdin_default$1x = vue.defineComponent({
4135
+ name: name$1n,
4132
4136
  props: cellProps,
4133
4137
  setup(props2, {
4134
4138
  slots
@@ -4138,7 +4142,7 @@
4138
4142
  const showLabel = slots.label || isDef(props2.label);
4139
4143
  if (showLabel) {
4140
4144
  return vue.createVNode("div", {
4141
- "class": [bem$1i("label"), props2.labelClass]
4145
+ "class": [bem$1j("label"), props2.labelClass]
4142
4146
  }, [slots.label ? slots.label() : props2.label]);
4143
4147
  }
4144
4148
  };
@@ -4150,7 +4154,7 @@
4150
4154
  return;
4151
4155
  }
4152
4156
  return vue.createVNode("div", {
4153
- "class": [bem$1i("title"), props2.titleClass],
4157
+ "class": [bem$1j("title"), props2.titleClass],
4154
4158
  "style": props2.titleStyle
4155
4159
  }, [titleSlot || vue.createVNode("span", null, [props2.title]), renderLabel()]);
4156
4160
  }
@@ -4160,7 +4164,7 @@
4160
4164
  const hasValue = slot || isDef(props2.value);
4161
4165
  if (hasValue) {
4162
4166
  return vue.createVNode("div", {
4163
- "class": [bem$1i("value"), props2.valueClass]
4167
+ "class": [bem$1j("value"), props2.valueClass]
4164
4168
  }, [slot ? slot() : vue.createVNode("span", null, [props2.value])]);
4165
4169
  }
4166
4170
  };
@@ -4171,7 +4175,7 @@
4171
4175
  if (props2.icon) {
4172
4176
  return vue.createVNode(Icon, {
4173
4177
  "name": props2.icon,
4174
- "class": bem$1i("left-icon"),
4178
+ "class": bem$1j("left-icon"),
4175
4179
  "classPrefix": props2.iconPrefix
4176
4180
  }, null);
4177
4181
  }
@@ -4184,7 +4188,7 @@
4184
4188
  const name2 = props2.arrowDirection && props2.arrowDirection !== "right" ? `arrow-${props2.arrowDirection}` : "arrow";
4185
4189
  return vue.createVNode(Icon, {
4186
4190
  "name": name2,
4187
- "class": bem$1i("right-icon")
4191
+ "class": bem$1j("right-icon")
4188
4192
  }, null);
4189
4193
  }
4190
4194
  };
@@ -4201,7 +4205,7 @@
4201
4205
  const clickable = (_a = props2.clickable) != null ? _a : isLink;
4202
4206
  const classes = {
4203
4207
  center,
4204
- required,
4208
+ required: !!required,
4205
4209
  clickable,
4206
4210
  borderless: !border
4207
4211
  };
@@ -4209,7 +4213,7 @@
4209
4213
  classes[size] = !!size;
4210
4214
  }
4211
4215
  return vue.createVNode(tag, {
4212
- "class": bem$1i(classes),
4216
+ "class": bem$1j(classes),
4213
4217
  "role": clickable ? "button" : void 0,
4214
4218
  "tabindex": clickable ? 0 : void 0,
4215
4219
  "onClick": route2
@@ -4222,12 +4226,13 @@
4222
4226
  };
4223
4227
  }
4224
4228
  });
4225
- const Cell = withInstall(stdin_default$1w);
4226
- const [name$1l, bem$1h] = createNamespace("form");
4229
+ const Cell = withInstall(stdin_default$1x);
4230
+ const [name$1m, bem$1i] = createNamespace("form");
4227
4231
  const formProps = {
4228
4232
  colon: Boolean,
4229
4233
  disabled: Boolean,
4230
4234
  readonly: Boolean,
4235
+ required: [Boolean, String],
4231
4236
  showError: Boolean,
4232
4237
  labelWidth: numericProp,
4233
4238
  labelAlign: String,
@@ -4242,8 +4247,8 @@
4242
4247
  default: "onBlur"
4243
4248
  }
4244
4249
  };
4245
- var stdin_default$1v = vue.defineComponent({
4246
- name: name$1l,
4250
+ var stdin_default$1w = vue.defineComponent({
4251
+ name: name$1m,
4247
4252
  props: formProps,
4248
4253
  emits: ["submit", "failed"],
4249
4254
  setup(props2, {
@@ -4369,13 +4374,13 @@
4369
4374
  return () => {
4370
4375
  var _a;
4371
4376
  return vue.createVNode("form", {
4372
- "class": bem$1h(),
4377
+ "class": bem$1i(),
4373
4378
  "onSubmit": onSubmit
4374
4379
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
4375
4380
  };
4376
4381
  }
4377
4382
  });
4378
- const Form = withInstall(stdin_default$1v);
4383
+ const Form = withInstall(stdin_default$1w);
4379
4384
  function isEmptyValue(value) {
4380
4385
  if (Array.isArray(value)) {
4381
4386
  return !value.length;
@@ -4464,7 +4469,7 @@
4464
4469
  function cutString(str, maxlength) {
4465
4470
  return [...str].slice(0, maxlength).join("");
4466
4471
  }
4467
- const [name$1k, bem$1g] = createNamespace("field");
4472
+ const [name$1l, bem$1h] = createNamespace("field");
4468
4473
  const fieldSharedProps = {
4469
4474
  id: String,
4470
4475
  name: String,
@@ -4483,12 +4488,12 @@
4483
4488
  autocorrect: String,
4484
4489
  errorMessage: String,
4485
4490
  enterkeyhint: String,
4491
+ clearTrigger: makeStringProp("focus"),
4492
+ formatTrigger: makeStringProp("onChange"),
4486
4493
  spellcheck: {
4487
4494
  type: Boolean,
4488
4495
  default: null
4489
4496
  },
4490
- clearTrigger: makeStringProp("focus"),
4491
- formatTrigger: makeStringProp("onChange"),
4492
4497
  error: {
4493
4498
  type: Boolean,
4494
4499
  default: null
@@ -4517,8 +4522,8 @@
4517
4522
  default: null
4518
4523
  }
4519
4524
  });
4520
- var stdin_default$1u = vue.defineComponent({
4521
- name: name$1k,
4525
+ var stdin_default$1v = vue.defineComponent({
4526
+ name: name$1l,
4522
4527
  props: fieldProps,
4523
4528
  emits: ["blur", "focus", "clear", "keypress", "clickInput", "endValidate", "startValidate", "clickLeftIcon", "clickRightIcon", "update:modelValue"],
4524
4529
  setup(props2, {
@@ -4564,6 +4569,14 @@
4564
4569
  }
4565
4570
  return props2.modelValue;
4566
4571
  });
4572
+ const showRequiredMark = vue.computed(() => {
4573
+ var _a;
4574
+ const required = getProp("required");
4575
+ if (required === "auto") {
4576
+ return (_a = props2.rules) == null ? void 0 : _a.some((rule) => rule.required);
4577
+ }
4578
+ return required;
4579
+ });
4567
4580
  const runRules = (rules) => rules.reduce((promise, rule) => promise.then(() => {
4568
4581
  if (state.status === "failed") {
4569
4582
  return;
@@ -4792,7 +4805,7 @@
4792
4805
  const getInputId = () => props2.id || `${id}-input`;
4793
4806
  const getValidationStatus = () => state.status;
4794
4807
  const renderInput = () => {
4795
- const controlClass = bem$1g("control", [getProp("inputAlign"), {
4808
+ const controlClass = bem$1h("control", [getProp("inputAlign"), {
4796
4809
  error: showError.value,
4797
4810
  custom: !!slots.input,
4798
4811
  "min-height": props2.type === "textarea" && !props2.autosize
@@ -4837,7 +4850,7 @@
4837
4850
  const leftIconSlot = slots["left-icon"];
4838
4851
  if (props2.leftIcon || leftIconSlot) {
4839
4852
  return vue.createVNode("div", {
4840
- "class": bem$1g("left-icon"),
4853
+ "class": bem$1h("left-icon"),
4841
4854
  "onClick": onClickLeftIcon
4842
4855
  }, [leftIconSlot ? leftIconSlot() : vue.createVNode(Icon, {
4843
4856
  "name": props2.leftIcon,
@@ -4849,7 +4862,7 @@
4849
4862
  const rightIconSlot = slots["right-icon"];
4850
4863
  if (props2.rightIcon || rightIconSlot) {
4851
4864
  return vue.createVNode("div", {
4852
- "class": bem$1g("right-icon"),
4865
+ "class": bem$1h("right-icon"),
4853
4866
  "onClick": onClickRightIcon
4854
4867
  }, [rightIconSlot ? rightIconSlot() : vue.createVNode(Icon, {
4855
4868
  "name": props2.rightIcon,
@@ -4861,9 +4874,9 @@
4861
4874
  if (props2.showWordLimit && props2.maxlength) {
4862
4875
  const count = getStringLength(getModelValue());
4863
4876
  return vue.createVNode("div", {
4864
- "class": bem$1g("word-limit")
4877
+ "class": bem$1h("word-limit")
4865
4878
  }, [vue.createVNode("span", {
4866
- "class": bem$1g("word-num")
4879
+ "class": bem$1h("word-num")
4867
4880
  }, [count]), vue.createTextVNode("/"), props2.maxlength]);
4868
4881
  }
4869
4882
  };
@@ -4876,7 +4889,7 @@
4876
4889
  const slot = slots["error-message"];
4877
4890
  const errorMessageAlign = getProp("errorMessageAlign");
4878
4891
  return vue.createVNode("div", {
4879
- "class": bem$1g("error-message", errorMessageAlign)
4892
+ "class": bem$1h("error-message", errorMessageAlign)
4880
4893
  }, [slot ? slot({
4881
4894
  message
4882
4895
  }) : message]);
@@ -4904,13 +4917,13 @@
4904
4917
  }
4905
4918
  };
4906
4919
  const renderFieldBody = () => [vue.createVNode("div", {
4907
- "class": bem$1g("body")
4920
+ "class": bem$1h("body")
4908
4921
  }, [renderInput(), showClear.value && vue.createVNode(Icon, {
4909
4922
  "ref": clearIconRef,
4910
4923
  "name": props2.clearIcon,
4911
- "class": bem$1g("clear")
4924
+ "class": bem$1h("clear")
4912
4925
  }, null), renderRightIcon(), slots.button && vue.createVNode("div", {
4913
- "class": bem$1g("button")
4926
+ "class": bem$1h("button")
4914
4927
  }, [slots.button()])]), renderWordLimit(), renderMessage()];
4915
4928
  useExpose({
4916
4929
  blur,
@@ -4954,7 +4967,7 @@
4954
4967
  };
4955
4968
  return vue.createVNode(Cell, {
4956
4969
  "size": props2.size,
4957
- "class": bem$1g({
4970
+ "class": bem$1h({
4958
4971
  error: showError.value,
4959
4972
  disabled,
4960
4973
  [`label-${labelAlign}`]: labelAlign
@@ -4964,9 +4977,9 @@
4964
4977
  "isLink": props2.isLink,
4965
4978
  "clickable": props2.clickable,
4966
4979
  "titleStyle": labelStyle.value,
4967
- "valueClass": bem$1g("value"),
4968
- "titleClass": [bem$1g("label", [labelAlign, {
4969
- required: props2.required
4980
+ "valueClass": bem$1h("value"),
4981
+ "titleClass": [bem$1h("label", [labelAlign, {
4982
+ required: showRequiredMark.value
4970
4983
  }]), props2.labelClass],
4971
4984
  "arrowDirection": props2.arrowDirection
4972
4985
  }, {
@@ -4978,7 +4991,7 @@
4978
4991
  };
4979
4992
  }
4980
4993
  });
4981
- const Field = withInstall(stdin_default$1u);
4994
+ const Field = withInstall(stdin_default$1v);
4982
4995
  let lockCount = 0;
4983
4996
  function lockClick(lock) {
4984
4997
  if (lock) {
@@ -4993,7 +5006,7 @@
4993
5006
  }
4994
5007
  }
4995
5008
  }
4996
- const [name$1j, bem$1f] = createNamespace("toast");
5009
+ const [name$1k, bem$1g] = createNamespace("toast");
4997
5010
  const popupInheritProps = ["show", "overlay", "teleport", "transition", "overlayClass", "overlayStyle", "closeOnClickOverlay"];
4998
5011
  const toastProps = {
4999
5012
  icon: String,
@@ -5016,8 +5029,8 @@
5016
5029
  closeOnClick: Boolean,
5017
5030
  closeOnClickOverlay: Boolean
5018
5031
  };
5019
- var stdin_default$1t = vue.defineComponent({
5020
- name: name$1j,
5032
+ var stdin_default$1u = vue.defineComponent({
5033
+ name: name$1k,
5021
5034
  props: toastProps,
5022
5035
  emits: ["update:show"],
5023
5036
  setup(props2, {
@@ -5053,13 +5066,13 @@
5053
5066
  return vue.createVNode(Icon, {
5054
5067
  "name": icon || type,
5055
5068
  "size": iconSize,
5056
- "class": bem$1f("icon"),
5069
+ "class": bem$1g("icon"),
5057
5070
  "classPrefix": iconPrefix
5058
5071
  }, null);
5059
5072
  }
5060
5073
  if (type === "loading") {
5061
5074
  return vue.createVNode(Loading, {
5062
- "class": bem$1f("loading"),
5075
+ "class": bem$1g("loading"),
5063
5076
  "size": iconSize,
5064
5077
  "type": loadingType
5065
5078
  }, null);
@@ -5072,16 +5085,16 @@
5072
5085
  } = props2;
5073
5086
  if (slots.message) {
5074
5087
  return vue.createVNode("div", {
5075
- "class": bem$1f("text")
5088
+ "class": bem$1g("text")
5076
5089
  }, [slots.message()]);
5077
5090
  }
5078
5091
  if (isDef(message) && message !== "") {
5079
5092
  return type === "html" ? vue.createVNode("div", {
5080
5093
  "key": 0,
5081
- "class": bem$1f("text"),
5094
+ "class": bem$1g("text"),
5082
5095
  "innerHTML": String(message)
5083
5096
  }, null) : vue.createVNode("div", {
5084
- "class": bem$1f("text")
5097
+ "class": bem$1g("text")
5085
5098
  }, [message]);
5086
5099
  }
5087
5100
  };
@@ -5097,7 +5110,7 @@
5097
5110
  vue.onMounted(toggleClickable);
5098
5111
  vue.onUnmounted(toggleClickable);
5099
5112
  return () => vue.createVNode(Popup, vue.mergeProps({
5100
- "class": [bem$1f([props2.position, props2.wordBreak === "normal" ? "break-normal" : props2.wordBreak, {
5113
+ "class": [bem$1g([props2.position, props2.wordBreak === "normal" ? "break-normal" : props2.wordBreak, {
5101
5114
  [props2.type]: !props2.icon
5102
5115
  }]), props2.className],
5103
5116
  "lockScroll": false,
@@ -5198,7 +5211,7 @@
5198
5211
  onClosed,
5199
5212
  "onUpdate:show": toggle
5200
5213
  };
5201
- return vue.createVNode(stdin_default$1t, vue.mergeProps(state, attrs), null);
5214
+ return vue.createVNode(stdin_default$1u, vue.mergeProps(state, attrs), null);
5202
5215
  };
5203
5216
  vue.watch(message, (val) => {
5204
5217
  state.message = val;
@@ -5268,8 +5281,8 @@
5268
5281
  const allowMultipleToast = (value = true) => {
5269
5282
  allowMultiple = value;
5270
5283
  };
5271
- const Toast = withInstall(stdin_default$1t);
5272
- const [name$1i, bem$1e] = createNamespace("switch");
5284
+ const Toast = withInstall(stdin_default$1u);
5285
+ const [name$1j, bem$1f] = createNamespace("switch");
5273
5286
  const switchProps = {
5274
5287
  size: numericProp,
5275
5288
  loading: Boolean,
@@ -5286,8 +5299,8 @@
5286
5299
  default: false
5287
5300
  }
5288
5301
  };
5289
- var stdin_default$1s = vue.defineComponent({
5290
- name: name$1i,
5302
+ var stdin_default$1t = vue.defineComponent({
5303
+ name: name$1j,
5291
5304
  props: switchProps,
5292
5305
  emits: ["change", "update:modelValue"],
5293
5306
  setup(props2, {
@@ -5306,7 +5319,7 @@
5306
5319
  if (props2.loading) {
5307
5320
  const color = isChecked() ? props2.activeColor : props2.inactiveColor;
5308
5321
  return vue.createVNode(Loading, {
5309
- "class": bem$1e("loading"),
5322
+ "class": bem$1f("loading"),
5310
5323
  "color": color
5311
5324
  }, null);
5312
5325
  }
@@ -5331,7 +5344,7 @@
5331
5344
  };
5332
5345
  return vue.createVNode("div", {
5333
5346
  "role": "switch",
5334
- "class": bem$1e({
5347
+ "class": bem$1f({
5335
5348
  on: checked,
5336
5349
  loading,
5337
5350
  disabled
@@ -5341,16 +5354,16 @@
5341
5354
  "aria-checked": checked,
5342
5355
  "onClick": onClick
5343
5356
  }, [vue.createVNode("div", {
5344
- "class": bem$1e("node")
5357
+ "class": bem$1f("node")
5345
5358
  }, [renderLoading()]), (_a = slots.background) == null ? void 0 : _a.call(slots)]);
5346
5359
  };
5347
5360
  }
5348
5361
  });
5349
- const Switch = withInstall(stdin_default$1s);
5350
- const [name$1h, bem$1d] = createNamespace("address-edit-detail");
5362
+ const Switch = withInstall(stdin_default$1t);
5363
+ const [name$1i, bem$1e] = createNamespace("address-edit-detail");
5351
5364
  const t$j = createNamespace("address-edit")[2];
5352
- var stdin_default$1r = vue.defineComponent({
5353
- name: name$1h,
5365
+ var stdin_default$1s = vue.defineComponent({
5366
+ name: name$1i,
5354
5367
  props: {
5355
5368
  show: Boolean,
5356
5369
  rows: numericProp,
@@ -5384,7 +5397,7 @@
5384
5397
  "icon": "location-o",
5385
5398
  "title": express.name,
5386
5399
  "label": express.address,
5387
- "class": bem$1d("search-item"),
5400
+ "class": bem$1e("search-item"),
5388
5401
  "border": false,
5389
5402
  "onClick": () => onSelect(express)
5390
5403
  }, null));
@@ -5398,7 +5411,7 @@
5398
5411
  "autosize": true,
5399
5412
  "clearable": true,
5400
5413
  "ref": field,
5401
- "class": bem$1d(),
5414
+ "class": bem$1e(),
5402
5415
  "rows": props2.rows,
5403
5416
  "type": "textarea",
5404
5417
  "rules": props2.rules,
@@ -5415,7 +5428,7 @@
5415
5428
  };
5416
5429
  }
5417
5430
  });
5418
- const [name$1g, bem$1c, t$i] = createNamespace("address-edit");
5431
+ const [name$1h, bem$1d, t$i] = createNamespace("address-edit");
5419
5432
  const DEFAULT_DATA = {
5420
5433
  name: "",
5421
5434
  tel: "",
@@ -5455,8 +5468,8 @@
5455
5468
  default: isMobile
5456
5469
  }
5457
5470
  };
5458
- var stdin_default$1q = vue.defineComponent({
5459
- name: name$1g,
5471
+ var stdin_default$1r = vue.defineComponent({
5472
+ name: name$1h,
5460
5473
  props: addressEditProps,
5461
5474
  emits: ["save", "focus", "change", "delete", "clickArea", "changeArea", "changeDetail", "selectSearch", "changeDefault"],
5462
5475
  setup(props2, {
@@ -5574,7 +5587,7 @@
5574
5587
  "center": true,
5575
5588
  "border": false,
5576
5589
  "title": t$i("defaultAddress"),
5577
- "class": bem$1c("default")
5590
+ "class": bem$1d("default")
5578
5591
  }, slots2), [[vue.vShow, !hideBottomFields.value]]);
5579
5592
  }
5580
5593
  };
@@ -5600,13 +5613,13 @@
5600
5613
  disableArea
5601
5614
  } = props2;
5602
5615
  return vue.createVNode(Form, {
5603
- "class": bem$1c(),
5616
+ "class": bem$1d(),
5604
5617
  "onSubmit": onSave
5605
5618
  }, {
5606
5619
  default: () => {
5607
5620
  var _a;
5608
5621
  return [vue.createVNode("div", {
5609
- "class": bem$1c("fields")
5622
+ "class": bem$1d("fields")
5610
5623
  }, [vue.createVNode(Field, {
5611
5624
  "modelValue": data.name,
5612
5625
  "onUpdate:modelValue": [($event) => data.name = $event, (val) => onChange("name", val)],
@@ -5630,14 +5643,14 @@
5630
5643
  "label": t$i("area"),
5631
5644
  "is-link": !disableArea,
5632
5645
  "modelValue": areaText.value,
5633
- "rules": rules.value.areaCode,
5646
+ "rules": props2.showArea ? rules.value.areaCode : void 0,
5634
5647
  "placeholder": props2.areaPlaceholder || t$i("area"),
5635
5648
  "onFocus": () => onFocus("areaCode"),
5636
5649
  "onClick": () => {
5637
5650
  emit("clickArea");
5638
5651
  showAreaPopup.value = !disableArea;
5639
5652
  }
5640
- }, null), [[vue.vShow, props2.showArea]]), vue.createVNode(stdin_default$1r, {
5653
+ }, null), [[vue.vShow, props2.showArea]]), vue.createVNode(stdin_default$1s, {
5641
5654
  "show": props2.showDetail,
5642
5655
  "rows": props2.detailRows,
5643
5656
  "rules": rules.value.addressDetail,
@@ -5651,19 +5664,19 @@
5651
5664
  "onInput": onChangeDetail,
5652
5665
  "onSelectSearch": (event) => emit("selectSearch", event)
5653
5666
  }, null), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderSetDefaultCell(), vue.withDirectives(vue.createVNode("div", {
5654
- "class": bem$1c("buttons")
5667
+ "class": bem$1d("buttons")
5655
5668
  }, [vue.createVNode(Button, {
5656
5669
  "block": true,
5657
5670
  "round": true,
5658
5671
  "type": "primary",
5659
5672
  "text": props2.saveButtonText || t$i("save"),
5660
- "class": bem$1c("button"),
5673
+ "class": bem$1d("button"),
5661
5674
  "loading": props2.isSaving,
5662
5675
  "nativeType": "submit"
5663
5676
  }, null), props2.showDelete && vue.createVNode(Button, {
5664
5677
  "block": true,
5665
5678
  "round": true,
5666
- "class": bem$1c("button"),
5679
+ "class": bem$1d("button"),
5667
5680
  "loading": props2.isDeleting,
5668
5681
  "text": props2.deleteButtonText || t$i("delete"),
5669
5682
  "onClick": onDelete
@@ -5693,8 +5706,8 @@
5693
5706
  };
5694
5707
  }
5695
5708
  });
5696
- const AddressEdit = withInstall(stdin_default$1q);
5697
- const [name$1f, bem$1b] = createNamespace("radio-group");
5709
+ const AddressEdit = withInstall(stdin_default$1r);
5710
+ const [name$1g, bem$1c] = createNamespace("radio-group");
5698
5711
  const radioGroupProps = {
5699
5712
  shape: String,
5700
5713
  disabled: Boolean,
@@ -5703,9 +5716,9 @@
5703
5716
  modelValue: unknownProp,
5704
5717
  checkedColor: String
5705
5718
  };
5706
- const RADIO_KEY = Symbol(name$1f);
5707
- var stdin_default$1p = vue.defineComponent({
5708
- name: name$1f,
5719
+ const RADIO_KEY = Symbol(name$1g);
5720
+ var stdin_default$1q = vue.defineComponent({
5721
+ name: name$1g,
5709
5722
  props: radioGroupProps,
5710
5723
  emits: ["change", "update:modelValue"],
5711
5724
  setup(props2, {
@@ -5725,14 +5738,14 @@
5725
5738
  return () => {
5726
5739
  var _a;
5727
5740
  return vue.createVNode("div", {
5728
- "class": bem$1b([props2.direction]),
5741
+ "class": bem$1c([props2.direction]),
5729
5742
  "role": "radiogroup"
5730
5743
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
5731
5744
  };
5732
5745
  }
5733
5746
  });
5734
- const RadioGroup = withInstall(stdin_default$1p);
5735
- const [name$1e, bem$1a] = createNamespace("tag");
5747
+ const RadioGroup = withInstall(stdin_default$1q);
5748
+ const [name$1f, bem$1b] = createNamespace("tag");
5736
5749
  const tagProps = {
5737
5750
  size: String,
5738
5751
  mark: Boolean,
@@ -5744,8 +5757,8 @@
5744
5757
  textColor: String,
5745
5758
  closeable: Boolean
5746
5759
  };
5747
- var stdin_default$1o = vue.defineComponent({
5748
- name: name$1e,
5760
+ var stdin_default$1p = vue.defineComponent({
5761
+ name: name$1f,
5749
5762
  props: tagProps,
5750
5763
  emits: ["close"],
5751
5764
  setup(props2, {
@@ -5788,12 +5801,12 @@
5788
5801
  }
5789
5802
  const CloseIcon = closeable && vue.createVNode(Icon, {
5790
5803
  "name": "cross",
5791
- "class": [bem$1a("close"), HAPTICS_FEEDBACK],
5804
+ "class": [bem$1b("close"), HAPTICS_FEEDBACK],
5792
5805
  "onClick": onClose
5793
5806
  }, null);
5794
5807
  return vue.createVNode("span", {
5795
5808
  "style": getStyle(),
5796
- "class": bem$1a([classes, type])
5809
+ "class": bem$1b([classes, type])
5797
5810
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots), CloseIcon]);
5798
5811
  };
5799
5812
  return () => vue.createVNode(vue.Transition, {
@@ -5803,7 +5816,7 @@
5803
5816
  });
5804
5817
  }
5805
5818
  });
5806
- const Tag = withInstall(stdin_default$1o);
5819
+ const Tag = withInstall(stdin_default$1p);
5807
5820
  const checkerProps = {
5808
5821
  name: unknownProp,
5809
5822
  disabled: Boolean,
@@ -5813,7 +5826,7 @@
5813
5826
  labelPosition: String,
5814
5827
  labelDisabled: Boolean
5815
5828
  };
5816
- var stdin_default$1n = vue.defineComponent({
5829
+ var stdin_default$1o = vue.defineComponent({
5817
5830
  props: extend({}, checkerProps, {
5818
5831
  bem: makeRequiredProp(Function),
5819
5832
  role: String,
@@ -5910,12 +5923,18 @@
5910
5923
  }, null)]);
5911
5924
  };
5912
5925
  const renderLabel = () => {
5926
+ const {
5927
+ checked
5928
+ } = props2;
5913
5929
  if (slots.default) {
5914
5930
  return vue.createVNode("span", {
5915
5931
  "class": props2.bem("label", [props2.labelPosition, {
5916
5932
  disabled: disabled.value
5917
5933
  }])
5918
- }, [slots.default()]);
5934
+ }, [slots.default({
5935
+ checked,
5936
+ disabled: disabled.value
5937
+ })]);
5919
5938
  }
5920
5939
  };
5921
5940
  return () => {
@@ -5936,9 +5955,9 @@
5936
5955
  const radioProps = extend({}, checkerProps, {
5937
5956
  shape: String
5938
5957
  });
5939
- const [name$1d, bem$19] = createNamespace("radio");
5940
- var stdin_default$1m = vue.defineComponent({
5941
- name: name$1d,
5958
+ const [name$1e, bem$1a] = createNamespace("radio");
5959
+ var stdin_default$1n = vue.defineComponent({
5960
+ name: name$1e,
5942
5961
  props: radioProps,
5943
5962
  emits: ["update:modelValue"],
5944
5963
  setup(props2, {
@@ -5959,8 +5978,8 @@
5959
5978
  emit("update:modelValue", props2.name);
5960
5979
  }
5961
5980
  };
5962
- return () => vue.createVNode(stdin_default$1n, vue.mergeProps({
5963
- "bem": bem$19,
5981
+ return () => vue.createVNode(stdin_default$1o, vue.mergeProps({
5982
+ "bem": bem$1a,
5964
5983
  "role": "radio",
5965
5984
  "parent": parent,
5966
5985
  "checked": checked(),
@@ -5968,10 +5987,10 @@
5968
5987
  }, props2), pick(slots, ["default", "icon"]));
5969
5988
  }
5970
5989
  });
5971
- const Radio = withInstall(stdin_default$1m);
5972
- const [name$1c, bem$18] = createNamespace("address-item");
5973
- var stdin_default$1l = vue.defineComponent({
5974
- name: name$1c,
5990
+ const Radio = withInstall(stdin_default$1n);
5991
+ const [name$1d, bem$19] = createNamespace("address-item");
5992
+ var stdin_default$1m = vue.defineComponent({
5993
+ name: name$1d,
5975
5994
  props: {
5976
5995
  address: makeRequiredProp(Object),
5977
5996
  disabled: Boolean,
@@ -5992,7 +6011,7 @@
5992
6011
  };
5993
6012
  const renderRightIcon = () => vue.createVNode(Icon, {
5994
6013
  "name": props2.rightIcon,
5995
- "class": bem$18("edit"),
6014
+ "class": bem$19("edit"),
5996
6015
  "onClick": (event) => {
5997
6016
  event.stopPropagation();
5998
6017
  emit("edit");
@@ -6007,7 +6026,7 @@
6007
6026
  return vue.createVNode(Tag, {
6008
6027
  "type": "primary",
6009
6028
  "round": true,
6010
- "class": bem$18("tag")
6029
+ "class": bem$19("tag")
6011
6030
  }, {
6012
6031
  default: () => [props2.defaultTagText]
6013
6032
  });
@@ -6020,9 +6039,9 @@
6020
6039
  switchable
6021
6040
  } = props2;
6022
6041
  const Info = [vue.createVNode("div", {
6023
- "class": bem$18("name")
6042
+ "class": bem$19("name")
6024
6043
  }, [`${address.name} ${address.tel}`, renderTag()]), vue.createVNode("div", {
6025
- "class": bem$18("address")
6044
+ "class": bem$19("address")
6026
6045
  }, [address.address])];
6027
6046
  if (switchable && !disabled) {
6028
6047
  return vue.createVNode(Radio, {
@@ -6040,13 +6059,13 @@
6040
6059
  disabled
6041
6060
  } = props2;
6042
6061
  return vue.createVNode("div", {
6043
- "class": bem$18({
6062
+ "class": bem$19({
6044
6063
  disabled
6045
6064
  }),
6046
6065
  "onClick": onClick
6047
6066
  }, [vue.createVNode(Cell, {
6048
6067
  "border": false,
6049
- "titleClass": bem$18("title")
6068
+ "titleClass": bem$19("title")
6050
6069
  }, {
6051
6070
  title: renderContent,
6052
6071
  "right-icon": renderRightIcon
@@ -6056,7 +6075,7 @@
6056
6075
  };
6057
6076
  }
6058
6077
  });
6059
- const [name$1b, bem$17, t$h] = createNamespace("address-list");
6078
+ const [name$1c, bem$18, t$h] = createNamespace("address-list");
6060
6079
  const addressListProps = {
6061
6080
  list: makeArrayProp(),
6062
6081
  modelValue: numericProp,
@@ -6068,8 +6087,8 @@
6068
6087
  defaultTagText: String,
6069
6088
  rightIcon: makeStringProp("edit")
6070
6089
  };
6071
- var stdin_default$1k = vue.defineComponent({
6072
- name: name$1b,
6090
+ var stdin_default$1l = vue.defineComponent({
6091
+ name: name$1c,
6073
6092
  props: addressListProps,
6074
6093
  emits: ["add", "edit", "select", "clickItem", "editDisabled", "selectDisabled", "update:modelValue"],
6075
6094
  setup(props2, {
@@ -6085,7 +6104,7 @@
6085
6104
  emit("update:modelValue", item.id);
6086
6105
  }
6087
6106
  };
6088
- return vue.createVNode(stdin_default$1l, {
6107
+ return vue.createVNode(stdin_default$1m, {
6089
6108
  "key": item.id,
6090
6109
  "address": item,
6091
6110
  "disabled": disabled,
@@ -6106,13 +6125,13 @@
6106
6125
  }
6107
6126
  };
6108
6127
  const renderBottom = () => props2.showAddButton ? vue.createVNode("div", {
6109
- "class": [bem$17("bottom"), "van-safe-area-bottom"]
6128
+ "class": [bem$18("bottom"), "van-safe-area-bottom"]
6110
6129
  }, [vue.createVNode(Button, {
6111
6130
  "round": true,
6112
6131
  "block": true,
6113
6132
  "type": "primary",
6114
6133
  "text": props2.addButtonText || t$h("add"),
6115
- "class": bem$17("add"),
6134
+ "class": bem$18("add"),
6116
6135
  "onClick": () => emit("add")
6117
6136
  }, null)]) : void 0;
6118
6137
  return () => {
@@ -6120,10 +6139,10 @@
6120
6139
  const List2 = renderList(props2.list);
6121
6140
  const DisabledList = renderList(props2.disabledList, true);
6122
6141
  const DisabledText = props2.disabledText && vue.createVNode("div", {
6123
- "class": bem$17("disabled-text")
6142
+ "class": bem$18("disabled-text")
6124
6143
  }, [props2.disabledText]);
6125
6144
  return vue.createVNode("div", {
6126
- "class": bem$17()
6145
+ "class": bem$18()
6127
6146
  }, [(_a = slots.top) == null ? void 0 : _a.call(slots), vue.createVNode(RadioGroup, {
6128
6147
  "modelValue": props2.modelValue
6129
6148
  }, {
@@ -6132,7 +6151,7 @@
6132
6151
  };
6133
6152
  }
6134
6153
  });
6135
- const AddressList = withInstall(stdin_default$1k);
6154
+ const AddressList = withInstall(stdin_default$1l);
6136
6155
  const hasIntersectionObserver = inBrowser && "IntersectionObserver" in window && "IntersectionObserverEntry" in window && "intersectionRatio" in window.IntersectionObserverEntry.prototype;
6137
6156
  const modeType = {
6138
6157
  event: "event",
@@ -6285,7 +6304,7 @@
6285
6304
  this.caches.shift();
6286
6305
  }
6287
6306
  }
6288
- const [name$1a, bem$16] = createNamespace("back-top");
6307
+ const [name$1b, bem$17] = createNamespace("back-top");
6289
6308
  const backTopProps = {
6290
6309
  right: numericProp,
6291
6310
  bottom: numericProp,
@@ -6298,8 +6317,8 @@
6298
6317
  default: "body"
6299
6318
  }
6300
6319
  };
6301
- var stdin_default$1j = vue.defineComponent({
6302
- name: name$1a,
6320
+ var stdin_default$1k = vue.defineComponent({
6321
+ name: name$1b,
6303
6322
  inheritAttrs: false,
6304
6323
  props: backTopProps,
6305
6324
  emits: ["click"],
@@ -6368,19 +6387,19 @@
6368
6387
  return () => {
6369
6388
  const Content = vue.createVNode("div", vue.mergeProps({
6370
6389
  "ref": !props2.teleport ? root : void 0,
6371
- "class": bem$16({
6390
+ "class": bem$17({
6372
6391
  active: show.value
6373
6392
  }),
6374
6393
  "style": style.value,
6375
6394
  "onClick": onClick
6376
6395
  }, attrs), [slots.default ? slots.default() : vue.createVNode(Icon, {
6377
6396
  "name": "back-top",
6378
- "class": bem$16("icon")
6397
+ "class": bem$17("icon")
6379
6398
  }, null)]);
6380
6399
  if (props2.teleport) {
6381
6400
  return [vue.createVNode("div", {
6382
6401
  "ref": root,
6383
- "class": bem$16("placeholder")
6402
+ "class": bem$17("placeholder")
6384
6403
  }, null), vue.createVNode(vue.Teleport, {
6385
6404
  "to": props2.teleport
6386
6405
  }, {
@@ -6391,7 +6410,7 @@
6391
6410
  };
6392
6411
  }
6393
6412
  });
6394
- const BackTop = withInstall(stdin_default$1j);
6413
+ const BackTop = withInstall(stdin_default$1k);
6395
6414
  var __async = (__this, __arguments, generator) => {
6396
6415
  return new Promise((resolve, reject) => {
6397
6416
  var fulfilled = (value) => {
@@ -6420,9 +6439,9 @@
6420
6439
  delay: makeNumberProp(300),
6421
6440
  modelValue: makeArrayProp()
6422
6441
  };
6423
- const [name$19, bem$15] = createNamespace("barrage");
6424
- var stdin_default$1i = vue.defineComponent({
6425
- name: name$19,
6442
+ const [name$1a, bem$16] = createNamespace("barrage");
6443
+ var stdin_default$1j = vue.defineComponent({
6444
+ name: name$1a,
6426
6445
  props: barrageProps,
6427
6446
  emits: ["update:modelValue"],
6428
6447
  setup(props2, {
@@ -6430,7 +6449,7 @@
6430
6449
  slots
6431
6450
  }) {
6432
6451
  const barrageWrapper = vue.ref();
6433
- const className = bem$15("item");
6452
+ const className = bem$16("item");
6434
6453
  const total = vue.ref(0);
6435
6454
  const barrageItems = [];
6436
6455
  const createBarrageItem = (text, delay = props2.delay) => {
@@ -6511,15 +6530,15 @@
6511
6530
  return () => {
6512
6531
  var _a;
6513
6532
  return vue.createVNode("div", {
6514
- "class": bem$15(),
6533
+ "class": bem$16(),
6515
6534
  "ref": barrageWrapper,
6516
6535
  "style": rootStyle.value
6517
6536
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
6518
6537
  };
6519
6538
  }
6520
6539
  });
6521
- const Barrage = withInstall(stdin_default$1i);
6522
- const [name$18, bem$14, t$g] = createNamespace("calendar");
6540
+ const Barrage = withInstall(stdin_default$1j);
6541
+ const [name$19, bem$15, t$g] = createNamespace("calendar");
6523
6542
  const formatMonthTitle = (date) => t$g("monthTitle", date.getFullYear(), date.getMonth() + 1);
6524
6543
  function compareMonth(date1, date2) {
6525
6544
  const year1 = date1.getFullYear();
@@ -6599,9 +6618,9 @@
6599
6618
  }
6600
6619
  return value;
6601
6620
  });
6602
- const [name$17] = createNamespace("calendar-day");
6603
- var stdin_default$1h = vue.defineComponent({
6604
- name: name$17,
6621
+ const [name$18] = createNamespace("calendar-day");
6622
+ var stdin_default$1i = vue.defineComponent({
6623
+ name: name$18,
6605
6624
  props: {
6606
6625
  item: makeRequiredProp(Object),
6607
6626
  color: String,
@@ -6665,7 +6684,7 @@
6665
6684
  } = props2.item;
6666
6685
  if (topInfo || slots["top-info"]) {
6667
6686
  return vue.createVNode("div", {
6668
- "class": bem$14("top-info")
6687
+ "class": bem$15("top-info")
6669
6688
  }, [slots["top-info"] ? slots["top-info"](props2.item) : topInfo]);
6670
6689
  }
6671
6690
  };
@@ -6675,7 +6694,7 @@
6675
6694
  } = props2.item;
6676
6695
  if (bottomInfo || slots["bottom-info"]) {
6677
6696
  return vue.createVNode("div", {
6678
- "class": bem$14("bottom-info")
6697
+ "class": bem$15("bottom-info")
6679
6698
  }, [slots["bottom-info"] ? slots["bottom-info"](props2.item) : bottomInfo]);
6680
6699
  }
6681
6700
  };
@@ -6692,7 +6711,7 @@
6692
6711
  const Nodes = [renderTopInfo(), text, renderBottomInfo()];
6693
6712
  if (type === "selected") {
6694
6713
  return vue.createVNode("div", {
6695
- "class": bem$14("selected-day"),
6714
+ "class": bem$15("selected-day"),
6696
6715
  "style": {
6697
6716
  width: rowHeight,
6698
6717
  height: rowHeight,
@@ -6709,21 +6728,21 @@
6709
6728
  } = props2.item;
6710
6729
  if (type === "placeholder") {
6711
6730
  return vue.createVNode("div", {
6712
- "class": bem$14("day"),
6731
+ "class": bem$15("day"),
6713
6732
  "style": style.value
6714
6733
  }, null);
6715
6734
  }
6716
6735
  return vue.createVNode("div", {
6717
6736
  "role": "gridcell",
6718
6737
  "style": style.value,
6719
- "class": [bem$14("day", type), className],
6738
+ "class": [bem$15("day", type), className],
6720
6739
  "tabindex": type === "disabled" ? void 0 : -1,
6721
6740
  "onClick": onClick
6722
6741
  }, [renderContent()]);
6723
6742
  };
6724
6743
  }
6725
6744
  });
6726
- const [name$16] = createNamespace("calendar-month");
6745
+ const [name$17] = createNamespace("calendar-month");
6727
6746
  const calendarMonthProps = {
6728
6747
  date: makeRequiredProp(Date),
6729
6748
  type: String,
@@ -6740,8 +6759,8 @@
6740
6759
  showMonthTitle: Boolean,
6741
6760
  firstDayOfWeek: Number
6742
6761
  };
6743
- var stdin_default$1g = vue.defineComponent({
6744
- name: name$16,
6762
+ var stdin_default$1h = vue.defineComponent({
6763
+ name: name$17,
6745
6764
  props: calendarMonthProps,
6746
6765
  emits: ["click", "clickDisabledDate"],
6747
6766
  setup(props2, {
@@ -6846,7 +6865,7 @@
6846
6865
  const renderTitle = () => {
6847
6866
  if (props2.showMonthTitle) {
6848
6867
  return vue.createVNode("div", {
6849
- "class": bem$14("month-title")
6868
+ "class": bem$15("month-title")
6850
6869
  }, [slots["month-title"] ? slots["month-title"]({
6851
6870
  date: props2.date,
6852
6871
  text: title.value
@@ -6856,7 +6875,7 @@
6856
6875
  const renderMark = () => {
6857
6876
  if (props2.showMark && shouldRender.value) {
6858
6877
  return vue.createVNode("div", {
6859
- "class": bem$14("month-mark")
6878
+ "class": bem$15("month-mark")
6860
6879
  }, [props2.date.getMonth() + 1]);
6861
6880
  }
6862
6881
  };
@@ -6896,7 +6915,7 @@
6896
6915
  setScrollTop(body, daysRect.top + rowOffset + body.scrollTop - useRect(body).top);
6897
6916
  }
6898
6917
  };
6899
- const renderDay = (item, index) => vue.createVNode(stdin_default$1h, {
6918
+ const renderDay = (item, index) => vue.createVNode(stdin_default$1i, {
6900
6919
  "item": item,
6901
6920
  "index": index,
6902
6921
  "color": props2.color,
@@ -6908,7 +6927,7 @@
6908
6927
  const renderDays = () => vue.createVNode("div", {
6909
6928
  "ref": daysRef,
6910
6929
  "role": "grid",
6911
- "class": bem$14("days")
6930
+ "class": bem$15("days")
6912
6931
  }, [renderMark(), (shouldRender.value ? days : placeholders).value.map(renderDay)]);
6913
6932
  useExpose({
6914
6933
  getTitle,
@@ -6918,14 +6937,14 @@
6918
6937
  disabledDays
6919
6938
  });
6920
6939
  return () => vue.createVNode("div", {
6921
- "class": bem$14("month"),
6940
+ "class": bem$15("month"),
6922
6941
  "ref": monthRef
6923
6942
  }, [renderTitle(), renderDays()]);
6924
6943
  }
6925
6944
  });
6926
- const [name$15] = createNamespace("calendar-header");
6927
- var stdin_default$1f = vue.defineComponent({
6928
- name: name$15,
6945
+ const [name$16] = createNamespace("calendar-header");
6946
+ var stdin_default$1g = vue.defineComponent({
6947
+ name: name$16,
6929
6948
  props: {
6930
6949
  date: Date,
6931
6950
  title: String,
@@ -6944,7 +6963,7 @@
6944
6963
  const text = props2.title || t$g("title");
6945
6964
  const title = slots.title ? slots.title() : text;
6946
6965
  return vue.createVNode("div", {
6947
- "class": bem$14("header-title")
6966
+ "class": bem$15("header-title")
6948
6967
  }, [title]);
6949
6968
  }
6950
6969
  };
@@ -6956,7 +6975,7 @@
6956
6975
  text: props2.subtitle
6957
6976
  }) : props2.subtitle;
6958
6977
  return vue.createVNode("div", {
6959
- "class": bem$14("header-subtitle"),
6978
+ "class": bem$15("header-subtitle"),
6960
6979
  "onClick": onClickSubtitle
6961
6980
  }, [title]);
6962
6981
  }
@@ -6968,13 +6987,13 @@
6968
6987
  const weekdays = t$g("weekdays");
6969
6988
  const renderWeekDays2 = [...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek)];
6970
6989
  return vue.createVNode("div", {
6971
- "class": bem$14("weekdays")
6990
+ "class": bem$15("weekdays")
6972
6991
  }, [renderWeekDays2.map((text) => vue.createVNode("span", {
6973
- "class": bem$14("weekday")
6992
+ "class": bem$15("weekday")
6974
6993
  }, [text]))]);
6975
6994
  };
6976
6995
  return () => vue.createVNode("div", {
6977
- "class": bem$14("header")
6996
+ "class": bem$15("header")
6978
6997
  }, [renderTitle(), renderSubtitle(), renderWeekDays()]);
6979
6998
  }
6980
6999
  });
@@ -7025,8 +7044,8 @@
7025
7044
  validator: (val) => val >= 0 && val <= 6
7026
7045
  }
7027
7046
  };
7028
- var stdin_default$1e = vue.defineComponent({
7029
- name: name$18,
7047
+ var stdin_default$1f = vue.defineComponent({
7048
+ name: name$19,
7030
7049
  props: calendarProps,
7031
7050
  emits: ["select", "confirm", "unselect", "monthShow", "overRange", "update:show", "clickSubtitle", "clickDisabledDate"],
7032
7051
  setup(props2, {
@@ -7075,7 +7094,7 @@
7075
7094
  let bodyHeight;
7076
7095
  const bodyRef = vue.ref();
7077
7096
  const subtitle = vue.ref({
7078
- text: "",
7097
+ textFn: () => "",
7079
7098
  date: void 0
7080
7099
  });
7081
7100
  const currentDate = vue.ref(getInitialDate());
@@ -7139,7 +7158,7 @@
7139
7158
  });
7140
7159
  if (currentMonth) {
7141
7160
  subtitle.value = {
7142
- text: currentMonth.getTitle(),
7161
+ textFn: currentMonth.getTitle,
7143
7162
  date: currentMonth.date
7144
7163
  };
7145
7164
  }
@@ -7289,7 +7308,7 @@
7289
7308
  const updateShow = (value) => emit("update:show", value);
7290
7309
  const renderMonth = (date, index) => {
7291
7310
  const showMonthTitle = index !== 0 || !props2.showSubtitle;
7292
- return vue.createVNode(stdin_default$1g, vue.mergeProps({
7311
+ return vue.createVNode(stdin_default$1h, vue.mergeProps({
7293
7312
  "ref": setMonthRefs(index),
7294
7313
  "date": date,
7295
7314
  "currentDate": currentDate.value,
@@ -7313,7 +7332,7 @@
7313
7332
  "block": true,
7314
7333
  "type": "primary",
7315
7334
  "color": props2.color,
7316
- "class": bem$14("confirm"),
7335
+ "class": bem$15("confirm"),
7317
7336
  "disabled": disabled,
7318
7337
  "nativeType": "button",
7319
7338
  "onClick": onConfirm
@@ -7325,25 +7344,28 @@
7325
7344
  }
7326
7345
  };
7327
7346
  const renderFooter = () => vue.createVNode("div", {
7328
- "class": [bem$14("footer"), {
7347
+ "class": [bem$15("footer"), {
7329
7348
  "van-safe-area-bottom": props2.safeAreaInsetBottom
7330
7349
  }]
7331
7350
  }, [renderFooterButton()]);
7332
- const renderCalendar = () => vue.createVNode("div", {
7333
- "class": bem$14()
7334
- }, [vue.createVNode(stdin_default$1f, {
7335
- "date": subtitle.value.date,
7336
- "title": props2.title,
7337
- "subtitle": subtitle.value.text,
7338
- "showTitle": props2.showTitle,
7339
- "showSubtitle": props2.showSubtitle,
7340
- "firstDayOfWeek": dayOffset.value,
7341
- "onClickSubtitle": (event) => emit("clickSubtitle", event)
7342
- }, pick(slots, ["title", "subtitle"])), vue.createVNode("div", {
7343
- "ref": bodyRef,
7344
- "class": bem$14("body"),
7345
- "onScroll": onScroll
7346
- }, [months.value.map(renderMonth)]), renderFooter()]);
7351
+ const renderCalendar = () => {
7352
+ const subTitle = subtitle.value.textFn();
7353
+ return vue.createVNode("div", {
7354
+ "class": bem$15()
7355
+ }, [vue.createVNode(stdin_default$1g, {
7356
+ "date": subtitle.value.date,
7357
+ "title": props2.title,
7358
+ "subtitle": subTitle,
7359
+ "showTitle": props2.showTitle,
7360
+ "showSubtitle": props2.showSubtitle,
7361
+ "firstDayOfWeek": dayOffset.value,
7362
+ "onClickSubtitle": (event) => emit("clickSubtitle", event)
7363
+ }, pick(slots, ["title", "subtitle"])), vue.createVNode("div", {
7364
+ "ref": bodyRef,
7365
+ "class": bem$15("body"),
7366
+ "onScroll": onScroll
7367
+ }, [months.value.map(renderMonth)]), renderFooter()]);
7368
+ };
7347
7369
  vue.watch(() => props2.show, init);
7348
7370
  vue.watch(() => [props2.type, props2.minDate, props2.maxDate], () => reset(getInitialDate(currentDate.value)));
7349
7371
  vue.watch(() => props2.defaultDate, (value = null) => {
@@ -7360,7 +7382,7 @@
7360
7382
  if (props2.poppable) {
7361
7383
  return vue.createVNode(Popup, {
7362
7384
  "show": props2.show,
7363
- "class": bem$14("popup"),
7385
+ "class": bem$15("popup"),
7364
7386
  "round": props2.round,
7365
7387
  "position": props2.position,
7366
7388
  "closeable": props2.showTitle || props2.showSubtitle,
@@ -7377,8 +7399,8 @@
7377
7399
  };
7378
7400
  }
7379
7401
  });
7380
- const Calendar = withInstall(stdin_default$1e);
7381
- const [name$14, bem$13] = createNamespace("image");
7402
+ const Calendar = withInstall(stdin_default$1f);
7403
+ const [name$15, bem$14] = createNamespace("image");
7382
7404
  const imageProps = {
7383
7405
  src: String,
7384
7406
  alt: String,
@@ -7397,8 +7419,8 @@
7397
7419
  showLoading: truthProp,
7398
7420
  loadingIcon: makeStringProp("photo")
7399
7421
  };
7400
- var stdin_default$1d = vue.defineComponent({
7401
- name: name$14,
7422
+ var stdin_default$1e = vue.defineComponent({
7423
+ name: name$15,
7402
7424
  props: imageProps,
7403
7425
  emits: ["load", "error"],
7404
7426
  setup(props2, {
@@ -7459,13 +7481,13 @@
7459
7481
  const renderPlaceholder = () => {
7460
7482
  if (loading.value && props2.showLoading) {
7461
7483
  return vue.createVNode("div", {
7462
- "class": bem$13("loading")
7463
- }, [renderIcon(props2.loadingIcon, bem$13("loading-icon"), slots.loading)]);
7484
+ "class": bem$14("loading")
7485
+ }, [renderIcon(props2.loadingIcon, bem$14("loading-icon"), slots.loading)]);
7464
7486
  }
7465
7487
  if (error.value && props2.showError) {
7466
7488
  return vue.createVNode("div", {
7467
- "class": bem$13("error")
7468
- }, [renderIcon(props2.errorIcon, bem$13("error-icon"), slots.error)]);
7489
+ "class": bem$14("error")
7490
+ }, [renderIcon(props2.errorIcon, bem$14("error-icon"), slots.error)]);
7469
7491
  }
7470
7492
  };
7471
7493
  const renderImage = () => {
@@ -7474,7 +7496,7 @@
7474
7496
  }
7475
7497
  const attrs = {
7476
7498
  alt: props2.alt,
7477
- class: bem$13("img"),
7499
+ class: bem$14("img"),
7478
7500
  style: {
7479
7501
  objectFit: props2.fit,
7480
7502
  objectPosition: props2.position
@@ -7532,7 +7554,7 @@
7532
7554
  return () => {
7533
7555
  var _a;
7534
7556
  return vue.createVNode("div", {
7535
- "class": bem$13({
7557
+ "class": bem$14({
7536
7558
  round: props2.round,
7537
7559
  block: props2.block
7538
7560
  }),
@@ -7541,8 +7563,8 @@
7541
7563
  };
7542
7564
  }
7543
7565
  });
7544
- const Image$1 = withInstall(stdin_default$1d);
7545
- const [name$13, bem$12] = createNamespace("card");
7566
+ const Image$1 = withInstall(stdin_default$1e);
7567
+ const [name$14, bem$13] = createNamespace("card");
7546
7568
  const cardProps = {
7547
7569
  tag: String,
7548
7570
  num: numericProp,
@@ -7556,8 +7578,8 @@
7556
7578
  thumbLink: String,
7557
7579
  originPrice: numericProp
7558
7580
  };
7559
- var stdin_default$1c = vue.defineComponent({
7560
- name: name$13,
7581
+ var stdin_default$1d = vue.defineComponent({
7582
+ name: name$14,
7561
7583
  props: cardProps,
7562
7584
  emits: ["clickThumb"],
7563
7585
  setup(props2, {
@@ -7570,14 +7592,14 @@
7570
7592
  }
7571
7593
  if (props2.title) {
7572
7594
  return vue.createVNode("div", {
7573
- "class": [bem$12("title"), "van-multi-ellipsis--l2"]
7595
+ "class": [bem$13("title"), "van-multi-ellipsis--l2"]
7574
7596
  }, [props2.title]);
7575
7597
  }
7576
7598
  };
7577
7599
  const renderThumbTag = () => {
7578
7600
  if (slots.tag || props2.tag) {
7579
7601
  return vue.createVNode("div", {
7580
- "class": bem$12("tag")
7602
+ "class": bem$13("tag")
7581
7603
  }, [slots.tag ? slots.tag() : vue.createVNode(Tag, {
7582
7604
  "mark": true,
7583
7605
  "type": "primary"
@@ -7602,7 +7624,7 @@
7602
7624
  if (slots.thumb || props2.thumb) {
7603
7625
  return vue.createVNode("a", {
7604
7626
  "href": props2.thumbLink,
7605
- "class": bem$12("thumb"),
7627
+ "class": bem$13("thumb"),
7606
7628
  "onClick": (event) => emit("clickThumb", event)
7607
7629
  }, [renderThumbImage(), renderThumbTag()]);
7608
7630
  }
@@ -7613,18 +7635,18 @@
7613
7635
  }
7614
7636
  if (props2.desc) {
7615
7637
  return vue.createVNode("div", {
7616
- "class": [bem$12("desc"), "van-ellipsis"]
7638
+ "class": [bem$13("desc"), "van-ellipsis"]
7617
7639
  }, [props2.desc]);
7618
7640
  }
7619
7641
  };
7620
7642
  const renderPriceText = () => {
7621
7643
  const priceArr = props2.price.toString().split(".");
7622
7644
  return vue.createVNode("div", null, [vue.createVNode("span", {
7623
- "class": bem$12("price-currency")
7645
+ "class": bem$13("price-currency")
7624
7646
  }, [props2.currency]), vue.createVNode("span", {
7625
- "class": bem$12("price-integer")
7647
+ "class": bem$13("price-integer")
7626
7648
  }, [priceArr[0]]), vue.createTextVNode("."), vue.createVNode("span", {
7627
- "class": bem$12("price-decimal")
7649
+ "class": bem$13("price-decimal")
7628
7650
  }, [priceArr[1]])]);
7629
7651
  };
7630
7652
  return () => {
@@ -7634,34 +7656,34 @@
7634
7656
  const showOriginPrice = slots["origin-price"] || isDef(props2.originPrice);
7635
7657
  const showBottom = showNum || showPrice || showOriginPrice || slots.bottom;
7636
7658
  const Price = showPrice && vue.createVNode("div", {
7637
- "class": bem$12("price")
7659
+ "class": bem$13("price")
7638
7660
  }, [slots.price ? slots.price() : renderPriceText()]);
7639
7661
  const OriginPrice = showOriginPrice && vue.createVNode("div", {
7640
- "class": bem$12("origin-price")
7662
+ "class": bem$13("origin-price")
7641
7663
  }, [slots["origin-price"] ? slots["origin-price"]() : `${props2.currency} ${props2.originPrice}`]);
7642
7664
  const Num = showNum && vue.createVNode("div", {
7643
- "class": bem$12("num")
7665
+ "class": bem$13("num")
7644
7666
  }, [slots.num ? slots.num() : `x${props2.num}`]);
7645
7667
  const Footer = slots.footer && vue.createVNode("div", {
7646
- "class": bem$12("footer")
7668
+ "class": bem$13("footer")
7647
7669
  }, [slots.footer()]);
7648
7670
  const Bottom = showBottom && vue.createVNode("div", {
7649
- "class": bem$12("bottom")
7671
+ "class": bem$13("bottom")
7650
7672
  }, [(_a = slots["price-top"]) == null ? void 0 : _a.call(slots), Price, OriginPrice, Num, (_b = slots.bottom) == null ? void 0 : _b.call(slots)]);
7651
7673
  return vue.createVNode("div", {
7652
- "class": bem$12()
7674
+ "class": bem$13()
7653
7675
  }, [vue.createVNode("div", {
7654
- "class": bem$12("header")
7676
+ "class": bem$13("header")
7655
7677
  }, [renderThumb(), vue.createVNode("div", {
7656
- "class": bem$12("content", {
7678
+ "class": bem$13("content", {
7657
7679
  centered: props2.centered
7658
7680
  })
7659
7681
  }, [vue.createVNode("div", null, [renderTitle(), renderDesc(), (_c = slots.tags) == null ? void 0 : _c.call(slots)]), Bottom])]), Footer]);
7660
7682
  };
7661
7683
  }
7662
7684
  });
7663
- const Card = withInstall(stdin_default$1c);
7664
- const [name$12, bem$11, t$f] = createNamespace("cascader");
7685
+ const Card = withInstall(stdin_default$1d);
7686
+ const [name$13, bem$12, t$f] = createNamespace("cascader");
7665
7687
  const cascaderProps = {
7666
7688
  title: String,
7667
7689
  options: makeArrayProp(),
@@ -7674,8 +7696,8 @@
7674
7696
  placeholder: String,
7675
7697
  activeColor: String
7676
7698
  };
7677
- var stdin_default$1b = vue.defineComponent({
7678
- name: name$12,
7699
+ var stdin_default$1c = vue.defineComponent({
7700
+ name: name$13,
7679
7701
  props: cascaderProps,
7680
7702
  emits: ["close", "change", "finish", "clickTab", "update:modelValue"],
7681
7703
  setup(props2, {
@@ -7784,12 +7806,12 @@
7784
7806
  title
7785
7807
  }) => emit("clickTab", name2, title);
7786
7808
  const renderHeader = () => props2.showHeader ? vue.createVNode("div", {
7787
- "class": bem$11("header")
7809
+ "class": bem$12("header")
7788
7810
  }, [vue.createVNode("h2", {
7789
- "class": bem$11("title")
7811
+ "class": bem$12("title")
7790
7812
  }, [slots.title ? slots.title() : props2.title]), props2.closeable ? vue.createVNode(Icon, {
7791
7813
  "name": props2.closeIcon,
7792
- "class": [bem$11("close-icon"), HAPTICS_FEEDBACK],
7814
+ "class": [bem$12("close-icon"), HAPTICS_FEEDBACK],
7793
7815
  "onClick": onClose
7794
7816
  }, null) : null]) : null;
7795
7817
  const renderOption = (option, selectedOption, tabIndex) => {
@@ -7805,7 +7827,7 @@
7805
7827
  return vue.createVNode("li", {
7806
7828
  "ref": selected ? setSelectedElementRefs(tabIndex) : void 0,
7807
7829
  "role": "menuitemradio",
7808
- "class": [bem$11("option", {
7830
+ "class": [bem$12("option", {
7809
7831
  selected,
7810
7832
  disabled
7811
7833
  }), option.className],
@@ -7818,12 +7840,12 @@
7818
7840
  "onClick": () => onSelect(option, tabIndex)
7819
7841
  }, [Text, selected ? vue.createVNode(Icon, {
7820
7842
  "name": "success",
7821
- "class": bem$11("selected-icon")
7843
+ "class": bem$12("selected-icon")
7822
7844
  }, null) : null]);
7823
7845
  };
7824
7846
  const renderOptions = (options, selectedOption, tabIndex) => vue.createVNode("ul", {
7825
7847
  "role": "menu",
7826
- "class": bem$11("options")
7848
+ "class": bem$12("options")
7827
7849
  }, [options.map((option) => renderOption(option, selectedOption, tabIndex))]);
7828
7850
  const renderTab = (tab, tabIndex) => {
7829
7851
  const {
@@ -7834,7 +7856,7 @@
7834
7856
  const title = selected ? selected[textKey] : placeholder;
7835
7857
  return vue.createVNode(Tab, {
7836
7858
  "title": title,
7837
- "titleClass": bem$11("tab", {
7859
+ "titleClass": bem$12("tab", {
7838
7860
  unselected: !selected
7839
7861
  })
7840
7862
  }, {
@@ -7853,7 +7875,7 @@
7853
7875
  "onUpdate:active": ($event) => activeTab.value = $event,
7854
7876
  "shrink": true,
7855
7877
  "animated": true,
7856
- "class": bem$11("tabs"),
7878
+ "class": bem$12("tabs"),
7857
7879
  "color": props2.activeColor,
7858
7880
  "swipeable": props2.swipeable,
7859
7881
  "onClickTab": onClickTab
@@ -7888,19 +7910,19 @@
7888
7910
  updateTabs();
7889
7911
  });
7890
7912
  return () => vue.createVNode("div", {
7891
- "class": bem$11()
7913
+ "class": bem$12()
7892
7914
  }, [renderHeader(), renderTabs()]);
7893
7915
  }
7894
7916
  });
7895
- const Cascader = withInstall(stdin_default$1b);
7896
- const [name$11, bem$10] = createNamespace("cell-group");
7917
+ const Cascader = withInstall(stdin_default$1c);
7918
+ const [name$12, bem$11] = createNamespace("cell-group");
7897
7919
  const cellGroupProps = {
7898
7920
  title: String,
7899
7921
  inset: Boolean,
7900
7922
  border: truthProp
7901
7923
  };
7902
- var stdin_default$1a = vue.defineComponent({
7903
- name: name$11,
7924
+ var stdin_default$1b = vue.defineComponent({
7925
+ name: name$12,
7904
7926
  inheritAttrs: false,
7905
7927
  props: cellGroupProps,
7906
7928
  setup(props2, {
@@ -7910,7 +7932,7 @@
7910
7932
  const renderGroup = () => {
7911
7933
  var _a;
7912
7934
  return vue.createVNode("div", vue.mergeProps({
7913
- "class": [bem$10({
7935
+ "class": [bem$11({
7914
7936
  inset: props2.inset
7915
7937
  }), {
7916
7938
  [BORDER_TOP_BOTTOM]: props2.border && !props2.inset
@@ -7918,7 +7940,7 @@
7918
7940
  }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
7919
7941
  };
7920
7942
  const renderTitle = () => vue.createVNode("div", {
7921
- "class": bem$10("title", {
7943
+ "class": bem$11("title", {
7922
7944
  inset: props2.inset
7923
7945
  })
7924
7946
  }, [slots.title ? slots.title() : props2.title]);
@@ -7930,8 +7952,8 @@
7930
7952
  };
7931
7953
  }
7932
7954
  });
7933
- const CellGroup = withInstall(stdin_default$1a);
7934
- const [name$10, bem$$] = createNamespace("checkbox-group");
7955
+ const CellGroup = withInstall(stdin_default$1b);
7956
+ const [name$11, bem$10] = createNamespace("checkbox-group");
7935
7957
  const checkboxGroupProps = {
7936
7958
  max: numericProp,
7937
7959
  shape: makeStringProp("round"),
@@ -7941,9 +7963,9 @@
7941
7963
  modelValue: makeArrayProp(),
7942
7964
  checkedColor: String
7943
7965
  };
7944
- const CHECKBOX_GROUP_KEY = Symbol(name$10);
7945
- var stdin_default$19 = vue.defineComponent({
7946
- name: name$10,
7966
+ const CHECKBOX_GROUP_KEY = Symbol(name$11);
7967
+ var stdin_default$1a = vue.defineComponent({
7968
+ name: name$11,
7947
7969
  props: checkboxGroupProps,
7948
7970
  emits: ["change", "update:modelValue"],
7949
7971
  setup(props2, {
@@ -7989,12 +8011,12 @@
7989
8011
  return () => {
7990
8012
  var _a;
7991
8013
  return vue.createVNode("div", {
7992
- "class": bem$$([props2.direction])
8014
+ "class": bem$10([props2.direction])
7993
8015
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
7994
8016
  };
7995
8017
  }
7996
8018
  });
7997
- const [name$$, bem$_] = createNamespace("checkbox");
8019
+ const [name$10, bem$$] = createNamespace("checkbox");
7998
8020
  const checkboxProps = extend({}, checkerProps, {
7999
8021
  shape: String,
8000
8022
  bindGroup: truthProp,
@@ -8003,8 +8025,8 @@
8003
8025
  default: null
8004
8026
  }
8005
8027
  });
8006
- var stdin_default$18 = vue.defineComponent({
8007
- name: name$$,
8028
+ var stdin_default$19 = vue.defineComponent({
8029
+ name: name$10,
8008
8030
  props: checkboxProps,
8009
8031
  emits: ["change", "update:modelValue"],
8010
8032
  setup(props2, {
@@ -8066,8 +8088,8 @@
8066
8088
  checked
8067
8089
  });
8068
8090
  useCustomFieldValue(() => props2.modelValue);
8069
- return () => vue.createVNode(stdin_default$1n, vue.mergeProps({
8070
- "bem": bem$_,
8091
+ return () => vue.createVNode(stdin_default$1o, vue.mergeProps({
8092
+ "bem": bem$$,
8071
8093
  "role": "checkbox",
8072
8094
  "parent": parent,
8073
8095
  "checked": checked.value,
@@ -8075,9 +8097,9 @@
8075
8097
  }, props2), pick(slots, ["default", "icon"]));
8076
8098
  }
8077
8099
  });
8078
- const Checkbox = withInstall(stdin_default$18);
8079
- const CheckboxGroup = withInstall(stdin_default$19);
8080
- const [name$_, bem$Z] = createNamespace("circle");
8100
+ const Checkbox = withInstall(stdin_default$19);
8101
+ const CheckboxGroup = withInstall(stdin_default$1a);
8102
+ const [name$$, bem$_] = createNamespace("circle");
8081
8103
  let uid = 0;
8082
8104
  const format = (rate) => Math.min(Math.max(+rate, 0), 100);
8083
8105
  function getPath(clockwise, viewBoxSize) {
@@ -8098,8 +8120,8 @@
8098
8120
  strokeLinecap: String,
8099
8121
  startPosition: makeStringProp("top")
8100
8122
  };
8101
- var stdin_default$17 = vue.defineComponent({
8102
- name: name$_,
8123
+ var stdin_default$18 = vue.defineComponent({
8124
+ name: name$$,
8103
8125
  props: circleProps,
8104
8126
  emits: ["update:currentRate"],
8105
8127
  setup(props2, {
@@ -8167,7 +8189,7 @@
8167
8189
  return vue.createVNode("path", {
8168
8190
  "d": path.value,
8169
8191
  "style": style,
8170
- "class": bem$Z("hover"),
8192
+ "class": bem$_("hover"),
8171
8193
  "stroke": color
8172
8194
  }, null);
8173
8195
  };
@@ -8178,7 +8200,7 @@
8178
8200
  strokeWidth: `${props2.strokeWidth}px`
8179
8201
  };
8180
8202
  return vue.createVNode("path", {
8181
- "class": bem$Z("layer"),
8203
+ "class": bem$_("layer"),
8182
8204
  "style": style,
8183
8205
  "d": path.value
8184
8206
  }, null);
@@ -8209,12 +8231,12 @@
8209
8231
  }
8210
8232
  if (props2.text) {
8211
8233
  return vue.createVNode("div", {
8212
- "class": bem$Z("text")
8234
+ "class": bem$_("text")
8213
8235
  }, [props2.text]);
8214
8236
  }
8215
8237
  };
8216
8238
  return () => vue.createVNode("div", {
8217
- "class": bem$Z(),
8239
+ "class": bem$_(),
8218
8240
  "style": getSizeStyle(props2.size)
8219
8241
  }, [vue.createVNode("svg", {
8220
8242
  "viewBox": `0 0 ${viewBoxSize.value} ${viewBoxSize.value}`,
@@ -8222,18 +8244,21 @@
8222
8244
  }, [renderGradient(), renderLayer(), renderHover()]), renderText()]);
8223
8245
  }
8224
8246
  });
8225
- const Circle = withInstall(stdin_default$17);
8226
- const [name$Z, bem$Y] = createNamespace("row");
8227
- const ROW_KEY = Symbol(name$Z);
8247
+ const Circle = withInstall(stdin_default$18);
8248
+ const [name$_, bem$Z] = createNamespace("row");
8249
+ const ROW_KEY = Symbol(name$_);
8228
8250
  const rowProps = {
8229
8251
  tag: makeStringProp("div"),
8230
8252
  wrap: truthProp,
8231
8253
  align: String,
8232
- gutter: makeNumericProp(0),
8254
+ gutter: {
8255
+ type: [String, Number, Array],
8256
+ default: 0
8257
+ },
8233
8258
  justify: String
8234
8259
  };
8235
- var stdin_default$16 = vue.defineComponent({
8236
- name: name$Z,
8260
+ var stdin_default$17 = vue.defineComponent({
8261
+ name: name$_,
8237
8262
  props: rowProps,
8238
8263
  setup(props2, {
8239
8264
  slots
@@ -8257,7 +8282,12 @@
8257
8282
  return groups2;
8258
8283
  });
8259
8284
  const spaces = vue.computed(() => {
8260
- const gutter = Number(props2.gutter);
8285
+ let gutter = 0;
8286
+ if (Array.isArray(props2.gutter)) {
8287
+ gutter = Number(props2.gutter[0]) || 0;
8288
+ } else {
8289
+ gutter = Number(props2.gutter);
8290
+ }
8261
8291
  const spaces2 = [];
8262
8292
  if (!gutter) {
8263
8293
  return spaces2;
@@ -8281,8 +8311,31 @@
8281
8311
  });
8282
8312
  return spaces2;
8283
8313
  });
8314
+ const verticalSpaces = vue.computed(() => {
8315
+ const {
8316
+ gutter
8317
+ } = props2;
8318
+ const spaces2 = [];
8319
+ if (Array.isArray(gutter) && gutter.length > 1) {
8320
+ const bottom2 = Number(gutter[1]) || 0;
8321
+ if (bottom2 <= 0) {
8322
+ return spaces2;
8323
+ }
8324
+ groups.value.forEach((group, index) => {
8325
+ if (index === groups.value.length - 1)
8326
+ return;
8327
+ group.forEach(() => {
8328
+ spaces2.push({
8329
+ bottom: bottom2
8330
+ });
8331
+ });
8332
+ });
8333
+ }
8334
+ return spaces2;
8335
+ });
8284
8336
  linkChildren({
8285
- spaces
8337
+ spaces,
8338
+ verticalSpaces
8286
8339
  });
8287
8340
  return () => {
8288
8341
  const {
@@ -8292,7 +8345,7 @@
8292
8345
  justify
8293
8346
  } = props2;
8294
8347
  return vue.createVNode(tag, {
8295
- "class": bem$Y({
8348
+ "class": bem$Z({
8296
8349
  [`align-${align}`]: align,
8297
8350
  [`justify-${justify}`]: justify,
8298
8351
  nowrap: !wrap
@@ -8306,14 +8359,14 @@
8306
8359
  };
8307
8360
  }
8308
8361
  });
8309
- const [name$Y, bem$X] = createNamespace("col");
8362
+ const [name$Z, bem$Y] = createNamespace("col");
8310
8363
  const colProps = {
8311
8364
  tag: makeStringProp("div"),
8312
8365
  span: makeNumericProp(0),
8313
8366
  offset: numericProp
8314
8367
  };
8315
- var stdin_default$15 = vue.defineComponent({
8316
- name: name$Y,
8368
+ var stdin_default$16 = vue.defineComponent({
8369
+ name: name$Z,
8317
8370
  props: colProps,
8318
8371
  setup(props2, {
8319
8372
  slots
@@ -8327,18 +8380,26 @@
8327
8380
  return;
8328
8381
  }
8329
8382
  const {
8330
- spaces
8383
+ spaces,
8384
+ verticalSpaces
8331
8385
  } = parent;
8386
+ let styles = {};
8332
8387
  if (spaces && spaces.value && spaces.value[index.value]) {
8333
8388
  const {
8334
8389
  left: left2,
8335
8390
  right: right2
8336
8391
  } = spaces.value[index.value];
8337
- return {
8392
+ styles = {
8338
8393
  paddingLeft: left2 ? `${left2}px` : null,
8339
8394
  paddingRight: right2 ? `${right2}px` : null
8340
8395
  };
8341
8396
  }
8397
+ const {
8398
+ bottom: bottom2
8399
+ } = verticalSpaces.value[index.value] || {};
8400
+ return extend(styles, {
8401
+ marginBottom: bottom2 ? `${bottom2}px` : null
8402
+ });
8342
8403
  });
8343
8404
  return () => {
8344
8405
  const {
@@ -8348,7 +8409,7 @@
8348
8409
  } = props2;
8349
8410
  return vue.createVNode(tag, {
8350
8411
  "style": style.value,
8351
- "class": bem$X({
8412
+ "class": bem$Y({
8352
8413
  [span]: span,
8353
8414
  [`offset-${offset2}`]: offset2
8354
8415
  })
@@ -8361,9 +8422,9 @@
8361
8422
  };
8362
8423
  }
8363
8424
  });
8364
- const Col = withInstall(stdin_default$15);
8365
- const [name$X, bem$W] = createNamespace("collapse");
8366
- const COLLAPSE_KEY = Symbol(name$X);
8425
+ const Col = withInstall(stdin_default$16);
8426
+ const [name$Y, bem$X] = createNamespace("collapse");
8427
+ const COLLAPSE_KEY = Symbol(name$Y);
8367
8428
  const collapseProps = {
8368
8429
  border: truthProp,
8369
8430
  accordion: Boolean,
@@ -8372,8 +8433,8 @@
8372
8433
  default: ""
8373
8434
  }
8374
8435
  };
8375
- var stdin_default$14 = vue.defineComponent({
8376
- name: name$X,
8436
+ var stdin_default$15 = vue.defineComponent({
8437
+ name: name$Y,
8377
8438
  props: collapseProps,
8378
8439
  emits: ["change", "update:modelValue"],
8379
8440
  setup(props2, {
@@ -8440,15 +8501,15 @@
8440
8501
  return () => {
8441
8502
  var _a;
8442
8503
  return vue.createVNode("div", {
8443
- "class": [bem$W(), {
8504
+ "class": [bem$X(), {
8444
8505
  [BORDER_TOP_BOTTOM]: props2.border
8445
8506
  }]
8446
8507
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
8447
8508
  };
8448
8509
  }
8449
8510
  });
8450
- const Collapse = withInstall(stdin_default$14);
8451
- const [name$W, bem$V] = createNamespace("collapse-item");
8511
+ const Collapse = withInstall(stdin_default$15);
8512
+ const [name$X, bem$W] = createNamespace("collapse-item");
8452
8513
  const CELL_SLOTS = ["icon", "title", "value", "label", "right-icon"];
8453
8514
  const collapseItemProps = extend({}, cellSharedProps, {
8454
8515
  name: numericProp,
@@ -8457,8 +8518,8 @@
8457
8518
  readonly: Boolean,
8458
8519
  lazyRender: truthProp
8459
8520
  });
8460
- var stdin_default$13 = vue.defineComponent({
8461
- name: name$W,
8521
+ var stdin_default$14 = vue.defineComponent({
8522
+ name: name$X,
8462
8523
  props: collapseItemProps,
8463
8524
  setup(props2, {
8464
8525
  slots
@@ -8537,7 +8598,7 @@
8537
8598
  }
8538
8599
  return vue.createVNode(Cell, vue.mergeProps({
8539
8600
  "role": "button",
8540
- "class": bem$V("title", {
8601
+ "class": bem$W("title", {
8541
8602
  disabled,
8542
8603
  expanded: expanded.value,
8543
8604
  borderless: !border
@@ -8550,11 +8611,11 @@
8550
8611
  var _a;
8551
8612
  return vue.withDirectives(vue.createVNode("div", {
8552
8613
  "ref": wrapperRef,
8553
- "class": bem$V("wrapper"),
8614
+ "class": bem$W("wrapper"),
8554
8615
  "onTransitionend": onTransitionEnd
8555
8616
  }, [vue.createVNode("div", {
8556
8617
  "ref": contentRef,
8557
- "class": bem$V("content")
8618
+ "class": bem$W("content")
8558
8619
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]), [[vue.vShow, show.value]]);
8559
8620
  });
8560
8621
  useExpose({
@@ -8563,15 +8624,15 @@
8563
8624
  itemName: name2
8564
8625
  });
8565
8626
  return () => vue.createVNode("div", {
8566
- "class": [bem$V({
8627
+ "class": [bem$W({
8567
8628
  border: index.value && props2.border
8568
8629
  })]
8569
8630
  }, [renderTitle(), renderContent()]);
8570
8631
  }
8571
8632
  });
8572
- const CollapseItem = withInstall(stdin_default$13);
8573
- const ConfigProvider = withInstall(stdin_default$1R);
8574
- const [name$V, bem$U, t$e] = createNamespace("contact-card");
8633
+ const CollapseItem = withInstall(stdin_default$14);
8634
+ const ConfigProvider = withInstall(stdin_default$1S);
8635
+ const [name$W, bem$V, t$e] = createNamespace("contact-card");
8575
8636
  const contactCardProps = {
8576
8637
  tel: String,
8577
8638
  name: String,
@@ -8579,8 +8640,8 @@
8579
8640
  addText: String,
8580
8641
  editable: truthProp
8581
8642
  };
8582
- var stdin_default$12 = vue.defineComponent({
8583
- name: name$V,
8643
+ var stdin_default$13 = vue.defineComponent({
8644
+ name: name$W,
8584
8645
  props: contactCardProps,
8585
8646
  emits: ["click"],
8586
8647
  setup(props2, {
@@ -8600,18 +8661,18 @@
8600
8661
  return () => vue.createVNode(Cell, {
8601
8662
  "center": true,
8602
8663
  "icon": props2.type === "edit" ? "contact" : "add-square",
8603
- "class": bem$U([props2.type]),
8664
+ "class": bem$V([props2.type]),
8604
8665
  "border": false,
8605
8666
  "isLink": props2.editable,
8606
- "titleClass": bem$U("title"),
8667
+ "titleClass": bem$V("title"),
8607
8668
  "onClick": onClick
8608
8669
  }, {
8609
8670
  title: renderContent
8610
8671
  });
8611
8672
  }
8612
8673
  });
8613
- const ContactCard = withInstall(stdin_default$12);
8614
- const [name$U, bem$T, t$d] = createNamespace("contact-edit");
8674
+ const ContactCard = withInstall(stdin_default$13);
8675
+ const [name$V, bem$U, t$d] = createNamespace("contact-edit");
8615
8676
  const DEFAULT_CONTACT = {
8616
8677
  tel: "",
8617
8678
  name: ""
@@ -8631,8 +8692,8 @@
8631
8692
  default: isMobile
8632
8693
  }
8633
8694
  };
8634
- var stdin_default$11 = vue.defineComponent({
8635
- name: name$U,
8695
+ var stdin_default$12 = vue.defineComponent({
8696
+ name: name$V,
8636
8697
  props: contactEditProps,
8637
8698
  emits: ["save", "delete", "changeDefault"],
8638
8699
  setup(props2, {
@@ -8646,20 +8707,20 @@
8646
8707
  };
8647
8708
  const onDelete = () => emit("delete", contact);
8648
8709
  const renderButtons = () => vue.createVNode("div", {
8649
- "class": bem$T("buttons")
8710
+ "class": bem$U("buttons")
8650
8711
  }, [vue.createVNode(Button, {
8651
8712
  "block": true,
8652
8713
  "round": true,
8653
8714
  "type": "primary",
8654
8715
  "text": t$d("save"),
8655
- "class": bem$T("button"),
8716
+ "class": bem$U("button"),
8656
8717
  "loading": props2.isSaving,
8657
8718
  "nativeType": "submit"
8658
8719
  }, null), props2.isEdit && vue.createVNode(Button, {
8659
8720
  "block": true,
8660
8721
  "round": true,
8661
8722
  "text": t$d("delete"),
8662
- "class": bem$T("button"),
8723
+ "class": bem$U("button"),
8663
8724
  "loading": props2.isDeleting,
8664
8725
  "onClick": onDelete
8665
8726
  }, null)]);
@@ -8672,7 +8733,7 @@
8672
8733
  if (props2.showSetDefault) {
8673
8734
  return vue.createVNode(Cell, {
8674
8735
  "title": props2.setDefaultLabel,
8675
- "class": bem$T("switch-cell"),
8736
+ "class": bem$U("switch-cell"),
8676
8737
  "border": false
8677
8738
  }, {
8678
8739
  "right-icon": renderSwitch
@@ -8681,11 +8742,11 @@
8681
8742
  };
8682
8743
  vue.watch(() => props2.contactInfo, (value) => extend(contact, DEFAULT_CONTACT, value));
8683
8744
  return () => vue.createVNode(Form, {
8684
- "class": bem$T(),
8745
+ "class": bem$U(),
8685
8746
  "onSubmit": onSave
8686
8747
  }, {
8687
8748
  default: () => [vue.createVNode("div", {
8688
- "class": bem$T("fields")
8749
+ "class": bem$U("fields")
8689
8750
  }, [vue.createVNode(Field, {
8690
8751
  "modelValue": contact.name,
8691
8752
  "onUpdate:modelValue": ($event) => contact.name = $event,
@@ -8712,16 +8773,16 @@
8712
8773
  });
8713
8774
  }
8714
8775
  });
8715
- const ContactEdit = withInstall(stdin_default$11);
8716
- const [name$T, bem$S, t$c] = createNamespace("contact-list");
8776
+ const ContactEdit = withInstall(stdin_default$12);
8777
+ const [name$U, bem$T, t$c] = createNamespace("contact-list");
8717
8778
  const contactListProps = {
8718
8779
  list: Array,
8719
8780
  addText: String,
8720
8781
  modelValue: unknownProp,
8721
8782
  defaultTagText: String
8722
8783
  };
8723
- var stdin_default$10 = vue.defineComponent({
8724
- name: name$T,
8784
+ var stdin_default$11 = vue.defineComponent({
8785
+ name: name$U,
8725
8786
  props: contactListProps,
8726
8787
  emits: ["add", "edit", "select", "update:modelValue"],
8727
8788
  setup(props2, {
@@ -8733,13 +8794,13 @@
8733
8794
  emit("select", item, index);
8734
8795
  };
8735
8796
  const renderRightIcon = () => vue.createVNode(Radio, {
8736
- "class": bem$S("radio"),
8797
+ "class": bem$T("radio"),
8737
8798
  "name": item.id,
8738
8799
  "iconSize": 18
8739
8800
  }, null);
8740
8801
  const renderEditIcon = () => vue.createVNode(Icon, {
8741
8802
  "name": "edit",
8742
- "class": bem$S("edit"),
8803
+ "class": bem$T("edit"),
8743
8804
  "onClick": (event) => {
8744
8805
  event.stopPropagation();
8745
8806
  emit("edit", item, index);
@@ -8751,7 +8812,7 @@
8751
8812
  nodes.push(vue.createVNode(Tag, {
8752
8813
  "type": "primary",
8753
8814
  "round": true,
8754
- "class": bem$S("item-tag")
8815
+ "class": bem$T("item-tag")
8755
8816
  }, {
8756
8817
  default: () => [props2.defaultTagText]
8757
8818
  }));
@@ -8762,8 +8823,8 @@
8762
8823
  "key": item.id,
8763
8824
  "isLink": true,
8764
8825
  "center": true,
8765
- "class": bem$S("item"),
8766
- "titleClass": bem$S("item-title"),
8826
+ "class": bem$T("item"),
8827
+ "titleClass": bem$T("item-title"),
8767
8828
  "onClick": onClick
8768
8829
  }, {
8769
8830
  icon: renderEditIcon,
@@ -8772,25 +8833,25 @@
8772
8833
  });
8773
8834
  };
8774
8835
  return () => vue.createVNode("div", {
8775
- "class": bem$S()
8836
+ "class": bem$T()
8776
8837
  }, [vue.createVNode(RadioGroup, {
8777
8838
  "modelValue": props2.modelValue,
8778
- "class": bem$S("group")
8839
+ "class": bem$T("group")
8779
8840
  }, {
8780
8841
  default: () => [props2.list && props2.list.map(renderItem)]
8781
8842
  }), vue.createVNode("div", {
8782
- "class": [bem$S("bottom"), "van-safe-area-bottom"]
8843
+ "class": [bem$T("bottom"), "van-safe-area-bottom"]
8783
8844
  }, [vue.createVNode(Button, {
8784
8845
  "round": true,
8785
8846
  "block": true,
8786
8847
  "type": "primary",
8787
- "class": bem$S("add"),
8848
+ "class": bem$T("add"),
8788
8849
  "text": props2.addText || t$c("addContact"),
8789
8850
  "onClick": () => emit("add")
8790
8851
  }, null)])]);
8791
8852
  }
8792
8853
  });
8793
- const ContactList = withInstall(stdin_default$10);
8854
+ const ContactList = withInstall(stdin_default$11);
8794
8855
  function parseFormat(format2, currentTime) {
8795
8856
  const { days } = currentTime;
8796
8857
  let { hours, minutes, seconds, milliseconds } = currentTime;
@@ -8826,15 +8887,15 @@
8826
8887
  }
8827
8888
  return format2;
8828
8889
  }
8829
- const [name$S, bem$R] = createNamespace("count-down");
8890
+ const [name$T, bem$S] = createNamespace("count-down");
8830
8891
  const countDownProps = {
8831
8892
  time: makeNumericProp(0),
8832
8893
  format: makeStringProp("HH:mm:ss"),
8833
8894
  autoStart: truthProp,
8834
8895
  millisecond: Boolean
8835
8896
  };
8836
- var stdin_default$$ = vue.defineComponent({
8837
- name: name$S,
8897
+ var stdin_default$10 = vue.defineComponent({
8898
+ name: name$T,
8838
8899
  props: countDownProps,
8839
8900
  emits: ["change", "finish"],
8840
8901
  setup(props2, {
@@ -8869,11 +8930,11 @@
8869
8930
  });
8870
8931
  return () => vue.createVNode("div", {
8871
8932
  "role": "timer",
8872
- "class": bem$R()
8933
+ "class": bem$S()
8873
8934
  }, [slots.default ? slots.default(current2.value) : timeText.value]);
8874
8935
  }
8875
8936
  });
8876
- const CountDown = withInstall(stdin_default$$);
8937
+ const CountDown = withInstall(stdin_default$10);
8877
8938
  function getDate(timeStamp) {
8878
8939
  const date = new Date(timeStamp * 1e3);
8879
8940
  return `${date.getFullYear()}.${padZero(date.getMonth() + 1)}.${padZero(
@@ -8882,9 +8943,9 @@
8882
8943
  }
8883
8944
  const formatDiscount = (discount) => (discount / 10).toFixed(discount % 10 === 0 ? 0 : 1);
8884
8945
  const formatAmount = (amount) => (amount / 100).toFixed(amount % 100 === 0 ? 0 : amount % 10 === 0 ? 1 : 2);
8885
- const [name$R, bem$Q, t$b] = createNamespace("coupon");
8886
- var stdin_default$_ = vue.defineComponent({
8887
- name: name$R,
8946
+ const [name$S, bem$R, t$b] = createNamespace("coupon");
8947
+ var stdin_default$$ = vue.defineComponent({
8948
+ name: name$S,
8888
8949
  props: {
8889
8950
  chosen: Boolean,
8890
8951
  coupon: makeRequiredProp(Object),
@@ -8928,34 +8989,34 @@
8928
8989
  } = props2;
8929
8990
  const description = disabled && coupon.reason || coupon.description;
8930
8991
  return vue.createVNode("div", {
8931
- "class": bem$Q({
8992
+ "class": bem$R({
8932
8993
  disabled
8933
8994
  })
8934
8995
  }, [vue.createVNode("div", {
8935
- "class": bem$Q("content")
8996
+ "class": bem$R("content")
8936
8997
  }, [vue.createVNode("div", {
8937
- "class": bem$Q("head")
8998
+ "class": bem$R("head")
8938
8999
  }, [vue.createVNode("h2", {
8939
- "class": bem$Q("amount")
9000
+ "class": bem$R("amount")
8940
9001
  }, [faceAmount.value]), vue.createVNode("p", {
8941
- "class": bem$Q("condition")
9002
+ "class": bem$R("condition")
8942
9003
  }, [coupon.condition || conditionMessage.value])]), vue.createVNode("div", {
8943
- "class": bem$Q("body")
9004
+ "class": bem$R("body")
8944
9005
  }, [vue.createVNode("p", {
8945
- "class": bem$Q("name")
9006
+ "class": bem$R("name")
8946
9007
  }, [coupon.name]), vue.createVNode("p", {
8947
- "class": bem$Q("valid")
9008
+ "class": bem$R("valid")
8948
9009
  }, [validPeriod.value]), !disabled && vue.createVNode(Checkbox, {
8949
- "class": bem$Q("corner"),
9010
+ "class": bem$R("corner"),
8950
9011
  "modelValue": chosen
8951
9012
  }, null)])]), description && vue.createVNode("p", {
8952
- "class": bem$Q("description")
9013
+ "class": bem$R("description")
8953
9014
  }, [description])]);
8954
9015
  };
8955
9016
  }
8956
9017
  });
8957
- const Coupon = withInstall(stdin_default$_);
8958
- const [name$Q, bem$P, t$a] = createNamespace("coupon-cell");
9018
+ const Coupon = withInstall(stdin_default$$);
9019
+ const [name$R, bem$Q, t$a] = createNamespace("coupon-cell");
8959
9020
  const couponCellProps = {
8960
9021
  title: String,
8961
9022
  border: truthProp,
@@ -8983,34 +9044,34 @@
8983
9044
  }
8984
9045
  return coupons.length === 0 ? t$a("noCoupon") : t$a("count", coupons.length);
8985
9046
  }
8986
- var stdin_default$Z = vue.defineComponent({
8987
- name: name$Q,
9047
+ var stdin_default$_ = vue.defineComponent({
9048
+ name: name$R,
8988
9049
  props: couponCellProps,
8989
9050
  setup(props2) {
8990
9051
  return () => {
8991
9052
  const selected = props2.coupons[+props2.chosenCoupon];
8992
9053
  return vue.createVNode(Cell, {
8993
- "class": bem$P(),
9054
+ "class": bem$Q(),
8994
9055
  "value": formatValue(props2),
8995
9056
  "title": props2.title || t$a("title"),
8996
9057
  "border": props2.border,
8997
9058
  "isLink": props2.editable,
8998
- "valueClass": bem$P("value", {
9059
+ "valueClass": bem$Q("value", {
8999
9060
  selected
9000
9061
  })
9001
9062
  }, null);
9002
9063
  };
9003
9064
  }
9004
9065
  });
9005
- const CouponCell = withInstall(stdin_default$Z);
9006
- const [name$P, bem$O] = createNamespace("empty");
9066
+ const CouponCell = withInstall(stdin_default$_);
9067
+ const [name$Q, bem$P] = createNamespace("empty");
9007
9068
  const emptyProps = {
9008
9069
  image: makeStringProp("default"),
9009
9070
  imageSize: [Number, String, Array],
9010
9071
  description: String
9011
9072
  };
9012
- var stdin_default$Y = vue.defineComponent({
9013
- name: name$P,
9073
+ var stdin_default$Z = vue.defineComponent({
9074
+ name: name$Q,
9014
9075
  props: emptyProps,
9015
9076
  setup(props2, {
9016
9077
  slots
@@ -9019,14 +9080,14 @@
9019
9080
  const description = slots.description ? slots.description() : props2.description;
9020
9081
  if (description) {
9021
9082
  return vue.createVNode("p", {
9022
- "class": bem$O("description")
9083
+ "class": bem$P("description")
9023
9084
  }, [description]);
9024
9085
  }
9025
9086
  };
9026
9087
  const renderBottom = () => {
9027
9088
  if (slots.default) {
9028
9089
  return vue.createVNode("div", {
9029
- "class": bem$O("bottom")
9090
+ "class": bem$P("bottom")
9030
9091
  }, [slots.default()]);
9031
9092
  }
9032
9093
  };
@@ -9311,15 +9372,15 @@
9311
9372
  }, null);
9312
9373
  };
9313
9374
  return () => vue.createVNode("div", {
9314
- "class": bem$O()
9375
+ "class": bem$P()
9315
9376
  }, [vue.createVNode("div", {
9316
- "class": bem$O("image"),
9377
+ "class": bem$P("image"),
9317
9378
  "style": getSizeStyle(props2.imageSize)
9318
9379
  }, [renderImage()]), renderDescription(), renderBottom()]);
9319
9380
  }
9320
9381
  });
9321
- const Empty = withInstall(stdin_default$Y);
9322
- const [name$O, bem$N, t$9] = createNamespace("coupon-list");
9382
+ const Empty = withInstall(stdin_default$Z);
9383
+ const [name$P, bem$O, t$9] = createNamespace("coupon-list");
9323
9384
  const couponListProps = {
9324
9385
  code: makeStringProp(""),
9325
9386
  coupons: makeArrayProp(),
@@ -9340,8 +9401,8 @@
9340
9401
  exchangeButtonLoading: Boolean,
9341
9402
  exchangeButtonDisabled: Boolean
9342
9403
  };
9343
- var stdin_default$X = vue.defineComponent({
9344
- name: name$O,
9404
+ var stdin_default$Y = vue.defineComponent({
9405
+ name: name$P,
9345
9406
  props: couponListProps,
9346
9407
  emits: ["change", "exchange", "update:code"],
9347
9408
  setup(props2, {
@@ -9377,26 +9438,26 @@
9377
9438
  "image": props2.emptyImage
9378
9439
  }, {
9379
9440
  default: () => [vue.createVNode("p", {
9380
- "class": bem$N("empty-tip")
9441
+ "class": bem$O("empty-tip")
9381
9442
  }, [t$9("noCoupon")])]
9382
9443
  });
9383
9444
  const renderExchangeBar = () => {
9384
9445
  if (props2.showExchangeBar) {
9385
9446
  return vue.createVNode("div", {
9386
9447
  "ref": barRef,
9387
- "class": bem$N("exchange-bar")
9448
+ "class": bem$O("exchange-bar")
9388
9449
  }, [vue.createVNode(Field, {
9389
9450
  "modelValue": currentCode.value,
9390
9451
  "onUpdate:modelValue": ($event) => currentCode.value = $event,
9391
9452
  "clearable": true,
9392
9453
  "border": false,
9393
- "class": bem$N("field"),
9454
+ "class": bem$O("field"),
9394
9455
  "placeholder": props2.inputPlaceholder || t$9("placeholder"),
9395
9456
  "maxlength": "20"
9396
9457
  }, null), vue.createVNode(Button, {
9397
9458
  "plain": true,
9398
9459
  "type": "primary",
9399
- "class": bem$N("exchange"),
9460
+ "class": bem$O("exchange"),
9400
9461
  "text": props2.exchangeButtonText || t$9("exchange"),
9401
9462
  "loading": props2.exchangeButtonLoading,
9402
9463
  "disabled": buttonDisabled.value,
@@ -9416,7 +9477,7 @@
9416
9477
  default: () => {
9417
9478
  var _a;
9418
9479
  return [vue.createVNode("div", {
9419
- "class": bem$N("list", {
9480
+ "class": bem$O("list", {
9420
9481
  "with-bottom": props2.showCloseButton
9421
9482
  }),
9422
9483
  "style": {
@@ -9445,7 +9506,7 @@
9445
9506
  default: () => {
9446
9507
  var _a;
9447
9508
  return [vue.createVNode("div", {
9448
- "class": bem$N("list", {
9509
+ "class": bem$O("list", {
9449
9510
  "with-bottom": props2.showCloseButton
9450
9511
  }),
9451
9512
  "style": {
@@ -9472,28 +9533,28 @@
9472
9533
  });
9473
9534
  return () => vue.createVNode("div", {
9474
9535
  "ref": root,
9475
- "class": bem$N()
9536
+ "class": bem$O()
9476
9537
  }, [renderExchangeBar(), vue.createVNode(Tabs, {
9477
9538
  "active": activeTab.value,
9478
9539
  "onUpdate:active": ($event) => activeTab.value = $event,
9479
- "class": bem$N("tab")
9540
+ "class": bem$O("tab")
9480
9541
  }, {
9481
9542
  default: () => [renderCouponTab(), renderDisabledTab()]
9482
9543
  }), vue.createVNode("div", {
9483
- "class": bem$N("bottom")
9544
+ "class": bem$O("bottom")
9484
9545
  }, [vue.withDirectives(vue.createVNode(Button, {
9485
9546
  "round": true,
9486
9547
  "block": true,
9487
9548
  "type": "primary",
9488
- "class": bem$N("close"),
9549
+ "class": bem$O("close"),
9489
9550
  "text": props2.closeButtonText || t$9("close"),
9490
9551
  "onClick": () => emit("change", -1)
9491
9552
  }, null), [[vue.vShow, props2.showCloseButton]])])]);
9492
9553
  }
9493
9554
  });
9494
- const CouponList = withInstall(stdin_default$X);
9555
+ const CouponList = withInstall(stdin_default$Y);
9495
9556
  const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
9496
- const [name$N] = createNamespace("date-picker");
9557
+ const [name$O] = createNamespace("date-picker");
9497
9558
  const datePickerProps = extend({}, sharedProps, {
9498
9559
  columnsType: {
9499
9560
  type: Array,
@@ -9510,8 +9571,8 @@
9510
9571
  validator: isDate
9511
9572
  }
9512
9573
  });
9513
- var stdin_default$W = vue.defineComponent({
9514
- name: name$N,
9574
+ var stdin_default$X = vue.defineComponent({
9575
+ name: name$O,
9515
9576
  props: datePickerProps,
9516
9577
  emits: ["confirm", "cancel", "change", "update:modelValue"],
9517
9578
  setup(props2, {
@@ -9601,8 +9662,8 @@
9601
9662
  }, pick(props2, pickerInheritKeys)), slots);
9602
9663
  }
9603
9664
  });
9604
- const DatePicker = withInstall(stdin_default$W);
9605
- const [name$M, bem$M, t$8] = createNamespace("dialog");
9665
+ const DatePicker = withInstall(stdin_default$X);
9666
+ const [name$N, bem$N, t$8] = createNamespace("dialog");
9606
9667
  const dialogProps = extend({}, popupSharedProps, {
9607
9668
  title: String,
9608
9669
  theme: String,
@@ -9625,8 +9686,8 @@
9625
9686
  closeOnClickOverlay: Boolean
9626
9687
  });
9627
9688
  const popupInheritKeys$1 = [...popupSharedPropKeys, "transition", "closeOnPopstate"];
9628
- var stdin_default$V = vue.defineComponent({
9629
- name: name$M,
9689
+ var stdin_default$W = vue.defineComponent({
9690
+ name: name$N,
9630
9691
  props: dialogProps,
9631
9692
  emits: ["confirm", "cancel", "keydown", "update:show"],
9632
9693
  setup(props2, {
@@ -9683,7 +9744,7 @@
9683
9744
  const title = slots.title ? slots.title() : props2.title;
9684
9745
  if (title) {
9685
9746
  return vue.createVNode("div", {
9686
- "class": bem$M("header", {
9747
+ "class": bem$N("header", {
9687
9748
  isolated: !props2.message && !slots.default
9688
9749
  })
9689
9750
  }, [title]);
@@ -9695,7 +9756,7 @@
9695
9756
  allowHtml,
9696
9757
  messageAlign
9697
9758
  } = props2;
9698
- const classNames = bem$M("message", {
9759
+ const classNames = bem$N("message", {
9699
9760
  "has-title": hasTitle,
9700
9761
  [messageAlign]: messageAlign
9701
9762
  });
@@ -9713,7 +9774,7 @@
9713
9774
  const renderContent = () => {
9714
9775
  if (slots.default) {
9715
9776
  return vue.createVNode("div", {
9716
- "class": bem$M("content")
9777
+ "class": bem$N("content")
9717
9778
  }, [slots.default()]);
9718
9779
  }
9719
9780
  const {
@@ -9725,18 +9786,18 @@
9725
9786
  const hasTitle = !!(title || slots.title);
9726
9787
  return vue.createVNode("div", {
9727
9788
  "key": allowHtml ? 1 : 0,
9728
- "class": bem$M("content", {
9789
+ "class": bem$N("content", {
9729
9790
  isolated: !hasTitle
9730
9791
  })
9731
9792
  }, [renderMessage(hasTitle)]);
9732
9793
  }
9733
9794
  };
9734
9795
  const renderButtons = () => vue.createVNode("div", {
9735
- "class": [BORDER_TOP, bem$M("footer")]
9796
+ "class": [BORDER_TOP, bem$N("footer")]
9736
9797
  }, [props2.showCancelButton && vue.createVNode(Button, {
9737
9798
  "size": "large",
9738
9799
  "text": props2.cancelButtonText || t$8("cancel"),
9739
- "class": bem$M("cancel"),
9800
+ "class": bem$N("cancel"),
9740
9801
  "style": {
9741
9802
  color: props2.cancelButtonColor
9742
9803
  },
@@ -9746,7 +9807,7 @@
9746
9807
  }, null), props2.showConfirmButton && vue.createVNode(Button, {
9747
9808
  "size": "large",
9748
9809
  "text": props2.confirmButtonText || t$8("confirm"),
9749
- "class": [bem$M("confirm"), {
9810
+ "class": [bem$N("confirm"), {
9750
9811
  [BORDER_LEFT]: props2.showCancelButton
9751
9812
  }],
9752
9813
  "style": {
@@ -9757,12 +9818,12 @@
9757
9818
  "onClick": onConfirm
9758
9819
  }, null)]);
9759
9820
  const renderRoundButtons = () => vue.createVNode(ActionBar, {
9760
- "class": bem$M("footer")
9821
+ "class": bem$N("footer")
9761
9822
  }, {
9762
9823
  default: () => [props2.showCancelButton && vue.createVNode(ActionBarButton, {
9763
9824
  "type": "warning",
9764
9825
  "text": props2.cancelButtonText || t$8("cancel"),
9765
- "class": bem$M("cancel"),
9826
+ "class": bem$N("cancel"),
9766
9827
  "color": props2.cancelButtonColor,
9767
9828
  "loading": loading.cancel,
9768
9829
  "disabled": props2.cancelButtonDisabled,
@@ -9770,7 +9831,7 @@
9770
9831
  }, null), props2.showConfirmButton && vue.createVNode(ActionBarButton, {
9771
9832
  "type": "danger",
9772
9833
  "text": props2.confirmButtonText || t$8("confirm"),
9773
- "class": bem$M("confirm"),
9834
+ "class": bem$N("confirm"),
9774
9835
  "color": props2.confirmButtonColor,
9775
9836
  "loading": loading.confirm,
9776
9837
  "disabled": props2.confirmButtonDisabled,
@@ -9794,7 +9855,7 @@
9794
9855
  return vue.createVNode(Popup, vue.mergeProps({
9795
9856
  "ref": root,
9796
9857
  "role": "dialog",
9797
- "class": [bem$M([theme]), className],
9858
+ "class": [bem$N([theme]), className],
9798
9859
  "style": {
9799
9860
  width: addUnit(width2)
9800
9861
  },
@@ -9844,7 +9905,7 @@
9844
9905
  state,
9845
9906
  toggle
9846
9907
  } = usePopupState();
9847
- return () => vue.createVNode(stdin_default$V, vue.mergeProps(state, {
9908
+ return () => vue.createVNode(stdin_default$W, vue.mergeProps(state, {
9848
9909
  "onUpdate:show": toggle
9849
9910
  }), null);
9850
9911
  }
@@ -9882,16 +9943,16 @@
9882
9943
  instance$2.toggle(false);
9883
9944
  }
9884
9945
  };
9885
- const Dialog = withInstall(stdin_default$V);
9886
- const [name$L, bem$L] = createNamespace("divider");
9946
+ const Dialog = withInstall(stdin_default$W);
9947
+ const [name$M, bem$M] = createNamespace("divider");
9887
9948
  const dividerProps = {
9888
9949
  dashed: Boolean,
9889
9950
  hairline: truthProp,
9890
9951
  vertical: Boolean,
9891
9952
  contentPosition: makeStringProp("center")
9892
9953
  };
9893
- var stdin_default$U = vue.defineComponent({
9894
- name: name$L,
9954
+ var stdin_default$V = vue.defineComponent({
9955
+ name: name$M,
9895
9956
  props: dividerProps,
9896
9957
  setup(props2, {
9897
9958
  slots
@@ -9900,7 +9961,7 @@
9900
9961
  var _a;
9901
9962
  return vue.createVNode("div", {
9902
9963
  "role": "separator",
9903
- "class": bem$L({
9964
+ "class": bem$M({
9904
9965
  dashed: props2.dashed,
9905
9966
  hairline: props2.hairline,
9906
9967
  vertical: props2.vertical,
@@ -9910,8 +9971,8 @@
9910
9971
  };
9911
9972
  }
9912
9973
  });
9913
- const Divider = withInstall(stdin_default$U);
9914
- const [name$K, bem$K] = createNamespace("dropdown-menu");
9974
+ const Divider = withInstall(stdin_default$V);
9975
+ const [name$L, bem$L] = createNamespace("dropdown-menu");
9915
9976
  const dropdownMenuProps = {
9916
9977
  overlay: truthProp,
9917
9978
  zIndex: numericProp,
@@ -9922,9 +9983,9 @@
9922
9983
  closeOnClickOverlay: truthProp,
9923
9984
  swipeThreshold: numericProp
9924
9985
  };
9925
- const DROPDOWN_KEY = Symbol(name$K);
9926
- var stdin_default$T = vue.defineComponent({
9927
- name: name$K,
9986
+ const DROPDOWN_KEY = Symbol(name$L);
9987
+ var stdin_default$U = vue.defineComponent({
9988
+ name: name$L,
9928
9989
  props: dropdownMenuProps,
9929
9990
  setup(props2, {
9930
9991
  slots
@@ -9995,7 +10056,7 @@
9995
10056
  "id": `${id}-${index}`,
9996
10057
  "role": "button",
9997
10058
  "tabindex": disabled ? void 0 : 0,
9998
- "class": [bem$K("item", {
10059
+ "class": [bem$L("item", {
9999
10060
  disabled,
10000
10061
  grow: scrollable.value
10001
10062
  }), {
@@ -10007,7 +10068,7 @@
10007
10068
  }
10008
10069
  }
10009
10070
  }, [vue.createVNode("span", {
10010
- "class": [bem$K("title", {
10071
+ "class": [bem$L("title", {
10011
10072
  down: showPopup === (props2.direction === "down"),
10012
10073
  active: showPopup
10013
10074
  }), titleClass],
@@ -10036,11 +10097,11 @@
10036
10097
  var _a;
10037
10098
  return vue.createVNode("div", {
10038
10099
  "ref": root,
10039
- "class": bem$K()
10100
+ "class": bem$L()
10040
10101
  }, [vue.createVNode("div", {
10041
10102
  "ref": barRef,
10042
10103
  "style": barStyle.value,
10043
- "class": bem$K("bar", {
10104
+ "class": bem$L("bar", {
10044
10105
  opened: opened.value,
10045
10106
  scrollable: scrollable.value
10046
10107
  })
@@ -10048,7 +10109,7 @@
10048
10109
  };
10049
10110
  }
10050
10111
  });
10051
- const [name$J, bem$J] = createNamespace("dropdown-item");
10112
+ const [name$K, bem$K] = createNamespace("dropdown-item");
10052
10113
  const dropdownItemProps = {
10053
10114
  title: String,
10054
10115
  options: makeArrayProp(),
@@ -10058,8 +10119,8 @@
10058
10119
  modelValue: unknownProp,
10059
10120
  titleClass: unknownProp
10060
10121
  };
10061
- var stdin_default$S = vue.defineComponent({
10062
- name: name$J,
10122
+ var stdin_default$T = vue.defineComponent({
10123
+ name: name$K,
10063
10124
  inheritAttrs: false,
10064
10125
  props: dropdownItemProps,
10065
10126
  emits: ["open", "opened", "close", "closed", "change", "update:modelValue"],
@@ -10129,7 +10190,7 @@
10129
10190
  const renderIcon = () => {
10130
10191
  if (active) {
10131
10192
  return vue.createVNode(Icon, {
10132
- "class": bem$J("icon"),
10193
+ "class": bem$K("icon"),
10133
10194
  "color": activeColor,
10134
10195
  "name": "success"
10135
10196
  }, null);
@@ -10140,7 +10201,7 @@
10140
10201
  "key": String(option.value),
10141
10202
  "icon": option.icon,
10142
10203
  "title": option.text,
10143
- "class": bem$J("option", {
10204
+ "class": bem$K("option", {
10144
10205
  active
10145
10206
  }),
10146
10207
  "style": {
@@ -10172,13 +10233,13 @@
10172
10233
  }
10173
10234
  return vue.withDirectives(vue.createVNode("div", vue.mergeProps({
10174
10235
  "style": style,
10175
- "class": bem$J([direction]),
10236
+ "class": bem$K([direction]),
10176
10237
  "onClick": onClickWrapper
10177
10238
  }, attrs), [vue.createVNode(Popup, {
10178
10239
  "show": state.showPopup,
10179
10240
  "onUpdate:show": ($event) => state.showPopup = $event,
10180
10241
  "role": "menu",
10181
- "class": bem$J("content"),
10242
+ "class": bem$K("content"),
10182
10243
  "overlay": overlay,
10183
10244
  "position": direction === "down" ? "top" : "bottom",
10184
10245
  "duration": state.transition ? duration : 0,
@@ -10216,8 +10277,8 @@
10216
10277
  };
10217
10278
  }
10218
10279
  });
10219
- const DropdownItem = withInstall(stdin_default$S);
10220
- const DropdownMenu = withInstall(stdin_default$T);
10280
+ const DropdownItem = withInstall(stdin_default$T);
10281
+ const DropdownMenu = withInstall(stdin_default$U);
10221
10282
  const floatingBubbleProps = {
10222
10283
  gap: makeNumberProp(24),
10223
10284
  icon: String,
@@ -10235,9 +10296,9 @@
10235
10296
  default: "body"
10236
10297
  }
10237
10298
  };
10238
- const [name$I, bem$I] = createNamespace("floating-bubble");
10239
- var stdin_default$R = vue.defineComponent({
10240
- name: name$I,
10299
+ const [name$J, bem$J] = createNamespace("floating-bubble");
10300
+ var stdin_default$S = vue.defineComponent({
10301
+ name: name$J,
10241
10302
  inheritAttrs: false,
10242
10303
  props: floatingBubbleProps,
10243
10304
  emits: ["click", "update:offset", "offsetChange"],
@@ -10370,16 +10431,16 @@
10370
10431
  });
10371
10432
  return () => {
10372
10433
  const Content = vue.withDirectives(vue.createVNode("div", vue.mergeProps({
10373
- "class": bem$I(),
10434
+ "class": bem$J(),
10374
10435
  "ref": rootRef,
10375
10436
  "onTouchstartPassive": onTouchStart,
10376
10437
  "onTouchend": onTouchEnd,
10377
10438
  "onTouchcancel": onTouchEnd,
10378
10439
  "onClickCapture": onClick,
10379
10440
  "style": rootStyle.value
10380
- }, attrs), [slots.default ? slots.default() : vue.createVNode(stdin_default$1P, {
10441
+ }, attrs), [slots.default ? slots.default() : vue.createVNode(stdin_default$1Q, {
10381
10442
  "name": props2.icon,
10382
- "class": bem$I("icon")
10443
+ "class": bem$J("icon")
10383
10444
  }, null)]), [[vue.vShow, show.value]]);
10384
10445
  return props2.teleport ? vue.createVNode(vue.Teleport, {
10385
10446
  "to": props2.teleport
@@ -10389,7 +10450,7 @@
10389
10450
  };
10390
10451
  }
10391
10452
  });
10392
- const FloatingBubble = withInstall(stdin_default$R);
10453
+ const FloatingBubble = withInstall(stdin_default$S);
10393
10454
  const floatingPanelProps = {
10394
10455
  height: makeNumericProp(0),
10395
10456
  anchors: makeArrayProp(),
@@ -10398,9 +10459,9 @@
10398
10459
  lockScroll: Boolean,
10399
10460
  safeAreaInsetBottom: truthProp
10400
10461
  };
10401
- const [name$H, bem$H] = createNamespace("floating-panel");
10402
- var stdin_default$Q = vue.defineComponent({
10403
- name: name$H,
10462
+ const [name$I, bem$I] = createNamespace("floating-panel");
10463
+ var stdin_default$R = vue.defineComponent({
10464
+ name: name$I,
10404
10465
  props: floatingPanelProps,
10405
10466
  emits: ["heightChange", "update:height"],
10406
10467
  setup(props2, {
@@ -10490,7 +10551,7 @@
10490
10551
  return () => {
10491
10552
  var _a;
10492
10553
  return vue.createVNode("div", {
10493
- "class": [bem$H(), {
10554
+ "class": [bem$I(), {
10494
10555
  "van-safe-area-bottom": props2.safeAreaInsetBottom
10495
10556
  }],
10496
10557
  "ref": rootRef,
@@ -10499,18 +10560,18 @@
10499
10560
  "onTouchend": onTouchend,
10500
10561
  "onTouchcancel": onTouchend
10501
10562
  }, [vue.createVNode("div", {
10502
- "class": bem$H("header")
10563
+ "class": bem$I("header")
10503
10564
  }, [vue.createVNode("div", {
10504
- "class": bem$H("header-bar")
10565
+ "class": bem$I("header-bar")
10505
10566
  }, null)]), vue.createVNode("div", {
10506
- "class": bem$H("content"),
10567
+ "class": bem$I("content"),
10507
10568
  "ref": contentRef
10508
10569
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]);
10509
10570
  };
10510
10571
  }
10511
10572
  });
10512
- const FloatingPanel = withInstall(stdin_default$Q);
10513
- const [name$G, bem$G] = createNamespace("grid");
10573
+ const FloatingPanel = withInstall(stdin_default$R);
10574
+ const [name$H, bem$H] = createNamespace("grid");
10514
10575
  const gridProps = {
10515
10576
  square: Boolean,
10516
10577
  center: truthProp,
@@ -10522,9 +10583,9 @@
10522
10583
  clickable: Boolean,
10523
10584
  columnNum: makeNumericProp(4)
10524
10585
  };
10525
- const GRID_KEY = Symbol(name$G);
10526
- var stdin_default$P = vue.defineComponent({
10527
- name: name$G,
10586
+ const GRID_KEY = Symbol(name$H);
10587
+ var stdin_default$Q = vue.defineComponent({
10588
+ name: name$H,
10528
10589
  props: gridProps,
10529
10590
  setup(props2, {
10530
10591
  slots
@@ -10541,15 +10602,15 @@
10541
10602
  "style": {
10542
10603
  paddingLeft: addUnit(props2.gutter)
10543
10604
  },
10544
- "class": [bem$G(), {
10605
+ "class": [bem$H(), {
10545
10606
  [BORDER_TOP]: props2.border && !props2.gutter
10546
10607
  }]
10547
10608
  }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
10548
10609
  };
10549
10610
  }
10550
10611
  });
10551
- const Grid = withInstall(stdin_default$P);
10552
- const [name$F, bem$F] = createNamespace("grid-item");
10612
+ const Grid = withInstall(stdin_default$Q);
10613
+ const [name$G, bem$G] = createNamespace("grid-item");
10553
10614
  const gridItemProps = extend({}, routeProps, {
10554
10615
  dot: Boolean,
10555
10616
  text: String,
@@ -10559,8 +10620,8 @@
10559
10620
  iconPrefix: String,
10560
10621
  badgeProps: Object
10561
10622
  });
10562
- var stdin_default$O = vue.defineComponent({
10563
- name: name$F,
10623
+ var stdin_default$P = vue.defineComponent({
10624
+ name: name$G,
10564
10625
  props: gridItemProps,
10565
10626
  setup(props2, {
10566
10627
  slots
@@ -10623,7 +10684,7 @@
10623
10684
  "name": props2.icon,
10624
10685
  "size": parent.props.iconSize,
10625
10686
  "badge": props2.badge,
10626
- "class": bem$F("icon"),
10687
+ "class": bem$G("icon"),
10627
10688
  "color": props2.iconColor,
10628
10689
  "badgeProps": props2.badgeProps,
10629
10690
  "classPrefix": props2.iconPrefix
@@ -10636,7 +10697,7 @@
10636
10697
  }
10637
10698
  if (props2.text) {
10638
10699
  return vue.createVNode("span", {
10639
- "class": bem$F("text")
10700
+ "class": bem$G("text")
10640
10701
  }, [props2.text]);
10641
10702
  }
10642
10703
  };
@@ -10656,7 +10717,7 @@
10656
10717
  direction,
10657
10718
  clickable
10658
10719
  } = parent.props;
10659
- const classes = [bem$F("content", [direction, {
10720
+ const classes = [bem$G("content", [direction, {
10660
10721
  center,
10661
10722
  square,
10662
10723
  reverse,
@@ -10666,7 +10727,7 @@
10666
10727
  [BORDER]: border
10667
10728
  }];
10668
10729
  return vue.createVNode("div", {
10669
- "class": [bem$F({
10730
+ "class": [bem$G({
10670
10731
  square
10671
10732
  })],
10672
10733
  "style": rootStyle.value
@@ -10680,7 +10741,123 @@
10680
10741
  };
10681
10742
  }
10682
10743
  });
10683
- const GridItem = withInstall(stdin_default$O);
10744
+ const GridItem = withInstall(stdin_default$P);
10745
+ const [name$F, bem$F] = createNamespace("highlight");
10746
+ const highlightProps = {
10747
+ autoEscape: truthProp,
10748
+ caseSensitive: Boolean,
10749
+ highlightClass: String,
10750
+ highlightTag: makeStringProp("span"),
10751
+ keywords: makeRequiredProp([String, Array]),
10752
+ sourceString: makeStringProp(""),
10753
+ tag: makeStringProp("div"),
10754
+ unhighlightClass: String,
10755
+ unhighlightTag: makeStringProp("span")
10756
+ };
10757
+ var stdin_default$O = vue.defineComponent({
10758
+ name: name$F,
10759
+ props: highlightProps,
10760
+ setup(props2) {
10761
+ const highlightChunks = vue.computed(() => {
10762
+ const {
10763
+ autoEscape,
10764
+ caseSensitive,
10765
+ keywords,
10766
+ sourceString
10767
+ } = props2;
10768
+ const flags = caseSensitive ? "g" : "gi";
10769
+ const _keywords = Array.isArray(keywords) ? keywords : [keywords];
10770
+ let chunks = _keywords.filter((keyword) => keyword).reduce((chunks2, keyword) => {
10771
+ if (autoEscape) {
10772
+ keyword = keyword.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
10773
+ }
10774
+ const regex = new RegExp(keyword, flags);
10775
+ let match;
10776
+ while (match = regex.exec(sourceString)) {
10777
+ const start2 = match.index;
10778
+ const end2 = regex.lastIndex;
10779
+ if (start2 >= end2) {
10780
+ regex.lastIndex++;
10781
+ continue;
10782
+ }
10783
+ chunks2.push({
10784
+ start: start2,
10785
+ end: end2,
10786
+ highlight: true
10787
+ });
10788
+ }
10789
+ return chunks2;
10790
+ }, []);
10791
+ chunks = chunks.sort((a, b) => a.start - b.start).reduce((chunks2, currentChunk) => {
10792
+ const prevChunk = chunks2[chunks2.length - 1];
10793
+ if (!prevChunk || currentChunk.start > prevChunk.end) {
10794
+ const unhighlightStart = prevChunk ? prevChunk.end : 0;
10795
+ const unhighlightEnd = currentChunk.start;
10796
+ if (unhighlightStart !== unhighlightEnd) {
10797
+ chunks2.push({
10798
+ start: unhighlightStart,
10799
+ end: unhighlightEnd,
10800
+ highlight: false
10801
+ });
10802
+ }
10803
+ chunks2.push(currentChunk);
10804
+ } else {
10805
+ prevChunk.end = Math.max(prevChunk.end, currentChunk.end);
10806
+ }
10807
+ return chunks2;
10808
+ }, []);
10809
+ const lastChunk = chunks[chunks.length - 1];
10810
+ if (lastChunk && lastChunk.end < sourceString.length) {
10811
+ chunks.push({
10812
+ start: lastChunk.end,
10813
+ end: sourceString.length,
10814
+ highlight: false
10815
+ });
10816
+ }
10817
+ return chunks;
10818
+ });
10819
+ const renderContent = () => {
10820
+ const {
10821
+ sourceString,
10822
+ highlightClass,
10823
+ unhighlightClass,
10824
+ highlightTag,
10825
+ unhighlightTag
10826
+ } = props2;
10827
+ return highlightChunks.value.map((chunk) => {
10828
+ const {
10829
+ start: start2,
10830
+ end: end2,
10831
+ highlight
10832
+ } = chunk;
10833
+ const text = sourceString.slice(start2, end2);
10834
+ if (highlight) {
10835
+ return vue.createVNode(highlightTag, {
10836
+ "class": [bem$F("tag"), highlightClass]
10837
+ }, {
10838
+ default: () => [text]
10839
+ });
10840
+ }
10841
+ return vue.createVNode(unhighlightTag, {
10842
+ "class": unhighlightClass
10843
+ }, {
10844
+ default: () => [text]
10845
+ });
10846
+ });
10847
+ };
10848
+ return () => {
10849
+ const {
10850
+ tag
10851
+ } = props2;
10852
+ return vue.createVNode(tag, {
10853
+ "class": bem$F()
10854
+ }, {
10855
+ default: () => [renderContent()]
10856
+ });
10857
+ };
10858
+ }
10859
+ });
10860
+ const Highlight = withInstall(stdin_default$O);
10684
10861
  const getDistance = (touches) => Math.sqrt((touches[0].clientX - touches[1].clientX) ** 2 + (touches[0].clientY - touches[1].clientY) ** 2);
10685
10862
  const getCenter = (touches) => ({
10686
10863
  x: (touches[0].clientX + touches[1].clientX) / 2,
@@ -10688,19 +10865,20 @@
10688
10865
  });
10689
10866
  const bem$E = createNamespace("image-preview")[1];
10690
10867
  const longImageRatio = 2.6;
10868
+ const imagePreviewItemProps = {
10869
+ src: String,
10870
+ show: Boolean,
10871
+ active: Number,
10872
+ minZoom: makeRequiredProp(numericProp),
10873
+ maxZoom: makeRequiredProp(numericProp),
10874
+ rootWidth: makeRequiredProp(Number),
10875
+ rootHeight: makeRequiredProp(Number),
10876
+ disableZoom: Boolean,
10877
+ doubleScale: Boolean,
10878
+ closeOnClickOverlay: Boolean
10879
+ };
10691
10880
  var stdin_default$N = vue.defineComponent({
10692
- props: {
10693
- src: String,
10694
- show: Boolean,
10695
- active: Number,
10696
- minZoom: makeRequiredProp(numericProp),
10697
- maxZoom: makeRequiredProp(numericProp),
10698
- rootWidth: makeRequiredProp(Number),
10699
- rootHeight: makeRequiredProp(Number),
10700
- disableZoom: Boolean,
10701
- doubleScale: Boolean,
10702
- closeOnClickOverlay: Boolean
10703
- },
10881
+ props: imagePreviewItemProps,
10704
10882
  emits: ["scale", "close", "longPress"],
10705
10883
  setup(props2, {
10706
10884
  emit,
@@ -10966,6 +11144,9 @@
10966
11144
  return (_a = swipeItem.value) == null ? void 0 : _a.$el;
10967
11145
  })
10968
11146
  });
11147
+ useExpose({
11148
+ resetScale
11149
+ });
10969
11150
  return () => {
10970
11151
  const imageSlots = {
10971
11152
  loading: () => vue.createVNode(Loading, {
@@ -11032,6 +11213,7 @@
11032
11213
  slots
11033
11214
  }) {
11034
11215
  const swipeRef = vue.ref();
11216
+ const activedPreviewItemRef = vue.ref();
11035
11217
  const state = vue.reactive({
11036
11218
  active: 0,
11037
11219
  rootWidth: 0,
@@ -11096,6 +11278,11 @@
11096
11278
  "onDragStart": onDragStart
11097
11279
  }, {
11098
11280
  default: () => [props2.images.map((image, index) => vue.createVNode(stdin_default$N, {
11281
+ "ref": (item) => {
11282
+ if (index === state.active) {
11283
+ activedPreviewItemRef.value = item;
11284
+ }
11285
+ },
11099
11286
  "src": image,
11100
11287
  "show": props2.show,
11101
11288
  "active": state.active,
@@ -11131,6 +11318,10 @@
11131
11318
  return (_a = swipeRef.value) == null ? void 0 : _a.swipeTo(index, options);
11132
11319
  };
11133
11320
  useExpose({
11321
+ resetScale: () => {
11322
+ var _a;
11323
+ (_a = activedPreviewItemRef.value) == null ? void 0 : _a.resetScale();
11324
+ },
11134
11325
  swipeTo
11135
11326
  });
11136
11327
  vue.onMounted(resize);
@@ -12533,7 +12724,7 @@
12533
12724
  }
12534
12725
  });
12535
12726
  const PasswordInput = withInstall(stdin_default$C);
12536
- const PickerGroup = withInstall(stdin_default$1z);
12727
+ const PickerGroup = withInstall(stdin_default$1A);
12537
12728
  function getWindow(node) {
12538
12729
  if (node == null) {
12539
12730
  return window;
@@ -14133,7 +14324,7 @@
14133
14324
  }
14134
14325
  });
14135
14326
  const RollingText = withInstall(stdin_default$w);
14136
- const Row = withInstall(stdin_default$16);
14327
+ const Row = withInstall(stdin_default$17);
14137
14328
  const [name$n, bem$m, t$4] = createNamespace("search");
14138
14329
  const searchProps = extend({}, fieldSharedProps, {
14139
14330
  label: String,
@@ -14211,7 +14402,9 @@
14211
14402
  return vue.createVNode(Field, vue.mergeProps({
14212
14403
  "ref": fieldRef,
14213
14404
  "type": "search",
14214
- "class": bem$m("field"),
14405
+ "class": bem$m("field", {
14406
+ "with-message": fieldAttrs.errorMessage
14407
+ }),
14215
14408
  "border": false,
14216
14409
  "onBlur": onBlur,
14217
14410
  "onFocus": onFocus,
@@ -14556,7 +14749,7 @@
14556
14749
  }
14557
14750
  emit("clear");
14558
14751
  };
14559
- vue.onMounted(() => {
14752
+ const initialize = () => {
14560
14753
  var _a, _b, _c;
14561
14754
  if (isRenderCanvas && canvasRef.value) {
14562
14755
  const canvas = canvasRef.value;
@@ -14566,6 +14759,18 @@
14566
14759
  (_c = ctx.value) == null ? void 0 : _c.scale(dpr, dpr);
14567
14760
  setCanvasBgColor(ctx.value);
14568
14761
  }
14762
+ };
14763
+ const resize = () => {
14764
+ if (ctx.value) {
14765
+ const data = ctx.value.getImageData(0, 0, canvasWidth, canvasHeight);
14766
+ initialize();
14767
+ ctx.value.putImageData(data, 0, 0);
14768
+ }
14769
+ };
14770
+ vue.watch(windowWidth, resize);
14771
+ vue.onMounted(initialize);
14772
+ useExpose({
14773
+ resize
14569
14774
  });
14570
14775
  return () => vue.createVNode("div", {
14571
14776
  "class": bem$i()
@@ -17730,7 +17935,7 @@
17730
17935
  });
17731
17936
  }
17732
17937
  };
17733
- const version = "4.7.2";
17938
+ const version = "4.8.0";
17734
17939
  function install(app) {
17735
17940
  const components = [
17736
17941
  ActionBar,
@@ -17775,6 +17980,7 @@
17775
17980
  Form,
17776
17981
  Grid,
17777
17982
  GridItem,
17983
+ Highlight,
17778
17984
  Icon,
17779
17985
  Image$1,
17780
17986
  ImagePreview,
@@ -17889,6 +18095,7 @@
17889
18095
  exports2.Form = Form;
17890
18096
  exports2.Grid = Grid;
17891
18097
  exports2.GridItem = GridItem;
18098
+ exports2.Highlight = Highlight;
17892
18099
  exports2.Icon = Icon;
17893
18100
  exports2.Image = Image$1;
17894
18101
  exports2.ImagePreview = ImagePreview;
@@ -17994,6 +18201,7 @@
17994
18201
  exports2.formProps = formProps;
17995
18202
  exports2.gridItemProps = gridItemProps;
17996
18203
  exports2.gridProps = gridProps;
18204
+ exports2.highlightProps = highlightProps;
17997
18205
  exports2.iconProps = iconProps;
17998
18206
  exports2.imagePreviewProps = imagePreviewProps;
17999
18207
  exports2.imageProps = imageProps;