vant 4.0.0-alpha.0 → 4.0.0-alpha.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 (66) hide show
  1. package/changelog.generated.md +197 -0
  2. package/es/calendar/Calendar.d.ts +4 -0
  3. package/es/calendar/Calendar.js +2 -0
  4. package/es/calendar/index.css +1 -1
  5. package/es/calendar/index.d.ts +3 -0
  6. package/es/calendar/index.less +1 -0
  7. package/es/config-provider/ConfigProvider.js +2 -0
  8. package/es/date-picker/DatePicker.js +1 -1
  9. package/es/dialog/index.css +1 -1
  10. package/es/dialog/index.less +2 -0
  11. package/es/index-bar/IndexBar.js +25 -4
  12. package/es/index.d.ts +1 -1
  13. package/es/index.js +1 -1
  14. package/es/locale/lang/la-LA.d.ts +64 -0
  15. package/es/locale/lang/la-LA.js +66 -0
  16. package/es/nav-bar/NavBar.d.ts +1 -1
  17. package/es/nav-bar/NavBar.js +3 -3
  18. package/es/nav-bar/index.d.ts +1 -1
  19. package/es/picker/index.css +1 -1
  20. package/es/picker/index.less +1 -0
  21. package/es/popup/Popup.d.ts +4 -0
  22. package/es/popup/Popup.js +3 -0
  23. package/es/popup/index.d.ts +3 -0
  24. package/es/skeleton/Skeleton.js +6 -4
  25. package/es/style/base.css +1 -1
  26. package/es/style/base.less +5 -0
  27. package/es/swipe-cell/SwipeCell.js +1 -1
  28. package/es/toast/Toast.js +1 -0
  29. package/lib/calendar/Calendar.d.ts +4 -0
  30. package/lib/calendar/Calendar.js +2 -0
  31. package/lib/calendar/index.css +1 -1
  32. package/lib/calendar/index.d.ts +3 -0
  33. package/lib/calendar/index.less +1 -0
  34. package/lib/config-provider/ConfigProvider.js +2 -0
  35. package/lib/date-picker/DatePicker.js +1 -1
  36. package/lib/dialog/index.css +1 -1
  37. package/lib/dialog/index.less +2 -0
  38. package/lib/index-bar/IndexBar.js +25 -4
  39. package/lib/index.css +1 -1
  40. package/lib/index.d.ts +1 -1
  41. package/lib/index.js +1 -1
  42. package/lib/locale/lang/la-LA.d.ts +64 -0
  43. package/lib/locale/lang/la-LA.js +90 -0
  44. package/lib/nav-bar/NavBar.d.ts +1 -1
  45. package/lib/nav-bar/NavBar.js +3 -3
  46. package/lib/nav-bar/index.d.ts +1 -1
  47. package/lib/picker/index.css +1 -1
  48. package/lib/picker/index.less +1 -0
  49. package/lib/popup/Popup.d.ts +4 -0
  50. package/lib/popup/Popup.js +3 -0
  51. package/lib/popup/index.d.ts +3 -0
  52. package/lib/skeleton/Skeleton.js +5 -3
  53. package/lib/style/base.css +1 -1
  54. package/lib/style/base.less +5 -0
  55. package/lib/swipe-cell/SwipeCell.js +1 -1
  56. package/lib/toast/Toast.js +1 -0
  57. package/lib/vant.cjs.js +44 -13
  58. package/lib/vant.cjs.min.js +1 -1
  59. package/lib/vant.es.js +44 -13
  60. package/lib/vant.es.min.js +44 -13
  61. package/lib/vant.js +44 -13
  62. package/lib/vant.min.js +1 -1
  63. package/package.json +2 -2
  64. package/vetur/attributes.json +203 -195
  65. package/vetur/tags.json +70 -68
  66. package/vetur/web-types.json +644 -624
package/lib/index.d.ts CHANGED
@@ -91,4 +91,4 @@ declare namespace _default {
91
91
  }
92
92
  export default _default;
93
93
  export function install(app: any): void;
94
- export const version: "4.0.0-alpha.0";
94
+ export const version: "4.0.0-alpha.1";
package/lib/index.js CHANGED
@@ -199,7 +199,7 @@ __reExport(stdin_exports, require("./time-picker"));
199
199
  __reExport(stdin_exports, require("./toast"));
200
200
  __reExport(stdin_exports, require("./tree-select"));
201
201
  __reExport(stdin_exports, require("./uploader"));
