vant 4.0.0-beta.0 → 4.0.0-beta.1

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 (131) hide show
  1. package/README.md +13 -9
  2. package/changelog.generated.md +191 -150
  3. package/es/badge/Badge.mjs +1 -1
  4. package/es/calendar/Calendar.mjs +3 -4
  5. package/es/collapse/Collapse.d.ts +8 -1
  6. package/es/collapse/Collapse.mjs +28 -1
  7. package/es/collapse/index.d.ts +1 -1
  8. package/es/collapse-item/CollapseItem.mjs +3 -1
  9. package/es/composables/use-global-z-index.d.ts +4 -0
  10. package/es/composables/use-global-z-index.mjs +9 -0
  11. package/es/composables/use-height.d.ts +1 -1
  12. package/es/composables/use-height.mjs +8 -2
  13. package/es/composables/use-lock-scroll.mjs +3 -1
  14. package/es/composables/use-placeholder.mjs +1 -1
  15. package/es/config-provider/ConfigProvider.d.ts +13 -3
  16. package/es/config-provider/ConfigProvider.mjs +25 -9
  17. package/es/config-provider/index.d.ts +8 -2
  18. package/es/dialog/index.css +1 -1
  19. package/es/dropdown-menu/DropdownMenu.mjs +2 -1
  20. package/es/empty/Empty.d.ts +1 -1
  21. package/es/empty/Empty.mjs +281 -16
  22. package/es/field/Field.mjs +4 -1
  23. package/es/field/types.d.ts +1 -0
  24. package/es/field/utils.d.ts +1 -0
  25. package/es/field/utils.mjs +8 -2
  26. package/es/image-preview/ImagePreviewItem.mjs +1 -1
  27. package/es/image-preview/index.css +1 -1
  28. package/es/index-bar/IndexBar.mjs +3 -2
  29. package/es/index.d.ts +2 -1
  30. package/es/index.mjs +4 -1
  31. package/es/list/List.mjs +2 -1
  32. package/es/number-keyboard/NumberKeyboard.mjs +1 -2
  33. package/es/number-keyboard/NumberKeyboardKey.mjs +2 -2
  34. package/es/password-input/PasswordInput.mjs +1 -1
  35. package/es/picker/Picker.d.ts +2 -1
  36. package/es/picker/Picker.mjs +9 -2
  37. package/es/picker/PickerColumn.d.ts +2 -1
  38. package/es/picker/PickerColumn.mjs +5 -4
  39. package/es/picker/index.d.ts +2 -1
  40. package/es/popover/Popover.mjs +28 -27
  41. package/es/popup/Popup.mjs +6 -5
  42. package/es/popup/index.css +1 -1
  43. package/es/pull-refresh/PullRefresh.mjs +7 -3
  44. package/es/rate/Rate.mjs +1 -1
  45. package/es/search/index.css +1 -1
  46. package/es/slider/Slider.mjs +1 -1
  47. package/es/space/Space.d.ts +48 -0
  48. package/es/space/Space.mjs +87 -0
  49. package/es/space/index.css +1 -0
  50. package/es/space/index.d.ts +37 -0
  51. package/es/space/index.mjs +8 -0
  52. package/es/space/style/index.d.ts +1 -0
  53. package/es/space/style/index.mjs +2 -0
  54. package/es/stepper/Stepper.mjs +1 -1
  55. package/es/sticky/Sticky.mjs +2 -1
  56. package/es/swipe/Swipe.mjs +1 -1
  57. package/es/swipe-cell/SwipeCell.mjs +1 -1
  58. package/es/tabs/Tabs.mjs +12 -2
  59. package/es/tabs/TabsContent.mjs +4 -0
  60. package/es/vue-tsx-shim.d.ts +7 -0
  61. package/lib/badge/Badge.js +1 -1
  62. package/lib/calendar/Calendar.js +3 -4
  63. package/lib/collapse/Collapse.d.ts +8 -1
  64. package/lib/collapse/Collapse.js +28 -1
  65. package/lib/collapse/index.d.ts +1 -1
  66. package/lib/collapse-item/CollapseItem.js +3 -1
  67. package/lib/composables/use-global-z-index.d.ts +4 -0
  68. package/lib/composables/use-global-z-index.js +28 -0
  69. package/lib/composables/use-height.d.ts +1 -1
  70. package/lib/composables/use-height.js +8 -2
  71. package/lib/composables/use-lock-scroll.js +3 -1
  72. package/lib/composables/use-placeholder.js +1 -1
  73. package/lib/config-provider/ConfigProvider.d.ts +13 -3
  74. package/lib/config-provider/ConfigProvider.js +23 -7
  75. package/lib/config-provider/index.d.ts +8 -2
  76. package/lib/dialog/index.css +1 -1
  77. package/lib/dropdown-menu/DropdownMenu.js +2 -1
  78. package/lib/empty/Empty.d.ts +1 -1
  79. package/lib/empty/Empty.js +281 -16
  80. package/lib/field/Field.js +3 -0
  81. package/lib/field/types.d.ts +1 -0
  82. package/lib/field/utils.d.ts +1 -0
  83. package/lib/field/utils.js +8 -2
  84. package/lib/image-preview/ImagePreviewItem.js +1 -1
  85. package/lib/image-preview/index.css +1 -1
  86. package/lib/index-bar/IndexBar.js +3 -2
  87. package/lib/index.css +1 -1
  88. package/lib/index.d.ts +2 -1
  89. package/lib/index.js +4 -1
  90. package/lib/list/List.js +2 -1
  91. package/lib/number-keyboard/NumberKeyboard.js +1 -2
  92. package/lib/number-keyboard/NumberKeyboardKey.js +2 -2
  93. package/lib/password-input/PasswordInput.js +1 -1
  94. package/lib/picker/Picker.d.ts +2 -1
  95. package/lib/picker/Picker.js +9 -2
  96. package/lib/picker/PickerColumn.d.ts +2 -1
  97. package/lib/picker/PickerColumn.js +5 -4
  98. package/lib/picker/index.d.ts +2 -1
  99. package/lib/popover/Popover.js +27 -26
  100. package/lib/popup/Popup.js +6 -5
  101. package/lib/popup/index.css +1 -1
  102. package/lib/pull-refresh/PullRefresh.js +6 -2
  103. package/lib/rate/Rate.js +1 -1
  104. package/lib/search/index.css +1 -1
  105. package/lib/slider/Slider.js +1 -1
  106. package/lib/space/Space.d.ts +48 -0
  107. package/lib/space/Space.js +106 -0
  108. package/lib/space/index.css +1 -0
  109. package/lib/space/index.d.ts +37 -0
  110. package/lib/space/index.js +30 -0
  111. package/lib/space/style/index.d.ts +1 -0
  112. package/lib/space/style/index.js +2 -0
  113. package/lib/stepper/Stepper.js +1 -1
  114. package/lib/sticky/Sticky.js +2 -1
  115. package/lib/swipe/Swipe.js +1 -1
  116. package/lib/swipe-cell/SwipeCell.js +1 -1
  117. package/lib/tabs/Tabs.js +12 -2
  118. package/lib/tabs/TabsContent.js +4 -0
  119. package/lib/vant.cjs.js +1332 -1101
  120. package/lib/vant.es.js +1440 -1100
  121. package/lib/vant.js +1285 -1102
  122. package/lib/vant.min.js +1 -1
  123. package/lib/vue-tsx-shim.d.ts +7 -0
  124. package/{vetur → lib}/web-types.json +2304 -2203
  125. package/package.json +6 -11
  126. package/es/empty/Images.d.ts +0 -4
  127. package/es/empty/Images.mjs +0 -271
  128. package/lib/empty/Images.d.ts +0 -4
  129. package/lib/empty/Images.js +0 -290
  130. package/vetur/attributes.json +0 -3530
  131. package/vetur/tags.json +0 -1212
