vant 4.0.0-alpha.2 → 4.0.0-alpha.3

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 (52) hide show
  1. package/changelog.generated.md +33 -29
  2. package/es/empty/Empty.js +10 -13
  3. package/es/empty/Images.d.ts +4 -0
  4. package/es/empty/Images.js +271 -0
  5. package/es/field/Field.js +6 -3
  6. package/es/field/types.d.ts +1 -1
  7. package/es/form/Form.d.ts +13 -13
  8. package/es/form/Form.js +6 -3
  9. package/es/form/index.d.ts +9 -9
  10. package/es/index.d.ts +1 -1
  11. package/es/index.js +1 -1
  12. package/es/loading/Loading.js +3 -1
  13. package/es/search/index.css +1 -1
  14. package/es/search/index.less +1 -1
  15. package/es/uploader/Uploader.js +2 -2
  16. package/es/uploader/utils.d.ts +0 -1
  17. package/es/uploader/utils.js +2 -4
  18. package/es/utils/basic.d.ts +1 -0
  19. package/es/utils/basic.js +3 -1
  20. package/lib/empty/Empty.js +10 -13
  21. package/lib/empty/Images.d.ts +4 -0
  22. package/lib/empty/Images.js +290 -0
  23. package/lib/field/Field.js +5 -2
  24. package/lib/field/types.d.ts +1 -1
  25. package/lib/form/Form.d.ts +13 -13
  26. package/lib/form/Form.js +5 -2
  27. package/lib/form/index.d.ts +9 -9
  28. package/lib/index.css +1 -1
  29. package/lib/index.d.ts +1 -1
  30. package/lib/index.js +1 -1
  31. package/lib/loading/Loading.js +3 -1
  32. package/lib/search/index.css +1 -1
  33. package/lib/search/index.less +1 -1
  34. package/lib/uploader/Uploader.js +1 -1
  35. package/lib/uploader/utils.d.ts +0 -1
  36. package/lib/uploader/utils.js +2 -4
  37. package/lib/utils/basic.d.ts +1 -0
  38. package/lib/utils/basic.js +3 -1
  39. package/lib/vant.cjs.js +233 -49
  40. package/lib/vant.cjs.min.js +1 -1
  41. package/lib/vant.es.js +233 -49
  42. package/lib/vant.es.min.js +233 -49
  43. package/lib/vant.js +233 -49
  44. package/lib/vant.min.js +1 -1
  45. package/package.json +1 -1
  46. package/vetur/attributes.json +551 -551
  47. package/vetur/tags.json +200 -200
  48. package/vetur/web-types.json +1778 -1778
  49. package/es/empty/Network.d.ts +0 -1
  50. package/es/empty/Network.js +0 -89
  51. package/lib/empty/Network.d.ts +0 -1
  52. package/lib/empty/Network.js +0 -108
package/lib/vant.es.js CHANGED
@@ -23,6 +23,7 @@ function pick(obj, keys, ignoreUndefined) {
23
23
  }, {});
24
24
  }
25
25
  const isSameValue = (newValue, oldValue) => JSON.stringify(newValue) === JSON.stringify(oldValue);
26
+ const toArray = (item) => Array.isArray(item) ? item : [item];
26
27
  const unknownProp = null;
27
28
  const numericProp = [Number, String];