202
- const version = "4.0.0-alpha.0";
202
+ const version = "4.0.0-alpha.1";
203
203
  function install(app) {
204
204
  const components = [
205
205
  import_action_bar.ActionBar,
@@ -0,0 +1,64 @@
1
+ declare const _default: {
2
+ name: string;
3
+ tel: string;
4
+ save: string;
5
+ confirm: string;
6
+ cancel: string;
7
+ delete: string;
8
+ loading: string;
9
+ noCoupon: string;
10
+ nameEmpty: string;
11
+ addContact: string;
12
+ telInvalid: string;
13
+ vanCalendar: {
14
+ end: string;
15
+ start: string;
16
+ title: string;
17
+ weekdays: string[];
18
+ monthTitle: (year: number, month: number) => string;
19
+ rangePrompt: (maxRange: number) => string;
20
+ };
21
+ vanCascader: {
22
+ select: string;
23
+ };
24
+ vanPagination: {
25
+ prev: string;
26
+ next: string;
27
+ };
28
+ vanPullRefresh: {
29
+ pulling: string;
30
+ loosing: string;
31
+ };
32
+ vanSubmitBar: {
33
+ label: string;
34
+ };
35
+ vanCoupon: {
36
+ unlimited: string;
37
+ discount: (discount: number) => string;
38
+ condition: (condition: number) => string;
39
+ };
40
+ vanCouponCell: {
41
+ title: string;
42
+ count: (count: number) => string;
43
+ };
44
+ vanCouponList: {
45
+ exchange: string;
46
+ close: string;
47
+ enable: string;
48
+ disabled: string;
49
+ placeholder: string;
50
+ };
51
+ vanAddressEdit: {
52
+ area: string;
53
+ postal: string;
54
+ areaEmpty: string;
55
+ addressEmpty: string;
56
+ postalEmpty: string;
57
+ addressDetail: string;
58
+ defaultAddress: string;
59
+ };
60
+ vanAddressList: {
61
+ add: string;
62
+ };
63
+ };
64
+ export default _default;
@@ -0,0 +1,90 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __reExport = (target, module2, copyDefault, desc) => {
11
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
12
+ for (let key of __getOwnPropNames(module2))
13
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
14
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
15
+ }
16
+ return target;
17
+ };
18
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
19
+ return (module2, temp) => {
20
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
21
+ };
22
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
23
+ var stdin_exports = {};
24
+ __export(stdin_exports, {
25
+ default: () => stdin_default
26
+ });
27
+ var stdin_default = {
28
+ name: "\u0E8A\u0EB7\u0EC8",
29
+ tel: "\u0EC2\u0E97\u0EA5\u0EB0\u0EAA\u0EB1\u0E9A",
30
+ save: "\u0E9A\u0EB1\u0E99\u0E97\u0EB6\u0E81",
31
+ confirm: "\u0EA2\u0EB6\u0E99\u0EA2\u0EB1\u0E99",
32
+ cancel: "\u0E8D\u0EBB\u0E81\u0EC0\u0EA5\u0EB5\u0E81",
33
+ delete: "\u0EA5\u0EB7\u0E9A",
34
+ loading: "\u0E81\u0EB3\u0EA5\u0EB1\u0E87\u0EC2\u0EAB\u0EBC\u0E94...",
35
+ noCoupon: "\u0E9A\u0ECD\u0EC8\u0EA1\u0EB5\u0E84\u0EB9\u0E9B\u0EAD\u0E87",
36
+ nameEmpty: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0E9B\u0EC9\u0EAD\u0E99\u0E8A\u0EB7\u0EC8",
37
+ addContact: "\u0EC0\u0E9E\u0EB5\u0EC8\u0EA1\u0E9C\u0EB9\u0EC9\u0E95\u0EB4\u0E94\u0E95\u0ECD\u0EC8",
38
+ telInvalid: "\u0EC0\u0E9A\u0EB5\u0EC2\u0E97\u0EA5\u0EB0\u0EAA\u0EB1\u0E9A\u0E9A\u0ECD\u0EC8\u0E96\u0EB7\u0E81\u0E95\u0EC9\u0EAD\u0E87",
39
+ vanCalendar: {
40
+ end: "\u0E88\u0EBB\u0E9A",
41
+ start: "\u0EC0\u0EA5\u0EB5\u0EC8\u0EA1",
42
+ title: "\u0E81\u0EB2\u0E99\u0EC0\u0EA5\u0EB7\u0EAD\u0E81\u0EA7\u0EB1\u0E99\u0E97\u0EB5\u0EC8",
43
+ weekdays: ["\u0EAD\u0EB2", "\u0E88", "\u0EAD", "\u0E9E", "\u0E9E\u0EAB", "\u0EAA", "\u0EAA"],
44
+ monthTitle: (year, month) => `${year}\u0E9B\u0EB5${month}\u0EC0\u0E94\u0EB7\u0EAD\u0E99`,
45
+ rangePrompt: (maxRange) => `\u0E88\u0EB3\u0E99\u0EAD\u0E99\u0EA7\u0EB1\u0E99\u0E97\u0EB5\u0EC8\u0EC0\u0EA5\u0EB7\u0EAD\u0E81\u0E95\u0EC9\u0EAD\u0E87\u0E9A\u0ECD\u0EC8\u0EC0\u0E81\u0EB5\u0E99 ${maxRange} \u0EA7\u0EB1\u0E99`
46
+ },
47
+ vanCascader: {
48
+ select: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0EC0\u0EA5\u0EB7\u0EAD\u0E81"
49
+ },
50
+ vanPagination: {
51
+ prev: "\u0EDC\u0EC9\u0EB2\u0E97\u0EB5\u0EC8\u0EC1\u0EA5\u0EC9\u0EA7",
52
+ next: "\u0EDC\u0EC9\u0EB2\u0E95\u0ECD\u0EC8\u0EC4\u0E9B"
53
+ },
54
+ vanPullRefresh: {
55
+ pulling: "\u0E94\u0EB7\u0E87\u0EA5\u0EBB\u0E87\u0EC0\u0E9E\u0EB7\u0EC8\u0EAD\u0EA3\u0EB5\u0EC0\u0E9F\u0EAA...",
56
+ loosing: "\u0E9B\u0EC8\u0EAD\u0E8D\u0EC0\u0E9E\u0EB7\u0EC8\u0EAD\u0EA3\u0EB5\u0EC0\u0E9F\u0EAA..."
57
+ },
58
+ vanSubmitBar: {
59
+ label: "\u0EA5\u0EA7\u0EA1:"
60
+ },
61
+ vanCoupon: {
62
+ unlimited: "\u0E9A\u0ECD\u0EC8 \u0E88\u0EB3\u0E81\u0EB1\u0E94",
63
+ discount: (discount) => `\u0EA5\u0EBB\u0E94${discount}`,
64
+ condition: (condition) => `\u0EA1\u0EB5\u0E88\u0EB3\u0EDC\u0EC8\u0EB2\u0E8D\u0EC3\u0E99\u0EA5\u0EB2\u0E84\u0EB2 ${condition} \u0E81\u0EA7\u0EC8\u0EB2\u0EAB\u0E8D\u0EA7\u0E99`
65
+ },
66
+ vanCouponCell: {
67
+ title: "\u0E84\u0EB9\u0E9B\u0EAD\u0E87",
68
+ count: (count) => `\u0EA1\u0EB5\u0EAE\u0EB9\u0E9A\u0E9E\u0EB2\u0E9A ${count} \u0EAE\u0EB9\u0E9A`
69
+ },
70
+ vanCouponList: {
71
+ exchange: "\u0EC1\u0EA5\u0E81\u0E9B\u0EC8\u0EBD\u0E99",
72
+ close: "\u0E9A\u0ECD\u0EC8\u0EC4\u0E94\u0EC9\u0EC3\u0E8A\u0EC9",
73
+ enable: "\u0E9E\u0EC9\u0EAD\u0EA1\u0EC3\u0E8A\u0EC9\u0E87\u0EB2\u0E99",
74
+ disabled: "\u0E9A\u0ECD\u0EC8\u0E9E\u0EC9\u0EAD\u0EA1\u0EC3\u0E8A\u0EC9\u0E87\u0EB2\u0E99",
75
+ placeholder: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0E9B\u0EC9\u0EAD\u0E99\u0E84\u0EB9\u0E9B\u0EAD\u0E87"
76
+ },
77
+ vanAddressEdit: {
78
+ area: "\u0E9E\u0EB7\u0EC9\u0E99\u0E97\u0EB5\u0EC8",
79
+ postal: "\u0EA5\u0EB0\u0EAB\u0EB1\u0E94\u0EC4\u0E9B\u0EAA\u0EB0\u0E99\u0EB5",
80
+ areaEmpty: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0EC0\u0EA5\u0EB7\u0EAD\u0E81\u0E9E\u0EB7\u0EC9\u0E99\u0E97\u0EB5\u0EC8",
81
+ addressEmpty: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0E9B\u0EC9\u0EAD\u0E99\u0E97\u0EB5\u0EC8\u0EA2\u0EB9\u0EC8",
82
+ postalEmpty: "\u0E81\u0EB0\u0EA5\u0EB8\u0E99\u0EB2\u0E9B\u0EC9\u0EAD\u0E99\u0EA5\u0EB0\u0EAB\u0EB1\u0E94\u0EC4\u0E9B\u0EAA\u0EB0\u0E99\u0EB5",
83
+ addressDetail: "\u0E97\u0EB5\u0EC8\u0EA2\u0EB9\u0EC8",
84
+ defaultAddress: "\u0E95\u0EB1\u0EC9\u0E87\u0EC0\u0E9B\u0EB1\u0E99\u0E97\u0EB5\u0EC8\u0EA2\u0EB9\u0EC8\u0EC0\u0EA5\u0EB5\u0EC8\u0EA1\u0E95\u0EBB\u0EC9\u0E99"
85
+ },
86
+ vanAddressList: {
87
+ add: "\u0EC0\u0E9E\u0EB5\u0EC8\u0EA1\u0E97\u0EB5\u0EC8\u0EA2\u0EB9\u0EC8"
88
+ }
89
+ };
90
+ module.exports = __toCommonJS(stdin_exports);
@@ -47,7 +47,7 @@ declare const _default: import("vue").DefineComponent<{
47
47
  fixed: boolean;
48
48
  border: boolean;
49
49
  placeholder: boolean;
50
- leftArrow: boolean;
51
50
  safeAreaInsetTop: boolean;
51
+ leftArrow: boolean;
52
52
  }>;
53
53
  export default _default;
@@ -86,10 +86,10 @@ var stdin_default = (0, import_vue2.defineComponent)({
86
86
  "ref": navBarRef,
87
87
  "style": style,
88
88
  "class": [bem({
89
- fixed,
90
- "safe-area-inset-top": props.safeAreaInsetTop
89
+ fixed
91
90
  }), {
92
- [import_utils.BORDER_BOTTOM]: border
91
+ [import_utils.BORDER_BOTTOM]: border,
92
+ "van-safe-area-top": props.safeAreaInsetTop
93
93
  }]
94
94
  }, [(0, import_vue.createVNode)("div", {
95
95
  "class": bem("content")
@@ -31,8 +31,8 @@ export declare const NavBar: import("../utils").WithInstall<import("vue").Define
31
31
  fixed: boolean;
32
32
  border: boolean;
33
33
  placeholder: boolean;
34
- leftArrow: boolean;
35
34
  safeAreaInsetTop: boolean;
35
+ leftArrow: boolean;
36
36
  }>>;
37
37
  export default NavBar;
38
38
  export type { NavBarProps } from './NavBar';
@@ -1 +1 @@
1
- body{--van-picker-background: var(--van-background-2);--van-picker-toolbar-height: 44px;--van-picker-title-font-size: var(--van-font-size-lg);--van-picker-title-line-height: var(--van-line-height-md);--van-picker-action-padding: 0 var(--van-padding-md);--van-picker-action-font-size: var(--van-font-size-md);--van-picker-confirm-action-color: var(--van-link-color);--van-picker-cancel-action-color: var(--van-text-color-2);--van-picker-option-font-size: var(--van-font-size-lg);--van-picker-option-padding: 0 var(--van-padding-base);--van-picker-option-text-color: var(--van-text-color);--van-picker-option-disabled-opacity: .3;--van-picker-loading-icon-color: var(--van-primary-color);--van-picker-loading-mask-color: rgba(255, 255, 255, .9);--van-picker-mask-color: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4)), linear-gradient(0deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4))}.van-theme-dark{--van-picker-mask-color: linear-gradient(180deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1)), linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1))}.van-picker{position:relative;background:var(--van-picker-background);-webkit-user-select:none;user-select:none}.van-picker__toolbar{display:flex;align-items:center;justify-content:space-between;height:var(--van-picker-toolbar-height)}.van-picker__cancel,.van-picker__confirm{height:100%;padding:var(--van-picker-action-padding);font-size:var(--van-picker-action-font-size);background-color:transparent;border:none}.van-picker__confirm{color:var(--van-picker-confirm-action-color)}.van-picker__cancel{color:var(--van-picker-cancel-action-color)}.van-picker__title{max-width:50%;font-weight:var(--van-font-bold);font-size:var(--van-picker-title-font-size);line-height:var(--van-picker-title-line-height);text-align:center}.van-picker__columns{position:relative;display:flex;cursor:-webkit-grab;cursor:grab}.van-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--van-picker-loading-icon-color);background:var(--van-picker-loading-mask-color)}.van-picker__frame{position:absolute;top:50%;right:var(--van-padding-md);left:var(--van-padding-md);z-index:2;transform:translateY(-50%);pointer-events:none}.van-picker__mask{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;background-image:var(--van-picker-mask-color);background-repeat:no-repeat;background-position:top,bottom;transform:translateZ(0);pointer-events:none}.van-picker-column{flex:1;overflow:hidden;font-size:var(--van-picker-option-font-size)}.van-picker-column__wrapper{transition-timing-function:cubic-bezier(.23,1,.68,1)}.van-picker-column__item{display:flex;align-items:center;justify-content:center;padding:var(--van-picker-option-padding);color:var(--van-picker-option-text-color)}.van-picker-column__item--disabled{cursor:not-allowed;opacity:var(--van-picker-option-disabled-opacity)}
1
+ body{--van-picker-background: var(--van-background-2);--van-picker-toolbar-height: 44px;--van-picker-title-font-size: var(--van-font-size-lg);--van-picker-title-line-height: var(--van-line-height-md);--van-picker-action-padding: 0 var(--van-padding-md);--van-picker-action-font-size: var(--van-font-size-md);--van-picker-confirm-action-color: var(--van-link-color);--van-picker-cancel-action-color: var(--van-text-color-2);--van-picker-option-font-size: var(--van-font-size-lg);--van-picker-option-padding: 0 var(--van-padding-base);--van-picker-option-text-color: var(--van-text-color);--van-picker-option-disabled-opacity: .3;--van-picker-loading-icon-color: var(--van-primary-color);--van-picker-loading-mask-color: rgba(255, 255, 255, .9);--van-picker-mask-color: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4)), linear-gradient(0deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4))}.van-theme-dark{--van-picker-mask-color: linear-gradient(180deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1)), linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1))}.van-picker{position:relative;background:var(--van-picker-background);-webkit-user-select:none;user-select:none}.van-picker__toolbar{display:flex;align-items:center;justify-content:space-between;height:var(--van-picker-toolbar-height)}.van-picker__cancel,.van-picker__confirm{height:100%;padding:var(--van-picker-action-padding);font-size:var(--van-picker-action-font-size);background-color:transparent;border:none}.van-picker__confirm{color:var(--van-picker-confirm-action-color)}.van-picker__cancel{color:var(--van-picker-cancel-action-color)}.van-picker__title{color:var(--van-text-color);max-width:50%;font-weight:var(--van-font-bold);font-size:var(--van-picker-title-font-size);line-height:var(--van-picker-title-line-height);text-align:center}.van-picker__columns{position:relative;display:flex;cursor:-webkit-grab;cursor:grab}.van-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--van-picker-loading-icon-color);background:var(--van-picker-loading-mask-color)}.van-picker__frame{position:absolute;top:50%;right:var(--van-padding-md);left:var(--van-padding-md);z-index:2;transform:translateY(-50%);pointer-events:none}.van-picker__mask{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;background-image:var(--van-picker-mask-color);background-repeat:no-repeat;background-position:top,bottom;transform:translateZ(0);pointer-events:none}.van-picker-column{flex:1;overflow:hidden;font-size:var(--van-picker-option-font-size)}.van-picker-column__wrapper{transition-timing-function:cubic-bezier(.23,1,.68,1)}.van-picker-column__item{display:flex;align-items:center;justify-content:center;padding:var(--van-picker-option-padding);color:var(--van-picker-option-text-color)}.van-picker-column__item--disabled{cursor:not-allowed;opacity:var(--van-picker-option-disabled-opacity)}
@@ -60,6 +60,7 @@ body {
60
60
  }
