@varlet/ui 3.4.0 → 3.5.0-alpha.1726249557629

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/lib/varlet.cjs.js CHANGED
@@ -9,8 +9,8 @@ const context = {
9
9
  const _ContextComponent = vue.reactive(context);
10
10
  var stdin_default$5Z = vue.reactive(context);
11
11
  var __defProp$z = Object.defineProperty;
12
- var __defProps$c = Object.defineProperties;
13
- var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
12
+ var __defProps$d = Object.defineProperties;
13
+ var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
14
14
  var __getOwnPropSymbols$z = Object.getOwnPropertySymbols;
15
15
  var __hasOwnProp$z = Object.prototype.hasOwnProperty;
16
16
  var __propIsEnum$z = Object.prototype.propertyIsEnumerable;
@@ -26,7 +26,7 @@ var __spreadValues$z = (a, b) => {
26
26
  }
27
27
  return a;
28
28
  };
29
- var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
29
+ var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
30
30
  var isString = (val) => typeof val === "string";
31
31
  var isBoolean = (val) => typeof val === "boolean";
32
32
  var isNumber = (val) => typeof val === "number";
@@ -117,7 +117,7 @@ var getRect = (element) => {
117
117
  width,
118
118
  height
119
119
  };
120
- return __spreadProps$c(__spreadValues$z({}, rect), {
120
+ return __spreadProps$d(__spreadValues$z({}, rect), {
121
121
  toJSON: () => rect
122
122
  });
123
123
  }
@@ -629,8 +629,8 @@ function useVModel(props2, key, options = {}) {
629
629
  return proxy;
630
630
  }
631
631
  var __defProp$x = Object.defineProperty;
632
- var __defProps$b = Object.defineProperties;
633
- var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
632
+ var __defProps$c = Object.defineProperties;
633
+ var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
634
634
  var __getOwnPropSymbols$x = Object.getOwnPropertySymbols;
635
635
  var __hasOwnProp$x = Object.prototype.hasOwnProperty;
636
636
  var __propIsEnum$x = Object.prototype.propertyIsEnumerable;
@@ -646,7 +646,7 @@ var __spreadValues$x = (a, b) => {
646
646
  }
647
647
  return a;
648
648
  };
