vant 3.2.8 → 3.3.3-beta.nuxt3
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.
- package/es/address-edit/AddressEdit.js +154 -180
- package/es/address-edit/AddressEditDetail.d.ts +10 -9
- package/es/address-edit/AddressEditDetail.js +6 -6
- package/es/button/Button.js +2 -2
- package/es/calendar/Calendar.js +8 -14
- package/es/calendar/CalendarHeader.js +1 -3
- package/es/calendar/CalendarMonth.js +11 -10
- package/es/calendar/types.d.ts +1 -1
- package/es/cascader/Cascader.js +10 -2
- package/es/checkbox/Checker.js +1 -1
- package/es/checkbox/types.d.ts +2 -6
- package/es/composables/use-id.d.ts +1 -0
- package/es/composables/use-id.js +14 -0
- package/es/composables/use-route.d.ts +1 -1
- package/es/composables/use-route.js +4 -4
- package/es/count-down/CountDown.js +1 -0
- package/es/coupon-list/CouponList.js +40 -24
- package/es/coupon-list/index.css +1 -1
- package/es/coupon-list/index.less +0 -5
- package/es/dropdown-item/DropdownItem.js +7 -2
- package/es/dropdown-item/types.d.ts +2 -6
- package/es/dropdown-menu/DropdownMenu.js +7 -3
- package/es/dropdown-menu/types.d.ts +1 -0
- package/es/empty/Network.js +22 -34
- package/es/field/Field.d.ts +1 -1
- package/es/field/Field.js +13 -5
- package/es/field/index.d.ts +2 -2
- package/es/field/types.d.ts +7 -6
- package/es/form/Form.js +2 -2
- package/es/image/Image.js +4 -9
- package/es/image-preview/ImagePreview.js +3 -4
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/lazyload/index.d.ts +1 -1
- package/es/lazyload/index.js +1 -1
- package/es/lazyload/vue-lazyload/index.d.ts +55 -0
- package/es/lazyload/vue-lazyload/index.js +46 -0
- package/es/lazyload/vue-lazyload/lazy-component.js +53 -0
- package/es/lazyload/vue-lazyload/lazy-container.js +98 -0
- package/es/lazyload/vue-lazyload/lazy-image.js +115 -0
- package/es/lazyload/vue-lazyload/lazy.js +507 -0
- package/es/lazyload/vue-lazyload/listener.js +241 -0
- package/es/lazyload/vue-lazyload/util.js +183 -0
- package/es/list/List.js +3 -1
- package/es/locale/lang/pt-BR.d.ts +73 -0
- package/es/locale/lang/pt-BR.js +72 -0
- package/es/number-keyboard/NumberKeyboardKey.js +4 -4
- package/es/pagination/Pagination.js +67 -49
- package/es/pagination/index.css +1 -1
- package/es/pagination/index.less +32 -31
- package/es/password-input/PasswordInput.d.ts +1 -1
- package/es/password-input/index.d.ts +1 -1
- package/es/popover/Popover.js +2 -0
- package/es/popup/Popup.d.ts +1 -2
- package/es/popup/Popup.js +2 -5
- package/es/popup/index.d.ts +1 -2
- package/es/rate/Rate.js +5 -3
- package/es/search/Search.js +8 -2
- package/es/sidebar/Sidebar.js +1 -0
- package/es/sidebar-item/SidebarItem.js +4 -1
- package/es/slider/Slider.js +5 -3
- package/es/stepper/Stepper.js +11 -8
- package/es/swipe/Swipe.js +11 -6
- package/es/swipe/index.css +1 -1
- package/es/swipe/index.less +2 -0
- package/es/swipe/types.d.ts +1 -3
- package/es/switch/Switch.js +1 -0
- package/es/switch/index.css +1 -1
- package/es/switch/index.less +2 -0
- package/es/tab/Tab.js +18 -5
- package/es/tab/index.css +1 -1
- package/es/tab/index.less +1 -1
- package/es/tabbar/Tabbar.d.ts +1 -1
- package/es/tabbar/Tabbar.js +10 -10
- package/es/tabbar-item/TabbarItem.js +16 -7
- package/es/tabs/Tabs.js +10 -5
- package/es/tabs/TabsTitle.d.ts +6 -0
- package/es/tabs/TabsTitle.js +7 -1
- package/es/tabs/types.d.ts +1 -0
- package/es/uploader/UploaderPreviewItem.js +4 -1
- package/es/uploader/utils.d.ts +2 -2
- package/es/uploader/utils.js +2 -2
- package/es/utils/dom.d.ts +1 -0
- package/es/utils/dom.js +6 -2
- package/es/utils/format.js +6 -5
- package/es/vue-tsx-shim.d.ts +1 -0
- package/lib/address-edit/AddressEdit.js +155 -180
- package/lib/address-edit/AddressEditDetail.d.ts +10 -9
- package/lib/address-edit/AddressEditDetail.js +6 -6
- package/lib/button/Button.js +1 -1
- package/lib/calendar/Calendar.js +8 -14
- package/lib/calendar/CalendarHeader.js +1 -3
- package/lib/calendar/CalendarMonth.js +11 -10
- package/lib/calendar/types.d.ts +1 -1
- package/lib/cascader/Cascader.js +10 -2
- package/lib/checkbox/Checker.js +1 -1
- package/lib/checkbox/types.d.ts +2 -6
- package/lib/composables/use-id.d.ts +1 -0
- package/lib/composables/use-id.js +21 -0
- package/lib/composables/use-route.d.ts +1 -1
- package/lib/composables/use-route.js +4 -4
- package/lib/count-down/CountDown.js +1 -0
- package/lib/coupon-list/CouponList.js +39 -22
- package/lib/coupon-list/index.css +1 -1
- package/lib/coupon-list/index.less +0 -5
- package/lib/dropdown-item/DropdownItem.js +7 -2
- package/lib/dropdown-item/types.d.ts +2 -6
- package/lib/dropdown-menu/DropdownMenu.js +7 -2
- package/lib/dropdown-menu/types.d.ts +1 -0
- package/lib/empty/Network.js +22 -34
- package/lib/field/Field.d.ts +1 -1
- package/lib/field/Field.js +14 -5
- package/lib/field/index.d.ts +2 -2
- package/lib/field/types.d.ts +7 -6
- package/lib/form/Form.js +1 -1
- package/lib/image/Image.js +4 -9
- package/lib/image-preview/ImagePreview.js +1 -2
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/lazyload/index.d.ts +1 -1
- package/lib/lazyload/index.js +3 -3
- package/lib/lazyload/vue-lazyload/index.d.ts +55 -0
- package/lib/lazyload/vue-lazyload/index.js +58 -0
- package/lib/lazyload/vue-lazyload/lazy-component.js +62 -0
- package/lib/lazyload/vue-lazyload/lazy-container.js +106 -0
- package/lib/lazyload/vue-lazyload/lazy-image.js +125 -0
- package/lib/lazyload/vue-lazyload/lazy.js +520 -0
- package/lib/lazyload/vue-lazyload/listener.js +251 -0
- package/lib/lazyload/vue-lazyload/util.js +213 -0
- package/lib/list/List.js +3 -1
- package/lib/locale/lang/pt-BR.d.ts +73 -0
- package/lib/locale/lang/pt-BR.js +77 -0
- package/lib/number-keyboard/NumberKeyboardKey.js +3 -3
- package/lib/pagination/Pagination.js +65 -47
- package/lib/pagination/index.css +1 -1
- package/lib/pagination/index.less +32 -31
- package/lib/password-input/PasswordInput.d.ts +1 -1
- package/lib/password-input/index.d.ts +1 -1
- package/lib/popover/Popover.js +2 -0
- package/lib/popup/Popup.d.ts +1 -2
- package/lib/popup/Popup.js +2 -5
- package/lib/popup/index.d.ts +1 -2
- package/lib/rate/Rate.js +5 -3
- package/lib/search/Search.js +9 -2
- package/lib/sidebar/Sidebar.js +1 -0
- package/lib/sidebar-item/SidebarItem.js +4 -1
- package/lib/slider/Slider.js +5 -3
- package/lib/ssr.js +7 -0
- package/lib/ssr.mjs +1 -0
- package/lib/stepper/Stepper.js +11 -8
- package/lib/swipe/Swipe.js +9 -4
- package/lib/swipe/index.css +1 -1
- package/lib/swipe/index.less +2 -0
- package/lib/swipe/types.d.ts +1 -3
- package/lib/switch/Switch.js +1 -0
- package/lib/switch/index.css +1 -1
- package/lib/switch/index.less +2 -0
- package/lib/tab/Tab.js +20 -5
- package/lib/tab/index.css +1 -1
- package/lib/tab/index.less +1 -1
- package/lib/tabbar/Tabbar.d.ts +1 -1
- package/lib/tabbar/Tabbar.js +10 -10
- package/lib/tabbar-item/TabbarItem.js +16 -7
- package/lib/tabs/Tabs.js +9 -3
- package/lib/tabs/TabsTitle.d.ts +6 -0
- package/lib/tabs/TabsTitle.js +7 -1
- package/lib/tabs/types.d.ts +1 -0
- package/lib/uploader/UploaderPreviewItem.js +3 -0
- package/lib/uploader/utils.d.ts +2 -2
- package/lib/uploader/utils.js +3 -2
- package/lib/utils/dom.d.ts +1 -0
- package/lib/utils/dom.js +9 -2
- package/lib/utils/format.js +7 -5
- package/lib/vant.cjs.js +14407 -0
- package/lib/vant.cjs.min.js +1 -0
- package/lib/vant.es.js +1125 -2186
- package/lib/vant.es.min.js +1125 -2186
- package/lib/vant.js +1109 -1089
- package/lib/vant.min.js +1 -1
- package/lib/vue-tsx-shim.d.ts +1 -0
- package/package.json +26 -11
- package/vetur/attributes.json +557 -557
- package/vetur/tags.json +183 -183
- package/vetur/web-types.json +1577 -1577
- package/es/composables/use-link-field.d.ts +0 -0
- package/es/composables/use-link-field.js +0 -0
- package/lib/composables/use-link-field.d.ts +0 -0
- package/lib/composables/use-link-field.js +0 -1
@@ -53,12 +53,7 @@ var _default = (0, _vue.defineComponent)({
|
|
53
53
|
var {
|
54
54
|
modelValue,
|
55
55
|
forceEllipses
|
56
|
-
} = props;
|
57
|
-
|
58
|
-
if (props.mode !== 'multi') {
|
59
|
-
return items;
|
60
|
-
} // Default page limits
|
61
|
-
|
56
|
+
} = props; // Default page limits
|
62
57
|
|
63
58
|
var startPage = 1;
|
64
59
|
var endPage = pageCount;
|
@@ -97,59 +92,82 @@ var _default = (0, _vue.defineComponent)({
|
|
97
92
|
return items;
|
98
93
|
});
|
99
94
|
|
100
|
-
var
|
101
|
-
|
95
|
+
var updateModelValue = (value, emitChange) => {
|
96
|
+
value = (0, _utils.clamp)(value, 1, count.value);
|
102
97
|
|
103
|
-
if (props.modelValue !==
|
104
|
-
emit('update:modelValue',
|
98
|
+
if (props.modelValue !== value) {
|
99
|
+
emit('update:modelValue', value);
|
105
100
|
|
106
101
|
if (emitChange) {
|
107
|
-
emit('change',
|
102
|
+
emit('change', value);
|
108
103
|
}
|
109
104
|
}
|
110
|
-
};
|
105
|
+
}; // format modelValue
|
111
106
|
|
112
|
-
(0, _vue.watch)(() => props.modelValue, value => {
|
113
|
-
select(value);
|
114
|
-
}, {
|
115
|
-
immediate: true
|
116
|
-
});
|
117
|
-
|
118
|
-
var renderDesc = () => {
|
119
|
-
if (props.mode !== 'multi') {
|
120
|
-
return (0, _vue.createVNode)("li", {
|
121
|
-
"class": bem('page-desc')
|
122
|
-
}, [slots.pageDesc ? slots.pageDesc() : props.modelValue + "/" + count.value]);
|
123
|
-
}
|
124
|
-
};
|
125
107
|
|
126
|
-
|
127
|
-
var value = props.modelValue;
|
128
|
-
var simple = props.mode !== 'multi';
|
108
|
+
(0, _vue.watchEffect)(() => updateModelValue(props.modelValue));
|
129
109
|
|
130
|
-
|
110
|
+
var renderDesc = () => (0, _vue.createVNode)("li", {
|
111
|
+
"class": bem('page-desc')
|
112
|
+
}, [slots.pageDesc ? slots.pageDesc() : props.modelValue + "/" + count.value]);
|
131
113
|
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
}
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
"onClick": onSelect(value - 1)
|
141
|
-
}, [slots['prev-text'] ? slots['prev-text']() : props.prevText || t('prev')]), pages.value.map(page => (0, _vue.createVNode)("li", {
|
114
|
+
var renderPrevButton = () => {
|
115
|
+
var {
|
116
|
+
mode,
|
117
|
+
modelValue
|
118
|
+
} = props;
|
119
|
+
var slot = slots['prev-text'];
|
120
|
+
var disabled = modelValue === 1;
|
121
|
+
return (0, _vue.createVNode)("li", {
|
142
122
|
"class": [bem('item', {
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
123
|
+
disabled,
|
124
|
+
border: mode === 'simple',
|
125
|
+
prev: true
|
126
|
+
}), _utils.BORDER_SURROUND]
|
127
|
+
}, [(0, _vue.createVNode)("button", {
|
128
|
+
"type": "button",
|
129
|
+
"disabled": disabled,
|
130
|
+
"onClick": () => updateModelValue(modelValue - 1)
|
131
|
+
}, [slot ? slot() : props.prevText || t('prev')])]);
|
132
|
+
};
|
133
|
+
|
134
|
+
var renderNextButton = () => {
|
135
|
+
var {
|
136
|
+
mode,
|
137
|
+
modelValue
|
138
|
+
} = props;
|
139
|
+
var slot = slots['next-text'];
|
140
|
+
var disabled = modelValue === count.value;
|
141
|
+
return (0, _vue.createVNode)("li", {
|
147
142
|
"class": [bem('item', {
|
148
|
-
disabled
|
149
|
-
|
150
|
-
|
151
|
-
|
143
|
+
disabled,
|
144
|
+
border: mode === 'simple',
|
145
|
+
next: true
|
146
|
+
}), _utils.BORDER_SURROUND]
|
147
|
+
}, [(0, _vue.createVNode)("button", {
|
148
|
+
"type": "button",
|
149
|
+
"disabled": disabled,
|
150
|
+
"onClick": () => updateModelValue(modelValue + 1)
|
151
|
+
}, [slot ? slot() : props.nextText || t('next')])]);
|
152
152
|
};
|
153
|
+
|
154
|
+
var renderPages = () => pages.value.map(page => (0, _vue.createVNode)("li", {
|
155
|
+
"class": [bem('item', {
|
156
|
+
active: page.active,
|
157
|
+
page: true
|
158
|
+
}), _utils.BORDER_SURROUND]
|
159
|
+
}, [(0, _vue.createVNode)("button", {
|
160
|
+
"type": "button",
|
161
|
+
"aria-current": page.active || undefined,
|
162
|
+
"onClick": () => updateModelValue(page.number)
|
163
|
+
}, [slots.page ? slots.page(page) : page.text])]));
|
164
|
+
|
165
|
+
return () => (0, _vue.createVNode)("nav", {
|
166
|
+
"role": "navigation",
|
167
|
+
"class": bem()
|
168
|
+
}, [(0, _vue.createVNode)("ul", {
|
169
|
+
"class": bem('items')
|
170
|
+
}, [renderPrevButton(), props.mode === 'simple' ? renderDesc() : renderPages(), renderNextButton()])]);
|
153
171
|
}
|
154
172
|
|
155
173
|
});
|
package/lib/pagination/index.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
:root{--van-pagination-height:40px;--van-pagination-font-size:var(--van-font-size-md);--van-pagination-item-width:36px;--van-pagination-item-default-color:var(--van-primary-color);--van-pagination-item-disabled-color:var(--van-gray-7);--van-pagination-item-disabled-background-color:var(--van-background-color);--van-pagination-background-color:var(--van-background-color-light);--van-pagination-desc-color:var(--van-gray-7);--van-pagination-disabled-opacity:var(--van-disabled-opacity)}.van-pagination{
|
1
|
+
:root{--van-pagination-height:40px;--van-pagination-font-size:var(--van-font-size-md);--van-pagination-item-width:36px;--van-pagination-item-default-color:var(--van-primary-color);--van-pagination-item-disabled-color:var(--van-gray-7);--van-pagination-item-disabled-background-color:var(--van-background-color);--van-pagination-background-color:var(--van-background-color-light);--van-pagination-desc-color:var(--van-gray-7);--van-pagination-disabled-opacity:var(--van-disabled-opacity)}.van-pagination{font-size:var(--van-pagination-font-size)}.van-pagination__items{display:flex}.van-pagination__item,.van-pagination__page-desc{display:flex;align-items:center;justify-content:center}.van-pagination__item{flex:1;box-sizing:border-box;min-width:var(--van-pagination-item-width);height:var(--van-pagination-height);color:var(--van-pagination-item-default-color);background:var(--van-pagination-background-color);cursor:pointer;-webkit-user-select:none;user-select:none}.van-pagination__item button{flex:1;height:100%;border:none;padding:0;background:0 0}.van-pagination__item button[disabled]{cursor:not-allowed}.van-pagination__item:active{color:var(--van-white);background-color:var(--van-pagination-item-default-color)}.van-pagination__item:not(:last-child)::after{border-right-width:0}.van-pagination__item--active{color:var(--van-white);background-color:var(--van-pagination-item-default-color)}.van-pagination__item--page{flex-grow:0}.van-pagination__item--next,.van-pagination__item--prev{padding:0 var(--van-padding-base);cursor:pointer}.van-pagination__item--border::after{border-width:var(--van-border-width-base)}.van-pagination__item--disabled{color:var(--van-pagination-item-disabled-color);background-color:var(--van-pagination-item-disabled-background-color);opacity:var(--van-pagination-disabled-opacity)}.van-pagination__page-desc{flex:1;height:var(--van-pagination-height);color:var(--van-pagination-desc-color)}
|
@@ -13,9 +13,12 @@
|
|
13
13
|
}
|
14
14
|
|
15
15
|
.van-pagination {
|
16
|
-
display: flex;
|
17
16
|
font-size: var(--van-pagination-font-size);
|
18
17
|
|
18
|
+
&__items {
|
19
|
+
display: flex;
|
20
|
+
}
|
21
|
+
|
19
22
|
&__item,
|
20
23
|
&__page-desc {
|
21
24
|
display: flex;
|
@@ -33,58 +36,56 @@
|
|
33
36
|
cursor: pointer;
|
34
37
|
user-select: none;
|
35
38
|
|
39
|
+
button {
|
40
|
+
flex: 1;
|
41
|
+
height: 100%;
|
42
|
+
border: none;
|
43
|
+
padding: 0;
|
44
|
+
background: transparent;
|
45
|
+
|
46
|
+
&[disabled] {
|
47
|
+
cursor: not-allowed;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
|
36
51
|
&:active {
|
37
52
|
color: var(--van-white);
|
38
53
|
background-color: var(--van-pagination-item-default-color);
|
39
54
|
}
|
40
55
|
|
41
|
-
|
42
|
-
border-width:
|
43
|
-
var(--van-border-width-base);
|
44
|
-
}
|
45
|
-
|
46
|
-
&:last-child::after {
|
47
|
-
border-right-width: var(--van-border-width-base);
|
56
|
+
&:not(:last-child)::after {
|
57
|
+
border-right-width: 0;
|
48
58
|
}
|
49
59
|
|
50
60
|
&--active {
|
51
61
|
color: var(--van-white);
|
52
62
|
background-color: var(--van-pagination-item-default-color);
|
53
63
|
}
|
54
|
-
}
|
55
64
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
cursor: pointer;
|
60
|
-
}
|
65
|
+
&--page {
|
66
|
+
flex-grow: 0;
|
67
|
+
}
|
61
68
|
|
62
|
-
|
63
|
-
|
64
|
-
|
69
|
+
&--prev,
|
70
|
+
&--next {
|
71
|
+
padding: 0 var(--van-padding-base);
|
72
|
+
cursor: pointer;
|
73
|
+
}
|
74
|
+
|
75
|
+
&--border::after {
|
76
|
+
border-width: var(--van-border-width-base);
|
77
|
+
}
|
78
|
+
|
79
|
+
&--disabled {
|
65
80
|
color: var(--van-pagination-item-disabled-color);
|
66
81
|
background-color: var(--van-pagination-item-disabled-background-color);
|
67
|
-
cursor: not-allowed;
|
68
82
|
opacity: var(--van-pagination-disabled-opacity);
|
69
83
|
}
|
70
84
|
}
|
71
85
|
|
72
|
-
&__page {
|
73
|
-
flex-grow: 0;
|
74
|
-
}
|
75
|
-
|
76
86
|
&__page-desc {
|
77
87
|
flex: 1;
|
78
88
|
height: var(--van-pagination-height);
|
79
89
|
color: var(--van-pagination-desc-color);
|
80
90
|
}
|
81
|
-
|
82
|
-
&--simple {
|
83
|
-
.van-pagination__prev,
|
84
|
-
.van-pagination__next {
|
85
|
-
&::after {
|
86
|
-
border-width: var(--van-border-width-base);
|
87
|
-
}
|
88
|
-
}
|
89
|
-
}
|
90
91
|
}
|
@@ -49,9 +49,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
49
49
|
value: string;
|
50
50
|
focused: boolean;
|
51
51
|
} & {
|
52
|
-
errorInfo?: string | undefined;
|
53
52
|
gutter?: string | number | undefined;
|
54
53
|
info?: string | undefined;
|
54
|
+
errorInfo?: string | undefined;
|
55
55
|
}> & {
|
56
56
|
onFocus?: ((...args: any[]) => any) | undefined;
|
57
57
|
}, {
|
@@ -29,9 +29,9 @@ export declare const PasswordInput: import("../utils").WithInstall<import("vue")
|
|
29
29
|
value: string;
|
30
30
|
focused: boolean;
|
31
31
|
} & {
|
32
|
-
errorInfo?: string | undefined;
|
33
32
|
gutter?: string | number | undefined;
|
34
33
|
info?: string | undefined;
|
34
|
+
errorInfo?: string | undefined;
|
35
35
|
}> & {
|
36
36
|
onFocus?: ((...args: any[]) => any) | undefined;
|
37
37
|
}, {
|
package/lib/popover/Popover.js
CHANGED
@@ -145,6 +145,8 @@ var _default = (0, _vue.defineComponent)({
|
|
145
145
|
"style": {
|
146
146
|
color
|
147
147
|
},
|
148
|
+
"tabindex": disabled ? undefined : 0,
|
149
|
+
"aria-disabled": disabled || undefined,
|
148
150
|
"onClick": () => onClickAction(action, index)
|
149
151
|
}, [icon && (0, _vue.createVNode)(_icon.Icon, {
|
150
152
|
"name": icon,
|
package/lib/popup/Popup.d.ts
CHANGED
@@ -91,7 +91,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
91
91
|
default: PopupCloseIconPosition;
|
92
92
|
};
|
93
93
|
safeAreaInsetBottom: BooleanConstructor;
|
94
|
-
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "
|
94
|
+
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "opened" | "closed" | "update:show" | "click-overlay" | "click-close-icon")[], "open" | "close" | "opened" | "closed" | "update:show" | "click-overlay" | "click-close-icon", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("@vue/runtime-core").ComponentCustomProps, Readonly<{
|
95
95
|
show?: unknown;
|
96
96
|
zIndex?: unknown;
|
97
97
|
overlay?: unknown;
|
@@ -137,7 +137,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
137
137
|
overlayClass?: unknown;
|
138
138
|
transition?: string | undefined;
|
139
139
|
}> & {
|
140
|
-
onClick?: ((...args: any[]) => any) | undefined;
|
141
140
|
onOpen?: ((...args: any[]) => any) | undefined;
|
142
141
|
onClose?: ((...args: any[]) => any) | undefined;
|
143
142
|
onOpened?: ((...args: any[]) => any) | undefined;
|
package/lib/popup/Popup.js
CHANGED
@@ -44,7 +44,7 @@ var _default = (0, _vue.defineComponent)({
|
|
44
44
|
name,
|
45
45
|
inheritAttrs: false,
|
46
46
|
props: popupProps,
|
47
|
-
emits: ['open', 'close', '
|
47
|
+
emits: ['open', 'close', 'opened', 'closed', 'update:show', 'click-overlay', 'click-close-icon'],
|
48
48
|
|
49
49
|
setup(props, _ref) {
|
50
50
|
var {
|
@@ -136,8 +136,6 @@ var _default = (0, _vue.defineComponent)({
|
|
136
136
|
}
|
137
137
|
};
|
138
138
|
|
139
|
-
var onClick = event => emit('click', event);
|
140
|
-
|
141
139
|
var onOpened = () => emit('opened');
|
142
140
|
|
143
141
|
var onClosed = () => emit('closed');
|
@@ -156,8 +154,7 @@ var _default = (0, _vue.defineComponent)({
|
|
156
154
|
[position]: position
|
157
155
|
}), {
|
158
156
|
'van-safe-area-bottom': safeAreaInsetBottom
|
159
|
-
}]
|
160
|
-
"onClick": onClick
|
157
|
+
}]
|
161
158
|
}, attrs), [slots.default == null ? void 0 : slots.default(), renderCloseIcon()]), [[_vue.vShow, props.show]]);
|
162
159
|
});
|
163
160
|
|
package/lib/popup/index.d.ts
CHANGED
@@ -42,7 +42,7 @@ export declare const Popup: import("../utils").WithInstall<import("vue").DefineC
|
|
42
42
|
default: import("./Popup").PopupCloseIconPosition;
|
43
43
|
};
|
44
44
|
safeAreaInsetBottom: BooleanConstructor;
|
45
|
-
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "
|
45
|
+
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "opened" | "closed" | "update:show" | "click-overlay" | "click-close-icon")[], "open" | "close" | "opened" | "closed" | "update:show" | "click-overlay" | "click-close-icon", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("@vue/runtime-core").ComponentCustomProps, Readonly<{
|
46
46
|
show?: unknown;
|
47
47
|
zIndex?: unknown;
|
48
48
|
overlay?: unknown;
|
@@ -88,7 +88,6 @@ export declare const Popup: import("../utils").WithInstall<import("vue").DefineC
|
|
88
88
|
overlayClass?: unknown;
|
89
89
|
transition?: string | undefined;
|
90
90
|
}> & {
|
91
|
-
onClick?: ((...args: any[]) => any) | undefined;
|
92
91
|
onOpen?: ((...args: any[]) => any) | undefined;
|
93
92
|
onClose?: ((...args: any[]) => any) | undefined;
|
94
93
|
onOpened?: ((...args: any[]) => any) | undefined;
|
package/lib/rate/Rate.js
CHANGED
@@ -183,8 +183,8 @@ var _default = (0, _vue.defineComponent)({
|
|
183
183
|
"role": "radio",
|
184
184
|
"style": style,
|
185
185
|
"class": bem('item'),
|
186
|
-
"tabindex": 0,
|
187
|
-
"aria-setsize":
|
186
|
+
"tabindex": disabled ? undefined : 0,
|
187
|
+
"aria-setsize": count,
|
188
188
|
"aria-posinset": score,
|
189
189
|
"aria-checked": !isVoid,
|
190
190
|
"onClick": onClickItem
|
@@ -219,7 +219,9 @@ var _default = (0, _vue.defineComponent)({
|
|
219
219
|
readonly: props.readonly,
|
220
220
|
disabled: props.disabled
|
221
221
|
}),
|
222
|
-
"tabindex": 0,
|
222
|
+
"tabindex": props.disabled ? undefined : 0,
|
223
|
+
"aria-disabled": props.disabled,
|
224
|
+
"aria-readonly": props.readonly,
|
223
225
|
"onTouchstart": onTouchStart,
|
224
226
|
"onTouchmove": onTouchMove
|
225
227
|
}, [list.value.map(renderStar)]);
|
package/lib/search/Search.js
CHANGED
@@ -9,6 +9,8 @@ var _utils = require("../utils");
|
|
9
9
|
|
10
10
|
var _Field = require("../field/Field");
|
11
11
|
|
12
|
+
var _useId = require("../composables/use-id");
|
13
|
+
|
12
14
|
var _useExpose = require("../composables/use-expose");
|
13
15
|
|
14
16
|
var _field = require("../field");
|
@@ -38,6 +40,7 @@ var _default = (0, _vue.defineComponent)({
|
|
38
40
|
slots,
|
39
41
|
attrs
|
40
42
|
} = _ref;
|
43
|
+
var id = (0, _useId.useId)();
|
41
44
|
var filedRef = (0, _vue.ref)();
|
42
45
|
|
43
46
|
var onCancel = () => {
|
@@ -56,11 +59,13 @@ var _default = (0, _vue.defineComponent)({
|
|
56
59
|
}
|
57
60
|
};
|
58
61
|
|
62
|
+
var getInputId = () => props.id || id + "-input";
|
63
|
+
|
59
64
|
var renderLabel = () => {
|
60
65
|
if (slots.label || props.label) {
|
61
66
|
return (0, _vue.createVNode)("label", {
|
62
67
|
"class": bem('label'),
|
63
|
-
"for":
|
68
|
+
"for": getInputId()
|
64
69
|
}, [slots.label ? slots.label() : props.label]);
|
65
70
|
}
|
66
71
|
};
|
@@ -92,7 +97,9 @@ var _default = (0, _vue.defineComponent)({
|
|
92
97
|
var fieldPropNames = Object.keys(_Field.fieldSharedProps);
|
93
98
|
|
94
99
|
var renderField = () => {
|
95
|
-
var fieldAttrs = (0, _utils.extend)({}, attrs, (0, _utils.pick)(props, fieldPropNames)
|
100
|
+
var fieldAttrs = (0, _utils.extend)({}, attrs, (0, _utils.pick)(props, fieldPropNames), {
|
101
|
+
id: getInputId()
|
102
|
+
});
|
96
103
|
|
97
104
|
var onInput = value => emit('update:modelValue', value);
|
98
105
|
|
package/lib/sidebar/Sidebar.js
CHANGED
@@ -68,11 +68,14 @@ var _default = (0, _vue.defineComponent)({
|
|
68
68
|
disabled
|
69
69
|
} = props;
|
70
70
|
var selected = index.value === parent.getActive();
|
71
|
-
return (0, _vue.createVNode)("
|
71
|
+
return (0, _vue.createVNode)("div", {
|
72
|
+
"role": "tab",
|
72
73
|
"class": bem({
|
73
74
|
select: selected,
|
74
75
|
disabled
|
75
76
|
}),
|
77
|
+
"tabindex": disabled ? undefined : 0,
|
78
|
+
"aria-selected": selected,
|
76
79
|
"onClick": onClick
|
77
80
|
}, [(0, _vue.createVNode)(_badge.Badge, {
|
78
81
|
"dot": dot,
|
package/lib/slider/Slider.js
CHANGED
@@ -294,10 +294,12 @@ var _default = (0, _vue.defineComponent)({
|
|
294
294
|
return (0, _vue.createVNode)("div", {
|
295
295
|
"role": "slider",
|
296
296
|
"class": getButtonClassName(index),
|
297
|
-
"tabindex": props.disabled
|
298
|
-
"aria-valuemin":
|
297
|
+
"tabindex": props.disabled ? undefined : 0,
|
298
|
+
"aria-valuemin": props.min,
|
299
299
|
"aria-valuenow": current,
|
300
|
-
"aria-valuemax":
|
300
|
+
"aria-valuemax": props.max,
|
301
|
+
"aria-disabled": props.disabled || undefined,
|
302
|
+
"aria-readonly": props.readonly || undefined,
|
301
303
|
"aria-orientation": props.vertical ? 'vertical' : 'horizontal',
|
302
304
|
"onTouchstart": event => {
|
303
305
|
if (typeof index === 'number') {
|
package/lib/ssr.js
ADDED
package/lib/ssr.mjs
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export * from './index.js';
|
package/lib/stepper/Stepper.js
CHANGED
@@ -219,14 +219,14 @@ var _default = (0, _vue.defineComponent)({
|
|
219
219
|
// fix mobile safari page scroll down issue
|
220
220
|
// see: https://github.com/youzan/vant/issues/7690
|
221
221
|
if (props.disableInput) {
|
222
|
-
|
222
|
+
(0, _utils.preventDefault)(event);
|
223
223
|
}
|
224
224
|
};
|
225
225
|
|
226
226
|
var createListeners = type => ({
|
227
227
|
onClick: event => {
|
228
228
|
// disable double tap scrolling on mobile safari
|
229
|
-
|
229
|
+
(0, _utils.preventDefault)(event);
|
230
230
|
actionType = type;
|
231
231
|
onChange();
|
232
232
|
},
|
@@ -238,7 +238,7 @@ var _default = (0, _vue.defineComponent)({
|
|
238
238
|
onTouchcancel: onTouchEnd
|
239
239
|
});
|
240
240
|
|
241
|
-
(0, _vue.watch)(
|
241
|
+
(0, _vue.watch)(() => [props.max, props.min, props.integer, props.decimalLength], check);
|
242
242
|
(0, _vue.watch)(() => props.modelValue, value => {
|
243
243
|
if (!isEqual(value, current.value)) {
|
244
244
|
current.value = format(value);
|
@@ -252,6 +252,7 @@ var _default = (0, _vue.defineComponent)({
|
|
252
252
|
});
|
253
253
|
(0, _use.useCustomFieldValue)(() => props.modelValue);
|
254
254
|
return () => (0, _vue.createVNode)("div", {
|
255
|
+
"role": "group",
|
255
256
|
"class": bem([props.theme])
|
256
257
|
}, [(0, _vue.withDirectives)((0, _vue.createVNode)("button", (0, _vue.mergeProps)({
|
257
258
|
"type": "button",
|
@@ -260,7 +261,8 @@ var _default = (0, _vue.defineComponent)({
|
|
260
261
|
disabled: minusDisabled.value
|
261
262
|
}), {
|
262
263
|
[_utils.HAPTICS_FEEDBACK]: !minusDisabled.value
|
263
|
-
}]
|
264
|
+
}],
|
265
|
+
"aria-disabled": minusDisabled.value || undefined
|
264
266
|
}, createListeners('minus')), null), [[_vue.vShow, props.showMinus]]), (0, _vue.withDirectives)((0, _vue.createVNode)("input", {
|
265
267
|
"ref": inputRef,
|
266
268
|
"type": props.integer ? 'tel' : 'text',
|
@@ -272,9 +274,9 @@ var _default = (0, _vue.defineComponent)({
|
|
272
274
|
"readonly": props.disableInput,
|
273
275
|
"inputmode": props.integer ? 'numeric' : 'decimal',
|
274
276
|
"placeholder": props.placeholder,
|
275
|
-
"aria-valuemax":
|
276
|
-
"aria-valuemin":
|
277
|
-
"aria-valuenow":
|
277
|
+
"aria-valuemax": props.max,
|
278
|
+
"aria-valuemin": props.min,
|
279
|
+
"aria-valuenow": current.value,
|
278
280
|
"onBlur": onBlur,
|
279
281
|
"onInput": onInput,
|
280
282
|
"onFocus": onFocus,
|
@@ -286,7 +288,8 @@ var _default = (0, _vue.defineComponent)({
|
|
286
288
|
disabled: plusDisabled.value
|
287
289
|
}), {
|
288
290
|
[_utils.HAPTICS_FEEDBACK]: !plusDisabled.value
|
289
|
-
}]
|
291
|
+
}],
|
292
|
+
"aria-disabled": plusDisabled.value || undefined
|
290
293
|
}, createListeners('plus')), null), [[_vue.vShow, props.showPlus]])]);
|
291
294
|
}
|
292
295
|
|
package/lib/swipe/Swipe.js
CHANGED
@@ -55,7 +55,6 @@ var _default = (0, _vue.defineComponent)({
|
|
55
55
|
swiping: false
|
56
56
|
});
|
57
57
|
var touch = (0, _useTouch.useTouch)();
|
58
|
-
var windowSize = (0, _use.useWindowSize)();
|
59
58
|
var {
|
60
59
|
children,
|
61
60
|
linkChildren
|
@@ -271,10 +270,16 @@ var _default = (0, _vue.defineComponent)({
|
|
271
270
|
|
272
271
|
var onTouchMove = event => {
|
273
272
|
if (props.touchable && state.swiping) {
|
274
|
-
touch.move(event);
|
273
|
+
touch.move(event); // if user starting to touchmove, prevent the event bubbling to
|
274
|
+
// avoid affecting the parent components
|
275
275
|
|
276
|
-
|
276
|
+
var shouldPrevent = isCorrectDirection.value || touch.offsetY.value > touch.offsetX.value === props.vertical;
|
277
|
+
|
278
|
+
if (shouldPrevent) {
|
277
279
|
(0, _utils.preventDefault)(event, props.stopPropagation);
|
280
|
+
}
|
281
|
+
|
282
|
+
if (isCorrectDirection.value) {
|
278
283
|
move({
|
279
284
|
offset: delta.value
|
280
285
|
});
|
@@ -391,7 +396,7 @@ var _default = (0, _vue.defineComponent)({
|
|
391
396
|
(0, _vue.watch)(() => props.initialSwipe, value => initialize(+value));
|
392
397
|
(0, _vue.watch)(count, () => initialize(state.active));
|
393
398
|
(0, _vue.watch)(() => props.autoplay, autoplay);
|
394
|
-
(0, _vue.watch)([
|
399
|
+
(0, _vue.watch)([_utils.windowWidth, _utils.windowHeight], resize);
|
395
400
|
(0, _vue.watch)((0, _use.usePageVisibility)(), visible => {
|
396
401
|
if (visible === 'visible') {
|
397
402
|
autoplay();
|
package/lib/swipe/index.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
:root{--van-swipe-indicator-size:6px;--van-swipe-indicator-margin:var(--van-padding-sm);--van-swipe-indicator-active-opacity:1;--van-swipe-indicator-inactive-opacity:0.3;--van-swipe-indicator-active-background-color:var(--van-primary-color);--van-swipe-indicator-inactive-background-color:var(--van-border-color)}.van-swipe{position:relative;overflow:hidden;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;user-select:none}.van-swipe__track{display:flex;height:100%}.van-swipe__track--vertical{flex-direction:column}.van-swipe__indicators{position:absolute;bottom:var(--van-swipe-indicator-margin);left:50%;display:flex;transform:translateX(-50%)}.van-swipe__indicators--vertical{top:50%;bottom:auto;left:var(--van-swipe-indicator-margin);flex-direction:column;transform:translateY(-50%)}.van-swipe__indicators--vertical .van-swipe__indicator:not(:last-child){margin-bottom:var(--van-swipe-indicator-size)}.van-swipe__indicator{width:var(--van-swipe-indicator-size);height:var(--van-swipe-indicator-size);background-color:var(--van-swipe-indicator-inactive-background-color);border-radius:100%;opacity:var(--van-swipe-indicator-inactive-opacity);transition:opacity var(--van-animation-duration-fast),background-color var(--van-animation-duration-fast)}.van-swipe__indicator:not(:last-child){margin-right:var(--van-swipe-indicator-size)}.van-swipe__indicator--active{background-color:var(--van-swipe-indicator-active-background-color);opacity:var(--van-swipe-indicator-active-opacity)}
|
1
|
+
:root{--van-swipe-indicator-size:6px;--van-swipe-indicator-margin:var(--van-padding-sm);--van-swipe-indicator-active-opacity:1;--van-swipe-indicator-inactive-opacity:0.3;--van-swipe-indicator-active-background-color:var(--van-primary-color);--van-swipe-indicator-inactive-background-color:var(--van-border-color)}.van-swipe{position:relative;overflow:hidden;transform:translateZ(0);cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;user-select:none}.van-swipe__track{display:flex;height:100%}.van-swipe__track--vertical{flex-direction:column}.van-swipe__indicators{position:absolute;bottom:var(--van-swipe-indicator-margin);left:50%;display:flex;transform:translateX(-50%)}.van-swipe__indicators--vertical{top:50%;bottom:auto;left:var(--van-swipe-indicator-margin);flex-direction:column;transform:translateY(-50%)}.van-swipe__indicators--vertical .van-swipe__indicator:not(:last-child){margin-bottom:var(--van-swipe-indicator-size)}.van-swipe__indicator{width:var(--van-swipe-indicator-size);height:var(--van-swipe-indicator-size);background-color:var(--van-swipe-indicator-inactive-background-color);border-radius:100%;opacity:var(--van-swipe-indicator-inactive-opacity);transition:opacity var(--van-animation-duration-fast),background-color var(--van-animation-duration-fast)}.van-swipe__indicator:not(:last-child){margin-right:var(--van-swipe-indicator-size)}.van-swipe__indicator--active{background-color:var(--van-swipe-indicator-active-background-color);opacity:var(--van-swipe-indicator-active-opacity)}
|
package/lib/swipe/index.less
CHANGED
package/lib/swipe/types.d.ts
CHANGED
@@ -19,9 +19,7 @@ export declare type SwipeExpose = {
|
|
19
19
|
next: () => void;
|
20
20
|
resize: () => void;
|
21
21
|
swipeTo: (index: number, options?: SwipeToOptions) => void;
|
22
|
-
/**
|
23
|
-
* @private
|
24
|
-
*/
|
22
|
+
/** @private */
|
25
23
|
state: SwipeState;
|
26
24
|
};
|
27
25
|
export declare type SwipeProvide = {
|
package/lib/switch/Switch.js
CHANGED
package/lib/switch/index.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
:root{--van-switch-size:30px;--van-switch-width:2em;--van-switch-height:1em;--van-switch-node-size:1em;--van-switch-node-background-color:var(--van-white);--van-switch-node-box-shadow:0 3px 1px 0 rgba(0, 0, 0, 0.05),0 2px 2px 0 rgba(0, 0, 0, 0.1),0 3px 3px 0 rgba(0, 0, 0, 0.05);--van-switch-background-color:var(--van-background-color-light);--van-switch-on-background-color:var(--van-primary-color);--van-switch-transition-duration:var(--van-animation-duration-base);--van-switch-disabled-opacity:var(--van-disabled-opacity);--van-switch-border:var(--van-border-width-base) solid rgba(0, 0, 0, 0.1)}.van-switch{position:relative;display:inline-block;box-sizing:content-box;width:var(--van-switch-width);height:var(--van-switch-height);font-size:var(--van-switch-size);background:var(--van-switch-background-color);border:var(--van-switch-border);border-radius:var(--van-switch-node-size);cursor:pointer;transition:background-color var(--van-switch-transition-duration)}.van-switch__node{position:absolute;top:0;left:0;width:var(--van-switch-node-size);height:var(--van-switch-node-size);background:var(--van-switch-node-background-color);border-radius:100%;box-shadow:var(--van-switch-node-box-shadow);transition:transform var(--van-switch-transition-duration) cubic-bezier(.3, 1.05, .4, 1.05)}.van-switch__loading{top:25%;left:25%;width:50%;height:50%;line-height:1}.van-switch--on{background:var(--van-switch-on-background-color)}.van-switch--on .van-switch__node{transform:translateX(calc(var(--van-switch-width) - var(--van-switch-node-size)))}.van-switch--on .van-switch__loading{color:var(--van-switch-on-background-color)}.van-switch--disabled{cursor:not-allowed;opacity:var(--van-switch-disabled-opacity)}.van-switch--loading{cursor:default}
|
1
|
+
:root{--van-switch-size:30px;--van-switch-width:2em;--van-switch-height:1em;--van-switch-node-size:1em;--van-switch-node-background-color:var(--van-white);--van-switch-node-box-shadow:0 3px 1px 0 rgba(0, 0, 0, 0.05),0 2px 2px 0 rgba(0, 0, 0, 0.1),0 3px 3px 0 rgba(0, 0, 0, 0.05);--van-switch-background-color:var(--van-background-color-light);--van-switch-on-background-color:var(--van-primary-color);--van-switch-transition-duration:var(--van-animation-duration-base);--van-switch-disabled-opacity:var(--van-disabled-opacity);--van-switch-border:var(--van-border-width-base) solid rgba(0, 0, 0, 0.1)}.van-switch{position:relative;display:inline-block;box-sizing:content-box;width:var(--van-switch-width);height:var(--van-switch-height);font-size:var(--van-switch-size);background:var(--van-switch-background-color);border:var(--van-switch-border);border-radius:var(--van-switch-node-size);cursor:pointer;transition:background-color var(--van-switch-transition-duration)}.van-switch__node{position:absolute;top:0;left:0;width:var(--van-switch-node-size);height:var(--van-switch-node-size);font-size:inherit;background:var(--van-switch-node-background-color);border-radius:100%;box-shadow:var(--van-switch-node-box-shadow);transition:transform var(--van-switch-transition-duration) cubic-bezier(.3, 1.05, .4, 1.05)}.van-switch__loading{top:25%;left:25%;width:50%;height:50%;line-height:1}.van-switch--on{background:var(--van-switch-on-background-color)}.van-switch--on .van-switch__node{transform:translateX(calc(var(--van-switch-width) - var(--van-switch-node-size)))}.van-switch--on .van-switch__loading{color:var(--van-switch-on-background-color)}.van-switch--disabled{cursor:not-allowed;opacity:var(--van-switch-disabled-opacity)}.van-switch--loading{cursor:default}
|
package/lib/switch/index.less
CHANGED
@@ -33,6 +33,8 @@
|
|
33
33
|
left: 0;
|
34
34
|
width: var(--van-switch-node-size);
|
35
35
|
height: var(--van-switch-node-size);
|
36
|
+
// https://github.com/youzan/vant/issues/9839
|
37
|
+
font-size: inherit;
|
36
38
|
background: var(--van-switch-node-background-color);
|
37
39
|
border-radius: 100%;
|
38
40
|
box-shadow: var(--van-switch-node-box-shadow);
|