vant 4.9.8 → 4.9.10

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 (296) hide show
  1. package/README.md +2 -0
  2. package/es/action-sheet/ActionSheet.d.ts +6 -6
  3. package/es/action-sheet/index.d.ts +4 -4
  4. package/es/address-edit/AddressEdit.d.ts +3 -3
  5. package/es/address-edit/index.d.ts +2 -2
  6. package/es/address-list/AddressList.d.ts +9 -9
  7. package/es/address-list/AddressListItem.d.ts +2 -2
  8. package/es/address-list/index.d.ts +6 -6
  9. package/es/area/Area.d.ts +3 -3
  10. package/es/area/index.d.ts +2 -2
  11. package/es/badge/Badge.d.ts +6 -6
  12. package/es/badge/index.d.ts +4 -4
  13. package/es/barrage/Barrage.d.ts +3 -3
  14. package/es/barrage/index.d.ts +2 -2
  15. package/es/button/Button.d.ts +15 -15
  16. package/es/button/index.d.ts +10 -10
  17. package/es/calendar/Calendar.d.ts +9 -9
  18. package/es/calendar/CalendarHeader.d.ts +2 -2
  19. package/es/calendar/CalendarHeader.mjs +1 -1
  20. package/es/calendar/index.css +1 -1
  21. package/es/calendar/index.d.ts +6 -6
  22. package/es/card/Card.d.ts +3 -3
  23. package/es/card/index.d.ts +2 -2
  24. package/es/cascader/Cascader.d.ts +6 -6
  25. package/es/cascader/index.d.ts +4 -4
  26. package/es/cell/Cell.d.ts +4 -4
  27. package/es/cell/index.d.ts +2 -2
  28. package/es/checkbox-group/CheckboxGroup.d.ts +6 -6
  29. package/es/checkbox-group/index.d.ts +4 -4
  30. package/es/circle/Circle.d.ts +6 -6
  31. package/es/circle/index.d.ts +4 -4
  32. package/es/col/Col.d.ts +3 -3
  33. package/es/col/index.d.ts +2 -2
  34. package/es/collapse-item/CollapseItem.d.ts +3 -3
  35. package/es/collapse-item/index.d.ts +2 -2
  36. package/es/composables/use-lazy-render.d.ts +1 -1
  37. package/es/config-provider/ConfigProvider.d.ts +9 -9
  38. package/es/config-provider/index.d.ts +6 -6
  39. package/es/contact-card/ContactCard.d.ts +3 -3
  40. package/es/contact-card/index.d.ts +2 -2
  41. package/es/count-down/CountDown.d.ts +3 -3
  42. package/es/count-down/index.d.ts +2 -2
  43. package/es/coupon/Coupon.d.ts +2 -2
  44. package/es/coupon/index.d.ts +2 -2
  45. package/es/coupon-cell/CouponCell.d.ts +6 -6
  46. package/es/coupon-cell/index.d.ts +4 -4
  47. package/es/coupon-list/CouponList.d.ts +12 -12
  48. package/es/coupon-list/index.d.ts +8 -8
  49. package/es/date-picker/DatePicker.d.ts +3 -3
  50. package/es/date-picker/index.d.ts +2 -2
  51. package/es/date-picker/utils.d.ts +1 -1
  52. package/es/dialog/Dialog.d.ts +16 -3
  53. package/es/dialog/Dialog.mjs +5 -1
  54. package/es/dialog/index.d.ts +11 -2
  55. package/es/divider/Divider.d.ts +3 -3
  56. package/es/divider/index.d.ts +2 -2
  57. package/es/dropdown-item/DropdownItem.d.ts +3 -3
  58. package/es/dropdown-item/index.d.ts +2 -2
  59. package/es/dropdown-menu/DropdownMenu.d.ts +3 -3
  60. package/es/dropdown-menu/index.d.ts +2 -2
  61. package/es/empty/Empty.d.ts +3 -3
  62. package/es/empty/index.d.ts +2 -2
  63. package/es/field/Field.d.ts +23 -19
  64. package/es/field/Field.mjs +6 -3
  65. package/es/field/index.d.ts +12 -10
  66. package/es/field/utils.d.ts +1 -1
  67. package/es/field/utils.mjs +6 -10
  68. package/es/floating-bubble/FloatingBubble.d.ts +3 -3
  69. package/es/floating-bubble/index.d.ts +2 -2
  70. package/es/floating-panel/FloatingPanel.d.ts +3 -3
  71. package/es/floating-panel/index.d.ts +2 -2
  72. package/es/highlight/Highlight.d.ts +12 -12
  73. package/es/highlight/index.d.ts +8 -8
  74. package/es/icon/Icon.d.ts +3 -3
  75. package/es/icon/index.d.ts +2 -2
  76. package/es/image/Image.d.ts +6 -6
  77. package/es/image/index.d.ts +4 -4
  78. package/es/image-preview/ImagePreview.d.ts +9 -9
  79. package/es/image-preview/index.d.ts +6 -6
  80. package/es/index.d.ts +1 -1
  81. package/es/index.mjs +1 -1
  82. package/es/list/List.d.ts +3 -3
  83. package/es/list/index.d.ts +2 -2
  84. package/es/loading/Loading.d.ts +3 -3
  85. package/es/loading/index.d.ts +2 -2
  86. package/es/notify/Notify.d.ts +6 -6
  87. package/es/notify/index.d.ts +4 -4
  88. package/es/number-keyboard/NumberKeyboard.d.ts +6 -6
  89. package/es/number-keyboard/index.d.ts +4 -4
  90. package/es/pagination/Pagination.d.ts +3 -3
  91. package/es/pagination/index.d.ts +2 -2
  92. package/es/password-input/PasswordInput.d.ts +3 -3
  93. package/es/password-input/index.d.ts +2 -2
  94. package/es/picker/Picker.d.ts +9 -9
  95. package/es/picker/Picker.mjs +3 -0
  96. package/es/picker/PickerColumn.d.ts +2 -2
  97. package/es/picker/index.d.ts +6 -6
  98. package/es/picker-group/PickerGroup.d.ts +3 -3
  99. package/es/picker-group/index.d.ts +2 -2
  100. package/es/popover/Popover.d.ts +15 -15
  101. package/es/popover/index.d.ts +10 -10
  102. package/es/popup/Popup.d.ts +13 -9
  103. package/es/popup/Popup.mjs +8 -2
  104. package/es/popup/index.d.ts +9 -6
  105. package/es/rate/Rate.d.ts +6 -6
  106. package/es/rate/index.d.ts +4 -4
  107. package/es/rolling-text/RollingText.d.ts +9 -9
  108. package/es/rolling-text/RollingTextItem.d.ts +6 -6
  109. package/es/rolling-text/index.d.ts +6 -6
  110. package/es/row/Row.d.ts +3 -3
  111. package/es/row/index.d.ts +2 -2
  112. package/es/search/Search.d.ts +18 -15
  113. package/es/search/index.d.ts +12 -10
  114. package/es/share-sheet/ShareSheet.d.ts +3 -3
  115. package/es/share-sheet/index.d.ts +2 -2
  116. package/es/signature/Signature.d.ts +9 -9
  117. package/es/signature/index.d.ts +6 -6
  118. package/es/skeleton/Skeleton.d.ts +3 -3
  119. package/es/skeleton/index.d.ts +2 -2
  120. package/es/skeleton-avatar/SkeletonAvatar.d.ts +3 -3
  121. package/es/skeleton-avatar/index.d.ts +2 -2
  122. package/es/skeleton-image/SkeletonImage.d.ts +3 -3
  123. package/es/skeleton-image/index.d.ts +2 -2
  124. package/es/steps/Steps.d.ts +6 -6
  125. package/es/steps/index.d.ts +4 -4
  126. package/es/sticky/Sticky.d.ts +3 -3
  127. package/es/sticky/index.d.ts +2 -2
  128. package/es/submit-bar/SubmitBar.d.ts +6 -6
  129. package/es/submit-bar/index.d.ts +4 -4
  130. package/es/tabs/Tabs.d.ts +3 -3
  131. package/es/tabs/index.d.ts +2 -2
  132. package/es/tag/Tag.d.ts +3 -3
  133. package/es/tag/index.d.ts +2 -2
  134. package/es/text-ellipsis/TextEllipsis.d.ts +15 -15
  135. package/es/text-ellipsis/index.d.ts +10 -10
  136. package/es/time-picker/TimePicker.d.ts +3 -3
  137. package/es/time-picker/index.d.ts +2 -2
  138. package/es/toast/Toast.d.ts +9 -9
  139. package/es/toast/index.d.ts +6 -6
  140. package/es/tree-select/TreeSelect.d.ts +6 -6
  141. package/es/tree-select/index.d.ts +4 -4
  142. package/es/uploader/Uploader.d.ts +15 -15
  143. package/es/uploader/index.d.ts +10 -10
  144. package/es/watermark/Watermark.d.ts +3 -3
  145. package/es/watermark/index.d.ts +2 -2
  146. package/lib/action-sheet/ActionSheet.d.ts +6 -6
  147. package/lib/action-sheet/index.d.ts +4 -4
  148. package/lib/address-edit/AddressEdit.d.ts +3 -3
  149. package/lib/address-edit/index.d.ts +2 -2
  150. package/lib/address-list/AddressList.d.ts +9 -9
  151. package/lib/address-list/AddressListItem.d.ts +2 -2
  152. package/lib/address-list/index.d.ts +6 -6
  153. package/lib/area/Area.d.ts +3 -3
  154. package/lib/area/index.d.ts +2 -2
  155. package/lib/badge/Badge.d.ts +6 -6
  156. package/lib/badge/index.d.ts +4 -4
  157. package/lib/barrage/Barrage.d.ts +3 -3
  158. package/lib/barrage/index.d.ts +2 -2
  159. package/lib/button/Button.d.ts +15 -15
  160. package/lib/button/index.d.ts +10 -10
  161. package/lib/calendar/Calendar.d.ts +9 -9
  162. package/lib/calendar/CalendarHeader.d.ts +2 -2
  163. package/lib/calendar/CalendarHeader.js +1 -1
  164. package/lib/calendar/index.css +1 -1
  165. package/lib/calendar/index.d.ts +6 -6
  166. package/lib/card/Card.d.ts +3 -3
  167. package/lib/card/index.d.ts +2 -2
  168. package/lib/cascader/Cascader.d.ts +6 -6
  169. package/lib/cascader/index.d.ts +4 -4
  170. package/lib/cell/Cell.d.ts +4 -4
  171. package/lib/cell/index.d.ts +2 -2
  172. package/lib/checkbox-group/CheckboxGroup.d.ts +6 -6
  173. package/lib/checkbox-group/index.d.ts +4 -4
  174. package/lib/circle/Circle.d.ts +6 -6
  175. package/lib/circle/index.d.ts +4 -4
  176. package/lib/col/Col.d.ts +3 -3
  177. package/lib/col/index.d.ts +2 -2
  178. package/lib/collapse-item/CollapseItem.d.ts +3 -3
  179. package/lib/collapse-item/index.d.ts +2 -2
  180. package/lib/composables/use-lazy-render.d.ts +1 -1
  181. package/lib/config-provider/ConfigProvider.d.ts +9 -9
  182. package/lib/config-provider/index.d.ts +6 -6
  183. package/lib/contact-card/ContactCard.d.ts +3 -3
  184. package/lib/contact-card/index.d.ts +2 -2
  185. package/lib/count-down/CountDown.d.ts +3 -3
  186. package/lib/count-down/index.d.ts +2 -2
  187. package/lib/coupon/Coupon.d.ts +2 -2
  188. package/lib/coupon/index.d.ts +2 -2
  189. package/lib/coupon-cell/CouponCell.d.ts +6 -6
  190. package/lib/coupon-cell/index.d.ts +4 -4
  191. package/lib/coupon-list/CouponList.d.ts +12 -12
  192. package/lib/coupon-list/index.d.ts +8 -8
  193. package/lib/date-picker/DatePicker.d.ts +3 -3
  194. package/lib/date-picker/index.d.ts +2 -2
  195. package/lib/date-picker/utils.d.ts +1 -1
  196. package/lib/dialog/Dialog.d.ts +16 -3
  197. package/lib/dialog/Dialog.js +5 -1
  198. package/lib/dialog/index.d.ts +11 -2
  199. package/lib/divider/Divider.d.ts +3 -3
  200. package/lib/divider/index.d.ts +2 -2
  201. package/lib/dropdown-item/DropdownItem.d.ts +3 -3
  202. package/lib/dropdown-item/index.d.ts +2 -2
  203. package/lib/dropdown-menu/DropdownMenu.d.ts +3 -3
  204. package/lib/dropdown-menu/index.d.ts +2 -2
  205. package/lib/empty/Empty.d.ts +3 -3
  206. package/lib/empty/index.d.ts +2 -2
  207. package/lib/field/Field.d.ts +23 -19
  208. package/lib/field/Field.js +6 -3
  209. package/lib/field/index.d.ts +12 -10
  210. package/lib/field/utils.d.ts +1 -1
  211. package/lib/field/utils.js +6 -10
  212. package/lib/floating-bubble/FloatingBubble.d.ts +3 -3
  213. package/lib/floating-bubble/index.d.ts +2 -2
  214. package/lib/floating-panel/FloatingPanel.d.ts +3 -3
  215. package/lib/floating-panel/index.d.ts +2 -2
  216. package/lib/highlight/Highlight.d.ts +12 -12
  217. package/lib/highlight/index.d.ts +8 -8
  218. package/lib/icon/Icon.d.ts +3 -3
  219. package/lib/icon/index.d.ts +2 -2
  220. package/lib/image/Image.d.ts +6 -6
  221. package/lib/image/index.d.ts +4 -4
  222. package/lib/image-preview/ImagePreview.d.ts +9 -9
  223. package/lib/image-preview/index.d.ts +6 -6
  224. package/lib/index.css +1 -1
  225. package/lib/index.d.ts +1 -1
  226. package/lib/index.js +1 -1
  227. package/lib/list/List.d.ts +3 -3
  228. package/lib/list/index.d.ts +2 -2
  229. package/lib/loading/Loading.d.ts +3 -3
  230. package/lib/loading/index.d.ts +2 -2
  231. package/lib/notify/Notify.d.ts +6 -6
  232. package/lib/notify/index.d.ts +4 -4
  233. package/lib/number-keyboard/NumberKeyboard.d.ts +6 -6
  234. package/lib/number-keyboard/index.d.ts +4 -4
  235. package/lib/pagination/Pagination.d.ts +3 -3
  236. package/lib/pagination/index.d.ts +2 -2
  237. package/lib/password-input/PasswordInput.d.ts +3 -3
  238. package/lib/password-input/index.d.ts +2 -2
  239. package/lib/picker/Picker.d.ts +9 -9
  240. package/lib/picker/Picker.js +3 -0
  241. package/lib/picker/PickerColumn.d.ts +2 -2
  242. package/lib/picker/index.d.ts +6 -6
  243. package/lib/picker-group/PickerGroup.d.ts +3 -3
  244. package/lib/picker-group/index.d.ts +2 -2
  245. package/lib/popover/Popover.d.ts +15 -15
  246. package/lib/popover/index.d.ts +10 -10
  247. package/lib/popup/Popup.d.ts +13 -9
  248. package/lib/popup/Popup.js +8 -2
  249. package/lib/popup/index.d.ts +9 -6
  250. package/lib/rate/Rate.d.ts +6 -6
  251. package/lib/rate/index.d.ts +4 -4
  252. package/lib/rolling-text/RollingText.d.ts +9 -9
  253. package/lib/rolling-text/RollingTextItem.d.ts +6 -6
  254. package/lib/rolling-text/index.d.ts +6 -6
  255. package/lib/row/Row.d.ts +3 -3
  256. package/lib/row/index.d.ts +2 -2
  257. package/lib/search/Search.d.ts +18 -15
  258. package/lib/search/index.d.ts +12 -10
  259. package/lib/share-sheet/ShareSheet.d.ts +3 -3
  260. package/lib/share-sheet/index.d.ts +2 -2
  261. package/lib/signature/Signature.d.ts +9 -9
  262. package/lib/signature/index.d.ts +6 -6
  263. package/lib/skeleton/Skeleton.d.ts +3 -3
  264. package/lib/skeleton/index.d.ts +2 -2
  265. package/lib/skeleton-avatar/SkeletonAvatar.d.ts +3 -3
  266. package/lib/skeleton-avatar/index.d.ts +2 -2
  267. package/lib/skeleton-image/SkeletonImage.d.ts +3 -3
  268. package/lib/skeleton-image/index.d.ts +2 -2
  269. package/lib/steps/Steps.d.ts +6 -6
  270. package/lib/steps/index.d.ts +4 -4
  271. package/lib/sticky/Sticky.d.ts +3 -3
  272. package/lib/sticky/index.d.ts +2 -2
  273. package/lib/submit-bar/SubmitBar.d.ts +6 -6
  274. package/lib/submit-bar/index.d.ts +4 -4
  275. package/lib/tabs/Tabs.d.ts +3 -3
  276. package/lib/tabs/index.d.ts +2 -2
  277. package/lib/tag/Tag.d.ts +3 -3
  278. package/lib/tag/index.d.ts +2 -2
  279. package/lib/text-ellipsis/TextEllipsis.d.ts +15 -15
  280. package/lib/text-ellipsis/index.d.ts +10 -10
  281. package/lib/time-picker/TimePicker.d.ts +3 -3
  282. package/lib/time-picker/index.d.ts +2 -2
  283. package/lib/toast/Toast.d.ts +9 -9
  284. package/lib/toast/index.d.ts +6 -6
  285. package/lib/tree-select/TreeSelect.d.ts +6 -6
  286. package/lib/tree-select/index.d.ts +4 -4
  287. package/lib/uploader/Uploader.d.ts +15 -15
  288. package/lib/uploader/index.d.ts +10 -10
  289. package/lib/vant.cjs.js +30 -18
  290. package/lib/vant.es.js +30 -18
  291. package/lib/vant.js +1781 -1829
  292. package/lib/vant.min.js +3 -3
  293. package/lib/watermark/Watermark.d.ts +3 -3
  294. package/lib/watermark/index.d.ts +2 -2
  295. package/lib/web-types.json +1 -1
  296. package/package.json +14 -14