61
61
 
62
62
  &__title {
63
+ color: var(--van-text-color);
63
64
  max-width: 50%;
64
65
  font-weight: var(--van-font-bold);
65
66
  font-size: var(--van-picker-title-font-size);
@@ -43,6 +43,7 @@ declare const popupProps: {
43
43
  type: import("vue").PropType<PopupCloseIconPosition>;
44
44
  default: PopupCloseIconPosition;
45
45
  };
46
+ safeAreaInsetTop: BooleanConstructor;
46
47
  safeAreaInsetBottom: BooleanConstructor;
47
48
  };
48
49
  export declare type PopupProps = ExtractPropTypes<typeof popupProps>;
@@ -89,6 +90,7 @@ declare const _default: import("vue").DefineComponent<{
89
90
  type: import("vue").PropType<PopupCloseIconPosition>;
90
91
  default: PopupCloseIconPosition;
91
92
  };
93
+ safeAreaInsetTop: BooleanConstructor;
92
94
  safeAreaInsetBottom: BooleanConstructor;
93
95
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "keydown" | "opened" | "closed" | "update:show" | "clickOverlay" | "clickCloseIcon")[], "open" | "close" | "keydown" | "opened" | "closed" | "update:show" | "clickOverlay" | "clickCloseIcon", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
94
96
  show: BooleanConstructor;
