vant 4.9.4 → 4.9.5

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.
@@ -96,6 +96,9 @@ var stdin_default = defineComponent({
96
96
  if (!Array.isArray(defaultDate)) {
97
97
  defaultDate = [];
98
98
  }
99
+ if (defaultDate.length === 1 && compareDay(defaultDate[0], now) === 1) {
100
+ defaultDate = [];
101
+ }
99
102
  const min = minDate.value;
100
103
  const max = maxDate.value;
101
104
  const start = limitDateRange(defaultDate[0] || now, min, max ? allowSameDay ? max : getPrevDay(max) : void 0);
@@ -411,9 +414,8 @@ var stdin_default = defineComponent({
411
414
  };
412
415
  watch(() => props.show, init);
413
416
  watch(() => [props.type, props.minDate, props.maxDate, props.switchMode], () => reset(getInitialDate(currentDate.value)));
414
- watch(() => props.defaultDate, (value = null) => {
415
- currentDate.value = value;
416
- scrollToCurrentDate();
417
+ watch(() => props.defaultDate, (value) => {
418
+ reset(value);
417
419
  });
418
420
  useExpose({
419
421
  reset,
@@ -1 +1 @@
1
- :root,:host{--van-calendar-background: var(--van-background-2);--van-calendar-popup-height: 80%;--van-calendar-header-shadow: 0 2px 10px rgba(125, 126, 128, .16);--van-calendar-header-title-height: 44px;--van-calendar-header-title-font-size: var(--van-font-size-lg);--van-calendar-header-subtitle-font-size: var(--van-font-size-md);--van-calendar-header-action-width: 28px;--van-calendar-header-action-color: var(--van-text-color);--van-calendar-header-action-disabled-color: var(--van-text-color-3);--van-calendar-weekdays-height: 30px;--van-calendar-weekdays-font-size: var(--van-font-size-sm);--van-calendar-month-title-font-size: var(--van-font-size-md);--van-calendar-month-mark-color: rgba(242, 243, 245, .8);--van-calendar-month-mark-font-size: 160px;--van-calendar-day-height: 64px;--van-calendar-day-font-size: var(--van-font-size-lg);--van-calendar-day-margin-bottom: 4px;--van-calendar-range-edge-color: var(--van-white);--van-calendar-range-edge-background: var(--van-primary-color);--van-calendar-range-middle-color: var(--van-primary-color);--van-calendar-range-middle-background-opacity: .1;--van-calendar-selected-day-size: 54px;--van-calendar-selected-day-color: var(--van-white);--van-calendar-info-font-size: var(--van-font-size-xs);--van-calendar-info-line-height: var(--van-line-height-xs);--van-calendar-selected-day-background: var(--van-primary-color);--van-calendar-day-disabled-color: var(--van-text-color-3);--van-calendar-confirm-button-height: 36px;--van-calendar-confirm-button-margin: 7px 0}.van-theme-dark{--van-calendar-month-mark-color: rgba(100, 101, 102, .2);--van-calendar-day-disabled-color: var(--van-gray-7)}.van-calendar{display:flex;flex-direction:column;height:100%;background:var(--van-calendar-background)}.van-calendar__popup.van-popup--top,.van-calendar__popup.van-popup--bottom{height:var(--van-calendar-popup-height)}.van-calendar__popup.van-popup--left,.van-calendar__popup.van-popup--right{height:100%}.van-calendar__popup .van-popup__close-icon{top:11px}.van-calendar__header{flex-shrink:0;box-shadow:var(--van-calendar-header-shadow)}.van-calendar__month-title,.van-calendar__header-title,.van-calendar__header-subtitle{color:var(--van-text-color);height:var(--van-calendar-header-title-height);font-weight:var(--van-font-bold);line-height:var(--van-calendar-header-title-height);text-align:center}.van-calendar__header-title{font-size:var(--van-calendar-header-title-font-size)}.van-calendar__header-subtitle{font-size:var(--van-calendar-header-subtitle-font-size)}.van-calendar__header-subtitle--with-swicth{display:flex;align-items:center;padding:0 var(--van-padding-base)}.van-calendar__header-subtitle-text{flex:1}.van-calendar__header-action{display:flex;align-items:center;justify-content:center;min-width:var(--van-calendar-header-action-width);height:100%;color:var(--van-calendar-header-action-color);cursor:pointer}.van-calendar__header-action--disabled{color:var(--van-calendar-header-action-disabled-color);cursor:not-allowed}.van-calendar__month-title{font-size:var(--van-calendar-month-title-font-size)}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--van-calendar-weekdays-font-size);line-height:var(--van-calendar-weekdays-height);text-align:center}.van-calendar__body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.van-calendar__days{position:relative;display:flex;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{position:absolute;top:50%;left:50%;z-index:0;color:var(--van-calendar-month-mark-color);font-size:var(--van-calendar-month-mark-font-size);transform:translate(-50%,-50%);pointer-events:none}.van-calendar__day,.van-calendar__selected-day{display:flex;align-items:center;justify-content:center;text-align:center}.van-calendar__day{position:relative;width:14.285%;height:var(--van-calendar-day-height);font-size:var(--van-calendar-day-font-size);margin-bottom:var(--van-calendar-day-margin-bottom);cursor:pointer}.van-calendar__day--end,.van-calendar__day--start,.van-calendar__day--start-end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected{color:var(--van-calendar-range-edge-color);background:var(--van-calendar-range-edge-background)}.van-calendar__day--start{border-radius:var(--van-radius-md) 0 0 var(--van-radius-md)}.van-calendar__day--end{border-radius:0 var(--van-radius-md) var(--van-radius-md) 0}.van-calendar__day--start-end,.van-calendar__day--multiple-selected{border-radius:var(--van-radius-md)}.van-calendar__day--middle{color:var(--van-calendar-range-middle-color)}.van-calendar__day--middle:after{position:absolute;top:0;right:0;bottom:0;left:0;background-color:currentColor;opacity:var(--van-calendar-range-middle-background-opacity);content:""}.van-calendar__day--disabled{color:var(--van-calendar-day-disabled-color);cursor:default}.van-calendar__top-info,.van-calendar__bottom-info{position:absolute;right:0;left:0;font-size:var(--van-calendar-info-font-size);line-height:var(--van-calendar-info-line-height)}@media (max-width: 350px){.van-calendar__top-info,.van-calendar__bottom-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{width:var(--van-calendar-selected-day-size);height:var(--van-calendar-selected-day-size);color:var(--van-calendar-selected-day-color);background:var(--van-calendar-selected-day-background);border-radius:var(--van-radius-md)}.van-calendar__footer{flex-shrink:0;padding-left:var(--van-padding-md);padding-right:var(--van-padding-md)}.van-calendar__confirm{height:var(--van-calendar-confirm-button-height);margin:var(--van-calendar-confirm-button-margin)}
1
+ :root,:host{--van-calendar-background: var(--van-background-2);--van-calendar-popup-height: 80%;--van-calendar-header-shadow: 0 2px 10px rgba(125, 126, 128, .16);--van-calendar-header-title-height: 44px;--van-calendar-header-title-font-size: var(--van-font-size-lg);--van-calendar-header-subtitle-font-size: var(--van-font-size-md);--van-calendar-header-action-width: 28px;--van-calendar-header-action-color: var(--van-text-color);--van-calendar-header-action-disabled-color: var(--van-text-color-3);--van-calendar-weekdays-height: 30px;--van-calendar-weekdays-font-size: var(--van-font-size-sm);--van-calendar-month-title-font-size: var(--van-font-size-md);--van-calendar-month-mark-color: rgba(242, 243, 245, .8);--van-calendar-month-mark-font-size: 160px;--van-calendar-day-height: 64px;--van-calendar-day-font-size: var(--van-font-size-lg);--van-calendar-day-margin-bottom: 4px;--van-calendar-day-disabled-color: var(--van-text-color-3);--van-calendar-range-edge-color: var(--van-white);--van-calendar-range-edge-background: var(--van-primary-color);--van-calendar-range-middle-color: var(--van-primary-color);--van-calendar-range-middle-background-opacity: .1;--van-calendar-selected-day-size: 54px;--van-calendar-selected-day-color: var(--van-white);--van-calendar-selected-day-background: var(--van-primary-color);--van-calendar-info-font-size: var(--van-font-size-xs);--van-calendar-info-line-height: var(--van-line-height-xs);--van-calendar-confirm-button-height: 36px;--van-calendar-confirm-button-margin: 7px 0}.van-theme-dark{--van-calendar-month-mark-color: rgba(100, 101, 102, .2);--van-calendar-day-disabled-color: var(--van-gray-7)}.van-calendar{display:flex;flex-direction:column;height:100%;background:var(--van-calendar-background)}.van-calendar__popup.van-popup--top,.van-calendar__popup.van-popup--bottom{height:var(--van-calendar-popup-height)}.van-calendar__popup.van-popup--left,.van-calendar__popup.van-popup--right{height:100%}.van-calendar__popup .van-popup__close-icon{top:11px}.van-calendar__header{flex-shrink:0;box-shadow:var(--van-calendar-header-shadow)}.van-calendar__month-title,.van-calendar__header-title,.van-calendar__header-subtitle{color:var(--van-text-color);height:var(--van-calendar-header-title-height);font-weight:var(--van-font-bold);line-height:var(--van-calendar-header-title-height);text-align:center}.van-calendar__header-title{font-size:var(--van-calendar-header-title-font-size)}.van-calendar__header-subtitle{font-size:var(--van-calendar-header-subtitle-font-size)}.van-calendar__header-subtitle--with-swicth{display:flex;align-items:center;padding:0 var(--van-padding-base)}.van-calendar__header-subtitle-text{flex:1}.van-calendar__header-action{display:flex;align-items:center;justify-content:center;min-width:var(--van-calendar-header-action-width);height:100%;color:var(--van-calendar-header-action-color);cursor:pointer}.van-calendar__header-action--disabled{color:var(--van-calendar-header-action-disabled-color);cursor:not-allowed}.van-calendar__month-title{font-size:var(--van-calendar-month-title-font-size)}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--van-calendar-weekdays-font-size);line-height:var(--van-calendar-weekdays-height);text-align:center}.van-calendar__body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.van-calendar__days{position:relative;display:flex;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{position:absolute;top:50%;left:50%;z-index:0;color:var(--van-calendar-month-mark-color);font-size:var(--van-calendar-month-mark-font-size);transform:translate(-50%,-50%);pointer-events:none}.van-calendar__day,.van-calendar__selected-day{display:flex;align-items:center;justify-content:center;text-align:center}.van-calendar__day{position:relative;width:14.285%;height:var(--van-calendar-day-height);font-size:var(--van-calendar-day-font-size);margin-bottom:var(--van-calendar-day-margin-bottom);cursor:pointer}.van-calendar__day--end,.van-calendar__day--start,.van-calendar__day--start-end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected{color:var(--van-calendar-range-edge-color);background:var(--van-calendar-range-edge-background)}.van-calendar__day--start{border-radius:var(--van-radius-md) 0 0 var(--van-radius-md)}.van-calendar__day--end{border-radius:0 var(--van-radius-md) var(--van-radius-md) 0}.van-calendar__day--start-end,.van-calendar__day--multiple-selected{border-radius:var(--van-radius-md)}.van-calendar__day--middle{color:var(--van-calendar-range-middle-color)}.van-calendar__day--middle:after{position:absolute;top:0;right:0;bottom:0;left:0;background-color:currentColor;opacity:var(--van-calendar-range-middle-background-opacity);content:""}.van-calendar__day--disabled{color:var(--van-calendar-day-disabled-color);cursor:default}.van-calendar__top-info,.van-calendar__bottom-info{position:absolute;right:0;left:0;font-size:var(--van-calendar-info-font-size);line-height:var(--van-calendar-info-line-height)}@media (max-width: 350px){.van-calendar__top-info,.van-calendar__bottom-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{width:var(--van-calendar-selected-day-size);height:var(--van-calendar-selected-day-size);color:var(--van-calendar-selected-day-color);background:var(--van-calendar-selected-day-background);border-radius:var(--van-radius-md)}.van-calendar__footer{flex-shrink:0;padding-left:var(--van-padding-md);padding-right:var(--van-padding-md)}.van-calendar__confirm{height:var(--van-calendar-confirm-button-height);margin:var(--van-calendar-confirm-button-margin)}
@@ -45,16 +45,16 @@ export type CalendarThemeVars = {
45
45
  calendarDayHeight?: string;
46
46
  calendarDayFontSize?: string;
47
47
  calendarDayMarginBottom?: string;
48
+ calendarDayDisabledColor?: string;
48
49
  calendarRangeEdgeColor?: string;
49
50
  calendarRangeEdgeBackground?: string;
50
51
  calendarRangeMiddleColor?: string;
51
52
  calendarRangeMiddleBackgroundOpacity?: number | string;
52
53
  calendarSelectedDaySize?: string;
53
54
  calendarSelectedDayColor?: string;
55
+ calendarSelectedDayBackground?: string;
54
56
  calendarInfoFontSize?: string;
55
57
  calendarInfoLineHeight?: number | string;
56
- calendarSelectedDayBackground?: string;
57
- calendarDayDisabledColor?: string;
58
58
  calendarConfirmButtonHeight?: string;
59
59
  calendarConfirmButtonMargin?: string;
60
60
  };
@@ -8,6 +8,8 @@ export declare const fieldSharedProps: {
8
8
  autofocus: BooleanConstructor;
9
9
  clearable: BooleanConstructor;
10
10
  maxlength: (NumberConstructor | StringConstructor)[];
11
+ max: NumberConstructor;
12
+ min: NumberConstructor;
11
13
  formatter: PropType<(value: string) => string>;
12
14
  clearIcon: {
13
15
  type: PropType<string>;
@@ -87,6 +89,8 @@ export declare const fieldProps: {
87
89
  autofocus: BooleanConstructor;
88
90
  clearable: BooleanConstructor;
89
91
  maxlength: (NumberConstructor | StringConstructor)[];
92
+ max: NumberConstructor;
93
+ min: NumberConstructor;
90
94
  formatter: PropType<(value: string) => string>;
91
95
  clearIcon: {
92
96
  type: PropType<string>;
@@ -184,6 +188,8 @@ declare const _default: import("vue").DefineComponent<{
184
188
  autofocus: BooleanConstructor;
185
189
  clearable: BooleanConstructor;
186
190
  maxlength: (NumberConstructor | StringConstructor)[];
191
+ max: NumberConstructor;
192
+ min: NumberConstructor;
187
193
  formatter: PropType<(value: string) => string>;
188
194
  clearIcon: {
189
195
  type: PropType<string>;
@@ -279,6 +285,8 @@ declare const _default: import("vue").DefineComponent<{
279
285
  autofocus: BooleanConstructor;
280
286
  clearable: BooleanConstructor;
281
287
  maxlength: (NumberConstructor | StringConstructor)[];
288
+ max: NumberConstructor;
289
+ min: NumberConstructor;
282
290
  formatter: PropType<(value: string) => string>;
283
291
  clearIcon: {
284
292
  type: PropType<string>;
@@ -1,6 +1,6 @@
1
1
  import { createTextVNode as _createTextVNode, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
2
2
  import { ref, watch, provide, computed, nextTick, reactive, onMounted, defineComponent } from "vue";
3
- import { isDef, extend, addUnit, toArray, FORM_KEY, numericProp, unknownProp, resetScroll, formatNumber, preventDefault, makeStringProp, makeNumericProp, createNamespace } from "../utils/index.mjs";
3
+ import { isDef, extend, addUnit, toArray, FORM_KEY, numericProp, unknownProp, resetScroll, formatNumber, preventDefault, makeStringProp, makeNumericProp, createNamespace, clamp } from "../utils/index.mjs";
4
4
  import { cutString, runSyncRule, endComposing, mapInputType, isEmptyValue, startComposing, getRuleMessage, resizeTextarea, getStringLength, runRuleValidator } from "./utils.mjs";
5
5
  import { cellSharedProps } from "../cell/Cell.mjs";
6
6
  import { useParent, useEventListener, CUSTOM_FIELD_INJECTION_KEY } from "@vant/use";
@@ -17,6 +17,8 @@ const fieldSharedProps = {
17
17
  autofocus: Boolean,
18
18
  clearable: Boolean,
19
19
  maxlength: numericProp,
20
+ max: Number,
21
+ min: Number,
20
22
  formatter: Function,
21
23
  clearIcon: makeStringProp("clear"),
22
24
  modelValue: makeNumericProp(""),
@@ -214,12 +216,17 @@ var stdin_default = defineComponent({
214
216
  return value;
215
217
  };
216
218
  const updateValue = (value, trigger = "onChange") => {
219
+ var _a, _b;
217
220
  const originalValue = value;
218
221
  value = limitValueLength(value);
219
222
  const limitDiffLen = getStringLength(originalValue) - getStringLength(value);
220
223
  if (props.type === "number" || props.type === "digit") {
221
224
  const isNumber = props.type === "number";
222
225
  value = formatNumber(value, isNumber, isNumber);
226
+ if (trigger === "onBlur" && value !== "") {
227
+ const adjustedValue = clamp(+value, (_a = props.min) != null ? _a : -Infinity, (_b = props.max) != null ? _b : Infinity);
228
+ value = adjustedValue.toString();
229
+ }
223
230
  }
224
231
  let formatterDiffLen = 0;
225
232
  if (props.formatter && trigger === props.formatTrigger) {
@@ -37,6 +37,8 @@ export declare const Field: import("../utils").WithInstall<import("vue").DefineC
37
37
  autofocus: BooleanConstructor;
38
38
  clearable: BooleanConstructor;
39
39
  maxlength: (NumberConstructor | StringConstructor)[];
40
+ max: NumberConstructor;
41
+ min: NumberConstructor;
40
42
  formatter: import("vue").PropType<(value: string) => string>;
41
43
  clearIcon: {
42
44
  type: import("vue").PropType<string>;
@@ -132,6 +134,8 @@ export declare const Field: import("../utils").WithInstall<import("vue").DefineC
132
134
  autofocus: BooleanConstructor;
133
135
  clearable: BooleanConstructor;
134
136
  maxlength: (NumberConstructor | StringConstructor)[];
137
+ max: NumberConstructor;
138
+ min: NumberConstructor;
135
139
  formatter: import("vue").PropType<(value: string) => string>;
136
140
  clearIcon: {
137
141
  type: import("vue").PropType<string>;
package/es/index.d.ts CHANGED
@@ -106,4 +106,4 @@ declare namespace _default {
106
106
  }
107
107
  export default _default;
108
108
  export function install(app: any): void;
109
- export const version: "4.9.4";
109
+ export const version: "4.9.5";
package/es/index.mjs CHANGED
@@ -99,7 +99,7 @@ import { Toast } from "./toast/index.mjs";
99
99
  import { TreeSelect } from "./tree-select/index.mjs";
100
100
  import { Uploader } from "./uploader/index.mjs";
101
101
  import { Watermark } from "./watermark/index.mjs";
102
- const version = "4.9.4";
102
+ const version = "4.9.5";
103
103
  function install(app) {
104
104
  const components = [
105
105
  ActionBar,
@@ -44,7 +44,7 @@ export declare const Lazyload: {
44
44
  install(app: App, options?: LazyloadOptions): void;
45
45
  };
46
46
 
47
- declare module '@vue/runtime-core' {
47
+ declare module 'vue' {
48
48
  interface ComponentCustomProperties {
49
49
  $Lazyload: {
50
50
  $on: (event: string, handler: Callback) => void;
@@ -13,6 +13,7 @@ export declare const overlayProps: {
13
13
  default: true;
14
14
  };
15
15
  customStyle: PropType<CSSProperties>;
16
+ teleport: PropType<string | import("vue").RendererElement | null | undefined>;
16
17
  };
17
18
  export type OverlayProps = ExtractPropTypes<typeof overlayProps>;
18
19
  declare const _default: import("vue").DefineComponent<{
@@ -29,6 +30,7 @@ declare const _default: import("vue").DefineComponent<{
29
30
  default: true;
30
31
  };
31
32
  customStyle: PropType<CSSProperties>;
33
+ teleport: PropType<string | import("vue").RendererElement | null | undefined>;
32
34
  }, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
33
35
  show: BooleanConstructor;
34
36
  zIndex: (NumberConstructor | StringConstructor)[];
@@ -43,6 +45,7 @@ declare const _default: import("vue").DefineComponent<{
43
45
  default: true;
44
46
  };
45
47
  customStyle: PropType<CSSProperties>;
48
+ teleport: PropType<string | import("vue").RendererElement | null | undefined>;
46
49
  }>>, {
47
50
  show: boolean;
48
51
  lockScroll: boolean;
@@ -1,5 +1,5 @@
1
1
  import { withDirectives as _withDirectives, createVNode as _createVNode, vShow as _vShow } from "vue";
2
- import { ref, Transition, defineComponent } from "vue";
2
+ import { ref, defineComponent, Teleport, Transition } from "vue";
3
3
  import { isDef, extend, truthProp, numericProp, unknownProp, preventDefault, createNamespace, getZIndexStyle } from "../utils/index.mjs";
4
4
  import { useEventListener } from "@vant/use";
5
5
  import { useLazyRender } from "../composables/use-lazy-render.mjs";
@@ -11,7 +11,8 @@ const overlayProps = {
11
11
  className: unknownProp,
12
12
  lockScroll: truthProp,
13
13
  lazyRender: truthProp,
14
- customStyle: Object
14
+ customStyle: Object,
15
+ teleport: [String, Object]
15
16
  };
16
17
  var stdin_default = defineComponent({
17
18
  name,
@@ -41,12 +42,22 @@ var stdin_default = defineComponent({
41
42
  useEventListener("touchmove", onTouchMove, {
42
43
  target: root
43
44
  });
44
- return () => _createVNode(Transition, {
45
- "name": "van-fade",
46
- "appear": true
47
- }, {
48
- default: renderOverlay
49
- });
45
+ return () => {
46
+ const Content = _createVNode(Transition, {
47
+ "name": "van-fade",
48
+ "appear": true
49
+ }, {
50
+ default: renderOverlay
51
+ });
52
+ if (props.teleport) {
53
+ return _createVNode(Teleport, {
54
+ "to": props.teleport
55
+ }, {
56
+ default: () => [Content]
57
+ });
58
+ }
59
+ return Content;
60
+ };
50
61
  }
51
62
  });
52
63
  export {
@@ -12,6 +12,7 @@ export declare const Overlay: import("../utils").WithInstall<import("vue").Defin
12
12
  default: true;
13
13
  };
14
14
  customStyle: import("vue").PropType<import("vue").CSSProperties>;
15
+ teleport: import("vue").PropType<string | import("vue").RendererElement | null | undefined>;
15
16
  }, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
16
17
  show: BooleanConstructor;
17
18
  zIndex: (NumberConstructor | StringConstructor)[];
@@ -26,6 +27,7 @@ export declare const Overlay: import("../utils").WithInstall<import("vue").Defin
26
27
  default: true;
27
28
  };
28
29
  customStyle: import("vue").PropType<import("vue").CSSProperties>;
30
+ teleport: import("vue").PropType<string | import("vue").RendererElement | null | undefined>;
29
31
  }>>, {
30
32
  show: boolean;
31
33
  lockScroll: boolean;
@@ -8,6 +8,8 @@ export declare const searchProps: {
8
8
  autofocus: BooleanConstructor;
9
9
  clearable: BooleanConstructor;
10
10
  maxlength: (NumberConstructor | StringConstructor)[];
11
+ max: NumberConstructor;
12
+ min: NumberConstructor;
11
13
  formatter: import("vue").PropType<(value: string) => string>;
12
14
  clearIcon: {
13
15
  type: import("vue").PropType<string>;
@@ -75,6 +77,8 @@ declare const _default: import("vue").DefineComponent<{
75
77
  autofocus: BooleanConstructor;
76
78
  clearable: BooleanConstructor;
77
79
  maxlength: (NumberConstructor | StringConstructor)[];
80
+ max: NumberConstructor;
81
+ min: NumberConstructor;
78
82
  formatter: import("vue").PropType<(value: string) => string>;
79
83
  clearIcon: {
80
84
  type: import("vue").PropType<string>;
@@ -140,6 +144,8 @@ declare const _default: import("vue").DefineComponent<{
140
144
  autofocus: BooleanConstructor;
141
145
  clearable: BooleanConstructor;
142
146
  maxlength: (NumberConstructor | StringConstructor)[];
147
+ max: NumberConstructor;
148
+ min: NumberConstructor;
143
149
  formatter: import("vue").PropType<(value: string) => string>;
144
150
  clearIcon: {
145
151
  type: import("vue").PropType<string>;
@@ -7,6 +7,8 @@ export declare const Search: import("../utils").WithInstall<import("vue").Define
7
7
  autofocus: BooleanConstructor;
8
8
  clearable: BooleanConstructor;
9
9
  maxlength: (NumberConstructor | StringConstructor)[];
10
+ max: NumberConstructor;
11
+ min: NumberConstructor;
10
12
  formatter: import("vue").PropType<(value: string) => string>;
11
13
  clearIcon: {
12
14
  type: import("vue").PropType<string>;
@@ -72,6 +74,8 @@ export declare const Search: import("../utils").WithInstall<import("vue").Define
72
74
  autofocus: BooleanConstructor;
73
75
  clearable: BooleanConstructor;
74
76
  maxlength: (NumberConstructor | StringConstructor)[];
77
+ max: NumberConstructor;
78
+ min: NumberConstructor;
75
79
  formatter: import("vue").PropType<(value: string) => string>;
76
80
  clearIcon: {
77
81
  type: import("vue").PropType<string>;
@@ -92,9 +92,9 @@ declare const _default: import("vue").DefineComponent<{
92
92
  max: string | number;
93
93
  disabled: boolean;
94
94
  vertical: boolean;
95
+ min: string | number;
95
96
  modelValue: SliderValue;
96
97
  readonly: boolean;
97
- min: string | number;
98
98
  step: string | number;
99
99
  }, {}>;
100
100
  export default _default;
@@ -61,9 +61,9 @@ export declare const Slider: import("../utils").WithInstall<import("vue").Define
61
61
  max: string | number;
62
62
  disabled: boolean;
63
63
  vertical: boolean;
64
+ min: string | number;
64
65
  modelValue: number | [number, number];
65
66
  readonly: boolean;
66
- min: string | number;
67
67
  step: string | number;
68
68
  }, {}>>;
69
69
  export default Slider;
@@ -129,6 +129,9 @@ var stdin_default = (0, import_vue2.defineComponent)({
129
129
  if (!Array.isArray(defaultDate)) {
130
130
  defaultDate = [];
131
131
  }
132
+ if (defaultDate.length === 1 && (0, import_utils2.compareDay)(defaultDate[0], now) === 1) {
133
+ defaultDate = [];
134
+ }
132
135
  const min = minDate.value;
133
136
  const max = maxDate.value;
134
137
  const start = limitDateRange(defaultDate[0] || now, min, max ? allowSameDay ? max : (0, import_utils2.getPrevDay)(max) : void 0);
@@ -444,9 +447,8 @@ var stdin_default = (0, import_vue2.defineComponent)({
444
447
  };
445
448
  (0, import_vue2.watch)(() => props.show, init);
446
449
  (0, import_vue2.watch)(() => [props.type, props.minDate, props.maxDate, props.switchMode], () => reset(getInitialDate(currentDate.value)));
447
- (0, import_vue2.watch)(() => props.defaultDate, (value = null) => {
448
- currentDate.value = value;
449
- scrollToCurrentDate();
450
+ (0, import_vue2.watch)(() => props.defaultDate, (value) => {
451
+ reset(value);
450
452
  });
451
453
  (0, import_use_expose.useExpose)({
452
454
  reset,
@@ -1 +1 @@
1
- :root,:host{--van-calendar-background: var(--van-background-2);--van-calendar-popup-height: 80%;--van-calendar-header-shadow: 0 2px 10px rgba(125, 126, 128, .16);--van-calendar-header-title-height: 44px;--van-calendar-header-title-font-size: var(--van-font-size-lg);--van-calendar-header-subtitle-font-size: var(--van-font-size-md);--van-calendar-header-action-width: 28px;--van-calendar-header-action-color: var(--van-text-color);--van-calendar-header-action-disabled-color: var(--van-text-color-3);--van-calendar-weekdays-height: 30px;--van-calendar-weekdays-font-size: var(--van-font-size-sm);--van-calendar-month-title-font-size: var(--van-font-size-md);--van-calendar-month-mark-color: rgba(242, 243, 245, .8);--van-calendar-month-mark-font-size: 160px;--van-calendar-day-height: 64px;--van-calendar-day-font-size: var(--van-font-size-lg);--van-calendar-day-margin-bottom: 4px;--van-calendar-range-edge-color: var(--van-white);--van-calendar-range-edge-background: var(--van-primary-color);--van-calendar-range-middle-color: var(--van-primary-color);--van-calendar-range-middle-background-opacity: .1;--van-calendar-selected-day-size: 54px;--van-calendar-selected-day-color: var(--van-white);--van-calendar-info-font-size: var(--van-font-size-xs);--van-calendar-info-line-height: var(--van-line-height-xs);--van-calendar-selected-day-background: var(--van-primary-color);--van-calendar-day-disabled-color: var(--van-text-color-3);--van-calendar-confirm-button-height: 36px;--van-calendar-confirm-button-margin: 7px 0}.van-theme-dark{--van-calendar-month-mark-color: rgba(100, 101, 102, .2);--van-calendar-day-disabled-color: var(--van-gray-7)}.van-calendar{display:flex;flex-direction:column;height:100%;background:var(--van-calendar-background)}.van-calendar__popup.van-popup--top,.van-calendar__popup.van-popup--bottom{height:var(--van-calendar-popup-height)}.van-calendar__popup.van-popup--left,.van-calendar__popup.van-popup--right{height:100%}.van-calendar__popup .van-popup__close-icon{top:11px}.van-calendar__header{flex-shrink:0;box-shadow:var(--van-calendar-header-shadow)}.van-calendar__month-title,.van-calendar__header-title,.van-calendar__header-subtitle{color:var(--van-text-color);height:var(--van-calendar-header-title-height);font-weight:var(--van-font-bold);line-height:var(--van-calendar-header-title-height);text-align:center}.van-calendar__header-title{font-size:var(--van-calendar-header-title-font-size)}.van-calendar__header-subtitle{font-size:var(--van-calendar-header-subtitle-font-size)}.van-calendar__header-subtitle--with-swicth{display:flex;align-items:center;padding:0 var(--van-padding-base)}.van-calendar__header-subtitle-text{flex:1}.van-calendar__header-action{display:flex;align-items:center;justify-content:center;min-width:var(--van-calendar-header-action-width);height:100%;color:var(--van-calendar-header-action-color);cursor:pointer}.van-calendar__header-action--disabled{color:var(--van-calendar-header-action-disabled-color);cursor:not-allowed}.van-calendar__month-title{font-size:var(--van-calendar-month-title-font-size)}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--van-calendar-weekdays-font-size);line-height:var(--van-calendar-weekdays-height);text-align:center}.van-calendar__body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.van-calendar__days{position:relative;display:flex;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{position:absolute;top:50%;left:50%;z-index:0;color:var(--van-calendar-month-mark-color);font-size:var(--van-calendar-month-mark-font-size);transform:translate(-50%,-50%);pointer-events:none}.van-calendar__day,.van-calendar__selected-day{display:flex;align-items:center;justify-content:center;text-align:center}.van-calendar__day{position:relative;width:14.285%;height:var(--van-calendar-day-height);font-size:var(--van-calendar-day-font-size);margin-bottom:var(--van-calendar-day-margin-bottom);cursor:pointer}.van-calendar__day--end,.van-calendar__day--start,.van-calendar__day--start-end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected{color:var(--van-calendar-range-edge-color);background:var(--van-calendar-range-edge-background)}.van-calendar__day--start{border-radius:var(--van-radius-md) 0 0 var(--van-radius-md)}.van-calendar__day--end{border-radius:0 var(--van-radius-md) var(--van-radius-md) 0}.van-calendar__day--start-end,.van-calendar__day--multiple-selected{border-radius:var(--van-radius-md)}.van-calendar__day--middle{color:var(--van-calendar-range-middle-color)}.van-calendar__day--middle:after{position:absolute;top:0;right:0;bottom:0;left:0;background-color:currentColor;opacity:var(--van-calendar-range-middle-background-opacity);content:""}.van-calendar__day--disabled{color:var(--van-calendar-day-disabled-color);cursor:default}.van-calendar__top-info,.van-calendar__bottom-info{position:absolute;right:0;left:0;font-size:var(--van-calendar-info-font-size);line-height:var(--van-calendar-info-line-height)}@media (max-width: 350px){.van-calendar__top-info,.van-calendar__bottom-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{width:var(--van-calendar-selected-day-size);height:var(--van-calendar-selected-day-size);color:var(--van-calendar-selected-day-color);background:var(--van-calendar-selected-day-background);border-radius:var(--van-radius-md)}.van-calendar__footer{flex-shrink:0;padding-left:var(--van-padding-md);padding-right:var(--van-padding-md)}.van-calendar__confirm{height:var(--van-calendar-confirm-button-height);margin:var(--van-calendar-confirm-button-margin)}
1
+ :root,:host{--van-calendar-background: var(--van-background-2);--van-calendar-popup-height: 80%;--van-calendar-header-shadow: 0 2px 10px rgba(125, 126, 128, .16);--van-calendar-header-title-height: 44px;--van-calendar-header-title-font-size: var(--van-font-size-lg);--van-calendar-header-subtitle-font-size: var(--van-font-size-md);--van-calendar-header-action-width: 28px;--van-calendar-header-action-color: var(--van-text-color);--van-calendar-header-action-disabled-color: var(--van-text-color-3);--van-calendar-weekdays-height: 30px;--van-calendar-weekdays-font-size: var(--van-font-size-sm);--van-calendar-month-title-font-size: var(--van-font-size-md);--van-calendar-month-mark-color: rgba(242, 243, 245, .8);--van-calendar-month-mark-font-size: 160px;--van-calendar-day-height: 64px;--van-calendar-day-font-size: var(--van-font-size-lg);--van-calendar-day-margin-bottom: 4px;--van-calendar-day-disabled-color: var(--van-text-color-3);--van-calendar-range-edge-color: var(--van-white);--van-calendar-range-edge-background: var(--van-primary-color);--van-calendar-range-middle-color: var(--van-primary-color);--van-calendar-range-middle-background-opacity: .1;--van-calendar-selected-day-size: 54px;--van-calendar-selected-day-color: var(--van-white);--van-calendar-selected-day-background: var(--van-primary-color);--van-calendar-info-font-size: var(--van-font-size-xs);--van-calendar-info-line-height: var(--van-line-height-xs);--van-calendar-confirm-button-height: 36px;--van-calendar-confirm-button-margin: 7px 0}.van-theme-dark{--van-calendar-month-mark-color: rgba(100, 101, 102, .2);--van-calendar-day-disabled-color: var(--van-gray-7)}.van-calendar{display:flex;flex-direction:column;height:100%;background:var(--van-calendar-background)}.van-calendar__popup.van-popup--top,.van-calendar__popup.van-popup--bottom{height:var(--van-calendar-popup-height)}.van-calendar__popup.van-popup--left,.van-calendar__popup.van-popup--right{height:100%}.van-calendar__popup .van-popup__close-icon{top:11px}.van-calendar__header{flex-shrink:0;box-shadow:var(--van-calendar-header-shadow)}.van-calendar__month-title,.van-calendar__header-title,.van-calendar__header-subtitle{color:var(--van-text-color);height:var(--van-calendar-header-title-height);font-weight:var(--van-font-bold);line-height:var(--van-calendar-header-title-height);text-align:center}.van-calendar__header-title{font-size:var(--van-calendar-header-title-font-size)}.van-calendar__header-subtitle{font-size:var(--van-calendar-header-subtitle-font-size)}.van-calendar__header-subtitle--with-swicth{display:flex;align-items:center;padding:0 var(--van-padding-base)}.van-calendar__header-subtitle-text{flex:1}.van-calendar__header-action{display:flex;align-items:center;justify-content:center;min-width:var(--van-calendar-header-action-width);height:100%;color:var(--van-calendar-header-action-color);cursor:pointer}.van-calendar__header-action--disabled{color:var(--van-calendar-header-action-disabled-color);cursor:not-allowed}.van-calendar__month-title{font-size:var(--van-calendar-month-title-font-size)}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--van-calendar-weekdays-font-size);line-height:var(--van-calendar-weekdays-height);text-align:center}.van-calendar__body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.van-calendar__days{position:relative;display:flex;flex-wrap:wrap;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{position:absolute;top:50%;left:50%;z-index:0;color:var(--van-calendar-month-mark-color);font-size:var(--van-calendar-month-mark-font-size);transform:translate(-50%,-50%);pointer-events:none}.van-calendar__day,.van-calendar__selected-day{display:flex;align-items:center;justify-content:center;text-align:center}.van-calendar__day{position:relative;width:14.285%;height:var(--van-calendar-day-height);font-size:var(--van-calendar-day-font-size);margin-bottom:var(--van-calendar-day-margin-bottom);cursor:pointer}.van-calendar__day--end,.van-calendar__day--start,.van-calendar__day--start-end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected{color:var(--van-calendar-range-edge-color);background:var(--van-calendar-range-edge-background)}.van-calendar__day--start{border-radius:var(--van-radius-md) 0 0 var(--van-radius-md)}.van-calendar__day--end{border-radius:0 var(--van-radius-md) var(--van-radius-md) 0}.van-calendar__day--start-end,.van-calendar__day--multiple-selected{border-radius:var(--van-radius-md)}.van-calendar__day--middle{color:var(--van-calendar-range-middle-color)}.van-calendar__day--middle:after{position:absolute;top:0;right:0;bottom:0;left:0;background-color:currentColor;opacity:var(--van-calendar-range-middle-background-opacity);content:""}.van-calendar__day--disabled{color:var(--van-calendar-day-disabled-color);cursor:default}.van-calendar__top-info,.van-calendar__bottom-info{position:absolute;right:0;left:0;font-size:var(--van-calendar-info-font-size);line-height:var(--van-calendar-info-line-height)}@media (max-width: 350px){.van-calendar__top-info,.van-calendar__bottom-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{width:var(--van-calendar-selected-day-size);height:var(--van-calendar-selected-day-size);color:var(--van-calendar-selected-day-color);background:var(--van-calendar-selected-day-background);border-radius:var(--van-radius-md)}.van-calendar__footer{flex-shrink:0;padding-left:var(--van-padding-md);padding-right:var(--van-padding-md)}.van-calendar__confirm{height:var(--van-calendar-confirm-button-height);margin:var(--van-calendar-confirm-button-margin)}
@@ -45,16 +45,16 @@ export type CalendarThemeVars = {
45
45
  calendarDayHeight?: string;
46
46
  calendarDayFontSize?: string;
47
47
  calendarDayMarginBottom?: string;
48
+ calendarDayDisabledColor?: string;
48
49
  calendarRangeEdgeColor?: string;
49
50
  calendarRangeEdgeBackground?: string;
50
51
  calendarRangeMiddleColor?: string;
51
52
  calendarRangeMiddleBackgroundOpacity?: number | string;
52
53
  calendarSelectedDaySize?: string;
53
54
  calendarSelectedDayColor?: string;
55
+ calendarSelectedDayBackground?: string;
54
56
  calendarInfoFontSize?: string;
55
57
  calendarInfoLineHeight?: number | string;
56
- calendarSelectedDayBackground?: string;
57
- calendarDayDisabledColor?: string;
58
58
  calendarConfirmButtonHeight?: string;
59
59
  calendarConfirmButtonMargin?: string;
60
60
  };
@@ -8,6 +8,8 @@ export declare const fieldSharedProps: {
8
8
  autofocus: BooleanConstructor;
9
9
  clearable: BooleanConstructor;
10
10
  maxlength: (NumberConstructor | StringConstructor)[];
11
+ max: NumberConstructor;
12
+ min: NumberConstructor;
11
13
  formatter: PropType<(value: string) => string>;
12
14
  clearIcon: {
13
15
  type: PropType<string>;
@@ -87,6 +89,8 @@ export declare const fieldProps: {
87
89
  autofocus: BooleanConstructor;
88
90
  clearable: BooleanConstructor;
89
91
  maxlength: (NumberConstructor | StringConstructor)[];
92
+ max: NumberConstructor;
93
+ min: NumberConstructor;
90
94
  formatter: PropType<(value: string) => string>;
91
95
  clearIcon: {
92
96
  type: PropType<string>;
@@ -184,6 +188,8 @@ declare const _default: import("vue").DefineComponent<{
184
188
  autofocus: BooleanConstructor;
185
189
  clearable: BooleanConstructor;
186
190
  maxlength: (NumberConstructor | StringConstructor)[];
191
+ max: NumberConstructor;
192
+ min: NumberConstructor;
187
193
  formatter: PropType<(value: string) => string>;
188
194
  clearIcon: {
189
195
  type: PropType<string>;
@@ -279,6 +285,8 @@ declare const _default: import("vue").DefineComponent<{
279
285
  autofocus: BooleanConstructor;
280
286
  clearable: BooleanConstructor;
281
287
  maxlength: (NumberConstructor | StringConstructor)[];
288
+ max: NumberConstructor;
289
+ min: NumberConstructor;
282
290
  formatter: PropType<(value: string) => string>;
283
291
  clearIcon: {
284
292
  type: PropType<string>;
@@ -41,6 +41,8 @@ const fieldSharedProps = {
41
41
  autofocus: Boolean,
42
42
  clearable: Boolean,
43
43
  maxlength: import_utils.numericProp,
44
+ max: Number,
45
+ min: Number,
44
46
  formatter: Function,
45
47
  clearIcon: (0, import_utils.makeStringProp)("clear"),
46
48
  modelValue: (0, import_utils.makeNumericProp)(""),
@@ -238,12 +240,17 @@ var stdin_default = (0, import_vue2.defineComponent)({
238
240
  return value;
239
241
  };
240
242
  const updateValue = (value, trigger = "onChange") => {
243
+ var _a, _b;
241
244
  const originalValue = value;
242
245
  value = limitValueLength(value);
243
246
  const limitDiffLen = (0, import_utils2.getStringLength)(originalValue) - (0, import_utils2.getStringLength)(value);
244
247
  if (props.type === "number" || props.type === "digit") {
245
248
  const isNumber = props.type === "number";
246
249
  value = (0, import_utils.formatNumber)(value, isNumber, isNumber);
250
+ if (trigger === "onBlur" && value !== "") {
251
+ const adjustedValue = (0, import_utils.clamp)(+value, (_a = props.min) != null ? _a : -Infinity, (_b = props.max) != null ? _b : Infinity);
252
+ value = adjustedValue.toString();
253
+ }
247
254
  }
248
255
  let formatterDiffLen = 0;
249
256
  if (props.formatter && trigger === props.formatTrigger) {
@@ -37,6 +37,8 @@ export declare const Field: import("../utils").WithInstall<import("vue").DefineC
37
37
  autofocus: BooleanConstructor;
38
38
  clearable: BooleanConstructor;
39
39
  maxlength: (NumberConstructor | StringConstructor)[];
40
+ max: NumberConstructor;
41
+ min: NumberConstructor;
40
42
  formatter: import("vue").PropType<(value: string) => string>;
41
43
  clearIcon: {
42
44
  type: import("vue").PropType<string>;
@@ -132,6 +134,8 @@ export declare const Field: import("../utils").WithInstall<import("vue").DefineC
132
134
  autofocus: BooleanConstructor;
133
135
  clearable: BooleanConstructor;
134
136
  maxlength: (NumberConstructor | StringConstructor)[];
137
+ max: NumberConstructor;
138
+ min: NumberConstructor;
135
139
  formatter: import("vue").PropType<(value: string) => string>;
136
140
  clearIcon: {
137
141
  type: import("vue").PropType<string>;