28
29
  const truthProp = {
@@ -313,10 +314,10 @@ const Locale = {
313
314
  };
314
315
  var stdin_default$1B = Locale;
315
316
  function createTranslate(name2) {
316
- const prefix2 = camelize(name2) + ".";
317
+ const prefix = camelize(name2) + ".";
317
318
  return (path, ...args) => {
318
319
  const messages2 = stdin_default$1B.messages();
319
- const message = get(messages2, prefix2 + path) || get(messages2, path);
320
+ const message = get(messages2, prefix + path) || get(messages2, path);
320
321
  return isFunction(message) ? message(...args) : message;
321
322
  };
322
323
  }
@@ -682,7 +683,9 @@ var stdin_default$1w = defineComponent({
682
683
  return createVNode("div", {
683
684
  "class": bem$1l([type, {
684
685
  vertical
685
- }])
686
+ }]),
687
+ "aria-live": "polite",
688
+ "aria-busy": true
686
689
  }, [createVNode("span", {
687
690
  "class": bem$1l("spinner", type),
688
691
  "style": spinnerStyle.value
@@ -2148,9 +2151,12 @@ const formProps = {
2148
2151
  scrollToError: Boolean,
2149
2152
  validateFirst: Boolean,
2150
2153
  submitOnEnter: truthProp,
2151
- validateTrigger: makeStringProp("onBlur"),
2152
2154
  showErrorMessage: truthProp,
2153
- errorMessageAlign: String
2155
+ errorMessageAlign: String,
2156
+ validateTrigger: {
2157
+ type: [String, Array],
2158
+ default: "onBlur"
2159
+ }
2154
2160
  };
2155
2161
  var stdin_default$1l = defineComponent({
2156
2162
  name: name$1e,
@@ -2363,7 +2369,7 @@ function cutString(str, maxlength) {
2363
2369
  return [...str].slice(0, maxlength).join("");
2364
2370
  }
2365
2371
  let current = 0;
2366
- function useId() {
2372
+ function useId$1() {
2367
2373
  const vm = getCurrentInstance();
2368
2374
  const { name: name2 = "unknown" } = (vm == null ? void 0 : vm.type) || {};
2369
2375
  return `${name2}-${++current}`;
@@ -2423,7 +2429,7 @@ var stdin_default$1k = defineComponent({
2423
2429
  emit,
2424
2430
  slots
2425
2431
  }) {
2426
- const id = useId();
2432
+ const id = useId$1();
2427
2433
  const state = reactive({
2428
2434
  focused: false,
2429
2435
  validateFailed: false,
@@ -2513,10 +2519,13 @@ var stdin_default$1k = defineComponent({
2513
2519
  });
2514
2520
  const validateWithTrigger = (trigger) => {
2515
2521
  if (form && props.rules) {
2516
- const defaultTrigger = form.props.validateTrigger === trigger;
2522
+ const {
2523
+ validateTrigger
2524
+ } = form.props;
2525
+ const defaultTrigger = toArray(validateTrigger).includes(trigger);
2517
2526
  const rules = props.rules.filter((rule) => {
2518
2527
  if (rule.trigger) {
2519
- return rule.trigger === trigger;
2528
+ return toArray(rule.trigger).includes(trigger);
2520
2529
  }
2521
2530
  return defaultTrigger;
2522
2531
  });
@@ -5697,7 +5706,7 @@ var stdin_default$$ = defineComponent({
5697
5706
  const root = ref();
5698
5707
  const navRef = ref();
5699
5708
  const wrapRef = ref();
5700
- const id = useId();
5709
+ const id = useId$1();
5701
5710
  const scroller = useScrollParent(root);
5702
5711
  const [titleRefs, setTitleRefs] = useRefs();
5703
5712
  const {
@@ -6084,7 +6093,7 @@ var stdin_default$Z = defineComponent({
6084
6093
  setup(props, {
6085
6094
  slots
6086
6095
  }) {
6087
- const id = useId();
6096
+ const id = useId$1();
6088
6097
  const inited = ref(false);
6089
6098
  const {
6090
6099
  parent,
@@ -7454,31 +7463,78 @@ var stdin_default$K = defineComponent({
7454
7463
  }
7455
7464
  });
7456
7465
  const CouponCell = withInstall(stdin_default$K);
7457
- const prefix = "van-empty-network-";
7466
+ const getId = (num) => `van-empty-${num}`;
7467
+ const useId = (num) => `url(#${getId(num)})`;
7458
7468
  const renderStop = (color, offset, opacity) => createVNode("stop", {
7459
7469
  "stop-color": color,
7460
7470
  "offset": `${offset}%`,
7461
7471
  "stop-opacity": opacity
7462
7472
  }, null);
7463
- const Network = createVNode("svg", {
7473
+ const renderStops = (fromColor, toColor) => [renderStop(fromColor, 0), renderStop(toColor, 100)];
7474
+ const renderShadow = (id) => [createVNode("defs", null, [createVNode("radialGradient", {
7475
+ "id": getId(id),
7476
+ "cx": "50%",
7477
+ "cy": "54%",
7478
+ "fx": "50%",
7479
+ "fy": "54%",
7480
+ "r": "297%",
7481
+ "gradientTransform": "matrix(-.16 0 0 -.33 .58 .72)"
7482
+ }, [renderStop("#EBEDF0", 0), renderStop("#F2F3F5", 100, 0.3)])]), createVNode("ellipse", {
7483
+ "fill": useId(id),
7484
+ "opacity": ".8",
7485
+ "cx": "80",
7486
+ "cy": "140",
7487
+ "rx": "46",
7488
+ "ry": "8"
7489
+ }, null)];
7490
+ const renderBuilding = () => [createVNode("defs", null, [createVNode("linearGradient", {
7491
+ "id": getId("a"),
7492
+ "x1": "64%",
7493
+ "y1": "100%",
7494
+ "x2": "64%"
7495
+ }, [renderStop("#FFF", 0, 0.5), renderStop("#F2F3F5", 100)])]), createVNode("g", {
7496
+ "opacity": ".8"
7497
+ }, [createVNode("path", {
7498
+ "d": "M36 131V53H16v20H2v58h34z",
7499
+ "fill": useId("a")
7500
+ }, null), createVNode("path", {
7501
+ "d": "M123 15h22v14h9v77h-31V15z",
7502
+ "fill": useId("a")
7503
+ }, null)])];
7504
+ const renderCloud = () => [createVNode("defs", null, [createVNode("linearGradient", {
7505
+ "id": getId("b"),
7506
+ "x1": "64%",
7507
+ "y1": "97%",
7508
+ "x2": "64%",
7509
+ "y2": "0%"
7510
+ }, [renderStop("#F2F3F5", 0, 0.3), renderStop("#F2F3F5", 100)])]), createVNode("g", {
7511
+ "opacity": ".8"
7512
+ }, [createVNode("path", {
7513
+ "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",
7514
+ "fill": useId("b")
7515
+ }, null), createVNode("path", {
7516
+ "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",
7517
+ "fill": useId("b")
7518
+ }, null)])];
7519
+ const renderNetwork = () => createVNode("svg", {
7464
7520
  "viewBox": "0 0 160 160"
7465
7521
  }, [createVNode("defs", null, [createVNode("linearGradient", {
7466
- "id": `${prefix}1`,
7522
+ "id": getId(1),
7467
7523
  "x1": "64%",
7468
7524
  "y1": "100%",
7469
7525
  "x2": "64%"
7470
7526
  }, [renderStop("#FFF", 0, 0.5), renderStop("#F2F3F5", 100)]), createVNode("linearGradient", {
7471
- "id": `${prefix}2`,
7527
+ "id": getId(2),
7472
7528
  "x1": "50%",
7473
7529
  "x2": "50%",
7474
7530
  "y2": "84%"
7475
7531
  }, [renderStop("#EBEDF0", 0), renderStop("#DCDEE0", 100, 0)]), createVNode("linearGradient", {
7476
- "id": `${prefix}3`,
7532
+ "id": getId(3),
7477
7533
  "x1": "100%",
7478
7534
  "x2": "100%",
7479
7535
  "y2": "100%"
7480
- }, [renderStop("#EAEDF0", 0), renderStop("#DCDEE0", 100)]), createVNode("radialGradient", {
7481
- "id": `${prefix}4`,
7536
+ }, [renderStops("#EAEDF0", "#DCDEE0")]), createVNode("radialGradient", {
7537
+ "id": getId(4),
7482
7538
  "cx": "50%",
7483
7539
  "cy": "0%",
7484
7540
  "fx": "50%",
@@ -7487,36 +7543,28 @@ const Network = createVNode("svg", {
7487
7543
  "gradientTransform": "matrix(0 1 -.54 0 .5 -.5)"
7488
7544
  }, [renderStop("#EBEDF0", 0), renderStop("#FFF", 100, 0)])]), createVNode("g", {
7489
7545
  "fill": "none"
7490
- }, [createVNode("g", {
7491
- "opacity": ".8"
7492
- }, [createVNode("path", {
7493
- "d": "M36 131V53H16v20H2v58h34z",
7494
- "fill": `url(#${prefix}1)`
7495
- }, null), createVNode("path", {
7496
- "d": "M123 15h22v14h9v77h-31V15z",
7497
- "fill": `url(#${prefix}1)`
7498
- }, null)]), createVNode("path", {
7499
- "fill": `url(#${prefix}4)`,
7546
+ }, [renderBuilding(), createVNode("path", {
7547
+ "fill": useId(4),
7500
7548
  "d": "M0 139h160v21H0z"
7501
7549
  }, null), createVNode("path", {
7502
7550
  "d": "M80 54a7 7 0 0 1 3 13v27l-2 2h-2a2 2 0 0 1-2-2V67a7 7 0 0 1 3-13z",
7503
- "fill": `url(#${prefix}2)`
7551
+ "fill": useId(2)
7504
7552
  }, null), createVNode("g", {
7505
7553
  "opacity": ".6",
7506
7554
  "stroke-linecap": "round",
7507
7555
  "stroke-width": "7"
7508
7556
  }, [createVNode("path", {
7509
7557
  "d": "M64 47a19 19 0 0 0-5 13c0 5 2 10 5 13",
7510
- "stroke": `url(#${prefix}3)`
7558
+ "stroke": useId(3)
7511
7559
  }, null), createVNode("path", {
7512
7560
  "d": "M53 36a34 34 0 0 0 0 48",
7513
- "stroke": `url(#${prefix}3)`
7561
+ "stroke": useId(3)
7514
7562
  }, null), createVNode("path", {
7515
7563
  "d": "M95 73a19 19 0 0 0 6-13c0-5-2-9-6-13",
7516
- "stroke": `url(#${prefix}3)`
7564
+ "stroke": useId(3)
7517
7565
  }, null), createVNode("path", {
7518
7566
  "d": "M106 84a34 34 0 0 0 0-48",
7519
- "stroke": `url(#${prefix}3)`
7567
+ "stroke": useId(3)
7520
7568
  }, null)]), createVNode("g", {
7521
7569
  "transform": "translate(31 105)"
7522
7570
  }, [createVNode("rect", {
@@ -7539,8 +7587,153 @@ const Network = createVNode("svg", {
7539
7587
  "height": "6",
7540
7588
  "rx": "1.1"
7541
7589
  }, null)])])]);
7590
+ const renderMaterial = () => createVNode("svg", {
7591
+ "viewBox": "0 0 160 160"
7592
+ }, [createVNode("defs", null, [createVNode("linearGradient", {
7593
+ "x1": "50%",
7594
+ "x2": "50%",
7595
+ "y2": "100%",
7596
+ "id": getId(5)
7597
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), createVNode("linearGradient", {
7598
+ "x1": "95%",
7599
+ "y1": "48%",
7600
+ "x2": "5.5%",
7601
+ "y2": "51%",
7602
+ "id": getId(6)
7603
+ }, [renderStops("#EAEDF1", "#DCDEE0")]), createVNode("linearGradient", {
7604
+ "y1": "45%",
7605
+ "x2": "100%",
7606
+ "y2": "54%",
7607
+ "id": getId(7)
7608
+ }, [renderStops("#EAEDF1", "#DCDEE0")])]), renderBuilding(), renderCloud(), createVNode("g", {
7609
+ "transform": "translate(36 50)",
7610
+ "fill": "none"
7611
+ }, [createVNode("g", {
7612
+ "transform": "translate(8)"
7613
+ }, [createVNode("rect", {
7614
+ "fill": "#EBEDF0",
7615
+ "opacity": ".6",
7616
+ "x": "38",
7617
+ "y": "13",
7618
+ "width": "36",
7619
+ "height": "53",
7620
+ "rx": "2"
7621
+ }, null), createVNode("rect", {
7622
+ "fill": useId(5),
7623
+ "width": "64",
7624
+ "height": "66",
7625
+ "rx": "2"
7626
+ }, null), createVNode("rect", {
7627
+ "fill": "#FFF",
7628
+ "x": "6",
7629
+ "y": "6",
7630
+ "width": "52",
7631
+ "height": "55",
7632
+ "rx": "1"
7633
+ }, null), createVNode("g", {
7634
+ "transform": "translate(15 17)",
7635
+ "fill": useId(6)
7636
+ }, [createVNode("rect", {
7637
+ "width": "34",
7638
+ "height": "6",
7639
+ "rx": "1"
7640
+ }, null), createVNode("path", {
7641
+ "d": "M0 14h34v6H0z"
7642
+ }, null), createVNode("rect", {
7643
+ "y": "28",
7644
+ "width": "34",
7645
+ "height": "6",
7646
+ "rx": "1"
7647
+ }, null)])]), createVNode("rect", {
7648
+ "fill": useId(7),
7649
+ "y": "61",
7650
+ "width": "88",
7651
+ "height": "28",
7652
+ "rx": "1"
7653
+ }, null), createVNode("rect", {
7654
+ "fill": "#F7F8FA",
7655
+ "x": "29",
7656
+ "y": "72",
7657
+ "width": "30",
7658
+ "height": "6",
7659
+ "rx": "1"
7660
+ }, null)])]);
7661
+ const renderError = () => createVNode("svg", {
7662
+ "viewBox": "0 0 160 160"
7663
+ }, [createVNode("defs", null, [createVNode("linearGradient", {
7664
+ "x1": "50%",
7665
+ "x2": "50%",
7666
+ "y2": "100%",
7667
+ "id": getId(8)
7668
+ }, [renderStops("#EAEDF1", "#DCDEE0")])]), renderBuilding(), renderCloud(), renderShadow("c"), createVNode("path", {
7669
+ "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",
7670
+ "fill": useId(8)
7671
+ }, null)]);
7672
+ const renderSearch = () => createVNode("svg", {
7673
+ "viewBox": "0 0 160 160"
7674
+ }, [createVNode("defs", null, [createVNode("linearGradient", {
7675
+ "x1": "50%",
7676
+ "y1": "100%",
7677
+ "x2": "50%",
7678
+ "id": getId(9)
7679
+ }, [renderStops("#EEE", "#D8D8D8")]), createVNode("linearGradient", {
7680
+ "x1": "100%",
7681
+ "y1": "50%",
7682
+ "y2": "50%",
7683
+ "id": getId(10)
7684
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), createVNode("linearGradient", {
7685
+ "x1": "50%",
7686
+ "x2": "50%",
7687
+ "y2": "100%",
7688
+ "id": getId(11)
7689
+ }, [renderStops("#F2F3F5", "#DCDEE0")]), createVNode("linearGradient", {
7690
+ "x1": "50%",
7691
+ "x2": "50%",
7692
+ "y2": "100%",
7693
+ "id": getId(12)
7694
+ }, [renderStops("#FFF", "#F7F8FA")])]), renderBuilding(), renderCloud(), renderShadow("d"), createVNode("g", {
7695
+ "transform": "rotate(-45 113 -4)",
7696
+ "fill": "none"
7697
+ }, [createVNode("rect", {
7698
+ "fill": useId(9),
7699
+ "x": "24",
7700
+ "y": "52.8",
7701
+ "width": "5.8",
7702
+ "height": "19",
7703
+ "rx": "1"
7704
+ }, null), createVNode("rect", {
7705
+ "fill": useId(10),
7706
+ "x": "22.1",
7707
+ "y": "67.3",
7708
+ "width": "9.9",
7709
+ "height": "28",
7710
+ "rx": "1"
7711
+ }, null), createVNode("circle", {
7712
+ "stroke": useId(11),
7713
+ "stroke-width": "8",
7714
+ "cx": "27",
7715
+ "cy": "27",
7716
+ "r": "27"
7717
+ }, null), createVNode("circle", {
7718
+ "fill": useId(12),
7719
+ "cx": "27",
7720
+ "cy": "27",
7721
+ "r": "16"
7722
+ }, null), createVNode("path", {
7723
+ "d": "M37 7c-8 0-15 5-16 12",
7724
+ "stroke": useId(11),
7725
+ "stroke-width": "3",
7726
+ "opacity": ".5",
7727
+ "stroke-linecap": "round",
7728
+ "transform": "rotate(45 29 13)"
7729
+ }, null)])]);
7542
7730
  const [name$D, bem$C] = createNamespace("empty");
7543
- const PRESET_IMAGES = ["error", "search", "default"];
7731
+ const PRESET_IMAGES = {
7732
+ error: renderError,
7733
+ search: renderSearch,
7734
+ network: renderNetwork,
7735
+ default: renderMaterial
7736
+ };
7544
7737
  const emptyProps = {
7545
7738
  image: makeStringProp("default"),
7546
7739
  imageSize: [Number, String, Array],
@@ -7553,20 +7746,12 @@ var stdin_default$J = defineComponent({
7553
7746
  slots
7554
7747
  }) {
7555
7748
  const renderImage = () => {
7749
+ var _a;
7556
7750
  if (slots.image) {
7557
7751
  return slots.image();
7558
7752
  }
7559
- let {
7560
- image
7561
- } = props;
7562
- if (image === "network") {
7563
- return Network;
7564
- }
7565
- if (PRESET_IMAGES.includes(image)) {
7566
- image = `https://img.yzcdn.cn/vant/empty-image-${image}.png`;
7567
- }
7568
- return createVNode("img", {
7569
- "src": image
7753
+ return ((_a = PRESET_IMAGES[props.image]) == null ? void 0 : _a.call(PRESET_IMAGES)) || createVNode("img", {
7754
+ "src": props.image
7570
7755
  }, null);
7571
7756
  };
7572
7757
  const renderDescription = () => {
@@ -8191,7 +8376,7 @@ var stdin_default$E = defineComponent({
8191
8376
  setup(props, {
8192
8377
  slots
8193
8378
  }) {
8194
- const id = useId();
8379
+ const id = useId$1();
8195
8380
  const root = ref();
8196
8381
  const barRef = ref();
8197
8382
  const offset = ref(0);
@@ -11015,7 +11200,7 @@ var stdin_default$k = defineComponent({
11015
11200
  slots,
11016
11201
  attrs
11017
11202
  }) {
11018
- const id = useId();
11203
+ const id = useId$1();
11019
11204
  const filedRef = ref();
11020
11205
  const onCancel = () => {
11021
11206
  if (!slots.action) {
@@ -12633,7 +12818,6 @@ var stdin_default$6 = defineComponent({
12633
12818
  });
12634
12819
  const TreeSelect = withInstall(stdin_default$6);
12635
12820
  const [name, bem, t] = createNamespace("uploader");
12636
- const toArray = (item) => Array.isArray(item) ? item : [item];
12637
12821
  function readFileContent(file, resultType) {
12638
12822
  return new Promise((resolve) => {
12639
12823
  if (resultType === "file") {
@@ -13892,7 +14076,7 @@ const Lazyload = {
13892
14076
  });
13893
14077
  }
13894
14078
  };
13895
- const version = "4.0.0-alpha.2";
14079
+ const version = "4.0.0-alpha.3";
13896
14080
  function install(app) {
13897
14081
  const components = [
13898
14082
  ActionBar,