@@ -22,15 +22,9 @@ __export(stdin_exports, {
22
22
  module.exports = __toCommonJS(stdin_exports);
23
23
  var import_vue = require("vue");
24
24
  var import_vue2 = require("vue");
25
+ var import_use_id = require("../composables/use-id");
25
26
  var import_utils = require("../utils");
26
- var import_Images = require("./Images");
27
27
  const [name, bem] = (0, import_utils.createNamespace)("empty");
28
- const PRESET_IMAGES = {
29
- error: import_Images.renderError,
30
- search: import_Images.renderSearch,
31
- network: import_Images.renderNetwork,
32
- default: import_Images.renderMaterial
33
- };
34
28
  const emptyProps = {
35
29
  image: (0, import_utils.makeStringProp)("default"),
36
30
  imageSize: [Number, String, Array],
@@ -42,15 +36,6 @@ var stdin_default = (0, import_vue2.defineComponent)({
42
36
  setup(props, {
43
37
  slots
44
38
  }) {
45
- const renderImage = () => {
46
- var _a;
47
- if (slots.image) {
48
- return slots.image();
49
- }
50
- return ((_a = PRESET_IMAGES[props.image]) == null ? void 0 : _a.call(PRESET_IMAGES)) || (0, import_vue.createVNode)("img", {
51
- "src": props.image
52
- }, null);
53
- };
54
39
  const renderDescription = () => {
55
40
  const description = slots.description ? slots.description() : props.description;
56
41
  if (description) {
@@ -66,6 +51,286 @@ var stdin_default = (0, import_vue2.defineComponent)({
66
51
  }, [slots.default()]);
67
52
  }
68
53
  };
54
+ const baseId = (0, import_use_id.useId)();
55
+ const getId = (num) => `${baseId}-${num}`;
56
+ const getUrlById = (num) => `url(#${getId(num)})`;
57
+ const renderStop = (color, offset, opacity) => (0, import_vue.createVNode)("stop", {
58
+ "stop-color": color,
59
+ "offset": `${offset}%`,
60
+ "stop-opacity": opacity
61
+ }, null);
62
+ const renderStops = (fromColor, toColor) => [renderStop(fromColor, 0), renderStop(toColor, 100)];
63
+ const renderShadow = (id) => [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("radialGradient", {
64
+ "id": getId(id),
65
+ "cx": "50%",
66
+ "cy": "54%",
67
+ "fx": "50%",
68
+ "fy": "54%",
69
+ "r": "297%",
70
+ "gradientTransform": "matrix(-.16 0 0 -.33 .58 .72)"
71
+ }, [renderStop("#EBEDF0", 0), renderStop("#F2F3F5", 100, 0.3)])]), (0, import_vue.createVNode)("ellipse", {
72
+ "fill": getUrlById(id),
73
+ "opacity": ".8",
74
+ "cx": "80",
75
+ "cy": "140",
76
+ "rx": "46",
77
+ "ry": "8"
78
+ }, null)];
79
+ const renderBuilding = () => [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
80
+ "id": getId("a"),
81
+ "x1": "64%",
82
+ "y1": "100%",
83
+ "x2": "64%"
84
+ }, [renderStop("#FFF", 0, 0.5), renderStop("#F2F3F5", 100)])]), (0, import_vue.createVNode)("g", {
85
+ "opacity": ".8"
86
+ }, [(0, import_vue.createVNode)("path", {
87
+ "d": "M36 131V53H16v20H2v58h34z",
88
+ "fill": getUrlById("a")
89
+ }, null), (0, import_vue.createVNode)("path", {
90
+ "d": "M123 15h22v14h9v77h-31V15z",
91
+ "fill": getUrlById("a")
92
+ }, null)])];
93
+ const renderCloud = () => [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
94
+ "id": getId("b"),
95
+ "x1": "64%",
96
+ "y1": "97%",
97
+ "x2": "64%",
98
+ "y2": "0%"
99
+ }, [renderStop("#F2F3F5", 0, 0.3), renderStop("#F2F3F5", 100)])]), (0, import_vue.createVNode)("g", {
100
+ "opacity": ".8"
101
+ }, [(0, import_vue.createVNode)("path", {
102
+ "d": "M87 6c3 0 7 3 8 6a8 8 0 1 1-1 16H80a7 7 0 0 1-8-6c0-4 3-7 6-7 0-5 4-9 9-9Z",
103
+ "fill": getUrlById("b")
104
+ }, null), (0, import_vue.createVNode)("path", {
105
+ "d": "M19 23c2 0 3 1 4 3 2 0 4 2 4 4a4 4 0 0 1-4 3v1h-7v-1l-1 1c-2 0-3-2-3-4 0-1 1-3 3-3 0-2 2-4 4-4Z",
106
+ "fill": getUrlById("b")
107
+ }, null)])];
108
+ const renderNetwork = () => (0, import_vue.createVNode)("svg", {
109
+ "viewBox": "0 0 160 160"
110
+ }, [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
111
+ "id": getId(1),
112
+ "x1": "64%",
113
+ "y1": "100%",
114
+ "x2": "64%"
115
+ }, [renderStop("#FFF", 0, 0.5), renderStop("#F2F3F5", 100)]), (0, import_vue.createVNode)("linearGradient", {
116
+ "id": getId(2),
117
+ "x1": "50%",
118
+ "x2": "50%",
119
+ "y2": "84%"
120
+ }, [renderStop("#EBEDF0", 0), renderStop("#DCDEE0", 100, 0)]), (0, import_vue.createVNode)("linearGradient", {
121
+ "id": getId(3),
122
+ "x1": "100%",
123
+ "x2": "100%",
124
+ "y2": "100%"
125
+ }, [renderStops("#EAEDF0", "#DCDEE0")]), (0, import_vue.createVNode)("radialGradient", {
126
+ "id": getId(4),
127
+ "cx": "50%",
128
+ "cy": "0%",
129
+ "fx": "50%",
130
+ "fy": "0%",
131
+ "r": "100%",
132
+ "gradientTransform": "matrix(0 1 -.54 0 .5 -.5)"
133
+ }, [renderStop("#EBEDF0", 0), renderStop("#FFF", 100, 0)])]), (0, import_vue.createVNode)("g", {
134
+ "fill": "none"
135
+ }, [renderBuilding(), (0, import_vue.createVNode)("path", {
136
+ "fill": getUrlById(4),
137
+ "d": "M0 139h160v21H0z"
138
+ }, null), (0, import_vue.createVNode)("path", {
139
+ "d": "M80 54a7 7 0 0 1 3 13v27l-2 2h-2a2 2 0 0 1-2-2V67a7 7 0 0 1 3-13z",
140
+ "fill": getUrlById(2)
141
+ }, null), (0, import_vue.createVNode)("g", {
142
+ "opacity": ".6",
143
+ "stroke-linecap": "round",
144
+ "stroke-width": "7"
145
+ }, [(0, import_vue.createVNode)("path", {
146
+ "d": "M64 47a19 19 0 0 0-5 13c0 5 2 10 5 13",
147
+ "stroke": getUrlById(3)
148
+ }, null), (0, import_vue.createVNode)("path", {
149
+ "d": "M53 36a34 34 0 0 0 0 48",
150
+ "stroke": getUrlById(3)
151
+ }, null), (0, import_vue.createVNode)("path", {
152
+ "d": "M95 73a19 19 0 0 0 6-13c0-5-2-9-6-13",
153
+ "stroke": getUrlById(3)
154
+ }, null), (0, import_vue.createVNode)("path", {
155
+ "d": "M106 84a34 34 0 0 0 0-48",
156
+ "stroke": getUrlById(3)
157
+ }, null)]), (0, import_vue.createVNode)("g", {
158
+ "transform": "translate(31 105)"
159
+ }, [(0, import_vue.createVNode)("rect", {
160
+ "fill": "#EBEDF0",
161
+ "width": "98",
162
+ "height": "34",
163
+ "rx": "2"
164
+ }, null), (0, import_vue.createVNode)("rect", {
165
+ "fill": "#FFF",
166
+ "x": "9",
167
+ "y": "8",
168
+ "width": "80",
169
+ "height": "18",
170
+ "rx": "1.1"
171
+ }, null), (0, import_vue.createVNode)("rect", {
172
+ "fill": "#EBEDF0",
173
+ "x": "15",
174
+ "y": "12",
175
+ "width": "18",
176
+ "height": "6",
177
+ "rx": "1.1"
178
+ }, null)])])]);
179
+ const renderMaterial = () => (0, import_vue.createVNode)("svg", {
180
+ "viewBox": "0 0 160 160"
181
+ }, [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
182
+ "x1": "50%",
183
+ "x2": "50%",
184
+ "y2": "100%",
185
+ "id": getId(5)
186
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), (0, import_vue.createVNode)("linearGradient", {
187
+ "x1": "95%",
188
+ "y1": "48%",
189
+ "x2": "5.5%",
190
+ "y2": "51%",
191
+ "id": getId(6)
192
+ }, [renderStops("#EAEDF1", "#DCDEE0")]), (0, import_vue.createVNode)("linearGradient", {
193
+ "y1": "45%",
194
+ "x2": "100%",
195
+ "y2": "54%",
196
+ "id": getId(7)
197
+ }, [renderStops("#EAEDF1", "#DCDEE0")])]), renderBuilding(), renderCloud(), (0, import_vue.createVNode)("g", {
198
+ "transform": "translate(36 50)",
199
+ "fill": "none"
200
+ }, [(0, import_vue.createVNode)("g", {
201
+ "transform": "translate(8)"
202
+ }, [(0, import_vue.createVNode)("rect", {
203
+ "fill": "#EBEDF0",
204
+ "opacity": ".6",
205
+ "x": "38",
206
+ "y": "13",
207
+ "width": "36",
208
+ "height": "53",
209
+ "rx": "2"
210
+ }, null), (0, import_vue.createVNode)("rect", {
211
+ "fill": getUrlById(5),
212
+ "width": "64",
213
+ "height": "66",
214
+ "rx": "2"
215
+ }, null), (0, import_vue.createVNode)("rect", {
216
+ "fill": "#FFF",
217
+ "x": "6",
218
+ "y": "6",
219
+ "width": "52",
220
+ "height": "55",
221
+ "rx": "1"
222
+ }, null), (0, import_vue.createVNode)("g", {
223
+ "transform": "translate(15 17)",
224
+ "fill": getUrlById(6)
225
+ }, [(0, import_vue.createVNode)("rect", {
226
+ "width": "34",
227
+ "height": "6",
228
+ "rx": "1"
229
+ }, null), (0, import_vue.createVNode)("path", {
230
+ "d": "M0 14h34v6H0z"
231
+ }, null), (0, import_vue.createVNode)("rect", {
232
+ "y": "28",
233
+ "width": "34",
234
+ "height": "6",
235
+ "rx": "1"
236
+ }, null)])]), (0, import_vue.createVNode)("rect", {
237
+ "fill": getUrlById(7),
238
+ "y": "61",
239
+ "width": "88",
240
+ "height": "28",
241
+ "rx": "1"
242
+ }, null), (0, import_vue.createVNode)("rect", {
243
+ "fill": "#F7F8FA",
244
+ "x": "29",
245
+ "y": "72",
246
+ "width": "30",
247
+ "height": "6",
248
+ "rx": "1"
249
+ }, null)])]);
250
+ const renderError = () => (0, import_vue.createVNode)("svg", {
251
+ "viewBox": "0 0 160 160"
252
+ }, [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
253
+ "x1": "50%",
254
+ "x2": "50%",
255
+ "y2": "100%",
256
+ "id": getId(8)
257
+ }, [renderStops("#EAEDF1", "#DCDEE0")])]), renderBuilding(), renderCloud(), renderShadow("c"), (0, import_vue.createVNode)("path", {
258
+ "d": "m59 60 21 21 21-21h3l9 9v3L92 93l21 21v3l-9 9h-3l-21-21-21 21h-3l-9-9v-3l21-21-21-21v-3l9-9h3Z",
259
+ "fill": getUrlById(8)
260
+ }, null)]);
261
+ const renderSearch = () => (0, import_vue.createVNode)("svg", {
262
+ "viewBox": "0 0 160 160"
263
+ }, [(0, import_vue.createVNode)("defs", null, [(0, import_vue.createVNode)("linearGradient", {
264
+ "x1": "50%",
265
+ "y1": "100%",
266
+ "x2": "50%",
267
+ "id": getId(9)
268
+ }, [renderStops("#EEE", "#D8D8D8")]), (0, import_vue.createVNode)("linearGradient", {
269
+ "x1": "100%",
270
+ "y1": "50%",
271
+ "y2": "50%",
272
+ "id": getId(10)
273
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), (0, import_vue.createVNode)("linearGradient", {
274
+ "x1": "50%",
275
+ "x2": "50%",
276
+ "y2": "100%",
277
+ "id": getId(11)
278
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), (0, import_vue.createVNode)("linearGradient", {
279
+ "x1": "50%",
280
+ "x2": "50%",
281
+ "y2": "100%",
282
+ "id": getId(12)
283
+ }, [renderStops("#FFF", "#F7F8FA")])]), renderBuilding(), renderCloud(), renderShadow("d"), (0, import_vue.createVNode)("g", {
284
+ "transform": "rotate(-45 113 -4)",
285
+ "fill": "none"
286
+ }, [(0, import_vue.createVNode)("rect", {
287
+ "fill": getUrlById(9),
288
+ "x": "24",
289
+ "y": "52.8",
290
+ "width": "5.8",
291
+ "height": "19",
292
+ "rx": "1"
293
+ }, null), (0, import_vue.createVNode)("rect", {
294
+ "fill": getUrlById(10),
295
+ "x": "22.1",
296
+ "y": "67.3",
297
+ "width": "9.9",
298
+ "height": "28",
299
+ "rx": "1"
300
+ }, null), (0, import_vue.createVNode)("circle", {
301
+ "stroke": getUrlById(11),
302
+ "stroke-width": "8",
303
+ "cx": "27",
304
+ "cy": "27",
305
+ "r": "27"
306
+ }, null), (0, import_vue.createVNode)("circle", {
307
+ "fill": getUrlById(12),
308
+ "cx": "27",
309
+ "cy": "27",
310
+ "r": "16"
311
+ }, null), (0, import_vue.createVNode)("path", {
312
+ "d": "M37 7c-8 0-15 5-16 12",
313
+ "stroke": getUrlById(11),
314
+ "stroke-width": "3",
315
+ "opacity": ".5",
316
+ "stroke-linecap": "round",
317
+ "transform": "rotate(45 29 13)"
318
+ }, null)])]);
319
+ const renderImage = () => {
320
+ var _a;
321
+ if (slots.image) {
322
+ return slots.image();
323
+ }
324
+ const PRESET_IMAGES = {
325
+ error: renderError,
326
+ search: renderSearch,
327
+ network: renderNetwork,
328
+ default: renderMaterial
329
+ };
330
+ return ((_a = PRESET_IMAGES[props.image]) == null ? void 0 : _a.call(PRESET_IMAGES)) || (0, import_vue.createVNode)("img", {
331
+ "src": props.image
332
+ }, null);
333
+ };
69
334
  return () => (0, import_vue.createVNode)("div", {
70
335
  "class": bem()
71
336
  }, [(0, import_vue.createVNode)("div", {
@@ -140,6 +140,9 @@ var stdin_default = (0, import_vue2.defineComponent)({
140
140
  return;
141
141
  }
142
142
  if (rule.validator) {
143
+ if ((0, import_utils2.isEmptyValue)(value) && rule.validateEmpty === false) {
144
+ return;
145
+ }
143
146
  return (0, import_utils2.runRuleValidator)(value, rule).then((result) => {
144
147
  if (result && typeof result === "string") {
145
148
  state.status = "failed";
@@ -23,6 +23,7 @@ export declare type FieldRule = {
23
23
  required?: boolean;
24
24
  validator?: FieldRuleValidator;
25
25
  formatter?: FiledRuleFormatter;
26
+ validateEmpty?: boolean;
26
27
  };
27
28
  export declare type FieldValidationStatus = 'passed' | 'failed' | 'unvalidated';
28
29
  export declare type FieldFormSharedProps = 'colon' | 'disabled' | 'readonly' | 'labelWidth' | 'labelAlign' | 'inputAlign' | 'errorMessageAlign';
@@ -1,5 +1,6 @@
1
1
  import { HTMLAttributes, InputHTMLAttributes } from 'vue';
2
2
  import type { FieldRule, FieldType, FieldAutosizeConfig } from './types';
3
+ export declare function isEmptyValue(value: unknown): boolean;
3
4
  export declare function runSyncRule(value: unknown, rule: FieldRule): boolean;
4
5
  export declare function runRuleValidator(value: unknown, rule: FieldRule): Promise<unknown>;
5
6
  export declare function getRuleMessage(value: unknown, rule: FieldRule): string;
@@ -21,6 +21,7 @@ __export(stdin_exports, {
21
21
  endComposing: () => endComposing,
22
22
  getRuleMessage: () => getRuleMessage,
23
23
  getStringLength: () => getStringLength,
24
+ isEmptyValue: () => isEmptyValue,
24
25
  mapInputType: () => mapInputType,
25
26
  resizeTextarea: () => resizeTextarea,
26
27
  runRuleValidator: () => runRuleValidator,
@@ -39,8 +40,13 @@ function isEmptyValue(value) {
39
40
  return !value;
40
41
  }
41
42
  function runSyncRule(value, rule) {
42
- if (rule.required && isEmptyValue(value)) {
43
- return false;
43
+ if (isEmptyValue(value)) {
44
+ if (rule.required) {
45
+ return false;
46
+ }
47
+ if (rule.validateEmpty === false) {
48
+ return true;
49
+ }
44
50
  }
45
51
  if (rule.pattern && !rule.pattern.test(String(value))) {
46
52
  return false;
@@ -247,7 +247,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
247
247
  };
248
248
  return (0, import_vue.createVNode)(import_swipe_item.SwipeItem, {
249
249
  "class": bem("swipe-item"),
250
- "onTouchstart": onTouchStart,
250
+ "onTouchstartPassive": onTouchStart,
251
251
  "onTouchmove": onTouchMove,
252
252
  "onTouchend": onTouchEnd,
253
253
  "onTouchcancel": onTouchEnd
@@ -1 +1 @@
1
- body{--van-image-preview-index-text-color: var(--van-white);--van-image-preview-index-font-size: var(--van-font-size-md);--van-image-preview-index-line-height: var(--van-line-height-md);--van-image-preview-index-text-shadow: 0 1px 1px var(--van-gray-8);--van-image-preview-overlay-background: rgba(0, 0, 0, .9);--van-image-preview-close-icon-size: 22px;--van-image-preview-close-icon-color: var(--van-gray-5);--van-image-preview-close-icon-margin: var(--van-padding-md);--van-image-preview-close-icon-z-index: 1}.van-image-preview{position:fixed;top:0;left:0;width:100%;height:100%;background-color:transparent;transform:none}.van-image-preview__swipe{height:100%}.van-image-preview__swipe-item{display:flex;align-items:center;justify-content:center;overflow:hidden}.van-image-preview__cover{position:absolute;top:0;left:0}.van-image-preview__image{width:100%;transition-property:transform}.van-image-preview__image--vertical{width:auto;height:100%}.van-image-preview__image img{-webkit-user-drag:none}.van-image-preview__image .van-image__error{top:30%;height:40%}.van-image-preview__image .van-image__error-icon{font-size:36px}.van-image-preview__image .van-image__loading{background-color:transparent}.van-image-preview__index{position:absolute;top:var(--van-padding-md);left:50%;color:var(--van-image-preview-index-text-color);font-size:var(--van-image-preview-index-font-size);line-height:var(--van-image-preview-index-line-height);text-shadow:var(--van-image-preview-index-text-shadow);transform:translate(-50%)}.van-image-preview__overlay{background:var(--van-image-preview-overlay-background)}.van-image-preview__close-icon{position:absolute;z-index:var(--van-image-preview-close-icon-z-index);color:var(--van-image-preview-close-icon-color);font-size:var(--van-image-preview-close-icon-size)}.van-image-preview__close-icon--top-left{top:var(--van-image-preview-close-icon-margin);left:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--top-right{top:var(--van-image-preview-close-icon-margin);right:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--bottom-left{bottom:var(--van-image-preview-close-icon-margin);left:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--bottom-right{right:var(--van-image-preview-close-icon-margin);bottom:var(--van-image-preview-close-icon-margin)}
1
+ body{--van-image-preview-index-text-color: var(--van-white);--van-image-preview-index-font-size: var(--van-font-size-md);--van-image-preview-index-line-height: var(--van-line-height-md);--van-image-preview-index-text-shadow: 0 1px 1px var(--van-gray-8);--van-image-preview-overlay-background: rgba(0, 0, 0, .9);--van-image-preview-close-icon-size: 22px;--van-image-preview-close-icon-color: var(--van-gray-5);--van-image-preview-close-icon-margin: var(--van-padding-md);--van-image-preview-close-icon-z-index: 1}.van-image-preview{position:fixed;top:0;left:0;width:100%;height:100%;max-width:none;background-color:transparent;transform:none}.van-image-preview__swipe{height:100%}.van-image-preview__swipe-item{display:flex;align-items:center;justify-content:center;overflow:hidden}.van-image-preview__cover{position:absolute;top:0;left:0}.van-image-preview__image{width:100%;transition-property:transform}.van-image-preview__image--vertical{width:auto;height:100%}.van-image-preview__image img{-webkit-user-drag:none}.van-image-preview__image .van-image__error{top:30%;height:40%}.van-image-preview__image .van-image__error-icon{font-size:36px}.van-image-preview__image .van-image__loading{background-color:transparent}.van-image-preview__index{position:absolute;top:var(--van-padding-md);left:50%;color:var(--van-image-preview-index-text-color);font-size:var(--van-image-preview-index-font-size);line-height:var(--van-image-preview-index-line-height);text-shadow:var(--van-image-preview-index-text-shadow);transform:translate(-50%)}.van-image-preview__overlay{background:var(--van-image-preview-overlay-background)}.van-image-preview__close-icon{position:absolute;z-index:var(--van-image-preview-close-icon-z-index);color:var(--van-image-preview-close-icon-color);font-size:var(--van-image-preview-close-icon-size)}.van-image-preview__close-icon--top-left{top:var(--van-image-preview-close-icon-margin);left:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--top-right{top:var(--van-image-preview-close-icon-margin);right:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--bottom-left{bottom:var(--van-image-preview-close-icon-margin);left:var(--van-image-preview-close-icon-margin)}.van-image-preview__close-icon--bottom-right{right:var(--van-image-preview-close-icon-margin);bottom:var(--van-image-preview-close-icon-margin)}
@@ -144,7 +144,8 @@ var stdin_default = (0, import_vue2.defineComponent)({
144
144
  (0, import_vue2.nextTick)(onScroll);
145
145
  };
146
146
  (0, import_use.useEventListener)("scroll", onScroll, {
147
- target: scrollParent
147
+ target: scrollParent,
148
+ passive: true
148
149
  });
149
150
  (0, import_vue2.onMounted)(init);
150
151
  (0, import_vue2.watch)(() => props.indexList, init);
@@ -219,7 +220,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
219
220
  "class": bem("sidebar"),
220
221
  "style": sidebarStyle.value,
221
222
  "onClick": onClickSidebar,
222
- "onTouchstart": touch.start,
223
+ "onTouchstartPassive": touch.start,
223
224
  "onTouchmove": onTouchMove
224
225
  }, [renderIndexes()]);
225
226
  (0, import_use_expose.useExpose)({