@vunk/form 0.0.1-alpha.8 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/component.d.ts +1 -1
  2. package/components/button/index.d.ts +4 -0
  3. package/components/button/index.js +126 -0
  4. package/components/button/src/ctx.d.ts +92 -0
  5. package/components/button/src/ctx.js +39 -0
  6. package/components/button/src/index.vue.d.ts +245 -0
  7. package/components/button/src/types.d.ts +13 -0
  8. package/components/cascader/index.d.ts +4 -0
  9. package/components/cascader/index.js +114 -0
  10. package/components/cascader/src/ctx.d.ts +129 -0
  11. package/components/cascader/src/ctx.js +38 -0
  12. package/components/cascader/src/index.vue.d.ts +311 -0
  13. package/components/cascader/src/types.d.ts +7 -0
  14. package/components/checkbox/index.css +38 -0
  15. package/components/checkbox/index.d.ts +4 -0
  16. package/components/checkbox/index.js +127 -0
  17. package/components/checkbox/src/ctx.d.ts +82 -0
  18. package/components/checkbox/src/ctx.js +43 -0
  19. package/components/checkbox/src/index.vue.d.ts +213 -0
  20. package/components/checkbox/src/types.d.ts +8 -0
  21. package/components/color-picker/index.d.ts +4 -0
  22. package/components/color-picker/index.js +77 -0
  23. package/components/color-picker/src/ctx.d.ts +72 -0
  24. package/components/color-picker/src/ctx.js +23 -0
  25. package/components/color-picker/src/index.vue.d.ts +193 -0
  26. package/components/color-picker/src/types.d.ts +7 -0
  27. package/components/date-picker/index.js +26 -15
  28. package/components/date-picker/src/ctx.d.ts +64 -57
  29. package/components/date-picker/src/ctx.js +1 -1
  30. package/components/date-picker/src/index.vue.d.ts +176 -146
  31. package/components/date-picker/src/types.d.ts +14 -8
  32. package/components/form/index.d.ts +1 -0
  33. package/components/form/index.js +44 -19
  34. package/components/form/src/ctx.d.ts +147 -97
  35. package/components/form/src/ctx.js +5 -2
  36. package/components/form/src/index.vue.d.ts +424 -287
  37. package/components/form/src/types.d.ts +2 -0
  38. package/components/form/src/types.js +1 -0
  39. package/components/form-item/index.css +4 -0
  40. package/components/form-item/index.js +34 -13
  41. package/components/form-item/src/ctx.d.ts +15 -7
  42. package/components/form-item/src/ctx.js +8 -0
  43. package/components/form-item/src/index.vue.d.ts +44 -14
  44. package/components/form-item-renderer/index.js +34 -30
  45. package/components/form-item-renderer/src/ctx.d.ts +3 -3
  46. package/components/form-item-renderer/src/index.vue.d.ts +9 -9
  47. package/components/form-item-renderer/src/types.d.ts +2 -0
  48. package/components/form-item-renderer-template/index.js +13 -6
  49. package/components/form-item-renderer-template/src/index.vue.d.ts +1 -1
  50. package/components/input/index.js +29 -15
  51. package/components/input/src/ctx.d.ts +88 -49
  52. package/components/input/src/ctx.js +5 -1
  53. package/components/input/src/index.vue.d.ts +219 -129
  54. package/components/input/src/types.d.ts +7 -1
  55. package/components/input-link/index.css +5 -0
  56. package/components/input-link/index.d.ts +4 -0
  57. package/components/input-link/index.js +181 -0
  58. package/components/input-link/src/ctx.d.ts +143 -0
  59. package/components/input-link/src/ctx.js +46 -0
  60. package/components/input-link/src/index.vue.d.ts +373 -0
  61. package/components/input-link/src/types.d.ts +7 -0
  62. package/components/input-link/src/types.js +1 -0
  63. package/components/input-number/index.css +17 -0
  64. package/components/input-number/index.js +46 -14
  65. package/components/input-number/src/ctx.d.ts +22 -10
  66. package/components/input-number/src/ctx.js +13 -1
  67. package/components/input-number/src/index.vue.d.ts +92 -32
  68. package/components/input-number/src/types.d.ts +7 -0
  69. package/components/radio/index.css +29 -0
  70. package/components/radio/index.d.ts +4 -0
  71. package/components/radio/index.js +123 -0
  72. package/components/radio/src/ctx.d.ts +77 -0
  73. package/components/radio/src/ctx.js +39 -0
  74. package/components/radio/src/index.vue.d.ts +204 -0
  75. package/components/radio/src/types.d.ts +8 -0
  76. package/components/radio/src/types.js +1 -0
  77. package/components/select/index.css +11 -0
  78. package/components/select/index.js +75 -49
  79. package/components/select/src/ctx.d.ts +37 -25
  80. package/components/select/src/ctx.js +4 -0
  81. package/components/select/src/index.vue.d.ts +181 -104
  82. package/components/select/src/types.d.ts +7 -1
  83. package/components/switch/index.css +11 -0
  84. package/components/switch/index.js +44 -16
  85. package/components/switch/src/ctx.d.ts +46 -11
  86. package/components/switch/src/ctx.js +13 -2
  87. package/components/switch/src/index.vue.d.ts +146 -36
  88. package/components/switch/src/types.d.ts +7 -0
  89. package/components/templates-default/index.d.ts +4 -0
  90. package/components/templates-default/index.js +244 -0
  91. package/components/{form-item-renderer-template-default → templates-default}/src/index.vue.d.ts +7 -7
  92. package/components/templates-default/src/types.d.ts +31 -0
  93. package/components/templates-default/src/types.js +1 -0
  94. package/components/templates-element-plus/index.d.ts +4 -0
  95. package/components/templates-element-plus/index.js +80 -0
  96. package/components/{form-item-renderer-template-layout → templates-element-plus}/src/ctx.d.ts +3 -2
  97. package/components/{form-item-renderer-template-layout → templates-element-plus}/src/ctx.js +1 -1
  98. package/components/templates-element-plus/src/index.vue.d.ts +19 -0
  99. package/components/templates-element-plus/src/types.d.ts +13 -0
  100. package/components/templates-element-plus/src/types.js +1 -0
  101. package/components/templates-layout/index.css +5 -0
  102. package/components/templates-layout/index.d.ts +4 -0
  103. package/components/templates-layout/index.js +108 -0
  104. package/components/templates-layout/src/ctx.d.ts +9 -0
  105. package/components/templates-layout/src/ctx.js +9 -0
  106. package/components/templates-layout/src/index.vue.d.ts +19 -0
  107. package/{shared/types/layout-source/index.d.ts → components/templates-layout/src/types.d.ts} +5 -4
  108. package/components/templates-layout/src/types.js +1 -0
  109. package/components/upload/index.css +33 -0
  110. package/components/upload/index.d.ts +5 -0
  111. package/components/upload/index.js +606 -0
  112. package/components/upload/src/ctx.d.ts +168 -0
  113. package/components/upload/src/ctx.js +45 -0
  114. package/components/upload/src/file.vue.d.ts +96 -0
  115. package/components/upload/src/index.vue.d.ts +416 -0
  116. package/components/upload/src/types.d.ts +7 -0
  117. package/components/upload/src/types.js +1 -0
  118. package/composables/index.d.ts +1 -0
  119. package/composables/index.js +28 -6
  120. package/composables/useForm.d.ts +9 -0
  121. package/composables/useSourceManager.d.ts +2 -0
  122. package/index.css +156 -2
  123. package/index.d.ts +14 -1
  124. package/index.esm.js +16 -5
  125. package/package.json +4 -1
  126. package/shared/element-plus/ctx.d.ts +86 -13
  127. package/shared/element-plus/index.js +18156 -35
  128. package/shared/element-plus/instances.d.ts +97 -26
  129. package/shared/helper/index.d.ts +1 -0
  130. package/shared/infer-prop/index.d.ts +17 -0
  131. package/shared/infer-prop/index.js +34 -0
  132. package/shared/progress-it/index.d.ts +16 -0
  133. package/shared/progress-it/index.js +57 -0
  134. package/shared/types/form/checkbox.d.ts +13 -0
  135. package/shared/types/form/index.d.ts +2 -0
  136. package/shared/types/form/index.js +1 -0
  137. package/shared/types/form/radio.d.ts +8 -0
  138. package/shared/types/index.d.ts +1 -2
  139. package/shared/types/source/index.d.ts +12 -0
  140. package/shared/types/source/index.js +1 -0
  141. package/components/form-item-renderer-template-default/index.d.ts +0 -4
  142. package/components/form-item-renderer-template-default/index.js +0 -129
  143. package/components/form-item-renderer-template-default/src/types.d.ts +0 -1
  144. package/components/form-item-renderer-template-layout/index.css +0 -7
  145. package/components/form-item-renderer-template-layout/index.d.ts +0 -4
  146. package/components/form-item-renderer-template-layout/index.js +0 -91
  147. package/components/form-item-renderer-template-layout/src/index.vue.d.ts +0 -7
  148. package/components/form-item-renderer-template-layout/src/types.d.ts +0 -1
  149. package/shared/types/renderer-source/compoent.d.ts +0 -5
  150. package/shared/types/renderer-source/date-picker.d.ts +0 -7
  151. package/shared/types/renderer-source/index.d.ts +0 -13
  152. package/shared/types/renderer-source/input-number.d.ts +0 -7
  153. package/shared/types/renderer-source/input.d.ts +0 -7
  154. package/shared/types/renderer-source/select.d.ts +0 -7
  155. package/shared/types/renderer-source/switch.d.ts +0 -7
  156. /package/components/{form-item-renderer-template-default → button}/src/types.js +0 -0
  157. /package/components/{form-item-renderer-template-layout → cascader}/src/types.js +0 -0
  158. /package/{shared/types/layout-source/index.js → components/checkbox/src/types.js} +0 -0
  159. /package/{shared/types/renderer-source/index.js → components/color-picker/src/types.js} +0 -0
  160. /package/components/{form-item-renderer-template-default → templates-default}/src/ctx.d.ts +0 -0
  161. /package/components/{form-item-renderer-template-default → templates-default}/src/ctx.js +0 -0