@@ -133,6 +135,7 @@ declare const _default: import("vue").DefineComponent<{
133
135
  type: import("vue").PropType<PopupCloseIconPosition>;
134
136
  default: PopupCloseIconPosition;
135
137
  };
138
+ safeAreaInsetTop: BooleanConstructor;
136
139
  safeAreaInsetBottom: BooleanConstructor;
137
140
  }>> & {
138
141
  onKeydown?: ((...args: any[]) => any) | undefined;
@@ -157,5 +160,6 @@ declare const _default: import("vue").DefineComponent<{
157
160
  closeable: boolean;
158
161
  closeOnPopstate: boolean;
159
162
  closeIconPosition: PopupCloseIconPosition;
163
+ safeAreaInsetTop: boolean;
160
164
  }>;
161
165
  export default _default;
@@ -44,6 +44,7 @@ const popupProps = (0, import_utils.extend)({}, import_shared.popupSharedProps,
44
44
  iconPrefix: String,
45
45
  closeOnPopstate: Boolean,
46
46
  closeIconPosition: (0, import_utils.makeStringProp)("top-right"),
47
+ safeAreaInsetTop: Boolean,
47
48
  safeAreaInsetBottom: Boolean
48
49
  });
49
50
  const [name, bem] = (0, import_utils.createNamespace)("popup");
@@ -138,6 +139,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
138
139
  const {
139
140
  round,
140
141
  position,
142
+ safeAreaInsetTop,
141
143
  safeAreaInsetBottom
142
144
  } = props;
