vant 3.3.6 → 3.3.7
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/badge/Badge.d.ts +12 -0
- package/es/badge/Badge.js +4 -3
- package/es/badge/index.css +1 -1
- package/es/badge/index.d.ts +8 -1
- package/es/badge/index.less +22 -1
- package/es/calendar/Calendar.d.ts +2 -2
- package/es/calendar/index.d.ts +2 -2
- package/es/datetime-picker/DatePicker.js +2 -2
- package/es/datetime-picker/TimePicker.js +2 -2
- package/es/datetime-picker/utils.d.ts +2 -0
- package/es/datetime-picker/utils.js +17 -1
- package/es/field/Field.js +5 -5
- package/es/field/utils.d.ts +2 -0
- package/es/field/utils.js +9 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/pagination/Pagination.js +3 -3
- package/es/popup/Popup.d.ts +2 -2
- package/es/popup/index.d.ts +2 -2
- package/es/toast/Toast.d.ts +2 -2
- package/lib/badge/Badge.d.ts +12 -0
- package/lib/badge/Badge.js +4 -3
- package/lib/badge/index.css +1 -1
- package/lib/badge/index.d.ts +8 -1
- package/lib/badge/index.less +22 -1
- package/lib/calendar/Calendar.d.ts +2 -2
- package/lib/calendar/index.d.ts +2 -2
- package/lib/datetime-picker/DatePicker.js +1 -1
- package/lib/datetime-picker/TimePicker.js +1 -1
- package/lib/datetime-picker/utils.d.ts +2 -0
- package/lib/datetime-picker/utils.js +22 -3
- package/lib/field/Field.js +4 -4
- package/lib/field/utils.d.ts +2 -0
- package/lib/field/utils.js +13 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/pagination/Pagination.js +3 -3
- package/lib/popup/Popup.d.ts +2 -2
- package/lib/popup/index.d.ts +2 -2
- package/lib/toast/Toast.d.ts +2 -2
- package/lib/vant.cjs.js +34 -13
- package/lib/vant.cjs.min.js +1 -1
- package/lib/vant.es.js +34 -13
- package/lib/vant.es.min.js +34 -13
- package/lib/vant.js +202 -55
- package/lib/vant.min.js +1 -1
- package/package.json +14 -12
- package/vetur/attributes.json +89 -85
- package/vetur/tags.json +26 -25
- package/vetur/web-types.json +217 -207
package/lib/vant.es.js
CHANGED
@@ -476,7 +476,8 @@ var badgeProps = {
|
|
476
476
|
color: String,
|
477
477
|
offset: Array,
|
478
478
|
content: numericProp,
|
479
|
-
showZero: truthProp
|
479
|
+
showZero: truthProp,
|
480
|
+
position: makeStringProp("top-right")
|
480
481
|
};
|
481
482
|
var _Badge = defineComponent({
|
482
483
|
name: name$1t,
|
@@ -534,10 +535,10 @@ var _Badge = defineComponent({
|
|
534
535
|
var renderBadge = () => {
|
535
536
|
if (hasContent() || props.dot) {
|
536
537
|
return createVNode("div", {
|
537
|
-
"class": bem$1p({
|
538
|
+
"class": bem$1p([props.position, {
|
538
539
|
dot: props.dot,
|
539
540
|
fixed: !!slots.default
|
540
|
-
}),
|
541
|
+
}]),
|
541
542
|
"style": style.value
|
542
543
|
}, [renderContent()]);
|
543
544
|
}
|
@@ -2553,6 +2554,12 @@ function mapInputType(type) {
|
|
2553
2554
|
type
|
2554
2555
|
};
|
2555
2556
|
}
|
2557
|
+
function getStringLength(str) {
|
2558
|
+
return [...str].length;
|
2559
|
+
}
|
2560
|
+
function cutString(str, maxlength) {
|
2561
|
+
return [...str].slice(0, maxlength).join("");
|
2562
|
+
}
|
2556
2563
|
var current = 0;
|
2557
2564
|
function useId() {
|
2558
2565
|
var vm = getCurrentInstance();
|
@@ -2727,12 +2734,12 @@ var _Field = defineComponent({
|
|
2727
2734
|
var {
|
2728
2735
|
maxlength
|
2729
2736
|
} = props;
|
2730
|
-
if (isDef(maxlength) && value
|
2737
|
+
if (isDef(maxlength) && getStringLength(value) > maxlength) {
|
2731
2738
|
var modelValue = getModelValue();
|
2732
|
-
if (modelValue && modelValue
|
2739
|
+
if (modelValue && getStringLength(modelValue) === +maxlength) {
|
2733
2740
|
return modelValue;
|
2734
2741
|
}
|
2735
|
-
return value
|
2742
|
+
return cutString(value, +maxlength);
|
2736
2743
|
}
|
2737
2744
|
return value;
|
2738
2745
|
};
|
@@ -2896,7 +2903,7 @@ var _Field = defineComponent({
|
|
2896
2903
|
};
|
2897
2904
|
var renderWordLimit = () => {
|
2898
2905
|
if (props.showWordLimit && props.maxlength) {
|
2899
|
-
var count = getModelValue()
|
2906
|
+
var count = getStringLength(getModelValue());
|
2900
2907
|
return createVNode("div", {
|
2901
2908
|
"class": bem$1a("word-limit")
|
2902
2909
|
}, [createVNode("span", {
|
@@ -4222,6 +4229,20 @@ function getTrueValue(value) {
|
|
4222
4229
|
return parseInt(value, 10);
|
4223
4230
|
}
|
4224
4231
|
var getMonthEndDay = (year, month) => 32 - new Date(year, month - 1, 32).getDate();
|
4232
|
+
var proxyPickerMethods = (picker, callback) => {
|
4233
|
+
var methods = ["setValues", "setIndexes", "setColumnIndex", "setColumnValue"];
|
4234
|
+
return new Proxy(picker, {
|
4235
|
+
get: (target, prop) => {
|
4236
|
+
if (methods.includes(prop)) {
|
4237
|
+
return function() {
|
4238
|
+
target[prop](...arguments);
|
4239
|
+
callback();
|
4240
|
+
};
|
4241
|
+
}
|
4242
|
+
return target[prop];
|
4243
|
+
}
|
4244
|
+
});
|
4245
|
+
};
|
4225
4246
|
var useHeight = (element) => {
|
4226
4247
|
var height = ref();
|
4227
4248
|
onMounted(() => nextTick(() => {
|
@@ -7956,7 +7977,7 @@ var TimePicker = defineComponent({
|
|
7956
7977
|
}
|
7957
7978
|
});
|
7958
7979
|
useExpose({
|
7959
|
-
getPicker: () => picker.value
|
7980
|
+
getPicker: () => picker.value && proxyPickerMethods(picker.value, updateInnerValue)
|
7960
7981
|
});
|
7961
7982
|
return () => createVNode(Picker, mergeProps({
|
7962
7983
|
"ref": picker,
|
@@ -8199,7 +8220,7 @@ var DatePicker = defineComponent({
|
|
8199
8220
|
}
|
8200
8221
|
});
|
8201
8222
|
useExpose({
|
8202
|
-
getPicker: () => picker.value
|
8223
|
+
getPicker: () => picker.value && proxyPickerMethods(picker.value, updateInnerValue)
|
8203
8224
|
});
|
8204
8225
|
return () => createVNode(Picker, mergeProps({
|
8205
8226
|
"ref": picker,
|
@@ -11639,7 +11660,7 @@ var _Pagination = defineComponent({
|
|
11639
11660
|
}, [createVNode("button", {
|
11640
11661
|
"type": "button",
|
11641
11662
|
"disabled": disabled,
|
11642
|
-
"onClick": () => updateModelValue(modelValue - 1)
|
11663
|
+
"onClick": () => updateModelValue(modelValue - 1, true)
|
11643
11664
|
}, [slot ? slot() : props.prevText || t$5("prev")])]);
|
11644
11665
|
};
|
11645
11666
|
var renderNextButton = () => {
|
@@ -11658,7 +11679,7 @@ var _Pagination = defineComponent({
|
|
11658
11679
|
}, [createVNode("button", {
|
11659
11680
|
"type": "button",
|
11660
11681
|
"disabled": disabled,
|
11661
|
-
"onClick": () => updateModelValue(modelValue + 1)
|
11682
|
+
"onClick": () => updateModelValue(modelValue + 1, true)
|
11662
11683
|
}, [slot ? slot() : props.nextText || t$5("next")])]);
|
11663
11684
|
};
|
11664
11685
|
var renderPages = () => pages.value.map((page) => createVNode("li", {
|
@@ -11669,7 +11690,7 @@ var _Pagination = defineComponent({
|
|
11669
11690
|
}, [createVNode("button", {
|
11670
11691
|
"type": "button",
|
11671
11692
|
"aria-current": page.active || void 0,
|
11672
|
-
"onClick": () => updateModelValue(page.number)
|
11693
|
+
"onClick": () => updateModelValue(page.number, true)
|
11673
11694
|
}, [slots.page ? slots.page(page) : page.text])]));
|
11674
11695
|
return () => createVNode("nav", {
|
11675
11696
|
"role": "navigation",
|
@@ -14308,7 +14329,7 @@ var _Uploader = defineComponent({
|
|
14308
14329
|
}
|
14309
14330
|
});
|
14310
14331
|
var Uploader = withInstall(_Uploader);
|
14311
|
-
var version = "3.3.
|
14332
|
+
var version = "3.3.7";
|
14312
14333
|
function install(app) {
|
14313
14334
|
var components = [ActionBar, ActionBarButton, ActionBarIcon, ActionSheet, AddressEdit, AddressList, Area, Badge, Button, Calendar, Card, Cascader, Cell, CellGroup, Checkbox, CheckboxGroup, Circle, Col, Collapse, CollapseItem, ConfigProvider, ContactCard, ContactEdit, ContactList, CountDown, Coupon, CouponCell, CouponList, DatetimePicker, Dialog, Divider, DropdownItem, DropdownMenu, Empty, Field, Form, Grid, GridItem, Icon, Image$1, ImagePreview, IndexAnchor, IndexBar, List, Loading, Locale, NavBar, NoticeBar, Notify, NumberKeyboard, Overlay, Pagination, PasswordInput, Picker, Popover, Popup, Progress, PullRefresh, Radio, RadioGroup, Rate, Row, Search, ShareSheet, Sidebar, SidebarItem, Skeleton, Slider, Step, Stepper, Steps, Sticky, SubmitBar, Swipe, SwipeCell, SwipeItem, Switch, Tab, Tabbar, TabbarItem, Tabs, Tag, Toast, TreeSelect, Uploader];
|
14314
14335
|
components.forEach((item) => {
|
package/lib/vant.es.min.js
CHANGED
@@ -476,7 +476,8 @@ var badgeProps = {
|
|
476
476
|
color: String,
|
477
477
|
offset: Array,
|
478
478
|
content: numericProp,
|
479
|
-
showZero: truthProp
|
479
|
+
showZero: truthProp,
|
480
|
+
position: makeStringProp("top-right")
|
480
481
|
};
|
481
482
|
var _Badge = defineComponent({
|
482
483
|
name: name$1t,
|
@@ -534,10 +535,10 @@ var _Badge = defineComponent({
|
|
534
535
|
var renderBadge = () => {
|
535
536
|
if (hasContent() || props.dot) {
|
536
537
|
return createVNode("div", {
|
537
|
-
"class": bem$1p({
|
538
|
+
"class": bem$1p([props.position, {
|
538
539
|
dot: props.dot,
|
539
540
|
fixed: !!slots.default
|
540
|
-
}),
|
541
|
+
}]),
|
541
542
|
"style": style.value
|
542
543
|
}, [renderContent()]);
|
543
544
|
}
|
@@ -2553,6 +2554,12 @@ function mapInputType(type) {
|
|
2553
2554
|
type
|
2554
2555
|
};
|
2555
2556
|
}
|
2557
|
+
function getStringLength(str) {
|
2558
|
+
return [...str].length;
|
2559
|
+
}
|
2560
|
+
function cutString(str, maxlength) {
|
2561
|
+
return [...str].slice(0, maxlength).join("");
|
2562
|
+
}
|
2556
2563
|
var current = 0;
|
2557
2564
|
function useId() {
|
2558
2565
|
var vm = getCurrentInstance();
|
@@ -2727,12 +2734,12 @@ var _Field = defineComponent({
|
|
2727
2734
|
var {
|
2728
2735
|
maxlength
|
2729
2736
|
} = props;
|
2730
|
-
if (isDef(maxlength) && value
|
2737
|
+
if (isDef(maxlength) && getStringLength(value) > maxlength) {
|
2731
2738
|
var modelValue = getModelValue();
|
2732
|
-
if (modelValue && modelValue
|
2739
|
+
if (modelValue && getStringLength(modelValue) === +maxlength) {
|
2733
2740
|
return modelValue;
|
2734
2741
|
}
|
2735
|
-
return value
|
2742
|
+
return cutString(value, +maxlength);
|
2736
2743
|
}
|
2737
2744
|
return value;
|
2738
2745
|
};
|
@@ -2896,7 +2903,7 @@ var _Field = defineComponent({
|
|
2896
2903
|
};
|
2897
2904
|
var renderWordLimit = () => {
|
2898
2905
|
if (props.showWordLimit && props.maxlength) {
|
2899
|
-
var count = getModelValue()
|
2906
|
+
var count = getStringLength(getModelValue());
|
2900
2907
|
return createVNode("div", {
|
2901
2908
|
"class": bem$1a("word-limit")
|
2902
2909
|
}, [createVNode("span", {
|
@@ -4222,6 +4229,20 @@ function getTrueValue(value) {
|
|
4222
4229
|
return parseInt(value, 10);
|
4223
4230
|
}
|
4224
4231
|
var getMonthEndDay = (year, month) => 32 - new Date(year, month - 1, 32).getDate();
|
4232
|
+
var proxyPickerMethods = (picker, callback) => {
|
4233
|
+
var methods = ["setValues", "setIndexes", "setColumnIndex", "setColumnValue"];
|
4234
|
+
return new Proxy(picker, {
|
4235
|
+
get: (target, prop) => {
|
4236
|
+
if (methods.includes(prop)) {
|
4237
|
+
return function() {
|
4238
|
+
target[prop](...arguments);
|
4239
|
+
callback();
|
4240
|
+
};
|
4241
|
+
}
|
4242
|
+
return target[prop];
|
4243
|
+
}
|
4244
|
+
});
|
4245
|
+
};
|
4225
4246
|
var useHeight = (element) => {
|
4226
4247
|
var height = ref();
|
4227
4248
|
onMounted(() => nextTick(() => {
|
@@ -7956,7 +7977,7 @@ var TimePicker = defineComponent({
|
|
7956
7977
|
}
|
7957
7978
|
});
|
7958
7979
|
useExpose({
|
7959
|
-
getPicker: () => picker.value
|
7980
|
+
getPicker: () => picker.value && proxyPickerMethods(picker.value, updateInnerValue)
|
7960
7981
|
});
|
7961
7982
|
return () => createVNode(Picker, mergeProps({
|
7962
7983
|
"ref": picker,
|
@@ -8199,7 +8220,7 @@ var DatePicker = defineComponent({
|
|
8199
8220
|
}
|
8200
8221
|
});
|
8201
8222
|
useExpose({
|
8202
|
-
getPicker: () => picker.value
|
8223
|
+
getPicker: () => picker.value && proxyPickerMethods(picker.value, updateInnerValue)
|
8203
8224
|
});
|
8204
8225
|
return () => createVNode(Picker, mergeProps({
|
8205
8226
|
"ref": picker,
|
@@ -11639,7 +11660,7 @@ var _Pagination = defineComponent({
|
|
11639
11660
|
}, [createVNode("button", {
|
11640
11661
|
"type": "button",
|
11641
11662
|
"disabled": disabled,
|
11642
|
-
"onClick": () => updateModelValue(modelValue - 1)
|
11663
|
+
"onClick": () => updateModelValue(modelValue - 1, true)
|
11643
11664
|
}, [slot ? slot() : props.prevText || t$5("prev")])]);
|
11644
11665
|
};
|
11645
11666
|
var renderNextButton = () => {
|
@@ -11658,7 +11679,7 @@ var _Pagination = defineComponent({
|
|
11658
11679
|
}, [createVNode("button", {
|
11659
11680
|
"type": "button",
|
11660
11681
|
"disabled": disabled,
|
11661
|
-
"onClick": () => updateModelValue(modelValue + 1)
|
11682
|
+
"onClick": () => updateModelValue(modelValue + 1, true)
|
11662
11683
|
}, [slot ? slot() : props.nextText || t$5("next")])]);
|
11663
11684
|
};
|
11664
11685
|
var renderPages = () => pages.value.map((page) => createVNode("li", {
|
@@ -11669,7 +11690,7 @@ var _Pagination = defineComponent({
|
|
11669
11690
|
}, [createVNode("button", {
|
11670
11691
|
"type": "button",
|
11671
11692
|
"aria-current": page.active || void 0,
|
11672
|
-
"onClick": () => updateModelValue(page.number)
|
11693
|
+
"onClick": () => updateModelValue(page.number, true)
|
11673
11694
|
}, [slots.page ? slots.page(page) : page.text])]));
|
11674
11695
|
return () => createVNode("nav", {
|
11675
11696
|
"role": "navigation",
|
@@ -14308,7 +14329,7 @@ var _Uploader = defineComponent({
|
|
14308
14329
|
}
|
14309
14330
|
});
|
14310
14331
|
var Uploader = withInstall(_Uploader);
|
14311
|
-
var version = "3.3.
|
14332
|
+
var version = "3.3.7";
|
14312
14333
|
function install(app) {
|
14313
14334
|
var components = [ActionBar, ActionBarButton, ActionBarIcon, ActionSheet, AddressEdit, AddressList, Area, Badge, Button, Calendar, Card, Cascader, Cell, CellGroup, Checkbox, CheckboxGroup, Circle, Col, Collapse, CollapseItem, ConfigProvider, ContactCard, ContactEdit, ContactList, CountDown, Coupon, CouponCell, CouponList, DatetimePicker, Dialog, Divider, DropdownItem, DropdownMenu, Empty, Field, Form, Grid, GridItem, Icon, Image$1, ImagePreview, IndexAnchor, IndexBar, List, Loading, Locale, NavBar, NoticeBar, Notify, NumberKeyboard, Overlay, Pagination, PasswordInput, Picker, Popover, Popup, Progress, PullRefresh, Radio, RadioGroup, Rate, Row, Search, ShareSheet, Sidebar, SidebarItem, Skeleton, Slider, Step, Stepper, Steps, Sticky, SubmitBar, Swipe, SwipeCell, SwipeItem, Switch, Tab, Tabbar, TabbarItem, Tabs, Tag, Toast, TreeSelect, Uploader];
|
14314
14335
|
components.forEach((item) => {
|