@@ -5,7 +5,7 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
5
5
  default: string;
6
6
  };
7
7
  accept: {
8
- type: import("vue").PropType<string>;
8
+ type: import("vue").PropType<T>;
9
9
  default: string;
10
10
  };
11
11
  capture: StringConstructor;
@@ -18,15 +18,15 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
18
18
  default: number;
19
19
  };
20
20
  imageFit: {
21
- type: import("vue").PropType<import("csstype").Property.ObjectFit | undefined>;
21
+ type: import("vue").PropType<T>;
22
22
  default: import("csstype").Property.ObjectFit | undefined;
23
23
  };
24
24
  resultType: {
25
- type: import("vue").PropType<import("./types").UploaderResultType>;
25
+ type: import("vue").PropType<T>;
26
26
  default: import("./types").UploaderResultType;
27
27
  };
28
28
  uploadIcon: {
29
- type: import("vue").PropType<string>;
29
+ type: import("vue").PropType<T>;
30
30
  default: string;
31
31
  };
32
32
  uploadText: StringConstructor;
@@ -41,7 +41,7 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
41
41
  default: true;
42
42
  };
43
43
  modelValue: {
44
- type: import("vue").PropType<import("./types").UploaderFileListItem[]>;
44
+ type: import("vue").PropType<T_1[]>;
45
45
  default: () => never[];
46
46
  };