143
145
  return (0, import_vue.withDirectives)((0, import_vue.createVNode)("div", (0, import_vue.mergeProps)({
@@ -147,6 +149,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
147
149
  round,
148
150
  [position]: position
149
151
  }), {
152
+ "van-safe-area-top": safeAreaInsetTop,
150
153
  "van-safe-area-bottom": safeAreaInsetBottom
151
154
  }],
152
155
  "onKeydown": onKeydown
@@ -41,6 +41,7 @@ export declare const Popup: import("../utils").WithInstall<import("vue").DefineC
41
41
  type: import("vue").PropType<import("./types").PopupCloseIconPosition>;
42
42
  default: import("./types").PopupCloseIconPosition;
43
43
  };
44
+ safeAreaInsetTop: BooleanConstructor;
44
45
  safeAreaInsetBottom: BooleanConstructor;
45
46
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "keydown" | "opened" | "closed" | "update:show" | "clickOverlay" | "clickCloseIcon")[], "open" | "close" | "keydown" | "opened" | "closed" | "update:show" | "clickOverlay" | "clickCloseIcon", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
46
47
  show: BooleanConstructor;
@@ -85,6 +86,7 @@ export declare const Popup: import("../utils").WithInstall<import("vue").DefineC
85
86
  type: import("vue").PropType<import("./types").PopupCloseIconPosition>;
86
87
  default: import("./types").PopupCloseIconPosition;
87
88
  };
89
+ safeAreaInsetTop: BooleanConstructor;
88
90
  safeAreaInsetBottom: BooleanConstructor;
89
91
  }>> & {
90
92
  onKeydown?: ((...args: any[]) => any) | undefined;
@@ -109,6 +111,7 @@ export declare const Popup: import("../utils").WithInstall<import("vue").DefineC
109
111
  closeable: boolean;
110
112
  closeOnPopstate: boolean;
111
113
  closeIconPosition: import("./types").PopupCloseIconPosition;
114
+ safeAreaInsetTop: boolean;
112
115
  }>>;
113
116
  export default Popup;
114
117
  export type { PopupProps } from './Popup';
@@ -47,9 +47,11 @@ const skeletonProps = {
47
47
  };