649
- var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
649
+ var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
650
650
  var __async$j = (__this, __arguments, generator) => {
651
651
  return new Promise((resolve, reject) => {
652
652
  var fulfilled = (value) => {
@@ -691,7 +691,7 @@ function withPropsDefaultsSetter(target, props2) {
691
691
  return;
692
692
  }
693
693
  if (isPlainObject(prop)) {
694
- props2[key] = __spreadProps$b(__spreadValues$x({}, prop), {
694
+ props2[key] = __spreadProps$c(__spreadValues$x({}, prop), {
695
695
  default: value
696
696
  });
697
697
  return;
@@ -742,17 +742,28 @@ function flatFragment(vNodes) {
742
742
  });
743
743
  return result;
744
744
  }
745
+ function isZodRule(rule) {
746
+ return isPlainObject(rule) && isFunction(rule.safeParseAsync);
747
+ }
748
+ function isZodResult(result) {
749
+ return isPlainObject(result) && hasOwn(result, "success");
750
+ }
745
751
  function useValidation() {
746
752
  const errorMessage = vue.ref("");
747
- const validate = (rules, value, apis) => __async$j(this, null, function* () {
748
- if (!isArray(rules) || !rules.length) {
749
- return true;
750
- }
751
- const resArr = yield Promise.all(rules.map((rule) => rule(value, apis)));
753
+ const validate = (ruleOrRules, value, apis) => __async$j(this, null, function* () {
754
+ const rules = normalizeToArray(ruleOrRules).filter((rule) => isZodRule(rule) || isFunction(rule));
755
+ const results = yield Promise.all(
756
+ rules.map((rule) => isZodRule(rule) ? rule.safeParseAsync(value) : rule(value, apis))
757
+ );
752
758
  resetValidation();
753
- return !resArr.some((res) => {
754
- if (res !== true) {
755
- errorMessage.value = String(res);
759
+ return !results.some((result) => {
760
+ if (isZodResult(result)) {
761
+ if (result.success === false) {
762
+ errorMessage.value = result.error.issues[0].message;
763
+ return true;
764
+ }
765
+ } else if (result !== true) {
766
+ errorMessage.value = String(result);
756
767
  return true;
757
768
  }
758
769
  return false;
@@ -820,8 +831,8 @@ const MaybeVNode = vue.defineComponent({
820
831
  }
821
832
  });
822
833
  var __defProp$w = Object.defineProperty;
823
- var __defProps$a = Object.defineProperties;
824
- var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
834
+ var __defProps$b = Object.defineProperties;
835
+ var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
825
836
  var __getOwnPropSymbols$w = Object.getOwnPropertySymbols;
826
837
  var __hasOwnProp$w = Object.prototype.hasOwnProperty;
827
838
  var __propIsEnum$w = Object.prototype.propertyIsEnumerable;
@@ -837,7 +848,7 @@ var __spreadValues$w = (a, b) => {
837
848
  }
838
849
  return a;
839
850
  };
840
- var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
851
+ var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
841
852
  const { n: n$1s } = createNamespace("ripple");
842
853
  const ANIMATION_DURATION$1 = 250;
843
854
  function setStyles(element) {
@@ -934,7 +945,7 @@ function removeKeyboardRipple() {
934
945
  }
935
946
  function mounted$2(el, binding) {
936
947
  var _a;
937
- el._ripple = __spreadProps$a(__spreadValues$w({
948
+ el._ripple = __spreadProps$b(__spreadValues$w({
938
949
  tasker: null
939
950
  }, (_a = binding.value) != null ? _a : {}), {
940
951
  removeRipple: removeRipple.bind(el)
@@ -3222,8 +3233,8 @@ withPropsDefaultsSetter(stdin_default$5D, props$1b);
3222
3233
  const _FieldDecoratorComponent = stdin_default$5D;
3223
3234
  var stdin_default$5C = stdin_default$5D;
3224
3235
  var __defProp$r = Object.defineProperty;
3225
- var __defProps$9 = Object.defineProperties;
3226
- var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
3236
+ var __defProps$a = Object.defineProperties;
3237
+ var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
3227
3238
  var __getOwnPropSymbols$r = Object.getOwnPropertySymbols;
3228
3239
  var __hasOwnProp$r = Object.prototype.hasOwnProperty;
3229
3240
  var __propIsEnum$r = Object.prototype.propertyIsEnumerable;
@@ -3239,8 +3250,8 @@ var __spreadValues$r = (a, b) => {
3239
3250
  }
3240
3251
  return a;
3241
3252
  };
3242
- var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
3243
- const props$1a = __spreadProps$9(__spreadValues$r({
3253
+ var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
3254
+ const props$1a = __spreadProps$a(__spreadValues$r({
3244
3255
  modelValue: String,
3245
3256
  modelModifiers: {
3246
3257
  type: Object,
@@ -3263,7 +3274,7 @@ const props$1a = __spreadProps$9(__spreadValues$r({
3263
3274
  type: Array,
3264
3275
  default: () => ["onInput", "onClear"]
3265
3276
  },
3266
- rules: Array,
3277
+ rules: [Array, Function, Object],
3267
3278
  enterkeyhint: String,
3268
3279
  onFocus: defineListenerProp(),
3269
3280
  onBlur: defineListenerProp(),
@@ -3301,8 +3312,8 @@ const props$1a = __spreadProps$9(__spreadValues$r({
3301
3312
  // internal end
3302
3313
  });
3303
3314
  var __defProp$q = Object.defineProperty;
3304
- var __defProps$8 = Object.defineProperties;
3305
- var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
3315
+ var __defProps$9 = Object.defineProperties;
3316
+ var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
3306
3317
  var __getOwnPropSymbols$q = Object.getOwnPropertySymbols;
3307
3318
  var __hasOwnProp$q = Object.prototype.hasOwnProperty;
3308
3319
  var __propIsEnum$q = Object.prototype.propertyIsEnumerable;
@@ -3318,13 +3329,13 @@ var __spreadValues$q = (a, b) => {
3318
3329
  }
3319
3330
  return a;
3320
3331
  };
3321
- var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
3332
+ var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
3322
3333
  const FORM_BIND_FORM_ITEM_KEY = Symbol("FORM_BIND_FORM_ITEM_KEY");
3323
3334
  function useForm() {
3324
3335
  const { parentProvider, index, bindParent } = useParent(FORM_BIND_FORM_ITEM_KEY);
3325
3336
  const instance = vue.getCurrentInstance();
3326
3337
  const bindForm = bindParent ? (formItemProvider) => {
3327
- bindParent(__spreadProps$8(__spreadValues$q({}, formItemProvider), { instance }));
3338
+ bindParent(__spreadProps$9(__spreadValues$q({}, formItemProvider), { instance }));
3328
3339
  } : null;
3329
3340
  return {
3330
3341
  index,
@@ -5027,8 +5038,8 @@ var createPopper = /* @__PURE__ */ popperGenerator({
5027
5038
  defaultModifiers
5028
5039
  });
5029
5040
  var __defProp$p = Object.defineProperty;
5030
- var __defProps$7 = Object.defineProperties;
5031
- var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
5041
+ var __defProps$8 = Object.defineProperties;
5042
+ var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
5032
5043
  var __getOwnPropSymbols$p = Object.getOwnPropertySymbols;
5033
5044
  var __hasOwnProp$p = Object.prototype.hasOwnProperty;
5034
5045
  var __propIsEnum$p = Object.prototype.propertyIsEnumerable;
@@ -5044,7 +5055,7 @@ var __spreadValues$p = (a, b) => {
5044
5055
  }
5045
5056
  return a;
5046
5057
  };
5047
- var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
5058
+ var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
5048
5059
  var __async$g = (__this, __arguments, generator) => {
5049
5060
  return new Promise((resolve, reject) => {
5050
5061
  var fulfilled = (value) => {
@@ -5303,15 +5314,15 @@ function usePopover(options) {
5303
5314
  function getPopperOptions() {
5304
5315
  const { placement, skidding, distance } = getPosition();
5305
5316
  const modifiers = [
5306
- __spreadProps$7(__spreadValues$p({}, flip$1), {
5317
+ __spreadProps$8(__spreadValues$p({}, flip$1), {
5307
5318
  enabled: show.value
5308
5319
  }),
5309
- __spreadProps$7(__spreadValues$p({}, offset$1), {
5320
+ __spreadProps$8(__spreadValues$p({}, offset$1), {
5310
5321
  options: {
5311
5322
  offset: [skidding, distance]
5312
5323
  }
5313
5324
  }),
5314
- __spreadProps$7(__spreadValues$p({}, computeStyles$1), {
5325
+ __spreadProps$8(__spreadValues$p({}, computeStyles$1), {
5315
5326
  options: {
5316
5327
  adaptive: false,
5317
5328
  gpuAcceleration: false
@@ -5521,7 +5532,7 @@ const props$18 = {
5521
5532
  type: Array,
5522
5533
  default: () => ["onChange"]
5523
5534
  },
5524
- rules: Array,
5535
+ rules: [Array, Function, Object],
5525
5536
  onClick: defineListenerProp(),
5526
5537
  onChange: defineListenerProp(),
5527
5538
  "onUpdate:modelValue": defineListenerProp(),
@@ -5987,6 +5998,8 @@ withPropsDefaultsSetter(stdin_default$5v, props$17);
5987
5998
  const _MenuOptionComponent = stdin_default$5v;
5988
5999
  var stdin_default$5u = stdin_default$5v;
5989
6000
  var __defProp$o = Object.defineProperty;
6001
+ var __defProps$7 = Object.defineProperties;
6002
+ var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
5990
6003
  var __getOwnPropSymbols$o = Object.getOwnPropertySymbols;
5991
6004
  var __hasOwnProp$o = Object.prototype.hasOwnProperty;
5992
6005
  var __propIsEnum$o = Object.prototype.propertyIsEnumerable;
@@ -6002,7 +6015,8 @@ var __spreadValues$o = (a, b) => {
6002
6015
  }
6003
6016
  return a;
6004
6017
  };
6005
- const props$16 = __spreadValues$o({
6018
+ var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
6019
+ const props$16 = __spreadProps$7(__spreadValues$o({
6006
6020
  modelValue: {
6007
6021
  type: [String, Number, Boolean, Array],
6008
6022
  default: void 0
@@ -6050,7 +6064,11 @@ const props$16 = __spreadValues$o({
6050
6064
  "onClosed",
6051
6065
  "onClickOutside",
6052
6066
  "onUpdate:show"
6053
- ]));
6067
+ ])), {
6068
+ // internal start
6069
+ onKeyEscape: defineListenerProp()
6070
+ // internal end
6071
+ });
6054
6072
  function useSelectController(options) {
6055
6073
  const {
6056
6074
  multiple: multipleGetter,
@@ -6220,6 +6238,7 @@ const __sfc__$1f = vue.defineComponent({
6220
6238
  if (key === "Escape") {
6221
6239
  menu.value.$el.focus();
6222
6240
  close();
6241
+ call(props2.onKeyEscape);
6223
6242
  return;
6224
6243
  }
6225
6244
  if (key === "ArrowDown" || key === "ArrowUp") {
@@ -6295,7 +6314,7 @@ const props$15 = __spreadValues$n({
6295
6314
  default: () => ["onInput", "onClear", "onChange"]
6296
6315
  },
6297
6316
  getShow: Function,
6298
- rules: Array,
6317
+ rules: [Array, Function, Object],
6299
6318
  onFocus: defineListenerProp(),
6300
6319
  onBlur: defineListenerProp(),
6301
6320
  onInput: defineListenerProp(),
@@ -6360,7 +6379,8 @@ function __render__$1c(_ctx, _cache) {
6360
6379
  "popover-class": _ctx.variant === "standard" ? _ctx.n("--standard-menu-margin") : void 0,
6361
6380
  show: _ctx.isShowMenuSelect,
6362
6381
  "onUpdate:show": _cache[1] || (_cache[1] = ($event) => _ctx.isShowMenuSelect = $event),
6363
- "onUpdate:modelValue": _ctx.handleAutoComplete
6382
+ "onUpdate:modelValue": _ctx.handleAutoComplete,
6383
+ onKeyEscape: _ctx.handleKeyEscape
6364
6384
  }, {
6365
6385
  options: vue.withCtx(() => [
6366
6386
  vue.createElementVNode(
@@ -6451,7 +6471,7 @@ function __render__$1c(_ctx, _cache) {
6451
6471
  ]),
6452
6472
  _: 3
6453
6473
  /* FORWARDED */
6454
- }, 8, ["disabled", "class", "popover-class", "show", "onUpdate:modelValue"]),
6474
+ }, 8, ["disabled", "class", "popover-class", "show", "onUpdate:modelValue", "onKeyEscape"]),
6455
6475
  vue.createVNode(_component_var_form_details, {
6456
6476
  "error-message": _ctx.errorMessage,
6457
6477
  "extra-message": _ctx.maxlengthText
@@ -6608,15 +6628,22 @@ const __sfc__$1e = vue.defineComponent({
6608
6628
  validateWithTrigger("onChange");
6609
6629
  }
6610
6630
  function handleAutoComplete(newValue) {
6611
- if (props2.maxlength != null) {
6612
- newValue = newValue.slice(0, toNumber(props2.maxlength));
6613
- }
6614
- if (newValue === value.value) {
6615
- return;
6616
- }
6617
- value.value = newValue;
6618
- call(props2.onChange, newValue);
6619
- validateWithTrigger("onChange");
6631
+ return __async$f(this, null, function* () {
6632
+ var _a;
6633
+ if (props2.maxlength != null) {
6634
+ newValue = newValue.slice(0, toNumber(props2.maxlength));
6635
+ }
6636
+ if (newValue !== value.value) {
6637
+ value.value = newValue;
6638
+ call(props2.onChange, newValue);
6639
+ validateWithTrigger("onChange");
6640
+ }
6641
+ yield raf();
6642
+ (_a = input.value) == null ? void 0 : _a.focus();
6643
+ });
6644
+ }
6645
+ function handleKeyEscape() {
6646
+ input.value.focus();
6620
6647
  }
6621
6648
  function getShowMenuSelect(newValue) {
6622
6649
  if (props2.disabled || props2.readonly || (form == null ? void 0 : form.disabled.value) || (form == null ? void 0 : form.readonly.value)) {
@@ -6641,6 +6668,7 @@ const __sfc__$1e = vue.defineComponent({
6641
6668
  handleClick,
6642
6669
  handleChange,
6643
6670
  handleBlur,
6671
+ handleKeyEscape,
6644
6672
  handleAutoComplete,
6645
6673
  reset,
6646
6674
  validate,
@@ -8961,7 +8989,7 @@ const props$T = {
8961
8989
  type: Array,
8962
8990
  default: () => ["onChange"]
8963
8991
  },
8964
- rules: Array,
8992
+ rules: [Array, Function, Object],
8965
8993
  onChange: defineListenerProp(),
8966
8994
  "onUpdate:modelValue": defineListenerProp()
8967
8995
  };
@@ -12376,7 +12404,7 @@ const props$M = {
12376
12404
  type: Array,
12377
12405
  default: () => ["onInputChange", "onLazyChange", "onIncrement", "onDecrement"]
12378
12406
  },
12379
- rules: Array,
12407
+ rules: [Array, Function, Object],
12380
12408
  onBeforeChange: defineListenerProp(),
12381
12409
  onChange: defineListenerProp(),
12382
12410
  onIncrement: defineListenerProp(),
@@ -15815,6 +15843,7 @@ const props$G = {
15815
15843
  default: "default"
15816
15844
  },
15817
15845
  color: String,
15846
+ textColor: String,
15818
15847
  content: String,
15819
15848
  show: Boolean,
15820
15849
  disabled: Boolean,
@@ -15895,7 +15924,11 @@ function __render__$J(_ctx, _cache) {
15895
15924
  vue.createElementVNode(
15896
15925
  "div",
15897
15926
  {
15898
- style: vue.normalizeStyle({ background: _ctx.color, width: _ctx.sameWidth ? _ctx.toSizeUnit(Math.ceil(_ctx.hostSize.width)) : void 0 }),
15927
+ style: vue.normalizeStyle({
15928
+ background: _ctx.color,
15929
+ color: _ctx.textColor,
15930
+ width: _ctx.sameWidth ? _ctx.toSizeUnit(Math.ceil(_ctx.hostSize.width)) : void 0
15931
+ }),
15899
15932
  class: vue.normalizeClass(_ctx.classes(_ctx.n("content-container"), _ctx.n(`--${_ctx.type}`))),
15900
15933
  role: "tooltip"
15901
15934
  },
@@ -20679,7 +20712,7 @@ const props$l = {
20679
20712
  type: Array,
20680
20713
  default: () => ["onChange"]
20681
20714
  },
20682
- rules: Array,
20715
+ rules: [Array, Function, Object],
20683
20716
  onClick: defineListenerProp(),
20684
20717
  onChange: defineListenerProp(),
20685
20718
  "onUpdate:modelValue": defineListenerProp()
@@ -20960,7 +20993,7 @@ const props$k = {
20960
20993
  type: Array,
20961
20994
  default: () => ["onChange"]
20962
20995
  },
20963
- rules: Array,
20996
+ rules: [Array, Function, Object],
20964
20997
  onChange: defineListenerProp(),
20965
20998
  "onUpdate:modelValue": defineListenerProp()
20966
20999
  };
@@ -21801,7 +21834,7 @@ const props$g = __spreadValues$6({
21801
21834
  type: Array,
21802
21835
  default: () => ["onChange", "onClear", "onClose"]
21803
21836
  },
21804
- rules: Array,
21837
+ rules: [Array, Function, Object],
21805
21838
  onFocus: defineListenerProp(),
21806
21839
  onBlur: defineListenerProp(),
21807
21840
  onClose: defineListenerProp(),
@@ -22581,7 +22614,7 @@ const props$e = {
22581
22614
  type: String,
22582
22615
  default: "horizontal"
22583
22616
  },
22584
- rules: Array,
22617
+ rules: [Array, Function, Object],
22585
22618
  onChange: defineListenerProp(),
22586
22619
  onStart: defineListenerProp(),
22587
22620
  onEnd: defineListenerProp(),
@@ -24024,7 +24057,7 @@ const props$8 = {
24024
24057
  closeColor: String,
24025
24058
  size: [String, Number],
24026
24059
  variant: Boolean,
24027
- rules: Array,
24060
+ rules: [Array, Function, Object],
24028
24061
  ripple: {
24029
24062
  type: Boolean,
24030
24063
  default: true
@@ -28778,7 +28811,7 @@ const props$1 = {
28778
28811
  type: Array,
28779
28812
  default: () => ["onChange", "onRemove"]
28780
28813
  },
28781
- rules: Array,
28814
+ rules: [Array, Function, Object],
28782
28815
  hideList: Boolean,
28783
28816
  preventDefaultPreview: Boolean,
28784
28817
  onClickAction: defineListenerProp(),
@@ -29580,7 +29613,7 @@ withInstall(stdin_default$1);
29580
29613
  withPropsDefaultsSetter(stdin_default$1, props);
29581
29614
  const _WatermarkComponent = stdin_default$1;
29582
29615
  var stdin_default = stdin_default$1;
29583
- const version = "3.4.0";
29616
+ const version = "3.5.0-alpha.1726249557629";
29584
29617
  function install(app) {
29585
29618
  stdin_default$5I.install && app.use(stdin_default$5I);
29586
29619
  stdin_default$5G.install && app.use(stdin_default$5G);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varlet/ui",
3
- "version": "3.4.0",
3
+ "version": "3.5.0-alpha.1726249557629",
4
4
  "description": "A material like components library",
5
5
  "main": "lib/varlet.cjs.js",
6
6
  "module": "es/index.mjs",
@@ -48,15 +48,16 @@
48
48
  "@popperjs/core": "^2.11.6",
49
49
  "dayjs": "^1.10.4",
50
50
  "decimal.js": "^10.2.1",
51
- "@varlet/icons": "3.4.0",
52
- "@varlet/shared": "3.4.0",
53
- "@varlet/use": "3.4.0"
51
+ "@varlet/icons": "3.5.0-alpha.1726249557629",
52
+ "@varlet/shared": "3.5.0-alpha.1726249557629",
53
+ "@varlet/use": "3.5.0-alpha.1726249557629"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@vue/runtime-core": "3.4.21",
57
57
  "@vue/test-utils": "2.4.1",
58
58
  "@types/node": "^18.7.18",
59
59
  "@vitest/coverage-istanbul": "2.0.5",
60
+ "zod": "^3.23.8",
60
61
  "jsdom": "24.1.1",
61
62
  "vitest": "2.0.5",
62
63
  "clipboard": "^2.0.6",
@@ -64,9 +65,9 @@
64
65
  "typescript": "^5.1.5",
65
66
  "vue": "3.4.21",
66
67
  "vue-router": "4.2.0",
67
- "@varlet/cli": "3.4.0",
68
- "@varlet/ui": "3.4.0",
69
- "@varlet/touch-emulator": "3.4.0"
68
+ "@varlet/ui": "3.5.0-alpha.1726249557629",
69
+ "@varlet/cli": "3.5.0-alpha.1726249557629",
70
+ "@varlet/touch-emulator": "3.5.0-alpha.1726249557629"
70
71
  },
71
72
  "scripts": {
72
73
  "dev": "varlet-cli dev",
@@ -44,7 +44,7 @@ export interface AutoCompleteProps extends BasicAttributes {
44
44
  clearable?: boolean
45
45
  validateTrigger?: AutoCompleteValidateTrigger[]
46
46
  getShow?: (v: string) => boolean
47
- rules?: Array<(v: string) => any>
47
+ rules?: any
48
48
  enterkeyhint?: InputHTMLAttributes['enterKeyHint']
49
49
  onFocus?: ListenerProp<() => void>
50
50
  onBlur?: ListenerProp<() => void>
@@ -17,7 +17,7 @@ export interface CheckboxProps extends BasicAttributes {
17
17
  iconSize?: string | number
18
18
  ripple?: boolean
19
19
  validateTrigger?: Array<CheckboxValidateTrigger>
20
- rules?: Array<(value: any) => any>
20
+ rules?: any
21
21
  onClick?: ListenerProp<(e: Event) => void>
22
22
  onChange?: ListenerProp<(value: any) => void>
23
23
  'onUpdate:modelValue'?: ListenerProp<(value: any) => void>
@@ -31,7 +31,7 @@ export interface CheckboxGroupProps extends BasicAttributes {
31
31
  options?: Array<CheckboxGroupOption>
32
32
  direction?: CheckboxGroupDirection
33
33
  validateTrigger?: Array<CheckboxGroupValidateTrigger>
34
- rules?: Array<(value: any) => any>
34
+ rules?: any
35
35
  onChange?: ListenerProp<(value: Array<any>) => void>
36
36
  'onUpdate:modelValue'?: ListenerProp<(value: Array<any>) => void>
37
37
  }
@@ -26,7 +26,7 @@ export interface CounterProps extends BasicAttributes {
26
26
  press?: boolean
27
27
  ripple?: boolean
28
28
  validateTrigger?: Array<CounterValidateTrigger>
29
- rules?: Array<(v: number) => any>
29
+ rules?: any
30
30
  onBeforeChange?: ListenerProp<(value: number, change: (value: string | number) => void) => void>
31
31
  onChange?: ListenerProp<(value: number) => void>
32
32
  onIncrement?: ListenerProp<(value: number) => void>
package/types/input.d.ts CHANGED
@@ -29,7 +29,7 @@ export interface InputProps extends BasicAttributes {
29
29
  resize?: boolean
30
30
  autofocus?: boolean
31
31
  validateTrigger?: InputValidateTrigger[]
32
- rules?: Array<(v: string) => any>
32
+ rules?: any
33
33
  enterkeyhint?: InputHTMLAttributes['enterKeyHint']
34
34
  onFocus?: ListenerProp<(e: Event) => void>
35
35
  onBlur?: ListenerProp<(e: Event) => void>
package/types/radio.d.ts CHANGED
@@ -16,7 +16,7 @@ export interface RadioProps extends BasicAttributes {
16
16
  iconSize?: string | number
17
17
  ripple?: boolean
18
18
  validateTrigger?: Array<RadioValidateTrigger>
19
- rules?: Array<(value: any) => any>
19
+ rules?: any
20
20
  onClick?: ListenerProp<(e: Event) => void>
21
21
  onChange?: ListenerProp<(value: any) => void>
22
22
  'onUpdate:modelValue'?: ListenerProp<(value: any) => void>
@@ -30,7 +30,7 @@ export interface RadioGroupProps extends BasicAttributes {
30
30
  labelKey?: string
31
31
  valueKey?: string
32
32
  validateTrigger?: Array<RadioGroupValidateTrigger>
33
- rules?: Array<(value: any) => any>
33
+ rules?: any
34
34
  onChange?: ListenerProp<(value: any) => void>
35
35
  'onUpdate:modelValue'?: ListenerProp<(value: any) => void>
36
36
  }
package/types/rate.d.ts CHANGED
@@ -21,7 +21,7 @@ export interface RateProps extends BasicAttributes {
21
21
  readonly?: boolean
22
22
  clearable?: boolean
23
23
  ripple?: boolean
24
- rules?: Array<(value: number) => any>
24
+ rules?: any
25
25
  onChange?: ListenerProp<(value: number) => void>
26
26
  'onUpdate:modelValue'?: ListenerProp<(value: number) => void>
27
27
  }
package/types/select.d.ts CHANGED
@@ -43,7 +43,7 @@ export interface SelectProps extends BasicAttributes {
43
43
  separator?: string
44
44
  textAlign?: SelectTextAlign
45
45
  validateTrigger?: Array<SelectValidateTrigger>
46
- rules?: Array<(v: any) => any>
46
+ rules?: any
47
47
  onFocus?: ListenerProp<(e: Event) => void>
48
48
  onBlur?: ListenerProp<(e: Event) => void>
49
49
  onClick?: ListenerProp<(e: Event) => void>
package/types/slider.d.ts CHANGED
@@ -30,7 +30,7 @@ export interface SliderProps extends BasicAttributes {
30
30
  disabled?: boolean
31
31
  readonly?: boolean
32
32
  direction?: SliderDirection
33
- rules?: Array<(value: number | Array<number>) => any>
33
+ rules?: any
34
34
  onChange?: ListenerProp<(value: number | Array<number>) => void>
35
35
  onStart?: ListenerProp<() => void>
36
36
  onEnd?: ListenerProp<(value: number | Array<number>) => void>
package/types/switch.d.ts CHANGED
@@ -20,7 +20,7 @@ export interface SwitchProps extends BasicAttributes {
20
20
  lazyChange?: boolean
21
21
  validateTrigger?: Array<SwitchValidateTrigger>
22
22
  variant?: boolean
23
- rules?: Array<(value: any) => any>
23
+ rules?: any
24
24
  onClick?: ListenerProp<(event: Event) => void>
25
25
  onChange?: ListenerProp<(value: any) => void>
26
26
  'onUpdate:modelValue'?: ListenerProp<(value: any) => void>
@@ -20,6 +20,7 @@ export interface TooltipProps extends BasicAttributes {
20
20
  disabled?: boolean
21
21
  content?: string
22
22
  color?: string
23
+ textColor?: string
23
24
  type?: TooltipType
24
25
  trigger?: TooltipTrigger
25
26
  reference?: string
@@ -47,7 +47,7 @@ export interface UploaderProps extends BasicAttributes {
47
47
  preventDefaultPreview?: boolean
48
48
  resolveType?: UploaderResolveType
49
49
  validateTrigger?: Array<UploaderValidateTrigger>
50
- rules?: Array<(v: VarFile[], u: UploaderVarFileUtils) => any>
50
+ rules?: any
51
51
  onClickAction?: ListenerProp<(chooseFile: () => void, event: Event) => void>
52
52
  onBeforeFilter?: ListenerProp<(files: VarFile[]) => Promise<VarFile[]> | VarFile[]>
53
53
  onBeforeRead?: ListenerProp<(file: VarFile) => Promise<any> | any>