47
47
  beforeRead: import("vue").PropType<import("./types").UploaderBeforeRead>;
@@ -66,7 +66,7 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
66
66
  default: string;
67
67
  };
68
68
  accept: {
69
- type: import("vue").PropType<string>;
69
+ type: import("vue").PropType<T>;
70
70
  default: string;
71
71
  };
72
72
  capture: StringConstructor;
@@ -79,15 +79,15 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
79
79
  default: number;
80
80
  };
81
81
  imageFit: {
82
- type: import("vue").PropType<import("csstype").Property.ObjectFit | undefined>;
82
+ type: import("vue").PropType<T>;
83
83
  default: import("csstype").Property.ObjectFit | undefined;
84
84
  };
85
85
  resultType: {
86
- type: import("vue").PropType<import("./types").UploaderResultType>;
86
+ type: import("vue").PropType<T>;
87
87
  default: import("./types").UploaderResultType;
88
88
  };
89
89
  uploadIcon: {
90
- type: import("vue").PropType<string>;
90
+ type: import("vue").PropType<T>;
91
91
  default: string;
92
92
  };
93
93
  uploadText: StringConstructor;
@@ -102,7 +102,7 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
102
102
  default: true;
103
103
  };
104
104
  modelValue: {
105
- type: import("vue").PropType<import("./types").UploaderFileListItem[]>;
105
+ type: import("vue").PropType<T_1[]>;
106
106
  default: () => never[];
107
107
  };