48
48
  var stdin_default = (0, import_vue2.defineComponent)({
49
49
  name,
50
+ inheritAttrs: false,
50
51
  props: skeletonProps,
51
52
  setup(props, {
52
- slots
53
+ slots,
54
+ attrs
53
55
  }) {
54
56
  const renderAvatar = () => {
55
57
  if (props.avatar) {
@@ -92,12 +94,12 @@ var stdin_default = (0, import_vue2.defineComponent)({
92
94
  if (!props.loading) {
93
95
  return (_a = slots.default) == null ? void 0 : _a.call(slots);
94
96
  }
95
- return (0, import_vue.createVNode)("div", {
97
+ return (0, import_vue.createVNode)("div", (0, import_vue.mergeProps)({
96
98
  "class": bem({
97
99
  animate: props.animate,
98
100
  round: props.round
99
101
  })
100
- }, [renderAvatar(), (0, import_vue.createVNode)("div", {
102
+ }, attrs), [renderAvatar(), (0, import_vue.createVNode)("div", {
101
103
  "class": bem("content")
102
104
  }, [renderTitle(), renderRows()])]);
103
105
  };
@@ -1 +1 @@
1
- body{--van-black: #000;--van-white: #fff;--van-gray-1: #f7f8fa;--van-gray-2: #f2f3f5;--van-gray-3: #ebedf0;--van-gray-4: #dcdee0;--van-gray-5: #c8c9cc;--van-gray-6: #969799;--van-gray-7: #646566;--van-gray-8: #323233;--van-red: #ee0a24;--van-blue: #1989fa;--van-orange: #ff976a;--van-orange-dark: #ed6a0c;--van-orange-light: #fffbe8;--van-green: #07c160;--van-gradient-red: linear-gradient(to right, #ff6034, #ee0a24);--van-gradient-orange: linear-gradient(to right, #ffd01e, #ff8917);--van-primary-color: var(--van-blue);--van-success-color: var(--van-green);--van-danger-color: var(--van-red);--van-warning-color: var(--van-orange);--van-text-color: var(--van-gray-8);--van-text-color-2: var(--van-gray-6);--van-text-color-3: var(--van-gray-5);--van-link-color: #576b95;--van-active-color: var(--van-gray-2);--van-active-opacity: .6;--van-disabled-opacity: .5;--van-background: var(--van-gray-1);--van-background-2: var(--van-white);--van-background-3: var(--van-white);--van-padding-base: 4px;--van-padding-xs: 8px;--van-padding-sm: 12px;--van-padding-md: 16px;--van-padding-lg: 24px;--van-padding-xl: 32px;--van-font-bold: 600;--van-font-size-xs: 10px;--van-font-size-sm: 12px;--van-font-size-md: 14px;--van-font-size-lg: 16px;--van-line-height-xs: 14px;--van-line-height-sm: 18px;--van-line-height-md: 20px;--van-line-height-lg: 22px;--van-base-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Segoe UI, Arial, Roboto, "PingFang SC", "miui", "Hiragino Sans GB", "Microsoft Yahei", sans-serif;--van-price-font: avenir-heavy, "PingFang SC", helvetica neue, arial, sans-serif;--van-duration-base: .3s;--van-duration-fast: .2s;--van-ease-out: ease-out;--van-ease-in: ease-in;--van-border-color: var(--van-gray-3);--van-border-width: 1px;--van-radius-sm: 2px;--van-radius-md: 4px;--van-radius-lg: 8px;--van-radius-max: 999px}.van-theme-dark{--van-text-color: #f5f5f5;--van-text-color-2: #707070;--van-text-color-3: #4d4d4d;--van-border-color: #3a3a3c;--van-active-color: #3a3a3c;--van-background: #000;--van-background-2: #1c1c1e;--van-background-3: #37363b}html{-webkit-tap-highlight-color:transparent}body{margin:0;font-family:var(--van-base-font)}a{text-decoration:none}input,button,textarea{color:inherit;font:inherit}a:focus,input:focus,button:focus,textarea:focus,[class*=van-]:focus{outline:none}ol,ul{margin:0;padding:0;list-style:none}@keyframes van-slide-up-enter{0%{transform:translateY(100%)}}@keyframes van-slide-up-leave{to{transform:translateY(100%)}}@keyframes van-slide-down-enter{0%{transform:translateY(-100%)}}@keyframes van-slide-down-leave{to{transform:translateY(-100%)}}@keyframes van-slide-left-enter{0%{transform:translate(-100%)}}@keyframes van-slide-left-leave{to{transform:translate(-100%)}}@keyframes van-slide-right-enter{0%{transform:translate(100%)}}@keyframes van-slide-right-leave{to{transform:translate(100%)}}@keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.van-fade-enter-active{animation:var(--van-duration-base) van-fade-in both var(--van-ease-out)}.van-fade-leave-active{animation:var(--van-duration-base) van-fade-out both var(--van-ease-in)}.van-slide-up-enter-active{animation:van-slide-up-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-up-leave-active{animation:van-slide-up-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-down-enter-active{animation:van-slide-down-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-down-leave-active{animation:van-slide-down-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-left-enter-active{animation:van-slide-left-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-left-leave-active{animation:van-slide-left-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-right-enter-active{animation:van-slide-right-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-right-leave-active{animation:van-slide-right-leave var(--van-duration-base) both var(--van-ease-in)}.van-clearfix:after{display:table;clear:both;content:""}.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical}.van-safe-area-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-haptics-feedback{cursor:pointer}.van-haptics-feedback:active{opacity:var(--van-active-opacity)}[class*=van-hairline]:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid var(--van-border-color);transform:scale(.5)}.van-hairline,.van-hairline--top,.van-hairline--left,.van-hairline--right,.van-hairline--bottom,.van-hairline--surround,.van-hairline--top-bottom{position:relative}.van-hairline--top:after{border-top-width:var(--van-border-width)}.van-hairline--left:after{border-left-width:var(--van-border-width)}.van-hairline--right:after{border-right-width:var(--van-border-width)}.van-hairline--bottom:after{border-bottom-width:var(--van-border-width)}.van-hairline--top-bottom:after,.van-hairline-unset--top-bottom:after{border-width:var(--van-border-width) 0}.van-hairline--surround:after{border-width:var(--van-border-width)}
1
+ body{--van-black: #000;--van-white: #fff;--van-gray-1: #f7f8fa;--van-gray-2: #f2f3f5;--van-gray-3: #ebedf0;--van-gray-4: #dcdee0;--van-gray-5: #c8c9cc;--van-gray-6: #969799;--van-gray-7: #646566;--van-gray-8: #323233;--van-red: #ee0a24;--van-blue: #1989fa;--van-orange: #ff976a;--van-orange-dark: #ed6a0c;--van-orange-light: #fffbe8;--van-green: #07c160;--van-gradient-red: linear-gradient(to right, #ff6034, #ee0a24);--van-gradient-orange: linear-gradient(to right, #ffd01e, #ff8917);--van-primary-color: var(--van-blue);--van-success-color: var(--van-green);--van-danger-color: var(--van-red);--van-warning-color: var(--van-orange);--van-text-color: var(--van-gray-8);--van-text-color-2: var(--van-gray-6);--van-text-color-3: var(--van-gray-5);--van-link-color: #576b95;--van-active-color: var(--van-gray-2);--van-active-opacity: .6;--van-disabled-opacity: .5;--van-background: var(--van-gray-1);--van-background-2: var(--van-white);--van-background-3: var(--van-white);--van-padding-base: 4px;--van-padding-xs: 8px;--van-padding-sm: 12px;--van-padding-md: 16px;--van-padding-lg: 24px;--van-padding-xl: 32px;--van-font-bold: 600;--van-font-size-xs: 10px;--van-font-size-sm: 12px;--van-font-size-md: 14px;--van-font-size-lg: 16px;--van-line-height-xs: 14px;--van-line-height-sm: 18px;--van-line-height-md: 20px;--van-line-height-lg: 22px;--van-base-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Segoe UI, Arial, Roboto, "PingFang SC", "miui", "Hiragino Sans GB", "Microsoft Yahei", sans-serif;--van-price-font: avenir-heavy, "PingFang SC", helvetica neue, arial, sans-serif;--van-duration-base: .3s;--van-duration-fast: .2s;--van-ease-out: ease-out;--van-ease-in: ease-in;--van-border-color: var(--van-gray-3);--van-border-width: 1px;--van-radius-sm: 2px;--van-radius-md: 4px;--van-radius-lg: 8px;--van-radius-max: 999px}.van-theme-dark{--van-text-color: #f5f5f5;--van-text-color-2: #707070;--van-text-color-3: #4d4d4d;--van-border-color: #3a3a3c;--van-active-color: #3a3a3c;--van-background: #000;--van-background-2: #1c1c1e;--van-background-3: #37363b}html{-webkit-tap-highlight-color:transparent}body{margin:0;font-family:var(--van-base-font)}a{text-decoration:none}input,button,textarea{color:inherit;font:inherit}a:focus,input:focus,button:focus,textarea:focus,[class*=van-]:focus{outline:none}ol,ul{margin:0;padding:0;list-style:none}@keyframes van-slide-up-enter{0%{transform:translateY(100%)}}@keyframes van-slide-up-leave{to{transform:translateY(100%)}}@keyframes van-slide-down-enter{0%{transform:translateY(-100%)}}@keyframes van-slide-down-leave{to{transform:translateY(-100%)}}@keyframes van-slide-left-enter{0%{transform:translate(-100%)}}@keyframes van-slide-left-leave{to{transform:translate(-100%)}}@keyframes van-slide-right-enter{0%{transform:translate(100%)}}@keyframes van-slide-right-leave{to{transform:translate(100%)}}@keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.van-fade-enter-active{animation:var(--van-duration-base) van-fade-in both var(--van-ease-out)}.van-fade-leave-active{animation:var(--van-duration-base) van-fade-out both var(--van-ease-in)}.van-slide-up-enter-active{animation:van-slide-up-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-up-leave-active{animation:van-slide-up-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-down-enter-active{animation:van-slide-down-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-down-leave-active{animation:van-slide-down-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-left-enter-active{animation:van-slide-left-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-left-leave-active{animation:van-slide-left-leave var(--van-duration-base) both var(--van-ease-in)}.van-slide-right-enter-active{animation:van-slide-right-enter var(--van-duration-base) both var(--van-ease-out)}.van-slide-right-leave-active{animation:van-slide-right-leave var(--van-duration-base) both var(--van-ease-in)}.van-clearfix:after{display:table;clear:both;content:""}.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical}.van-safe-area-top{padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top)}.van-safe-area-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-haptics-feedback{cursor:pointer}.van-haptics-feedback:active{opacity:var(--van-active-opacity)}[class*=van-hairline]:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid var(--van-border-color);transform:scale(.5)}.van-hairline,.van-hairline--top,.van-hairline--left,.van-hairline--right,.van-hairline--bottom,.van-hairline--surround,.van-hairline--top-bottom{position:relative}.van-hairline--top:after{border-top-width:var(--van-border-width)}.van-hairline--left:after{border-left-width:var(--van-border-width)}.van-hairline--right:after{border-right-width:var(--van-border-width)}.van-hairline--bottom:after{border-bottom-width:var(--van-border-width)}.van-hairline--top-bottom:after,.van-hairline-unset--top-bottom:after{border-width:var(--van-border-width) 0}.van-hairline--surround:after{border-width:var(--van-border-width)}
@@ -25,6 +25,11 @@
25
25
  .multi-ellipsis(3);
26
26
  }
27
27
 
28
+ .van-safe-area-top {
29
+ padding-top: constant(safe-area-inset-top);
30
+ padding-top: env(safe-area-inset-top);
31
+ }
32
+
28
33
  .van-safe-area-bottom {
29
34
  padding-bottom: constant(safe-area-inset-bottom);
30
35
  padding-bottom: env(safe-area-inset-bottom);
@@ -169,7 +169,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
169
169
  return (0, import_vue.createVNode)("div", {
170
170
  "ref": root,
171
171
  "class": bem(),
172
- "onClick": getClickHandler("cell"),
172
+ "onClick": getClickHandler("cell", lockClick),
173
173
  "onTouchstart": onTouchStart,
174
174
  "onTouchmove": onTouchMove,
175
175
  "onTouchend": onTouchEnd,
@@ -108,6 +108,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
108
108
  } = props;
109
109
  if ((0, import_utils.isDef)(message) && message !== "") {
110
110
  return type === "html" ? (0, import_vue.createVNode)("div", {
111
+ "key": 0,
111
112
  "class": bem("text"),
112
113
  "innerHTML": String(message)
113
114
  }, null) : (0, import_vue.createVNode)("div", {
package/lib/vant.cjs.js CHANGED
@@ -563,6 +563,8 @@ var stdin_default$1y = vue.defineComponent({
563
563
  vue.watch(() => props.theme, (newVal, oldVal) => {
564
564
  document.body.classList.remove(`van-theme-${oldVal}`);
565
565
  document.body.classList.add(`van-theme-${newVal}`);
566
+ }, {
567
+ immediate: true
566
568
  });
567
569
  }
568
570
  vue.provide(CONFIG_PROVIDER_KEY, props);
@@ -1137,6 +1139,7 @@ const popupProps$2 = extend({}, popupSharedProps, {
1137
1139
  iconPrefix: String,
1138
1140
  closeOnPopstate: Boolean,
1139
1141
  closeIconPosition: makeStringProp("top-right"),
1142
+ safeAreaInsetTop: Boolean,
1140
1143
  safeAreaInsetBottom: Boolean
1141
1144
  });
1142
1145
  const [name$1k, bem$1g] = createNamespace("popup");
@@ -1231,6 +1234,7 @@ var stdin_default$1r = vue.defineComponent({
1231
1234
  const {
1232
1235
  round,
1233
1236
  position,
1237
+ safeAreaInsetTop,
1234
1238
  safeAreaInsetBottom
1235
1239
  } = props;
1236
1240
  return vue.withDirectives(vue.createVNode("div", vue.mergeProps({
@@ -1240,6 +1244,7 @@ var stdin_default$1r = vue.defineComponent({
1240
1244
  round,
1241
1245
  [position]: position
1242
1246
  }), {
1247
+ "van-safe-area-top": safeAreaInsetTop,
1243
1248
  "van-safe-area-bottom": safeAreaInsetBottom
1244
1249
  }],
1245
1250
  "onKeydown": onKeydown
@@ -2909,6 +2914,7 @@ var stdin_default$1j = vue.defineComponent({
2909
2914
  } = props;
2910
2915
  if (isDef(message) && message !== "") {
2911
2916
  return type === "html" ? vue.createVNode("div", {
2917
+ "key": 0,
2912
2918
  "class": bem$18("text"),
2913
2919
  "innerHTML": String(message)
2914
2920
  }, null) : vue.createVNode("div", {
@@ -4396,6 +4402,7 @@ const calendarProps = {
4396
4402
  showRangePrompt: truthProp,
4397
4403
  confirmDisabledText: String,
4398
4404
  closeOnClickOverlay: truthProp,
4405
+ safeAreaInsetTop: Boolean,
4399
4406
  safeAreaInsetBottom: truthProp,
4400
4407
  minDate: {
4401
4408
  type: Date,
@@ -4744,6 +4751,7 @@ var stdin_default$16 = vue.defineComponent({
4744
4751
  "closeable": props.showTitle || props.showSubtitle,
4745
4752
  "teleport": props.teleport,
4746
4753
  "closeOnPopstate": props.closeOnPopstate,
4754
+ "safeAreaInsetTop": props.safeAreaInsetTop,
4747
4755
  "closeOnClickOverlay": props.closeOnClickOverlay,
4748
4756
  "onUpdate:show": updateShow
4749
4757
  }, {
@@ -7716,7 +7724,7 @@ var stdin_default$I = vue.defineComponent({
7716
7724
  }
7717
7725
  });
7718
7726
  vue.watch(() => props.modelValue, (newValues) => {
7719
- if (isSameValue(newValues, currentValues.value)) {
7727
+ if (!isSameValue(newValues, currentValues.value)) {
7720
7728
  currentValues.value = newValues;
7721
7729
  }
7722
7730
  });
@@ -9123,6 +9131,7 @@ var stdin_default$y = vue.defineComponent({
9123
9131
  children,
9124
9132
  linkChildren
9125
9133
  } = use.useChildren(INDEX_BAR_KEY);
9134
+ let selectActiveIndex;
9126
9135
  linkChildren({
9127
9136
  props
9128
9137
  });
@@ -9150,6 +9159,7 @@ var stdin_default$y = vue.defineComponent({
9150
9159
  }
9151
9160
  return -1;
9152
9161
  };
9162
+ const getMatchAnchor = (index) => children.find((item) => String(item.index) === index);
9153
9163
  const onScroll = () => {
9154
9164
  if (isHidden(root)) {
9155
9165
  return;
@@ -9161,7 +9171,16 @@ var stdin_default$y = vue.defineComponent({
9161
9171
  const scrollTop = getScrollTop(scrollParent.value);
9162
9172
  const scrollParentRect = use.useRect(scrollParent);
9163
9173
  const rects = children.map((item) => item.getRect(scrollParent.value, scrollParentRect));
9164
- const active = getActiveAnchor(scrollTop, rects);
9174
+ let active = -1;
9175
+ if (selectActiveIndex) {
9176
+ const match = getMatchAnchor(selectActiveIndex);
9177
+ if (match) {
9178
+ const rect = match.getRect(scrollParent.value, scrollParentRect);
9179
+ active = getActiveAnchor(rect.top, rects);
9180
+ }
9181
+ } else {
9182
+ active = getActiveAnchor(scrollTop, rects);
9183
+ }
9165
9184
  activeAnchor.value = indexList[active];
9166
9185
  if (sticky) {
9167
9186
  children.forEach((item, index) => {
@@ -9180,7 +9199,7 @@ var stdin_default$y = vue.defineComponent({
9180
9199
  if (index === active) {
9181
9200
  state.active = true;
9182
9201
  state.top = Math.max(props.stickyOffsetTop, rects[index].top - scrollTop) + scrollParentRect.top;
9183
- } else if (index === active - 1) {
9202
+ } else if (index === active - 1 && selectActiveIndex === "") {
9184
9203
  const activeItemTop = rects[active].top - scrollTop;
9185
9204
  state.active = activeItemTop > 0;
9186
9205
  state.top = activeItemTop + scrollParentRect.top - rects[index].height;
@@ -9189,6 +9208,7 @@ var stdin_default$y = vue.defineComponent({
9189
9208
  }
9190
9209
  });
9191
9210
  }
9211
+ selectActiveIndex = "";
9192
9212
  };
9193
9213
  const init = () => {
9194
9214
  vue.nextTick(onScroll);
@@ -9214,9 +9234,18 @@ var stdin_default$y = vue.defineComponent({
9214
9234
  }, [index]);
9215
9235
  });
9216
9236
  const scrollTo = (index) => {
9217
- index = String(index);
9218
- const match = children.find((item) => String(item.index) === index);
9237
+ selectActiveIndex = String(index);
9238
+ const match = getMatchAnchor(selectActiveIndex);
9219
9239
  if (match) {
9240
+ const scrollTop = getScrollTop(scrollParent.value);
9241
+ const scrollParentRect = use.useRect(scrollParent);
9242
+ const {
9243
+ offsetHeight
9244
+ } = document.documentElement;
9245
+ if (scrollTop === offsetHeight - scrollParentRect.height) {
9246
+ onScroll();
9247
+ return;
9248
+ }
9220
9249
  match.$el.scrollIntoView();
9221
9250
  if (props.sticky && props.stickyOffsetTop) {
9222
9251
  setRootScrollTop(getRootScrollTop() - props.stickyOffsetTop);
@@ -9550,10 +9579,10 @@ var stdin_default$v = vue.defineComponent({
9550
9579
  "ref": navBarRef,
9551
9580
  "style": style,
9552
9581
  "class": [bem$p({
9553
- fixed,
9554
- "safe-area-inset-top": props.safeAreaInsetTop
9582
+ fixed
9555
9583
  }), {
9556
- [BORDER_BOTTOM]: border
9584
+ [BORDER_BOTTOM]: border,
9585
+ "van-safe-area-top": props.safeAreaInsetTop
9557
9586
  }]
9558
9587
  }, [vue.createVNode("div", {
9559
9588
  "class": bem$p("content")
@@ -11274,9 +11303,11 @@ const skeletonProps = {
11274
11303
  };
11275
11304
  var stdin_default$g = vue.defineComponent({
11276
11305
  name: name$b,
11306
+ inheritAttrs: false,
11277
11307
  props: skeletonProps,
11278
11308
  setup(props, {
11279
- slots
11309
+ slots,
11310
+ attrs
11280
11311
  }) {
11281
11312
  const renderAvatar = () => {
11282
11313
  if (props.avatar) {
@@ -11319,12 +11350,12 @@ var stdin_default$g = vue.defineComponent({
11319
11350
  if (!props.loading) {
11320
11351
  return (_a = slots.default) == null ? void 0 : _a.call(slots);
11321
11352
  }
11322
- return vue.createVNode("div", {
11353
+ return vue.createVNode("div", vue.mergeProps({
11323
11354
  "class": bem$a({
11324
11355
  animate: props.animate,
11325
11356
  round: props.round
11326
11357
  })
11327
- }, [renderAvatar(), vue.createVNode("div", {
11358
+ }, attrs), [renderAvatar(), vue.createVNode("div", {
11328
11359
  "class": bem$a("content")
11329
11360
  }, [renderTitle(), renderRows()])]);
11330
11361
  };
@@ -12214,7 +12245,7 @@ var stdin_default$a = vue.defineComponent({
12214
12245
  return vue.createVNode("div", {
12215
12246
  "ref": root,
12216
12247
  "class": bem$4(),
12217
- "onClick": getClickHandler("cell"),
12248
+ "onClick": getClickHandler("cell", lockClick2),
12218
12249
  "onTouchstart": onTouchStart,
12219
12250
  "onTouchmove": onTouchMove,
12220
12251
  "onTouchend": onTouchEnd,
@@ -13825,7 +13856,7 @@ const Lazyload = {
13825
13856
  });
13826
13857
  }
13827
13858
  };
13828
- const version = "4.0.0-alpha.0";
13859
+ const version = "4.0.0-alpha.1";
13829
13860
  function install(app) {
13830
13861
  const components = [
13831
13862
  ActionBar,