@@ -1,10 +1,11 @@
1
1
  import { formProps, formEmits, ElForm } from 'element-plus';
2
2
  import { bindPropsFactory, onEmitsFactory } from '@vunk/core/shared/utils-vue';
3
- import { defineComponent, resolveComponent, openBlock, createBlock, mergeProps, toHandlers, withCtx, createVNode, renderSlot } from 'vue';
3
+ import { NOOP } from '@vunk/core/shared/utils-function';
4
+ import { defineComponent, shallowRef, getCurrentInstance, provide, resolveComponent, openBlock, createBlock, mergeProps, toHandlers, withCtx, createVNode, renderSlot } from 'vue';
4
5
  import { VkfFormItemRenderer } from '@vunk/form/components/form-item-renderer';
5
6
  import { createFormBindProps, createFormOnEmits } from '@vunk/form/shared/element-plus';
6
7
  import { getValue } from '@vunk/core/shared/helper';
7
- import { VkfFormItemRendererTemplateDefault } from '@vunk/form/components/form-item-renderer-template-default';
8
+ import { VkfTemplatesDefault } from '@vunk/form/components/templates-default';
8
9
 
9
10
  var __defProp = Object.defineProperty;
10
11
  var __defProps = Object.defineProperties;
@@ -34,10 +35,12 @@ const props = __spreadProps(__spreadValues({}, formProps), {
34
35
  type: Array,
35
36
  default: () => []
36
37
  },
38
+ readonly: {
39
+ type: Boolean
40
+ },
37
41
  elRef: {
38
42
  type: Function,
39
- default: () => () => {
40
- }
43
+ default: () => NOOP
41
44
  }
42
45
  });