108
108
  beforeRead: import("vue").PropType<import("./types").UploaderBeforeRead>;
package/lib/vant.cjs.js CHANGED
@@ -1339,6 +1339,7 @@ const popupProps$2 = extend({}, popupSharedProps, {
1339
1339
  iconPrefix: String,
1340
1340
  closeOnPopstate: Boolean,
1341
1341
  closeIconPosition: makeStringProp("top-right"),
1342
+ destroyOnClose: Boolean,
1342
1343
  safeAreaInsetTop: Boolean,
1343
1344
  safeAreaInsetBottom: Boolean
1344
1345
  });
@@ -1437,11 +1438,16 @@ var stdin_default$1K = vue.defineComponent({
1437
1438
  const renderPopup = lazyRender(() => {
1438
1439
  var _a;
1439
1440
  const {
1441
+ destroyOnClose,
1440
1442
  round,
1441
1443
  position,
1442
1444
  safeAreaInsetTop,
1443
- safeAreaInsetBottom
1445
+ safeAreaInsetBottom,
1446
+ show
1444
1447
  } = props2;
1448
+ if (!show && destroyOnClose) {
1449
+ return;
1450
+ }
1445
1451
  return vue.withDirectives(vue.createVNode("div", vue.mergeProps({
1446
1452
  "ref": popupRef,
1447
1453
  "style": style.value,
@@ -1455,7 +1461,7 @@ var stdin_default$1K = vue.defineComponent({
1455
1461
  "van-safe-area-bottom": safeAreaInsetBottom
1456
1462
  }],
1457
1463
  "onKeydown": onKeydown
1458
- }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon()]), [[vue.vShow, props2.show]]);
1464
+ }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon()]), [[vue.vShow, show]]);
1459
1465
  });