43
46
  const createBindProps = bindPropsFactory(props);
@@ -55,38 +58,58 @@ var ctx = /*#__PURE__*/Object.freeze({
55
58
  createOnEmits: createOnEmits
56
59
  });
57
60
 
58
- var script = defineComponent({
61
+ var _export_sfc = (sfc, props) => {
62
+ const target = sfc.__vccOpts || sfc;
63
+ for (const [key, val] of props) {
64
+ target[key] = val;
65
+ }
66
+ return target;
67
+ };
68
+
69
+ const _sfc_main = defineComponent({
59
70
  name: "VkfForm",
60
71
  props,
61
72
  emits,
62
73
  components: {
63
74
  ElForm,
64
75
  VkfFormItemRenderer,
65
- VkfFormItemRendererTemplateDefault
76
+ VkfTemplatesDefault
66
77
  },
67
78
  setup(props2, { emit }) {
68
79
  const formProps = createFormBindProps(props2, ["model"]);
69
80
  const formEmits = createFormOnEmits(emit);
81
+ const formRef = shallowRef();
82
+ const vm = getCurrentInstance();
83
+ provide("vkfFormVm", vm);
84
+ provide("elFormRef", formRef);
85
+ const getRef = (e) => {
86
+ formRef.value = e;
87
+ props2.elRef(e);
88
+ };
70
89
  return {
71
90
  formProps,
72
91
  formEmits,
73
- getValue
92
+ getValue,
93
+ getRef
74
94
  };
75
95
  }
76
96
  });
77
-
78
- function render(_ctx, _cache, $props, $setup, $data, $options) {
79
- const _component_VkfFormItemRendererTemplateDefault = resolveComponent("VkfFormItemRendererTemplateDefault");
97
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
98
+ const _component_VkfTemplatesDefault = resolveComponent("VkfTemplatesDefault");
80
99
  const _component_VkfFormItemRenderer = resolveComponent("VkfFormItemRenderer");
81
100
  const _component_ElForm = resolveComponent("ElForm");
82
- return openBlock(), createBlock(_component_ElForm, mergeProps(_ctx.formProps, toHandlers(_ctx.formEmits), {
101
+ return openBlock(), createBlock(_component_ElForm, mergeProps({
102
+ class: {
103
+ "is-readonly": _ctx.readonly
104
+ }
105
+ }, _ctx.formProps, toHandlers(_ctx.formEmits), {
83
106
  model: _ctx.model || _ctx.data,
84
- ref: _ctx.elRef
107
+ ref: _ctx.getRef
85
108
  }), {
86
109
  default: withCtx(() => [
87
110
  createVNode(_component_VkfFormItemRenderer, { source: _ctx.formItems }, {
88
111
  default: withCtx(() => [
89
- createVNode(_component_VkfFormItemRendererTemplateDefault, {
112
+ createVNode(_component_VkfTemplatesDefault, {
90
113
  data: _ctx.data,
91
114
  onSetData: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("setData", $event))
92
115
  }, null, 8, ["data"]),
@@ -97,14 +120,16 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
97
120
  renderSlot(_ctx.$slots, "default")
98
121
  ]),
99
122
  _: 3
100
- }, 16, ["model"]);
123
+ }, 16, ["class", "model"]);
101
124
  }
125
+ var VkfForm = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "index.vue"]]);
102
126
 
103
- script.render = render;
104
- script.__file = "form/src/index.vue";
127
+ var types = /*#__PURE__*/Object.freeze({
128
+ __proto__: null
129
+ });
105
130
 
106
- script.install = (app) => {
107
- app.component(script.name, script);
131
+ VkfForm.install = (app) => {
132
+ app.component(VkfForm.name, VkfForm);
108
133
  };
109
134
 
110
- export { script as VkfForm, ctx as _VkfFormCtx, script as default };
135
+ export { VkfForm, ctx as _VkfFormCtx, types as __VkfForm, VkfForm as default };
@@ -7,7 +7,10 @@ export declare const props: {
7
7
  };
8
8
  formItems: {
9
9
  type: PropType<any[]>;
10
- default: () => any[];
10
+ default: () => never[];
11
+ };
12
+ readonly: {
13
+ type: BooleanConstructor;
11
14
  };
12
15
  elRef: {
13
16
  type: PropType<(arg: {
@@ -15,7 +18,8 @@ export declare const props: {
15
18
  $data: {};
16
19
  $props: Partial<{
17
20
  readonly disabled: boolean;
18
- readonly labelPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top", unknown>;
21
+ readonly labelPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "left" | "right", unknown>;
22
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right", unknown>;
19
23
  readonly labelWidth: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
20
24
  readonly labelSuffix: string;
21
25
  readonly showMessage: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -30,29 +34,36 @@ export declare const props: {
30
34
  readonly rules: {
31
35
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
32
36
  readonly required: false;
33
- readonly validator: (val: unknown) => boolean;
37
+ readonly validator: ((val: unknown) => boolean) | undefined;
34
38
  __epPropKey: true;
35
39
  };
36
- readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
40
+ readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
41
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
37
42
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
38
43
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
39
44
  readonly inline: BooleanConstructor;
40
45
  readonly inlineMessage: BooleanConstructor;
41
46
  readonly statusIcon: BooleanConstructor;
42
47
  readonly showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
48
+ readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
49
+ readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
50
+ readonly scrollToError: BooleanConstructor;
51
+ readonly scrollIntoViewOptions: {
52
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
53
+ readonly required: false;
54
+ readonly validator: ((val: unknown) => boolean) | undefined;
55
+ __epPropKey: true;
56
+ };
43
57
  readonly size: {
44
58
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
45
59
  readonly required: false;
46
- readonly validator: (val: unknown) => boolean;
60
+ readonly validator: ((val: unknown) => boolean) | undefined;
47
61
  __epPropKey: true;
48
62
  };
49
63
  readonly disabled: BooleanConstructor;
50
- readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
51
- readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
52
- readonly scrollToError: BooleanConstructor;
53
64
  }>> & {
54
- onValidate?: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any;
55
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "labelWidth" | "inlineMessage" | "showMessage" | "disabled" | "labelPosition" | "labelSuffix" | "inline" | "statusIcon" | "validateOnRuleChange" | "hideRequiredAsterisk" | "scrollToError">;
65
+ onValidate?: ((prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any) | undefined;
66
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "labelWidth" | "inlineMessage" | "showMessage" | "inline" | "disabled" | "labelPosition" | "requireAsteriskPosition" | "labelSuffix" | "statusIcon" | "validateOnRuleChange" | "hideRequiredAsterisk" | "scrollToError">;
56
67
  $attrs: {
57
68
  [x: string]: unknown;
58
69
  };
@@ -60,10 +71,10 @@ export declare const props: {
60
71
  [x: string]: unknown;
61
72
  };
62
73
  $slots: Readonly<{
63
- [name: string]: import("vue").Slot;
74
+ [name: string]: import("vue").Slot | undefined;
64
75
  }>;
65
- $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>;
66
- $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>;
76
+ $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
77
+ $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
67
78
  $emit: (event: "validate", prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => void;
68
79
  $el: any;
69
80
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
@@ -71,28 +82,35 @@ export declare const props: {
71
82
  readonly rules: {
72
83
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
73
84
  readonly required: false;
74
- readonly validator: (val: unknown) => boolean;
85
+ readonly validator: ((val: unknown) => boolean) | undefined;
75
86
  __epPropKey: true;
76
87
  };
77
- readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
88
+ readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
89
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
78
90
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
79
91
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
80
92
  readonly inline: BooleanConstructor;
81
93
  readonly inlineMessage: BooleanConstructor;
82
94
  readonly statusIcon: BooleanConstructor;
83
95
  readonly showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
96
+ readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
97
+ readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
98
+ readonly scrollToError: BooleanConstructor;
99
+ readonly scrollIntoViewOptions: {
100
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
101
+ readonly required: false;
102
+ readonly validator: ((val: unknown) => boolean) | undefined;
103
+ __epPropKey: true;
104
+ };
84
105
  readonly size: {
85
106
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
86
107
  readonly required: false;
87
- readonly validator: (val: unknown) => boolean;
108
+ readonly validator: ((val: unknown) => boolean) | undefined;
88
109
  __epPropKey: true;
89
110
  };
90
111
  readonly disabled: BooleanConstructor;
91
- readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
92
- readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
93
- readonly scrollToError: BooleanConstructor;
94
112
  }>> & {
95
- onValidate?: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any;
113
+ onValidate?: ((prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any) | undefined;
96
114
  }, {
97
115
  COMPONENT_NAME: string;
98
116
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
@@ -100,43 +118,50 @@ export declare const props: {
100
118
  readonly rules: {
101
119
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
102
120
  readonly required: false;
103
- readonly validator: (val: unknown) => boolean;
121
+ readonly validator: ((val: unknown) => boolean) | undefined;
104
122
  __epPropKey: true;
105
123
  };
106
- readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
124
+ readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
125
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
107
126
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
108
127
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
109
128
  readonly inline: BooleanConstructor;
110
129
  readonly inlineMessage: BooleanConstructor;
111
130
  readonly statusIcon: BooleanConstructor;
112
131
  readonly showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
132
+ readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
133
+ readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
134
+ readonly scrollToError: BooleanConstructor;
135
+ readonly scrollIntoViewOptions: {
136
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
137
+ readonly required: false;
138
+ readonly validator: ((val: unknown) => boolean) | undefined;
139
+ __epPropKey: true;
140
+ };
113
141
  readonly size: {
114
142
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
115
143
  readonly required: false;
116
- readonly validator: (val: unknown) => boolean;
144
+ readonly validator: ((val: unknown) => boolean) | undefined;
117
145
  __epPropKey: true;
118
146
  };
119
147
  readonly disabled: BooleanConstructor;
120
- readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
121
- readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
122
- readonly scrollToError: BooleanConstructor;
123
148
  }>> & {
124
- onValidate?: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any;
149
+ onValidate?: ((prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any) | undefined;
125
150
  }>>;
126
151
  emit: (event: "validate", prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => void;
127
152
  fields: import("element-plus").FormItemContext[];
128
153
  formSize: import("vue").ComputedRef<"" | "default" | "small" | "large">;
129
154
  ns: {
130
155
  namespace: import("vue").ComputedRef<string>;
131
- b: (blockSuffix?: string) => string;
132
- e: (element?: string) => string;
133
- m: (modifier?: string) => string;
134
- be: (blockSuffix?: string, element?: string) => string;
135
- em: (element?: string, modifier?: string) => string;
136
- bm: (blockSuffix?: string, modifier?: string) => string;
137
- bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
156
+ b: (blockSuffix?: string | undefined) => string;
157
+ e: (element?: string | undefined) => string;
158
+ m: (modifier?: string | undefined) => string;
159
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
160
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
161
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
162
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
138
163
  is: {
139
- (name: string, state: boolean): string;
164
+ (name: string, state: boolean | undefined): string;
140
165
  (name: string): string;
141
166
  };
142
167
  cssVar: (object: Record<string, string>) => Record<string, string>;
@@ -145,23 +170,24 @@ export declare const props: {
145
170
  cssVarBlockName: (name: string) => string;
146
171
  };
147
172
  formClasses: import("vue").ComputedRef<(string | {
148
- [x: string]: boolean | import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top", unknown>;
173
+ [x: string]: boolean | import("element-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "left" | "right", unknown>;
149
174
  })[]>;
150
175
  addField: (field: import("element-plus").FormItemContext) => void;
151
176
  removeField: (field: import("element-plus").FormItemContext) => void;
152
- resetFields: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => void;
153
- clearValidate: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => void;
177
+ resetFields: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => void;
178
+ clearValidate: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => void;
154
179
  isValidatable: import("vue").ComputedRef<boolean>;
155
180
  obtainValidateFields: (props: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => import("element-plus").FormItemContext[];
156
- validate: (callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
157
- doValidateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => Promise<boolean>;
158
- validateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>, callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
181
+ validate: (callback?: import("element-plus").FormValidateCallback | undefined) => import("element-plus").FormValidationResult;
182
+ doValidateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => Promise<boolean>;
183
+ validateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined, callback?: import("element-plus").FormValidateCallback | undefined) => import("element-plus").FormValidationResult;
159
184
  scrollToField: (prop: import("element-plus").FormItemProp) => void;
160
185
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
161
186
  validate: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => boolean;
162
187
  }, string, {
163
188
  readonly disabled: boolean;
164
- readonly labelPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top", unknown>;
189
+ readonly labelPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "left" | "right", unknown>;
190
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right", unknown>;
165
191
  readonly labelWidth: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
166
192
  readonly labelSuffix: string;
167
193
  readonly showMessage: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -171,53 +197,60 @@ export declare const props: {
171
197
  readonly inlineMessage: boolean;
172
198
  readonly statusIcon: boolean;
173
199
  readonly scrollToError: boolean;
174
- }> & {
175
- beforeCreate?: (() => void) | (() => void)[];
176
- created?: (() => void) | (() => void)[];
177
- beforeMount?: (() => void) | (() => void)[];
178
- mounted?: (() => void) | (() => void)[];
179
- beforeUpdate?: (() => void) | (() => void)[];
180
- updated?: (() => void) | (() => void)[];
181
- activated?: (() => void) | (() => void)[];
182
- deactivated?: (() => void) | (() => void)[];
183
- beforeDestroy?: (() => void) | (() => void)[];
184
- beforeUnmount?: (() => void) | (() => void)[];
185
- destroyed?: (() => void) | (() => void)[];
186
- unmounted?: (() => void) | (() => void)[];
187
- renderTracked?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
188
- renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
189
- errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>, info: string) => boolean | void)[];
200
+ }, {}, string> & {
201
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
202
+ created?: ((() => void) | (() => void)[]) | undefined;
203
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
204
+ mounted?: ((() => void) | (() => void)[]) | undefined;
205
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
206
+ updated?: ((() => void) | (() => void)[]) | undefined;
207
+ activated?: ((() => void) | (() => void)[]) | undefined;
208
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
209
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
210
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
211
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
212
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
213
+ renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
214
+ renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
215
+ errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void)[]) | undefined;
190
216
  };
191
217
  $forceUpdate: () => void;
192
218
  $nextTick: typeof import("vue").nextTick;
193
- $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean>): import("vue").WatchStopHandle;
219
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
194
220
  } & Readonly<import("vue").ExtractPropTypes<{
195
221
  readonly model: ObjectConstructor;
196
222
  readonly rules: {
197
223
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
198
224
  readonly required: false;
199
- readonly validator: (val: unknown) => boolean;
225
+ readonly validator: ((val: unknown) => boolean) | undefined;
200
226
  __epPropKey: true;
201
227
  };
202
- readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
228
+ readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
229
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
203
230
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
204
231
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
205
232
  readonly inline: BooleanConstructor;
206
233
  readonly inlineMessage: BooleanConstructor;
207
234
  readonly statusIcon: BooleanConstructor;
208
235
  readonly showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
236
+ readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
237
+ readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
238
+ readonly scrollToError: BooleanConstructor;
239
+ readonly scrollIntoViewOptions: {
240
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
241
+ readonly required: false;
242
+ readonly validator: ((val: unknown) => boolean) | undefined;
243
+ __epPropKey: true;
244
+ };
209
245
  readonly size: {
210
246
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
211
247
  readonly required: false;
212
- readonly validator: (val: unknown) => boolean;
248
+ readonly validator: ((val: unknown) => boolean) | undefined;
213
249
  __epPropKey: true;
214
250
  };
215
251
  readonly disabled: BooleanConstructor;
216
- readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
217
- readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
218
- readonly scrollToError: BooleanConstructor;
219
252
  }>> & {
220
- onValidate?: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any;
253
+ onValidate?: ((prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any) | undefined;
221
254
  } & import("vue").ShallowUnwrapRef<{
222
255
  COMPONENT_NAME: string;
223
256
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
@@ -225,43 +258,50 @@ export declare const props: {
225
258
  readonly rules: {
226
259
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
227
260
  readonly required: false;
228
- readonly validator: (val: unknown) => boolean;
261
+ readonly validator: ((val: unknown) => boolean) | undefined;
229
262
  __epPropKey: true;
230
263
  };
231
- readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
264
+ readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
265
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
232
266
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
233
267
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
234
268
  readonly inline: BooleanConstructor;
235
269
  readonly inlineMessage: BooleanConstructor;
236
270
  readonly statusIcon: BooleanConstructor;
237
271
  readonly showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
272
+ readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
273
+ readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
274
+ readonly scrollToError: BooleanConstructor;
275
+ readonly scrollIntoViewOptions: {
276
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
277
+ readonly required: false;
278
+ readonly validator: ((val: unknown) => boolean) | undefined;
279
+ __epPropKey: true;
280
+ };
238
281
  readonly size: {
239
282
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
240
283
  readonly required: false;
241
- readonly validator: (val: unknown) => boolean;
284
+ readonly validator: ((val: unknown) => boolean) | undefined;
242
285
  __epPropKey: true;
243
286
  };
244
287
  readonly disabled: BooleanConstructor;
245
- readonly validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
246
- readonly hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
247
- readonly scrollToError: BooleanConstructor;
248
288
  }>> & {
249
- onValidate?: (prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any;
289
+ onValidate?: ((prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => any) | undefined;
250
290
  }>>;
251
291
  emit: (event: "validate", prop: import("element-plus").FormItemProp, isValid: boolean, message: string) => void;
252
292
  fields: import("element-plus").FormItemContext[];
253
293
  formSize: import("vue").ComputedRef<"" | "default" | "small" | "large">;
254
294
  ns: {
255
295
  namespace: import("vue").ComputedRef<string>;
256
- b: (blockSuffix?: string) => string;
257
- e: (element?: string) => string;
258
- m: (modifier?: string) => string;
259
- be: (blockSuffix?: string, element?: string) => string;
260
- em: (element?: string, modifier?: string) => string;
261
- bm: (blockSuffix?: string, modifier?: string) => string;
262
- bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
296
+ b: (blockSuffix?: string | undefined) => string;
297
+ e: (element?: string | undefined) => string;
298
+ m: (modifier?: string | undefined) => string;
299
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
300
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
301
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
302
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
263
303
  is: {
264
- (name: string, state: boolean): string;
304
+ (name: string, state: boolean | undefined): string;
265
305
  (name: string): string;
266
306
  };
267
307
  cssVar: (object: Record<string, string>) => Record<string, string>;
@@ -270,49 +310,59 @@ export declare const props: {
270
310
  cssVarBlockName: (name: string) => string;
271
311
  };
272
312
  formClasses: import("vue").ComputedRef<(string | {
273
- [x: string]: boolean | import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top", unknown>;
313
+ [x: string]: boolean | import("element-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "left" | "right", unknown>;
274
314
  })[]>;
275
315
  addField: (field: import("element-plus").FormItemContext) => void;
276
316
  removeField: (field: import("element-plus").FormItemContext) => void;
277
- resetFields: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => void;
278
- clearValidate: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => void;
317
+ resetFields: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => void;
318
+ clearValidate: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => void;
279
319
  isValidatable: import("vue").ComputedRef<boolean>;
280
320
  obtainValidateFields: (props: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => import("element-plus").FormItemContext[];
281
- validate: (callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
282
- doValidateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>) => Promise<boolean>;
283
- validateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp>, callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
321
+ validate: (callback?: import("element-plus").FormValidateCallback | undefined) => import("element-plus").FormValidationResult;
322
+ doValidateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined) => Promise<boolean>;
323
+ validateField: (props?: import("element-plus/es/utils").Arrayable<import("element-plus").FormItemProp> | undefined, callback?: import("element-plus").FormValidateCallback | undefined) => import("element-plus").FormValidationResult;
284
324
  scrollToField: (prop: import("element-plus").FormItemProp) => void;
285
- }> & {} & import("vue").ComponentCustomProperties) => any>;
325
+ }> & {} & import("vue").ComponentCustomProperties & {}) => any>;
286
326
  default: () => () => void;
287
327
  };
288
328
  model: ObjectConstructor;
289
329
  rules: {
290
330
  readonly type: PropType<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>>>>;
291
331
  readonly required: false;
292
- readonly validator: (val: unknown) => boolean;
332
+ readonly validator: ((val: unknown) => boolean) | undefined;
293
333
  __epPropKey: true;
294
334
  };
295
- labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
335
+ labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "left" | "right", unknown, "right", boolean>;
336
+ requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
296
337
  labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
297
338
  labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
298
339
  inline: BooleanConstructor;
299
340
  inlineMessage: BooleanConstructor;
300
341
  statusIcon: BooleanConstructor;
301
342
  showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
343
+ validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
344
+ hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
345
+ scrollToError: BooleanConstructor;
346
+ scrollIntoViewOptions: {
347
+ readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
348
+ readonly required: false;
349
+ readonly validator: ((val: unknown) => boolean) | undefined;
350
+ __epPropKey: true;
351
+ };
302
352
  size: {
303
353
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
304
354
  readonly required: false;
305
- readonly validator: (val: unknown) => boolean;
355
+ readonly validator: ((val: unknown) => boolean) | undefined;
306
356
  __epPropKey: true;
307
357
  };
308
358
  disabled: BooleanConstructor;
309
- validateOnRuleChange: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
310
- hideRequiredAsterisk: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
311
- scrollToError: BooleanConstructor;
312
359
  };
313
- export declare const createBindProps: <T2 extends Record<string, any>, EX extends ("labelWidth" | "rules" | "inlineMessage" | "showMessage" | "size" | "elRef" | "data" | "disabled" | "model" | "labelPosition" | "labelSuffix" | "inline" | "statusIcon" | "validateOnRuleChange" | "hideRequiredAsterisk" | "scrollToError" | "formItems")[], K extends Extract<EX extends (infer V)[] ? Exclude<keyof T2, V> : keyof T2, "labelWidth" | "rules" | "inlineMessage" | "showMessage" | "size" | "elRef" | "data" | "disabled" | "model" | "labelPosition" | "labelSuffix" | "inline" | "statusIcon" | "validateOnRuleChange" | "hideRequiredAsterisk" | "scrollToError" | "formItems">>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [k in K]: T2[k]; }>;
360
+ export declare const createBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"size", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"data", keyof T2> | Extract<"disabled", keyof T2> | Extract<"model", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"formItems", keyof T2>)[] | undefined>(propsArg: T2, excludes?: EX | undefined) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"labelWidth", keyof T2>, KE> | Exclude<Extract<"rules", keyof T2>, KE> | Exclude<Extract<"inlineMessage", keyof T2>, KE> | Exclude<Extract<"showMessage", keyof T2>, KE> | Exclude<Extract<"size", keyof T2>, KE> | Exclude<Extract<"elRef", keyof T2>, KE> | Exclude<Extract<"inline", keyof T2>, KE> | Exclude<Extract<"readonly", keyof T2>, KE> | Exclude<Extract<"data", keyof T2>, KE> | Exclude<Extract<"disabled", keyof T2>, KE> | Exclude<Extract<"model", keyof T2>, KE> | Exclude<Extract<"labelPosition", keyof T2>, KE> | Exclude<Extract<"requireAsteriskPosition", keyof T2>, KE> | Exclude<Extract<"labelSuffix", keyof T2>, KE> | Exclude<Extract<"statusIcon", keyof T2>, KE> | Exclude<Extract<"validateOnRuleChange", keyof T2>, KE> | Exclude<Extract<"hideRequiredAsterisk", keyof T2>, KE> | Exclude<Extract<"scrollToError", keyof T2>, KE> | Exclude<Extract<"scrollIntoViewOptions", keyof T2>, KE> | Exclude<Extract<"formItems", keyof T2>, KE> : Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"size", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"data", keyof T2> | Extract<"disabled", keyof T2> | Extract<"model", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"formItems", keyof T2>]: { [k in Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"size", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"data", keyof T2> | Extract<"disabled", keyof T2> | Extract<"model", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"formItems", keyof T2>]: T2[k]; }[P]; }>;
314
361
  export declare const emits: {
315
362
  setData: (e: SetDataEvent) => SetDataEvent<any>;
316
- validate: any;
363
+ validate: null;
317
364
  };
318
- export declare const createOnEmits: <T2 extends (...args: any) => any, EX extends ("validate" | "setData")[], K extends "validate" | "setData">(emit: T2, excludes?: EX) => { [k in K]: T2; };
365
+ export declare const createOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("validate" | "setData")[] | undefined>(emit: T2, excludes?: EX | undefined) => { [P in EX extends (infer KE)[] ? Exclude<"validate", KE> | Exclude<"setData", KE> : "validate" | "setData"]: {
366
+ setData: (...e: import("@vunk/core").RestParameters<T2>) => void;
367
+ validate: (...e: import("@vunk/core").RestParameters<T2>) => void;
368
+ }[P]; };
@@ -1,5 +1,6 @@
1
1
  import { formProps, formEmits } from 'element-plus';
2
2
  import { bindPropsFactory, onEmitsFactory } from '@vunk/core/shared/utils-vue';
3
+ import { NOOP } from '@vunk/core/shared/utils-function';
3
4
 
4
5
  var __defProp = Object.defineProperty;
5
6
  var __defProps = Object.defineProperties;
@@ -29,10 +30,12 @@ const props = __spreadProps(__spreadValues({}, formProps), {
29
30
  type: Array,
30
31
  default: () => []
31
32
  },
33
+ readonly: {
34
+ type: Boolean
35
+ },
32
36
  elRef: {
33
37
  type: Function,
34
- default: () => () => {
35
- }
38
+ default: () => NOOP
36
39
  }
37
40
  });
38
41
  const createBindProps = bindPropsFactory(props);