1460
1466
  const renderTransition = () => {
1461
1467
  const {
@@ -3484,6 +3490,9 @@ var stdin_default$1z = vue.defineComponent({
3484
3490
  const columnsStyle = {
3485
3491
  height: `${wrapHeight}px`
3486
3492
  };
3493
+ if (!props2.loading && !hasOptions.value && slots.empty) {
3494
+ return slots.empty();
3495
+ }
3487
3496
  return vue.createVNode("div", {
3488
3497
  "ref": columnsRef,
3489
3498
  "class": bem$1u("columns"),
@@ -4047,20 +4056,16 @@ function resizeTextarea(input, autosize) {
4047
4056
  setRootScrollTop(scrollTop);
4048
4057
  }
4049
4058
  }
4050
- function mapInputType(type) {
4059
+ function mapInputType(type, inputmode) {
4051
4060
  if (type === "number") {
4052
- return {
4053
- type: "text",
4054
- inputmode: "decimal"
4055
- };
4061
+ type = "text";
4062
+ inputmode != null ? inputmode : inputmode = "decimal";
4056
4063
  }
4057
4064
  if (type === "digit") {
4058
- return {
4059
- type: "tel",
4060
- inputmode: "numeric"
4061
- };
4065
+ type = "tel";
4066
+ inputmode != null ? inputmode : inputmode = "numeric";
4062
4067
  }
4063
- return { type };
4068
+ return { type, inputmode };
4064
4069
  }
4065
4070
  function getStringLength(str) {
4066
4071
  return [...str].length;
@@ -4106,7 +4111,8 @@ const fieldSharedProps = {
4106
4111
  readonly: {
4107
4112
  type: Boolean,
4108
4113
  default: null
4109
- }
4114
+ },
4115
+ inputmode: String
4110
4116
  };
4111
4117
  const fieldProps = extend({}, cellSharedProps, fieldSharedProps, {
4112
4118
  rows: numericProp,
@@ -4449,9 +4455,11 @@ var stdin_default$1v = vue.defineComponent({
4449
4455
  onCompositionstart: startComposing
4450
4456
  };
4451
4457
  if (props2.type === "textarea") {
4452
- return vue.createVNode("textarea", inputAttrs, null);
4458
+ return vue.createVNode("textarea", vue.mergeProps(inputAttrs, {
4459
+ "inputmode": props2.inputmode
4460
+ }), null);
4453
4461
  }
4454
- return vue.createVNode("input", vue.mergeProps(mapInputType(props2.type), inputAttrs), null);
4462
+ return vue.createVNode("input", vue.mergeProps(mapInputType(props2.type, props2.inputmode), inputAttrs), null);
4455
4463
  };
4456
4464
  const renderLeftIcon = () => {
4457
4465
  const leftIconSlot = slots["left-icon"];
@@ -6826,7 +6834,7 @@ var stdin_default$1e = vue.defineComponent({
6826
6834
  const canSwitch = props2.switchMode !== "none";
6827
6835
  return vue.createVNode("div", {
6828
6836
  "class": bem$13("header-subtitle", {
6829
- "with-swicth": canSwitch
6837
+ "with-switch": canSwitch
6830
6838
  }),
6831
6839
  "onClick": onClickSubtitle
6832
6840
  }, [canSwitch ? [renderAction(), vue.createVNode("div", {
@@ -9504,7 +9512,8 @@ const dialogProps = extend({}, popupSharedProps, {
9504
9512
  confirmButtonColor: String,
9505
9513
  confirmButtonDisabled: Boolean,
9506
9514
  showConfirmButton: truthProp,
9507
- closeOnClickOverlay: Boolean
9515
+ closeOnClickOverlay: Boolean,
9516
+ keyboardEnabled: truthProp
9508
9517
  });
9509
9518
  const popupInheritKeys$1 = [...popupSharedPropKeys, "transition", "closeOnPopstate"];
9510
9519
  var stdin_default$W = vue.defineComponent({
@@ -9551,6 +9560,9 @@ var stdin_default$W = vue.defineComponent({
9551
9560
  const onConfirm = getActionHandler("confirm");
9552
9561
  const onKeydown = vue.withKeys((event) => {
9553
9562
  var _a, _b;
9563
+ if (!props2.keyboardEnabled) {
9564
+ return;
9565
+ }
9554
9566
  if (event.target !== ((_b = (_a = root.value) == null ? void 0 : _a.popupRef) == null ? void 0 : _b.value)) {
9555
9567
  return;
9556
9568
  }
@@ -17057,7 +17069,7 @@ const Lazyload = {
17057
17069
  });
17058
17070
  }
17059
17071
  };
17060
- const version = "4.9.8";
17072
+ const version = "4.9.10";
17061
17073
  function install(app) {
17062
17074
  const components = [
17063
17075
  ActionBar,
package/lib/vant.es.js CHANGED
@@ -1337,6 +1337,7 @@ const popupProps$2 = extend({}, popupSharedProps, {
1337
1337
  iconPrefix: String,
1338
1338
  closeOnPopstate: Boolean,
1339
1339
  closeIconPosition: makeStringProp("top-right"),
1340
+ destroyOnClose: Boolean,
1340
1341
  safeAreaInsetTop: Boolean,
1341
1342
  safeAreaInsetBottom: Boolean
1342
1343
  });
@@ -1435,11 +1436,16 @@ var stdin_default$1K = defineComponent({
1435
1436
  const renderPopup = lazyRender(() => {
1436
1437
  var _a;
1437
1438
  const {
1439
+ destroyOnClose,
1438
1440
  round,
1439
1441
  position,
1440
1442
  safeAreaInsetTop,
1441
- safeAreaInsetBottom
1443
+ safeAreaInsetBottom,
1444
+ show
1442
1445
  } = props2;
1446
+ if (!show && destroyOnClose) {
1447
+ return;
1448
+ }
1443
1449
  return withDirectives(createVNode("div", mergeProps({
1444
1450
  "ref": popupRef,
1445
1451
  "style": style.value,
@@ -1453,7 +1459,7 @@ var stdin_default$1K = defineComponent({
1453
1459
  "van-safe-area-bottom": safeAreaInsetBottom
1454
1460
  }],
1455
1461
  "onKeydown": onKeydown
1456
- }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon()]), [[vShow, props2.show]]);
1462
+ }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon()]), [[vShow, show]]);
1457
1463
  });
1458
1464
  const renderTransition = () => {
1459
1465
  const {
@@ -3482,6 +3488,9 @@ var stdin_default$1z = defineComponent({
3482
3488
  const columnsStyle = {
3483
3489
  height: `${wrapHeight}px`
3484
3490
  };
3491
+ if (!props2.loading && !hasOptions.value && slots.empty) {
3492
+ return slots.empty();
3493
+ }
3485
3494
  return createVNode("div", {
3486
3495
  "ref": columnsRef,
3487
3496
  "class": bem$1u("columns"),
@@ -4045,20 +4054,16 @@ function resizeTextarea(input, autosize) {
4045
4054
  setRootScrollTop(scrollTop);
4046
4055
  }
4047
4056
  }
4048
- function mapInputType(type) {
4057
+ function mapInputType(type, inputmode) {
4049
4058
  if (type === "number") {
4050
- return {
4051
- type: "text",
4052
- inputmode: "decimal"
4053
- };
4059
+ type = "text";
4060
+ inputmode != null ? inputmode : inputmode = "decimal";
4054
4061
  }
4055
4062
  if (type === "digit") {
4056
- return {
4057
- type: "tel",
4058
- inputmode: "numeric"
4059
- };
4063
+ type = "tel";
4064
+ inputmode != null ? inputmode : inputmode = "numeric";
4060
4065
  }
4061
- return { type };
4066
+ return { type, inputmode };
4062
4067
  }
4063
4068
  function getStringLength(str) {
4064
4069
  return [...str].length;
@@ -4104,7 +4109,8 @@ const fieldSharedProps = {
4104
4109
  readonly: {
4105
4110
  type: Boolean,
4106
4111
  default: null
4107
- }
4112
+ },
4113
+ inputmode: String
4108
4114
  };
4109
4115
  const fieldProps = extend({}, cellSharedProps, fieldSharedProps, {
4110
4116
  rows: numericProp,
@@ -4447,9 +4453,11 @@ var stdin_default$1v = defineComponent({
4447
4453
  onCompositionstart: startComposing
4448
4454
  };
4449
4455
  if (props2.type === "textarea") {
4450
- return createVNode("textarea", inputAttrs, null);
4456
+ return createVNode("textarea", mergeProps(inputAttrs, {
4457
+ "inputmode": props2.inputmode
4458
+ }), null);
4451
4459
  }
4452
- return createVNode("input", mergeProps(mapInputType(props2.type), inputAttrs), null);
4460
+ return createVNode("input", mergeProps(mapInputType(props2.type, props2.inputmode), inputAttrs), null);
4453
4461
  };
4454
4462
  const renderLeftIcon = () => {
4455
4463
  const leftIconSlot = slots["left-icon"];
@@ -6824,7 +6832,7 @@ var stdin_default$1e = defineComponent({
6824
6832
  const canSwitch = props2.switchMode !== "none";
6825
6833
  return createVNode("div", {
6826
6834
  "class": bem$13("header-subtitle", {
6827
- "with-swicth": canSwitch
6835
+ "with-switch": canSwitch
6828
6836
  }),
6829
6837
  "onClick": onClickSubtitle
6830
6838
  }, [canSwitch ? [renderAction(), createVNode("div", {
@@ -9502,7 +9510,8 @@ const dialogProps = extend({}, popupSharedProps, {
9502
9510
  confirmButtonColor: String,
9503
9511
  confirmButtonDisabled: Boolean,
9504
9512
  showConfirmButton: truthProp,
9505
- closeOnClickOverlay: Boolean
9513
+ closeOnClickOverlay: Boolean,
9514
+ keyboardEnabled: truthProp
9506
9515
  });
9507
9516
  const popupInheritKeys$1 = [...popupSharedPropKeys, "transition", "closeOnPopstate"];
9508
9517
  var stdin_default$W = defineComponent({
@@ -9549,6 +9558,9 @@ var stdin_default$W = defineComponent({
9549
9558
  const onConfirm = getActionHandler("confirm");
9550
9559
  const onKeydown = withKeys((event) => {
9551
9560
  var _a, _b;
9561
+ if (!props2.keyboardEnabled) {
9562
+ return;
9563
+ }
9552
9564
  if (event.target !== ((_b = (_a = root.value) == null ? void 0 : _a.popupRef) == null ? void 0 : _b.value)) {
9553
9565
  return;
9554
9566
  }
@@ -17055,7 +17067,7 @@ const Lazyload = {
17055
17067
  });
17056
17068
  }
17057
17069
  };
17058
- const version = "4.9.8";
17070
+ const version = "4.9.10";
17059
17071
  function install(app) {
17060
17072
  const components = [
17061
17073
  ActionBar,