@vunk/form 0.0.1-alpha.4 → 0.0.1-alpha.41

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 (138) hide show
  1. package/components/button/index.d.ts +4 -0
  2. package/components/button/index.js +126 -0
  3. package/components/button/src/ctx.d.ts +91 -0
  4. package/components/button/src/ctx.js +39 -0
  5. package/components/button/src/index.vue.d.ts +241 -0
  6. package/components/button/src/types.d.ts +7 -0
  7. package/components/button/src/types.js +1 -0
  8. package/components/cascader/index.d.ts +4 -0
  9. package/components/cascader/index.js +108 -0
  10. package/components/cascader/src/ctx.d.ts +130 -0
  11. package/components/cascader/src/ctx.js +38 -0
  12. package/components/cascader/src/index.vue.d.ts +313 -0
  13. package/components/cascader/src/types.d.ts +1 -0
  14. package/components/cascader/src/types.js +1 -0
  15. package/components/checkbox/index.css +38 -0
  16. package/components/checkbox/index.d.ts +4 -0
  17. package/components/checkbox/index.js +127 -0
  18. package/components/checkbox/src/ctx.d.ts +82 -0
  19. package/components/checkbox/src/ctx.js +43 -0
  20. package/components/checkbox/src/index.vue.d.ts +213 -0
  21. package/components/checkbox/src/types.d.ts +1 -0
  22. package/components/checkbox/src/types.js +1 -0
  23. package/components/color-picker/index.d.ts +4 -0
  24. package/components/color-picker/index.js +77 -0
  25. package/components/color-picker/src/ctx.d.ts +74 -0
  26. package/components/color-picker/src/ctx.js +23 -0
  27. package/components/color-picker/src/index.vue.d.ts +196 -0
  28. package/components/color-picker/src/types.d.ts +1 -0
  29. package/components/color-picker/src/types.js +1 -0
  30. package/components/date-picker/index.js +26 -15
  31. package/components/date-picker/src/ctx.d.ts +64 -57
  32. package/components/date-picker/src/ctx.js +1 -1
  33. package/components/date-picker/src/index.vue.d.ts +183 -153
  34. package/components/date-picker/src/types.d.ts +7 -7
  35. package/components/firt-ep/index.d.ts +4 -0
  36. package/components/firt-ep/index.js +80 -0
  37. package/components/firt-ep/src/ctx.d.ts +9 -0
  38. package/components/firt-ep/src/ctx.js +9 -0
  39. package/components/firt-ep/src/index.vue.d.ts +19 -0
  40. package/components/firt-ep/src/types.d.ts +1 -0
  41. package/components/firt-ep/src/types.js +1 -0
  42. package/components/form/index.js +37 -16
  43. package/components/form/src/ctx.d.ts +95 -81
  44. package/components/form/src/ctx.js +5 -2
  45. package/components/form/src/index.vue.d.ts +284 -250
  46. package/components/form-item/index.css +4 -0
  47. package/components/form-item/index.js +34 -13
  48. package/components/form-item/src/ctx.d.ts +15 -7
  49. package/components/form-item/src/ctx.js +8 -0
  50. package/components/form-item/src/index.vue.d.ts +44 -14
  51. package/components/form-item-renderer/index.js +34 -30
  52. package/components/form-item-renderer/src/ctx.d.ts +3 -3
  53. package/components/form-item-renderer/src/index.vue.d.ts +8 -8
  54. package/components/form-item-renderer/src/types.d.ts +2 -0
  55. package/components/form-item-renderer-template/index.js +13 -6
  56. package/components/form-item-renderer-template/src/index.vue.d.ts +1 -1
  57. package/components/form-item-renderer-template-default/index.js +130 -31
  58. package/components/form-item-renderer-template-default/src/index.vue.d.ts +7 -7
  59. package/components/form-item-renderer-template-layout/index.js +41 -24
  60. package/components/form-item-renderer-template-layout/src/ctx.d.ts +3 -2
  61. package/components/form-item-renderer-template-layout/src/ctx.js +1 -1
  62. package/components/form-item-renderer-template-layout/src/index.vue.d.ts +18 -6
  63. package/components/input/index.js +39 -14
  64. package/components/input/src/ctx.d.ts +96 -49
  65. package/components/input/src/ctx.js +13 -1
  66. package/components/input/src/index.vue.d.ts +234 -128
  67. package/components/input-number/index.css +17 -0
  68. package/components/input-number/index.js +46 -14
  69. package/components/input-number/src/ctx.d.ts +28 -16
  70. package/components/input-number/src/ctx.js +13 -1
  71. package/components/input-number/src/index.vue.d.ts +104 -44
  72. package/components/radio/index.css +29 -0
  73. package/components/radio/index.d.ts +4 -0
  74. package/components/radio/index.js +123 -0
  75. package/components/radio/src/ctx.d.ts +77 -0
  76. package/components/radio/src/ctx.js +39 -0
  77. package/components/radio/src/index.vue.d.ts +204 -0
  78. package/components/radio/src/types.d.ts +1 -0
  79. package/components/radio/src/types.js +1 -0
  80. package/components/select/index.css +11 -0
  81. package/components/select/index.js +69 -49
  82. package/components/select/src/ctx.d.ts +48 -36
  83. package/components/select/src/ctx.js +4 -0
  84. package/components/select/src/index.vue.d.ts +206 -129
  85. package/components/switch/index.css +11 -0
  86. package/components/switch/index.js +44 -16
  87. package/components/switch/src/ctx.d.ts +46 -11
  88. package/components/switch/src/ctx.js +13 -2
  89. package/components/switch/src/index.vue.d.ts +147 -37
  90. package/components/upload/index.css +29 -0
  91. package/components/upload/index.d.ts +5 -0
  92. package/components/upload/index.js +522 -0
  93. package/components/upload/src/ctx.d.ts +173 -0
  94. package/components/upload/src/ctx.js +41 -0
  95. package/components/upload/src/file.vue.d.ts +96 -0
  96. package/components/upload/src/index.vue.d.ts +421 -0
  97. package/components/upload/src/types.d.ts +1 -0
  98. package/components/upload/src/types.js +1 -0
  99. package/composables/index.d.ts +1 -0
  100. package/composables/index.js +311 -7
  101. package/composables/useForm.d.ts +9 -0
  102. package/composables/useSourceManager.d.ts +2 -0
  103. package/index.css +146 -0
  104. package/index.d.ts +1 -0
  105. package/index.esm.js +4 -1
  106. package/package.json +4 -1
  107. package/shared/default-renderer-source/index.d.ts +12 -0
  108. package/shared/default-renderer-source/index.js +83 -0
  109. package/shared/element-plus/ctx.d.ts +86 -13
  110. package/shared/element-plus/index.js +18165 -32
  111. package/shared/element-plus/instances.d.ts +129 -27
  112. package/shared/infer-prop/index.d.ts +17 -0
  113. package/shared/infer-prop/index.js +34 -0
  114. package/shared/types/basic-source/index.d.ts +7 -0
  115. package/shared/types/basic-source/index.js +1 -0
  116. package/shared/types/ep-source/el-divider.d.ts +7 -0
  117. package/shared/types/ep-source/el-link.d.ts +8 -0
  118. package/shared/types/ep-source/index.d.ts +3 -0
  119. package/shared/types/ep-source/index.js +1 -0
  120. package/shared/types/form/checkbox.d.ts +13 -0
  121. package/shared/types/form/index.d.ts +2 -0
  122. package/shared/types/form/index.js +1 -0
  123. package/shared/types/form/radio.d.ts +8 -0
  124. package/shared/types/index.d.ts +2 -0
  125. package/shared/types/layout-source/index.d.ts +6 -4
  126. package/shared/types/renderer-source/button.d.ts +7 -0
  127. package/shared/types/renderer-source/cascader.d.ts +7 -0
  128. package/shared/types/renderer-source/checkbox.d.ts +7 -0
  129. package/shared/types/renderer-source/color-picker.d.ts +7 -0
  130. package/shared/types/renderer-source/compoent.d.ts +3 -0
  131. package/shared/types/renderer-source/date-picker.d.ts +3 -2
  132. package/shared/types/renderer-source/index.d.ts +13 -1
  133. package/shared/types/renderer-source/input-number.d.ts +3 -2
  134. package/shared/types/renderer-source/input.d.ts +3 -2
  135. package/shared/types/renderer-source/radio.d.ts +7 -0
  136. package/shared/types/renderer-source/select.d.ts +3 -2
  137. package/shared/types/renderer-source/switch.d.ts +3 -2
  138. package/shared/types/renderer-source/upload.d.ts +7 -0
@@ -1,9 +1,12 @@
1
1
  import { _VkfFormItemCtx, VkfFormItem } from '@vunk/form/components/form-item';
2
2
  import { inputNumberProps, inputNumberEmits, ElInputNumber } from 'element-plus';
3
- import { defineComponent, resolveComponent, openBlock, createBlock, normalizeProps, guardReactiveProps, withCtx, createVNode, mergeProps, toHandlers } from 'vue';
3
+ import { defineComponent, resolveComponent, openBlock, createBlock, normalizeProps, guardReactiveProps, withCtx, createVNode, mergeProps, toHandlers, createElementBlock, toDisplayString, createCommentVNode } from 'vue';
4
4
  import { createInputNumberBindProps, createInputNumberOnEmits } from '@vunk/form/shared/element-plus';
5
+ import { useComputedReadonly } from '@vunk/form/composables';
5
6
 
6
7
  var __defProp = Object.defineProperty;
8
+ var __defProps = Object.defineProperties;
9
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
10
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
11
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
12
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -19,10 +22,28 @@ var __spreadValues = (a, b) => {
19
22
  }
20
23
  return a;
21
24
  };
22
- const props = __spreadValues(__spreadValues({}, _VkfFormItemCtx.props), inputNumberProps);
25
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
26
+ const props = __spreadProps(__spreadValues(__spreadValues({}, _VkfFormItemCtx.props), inputNumberProps), {
27
+ readonly: {
28
+ type: Boolean,
29
+ default: void 0
30
+ },
31
+ unit: {
32
+ type: String,
33
+ default: ""
34
+ }
35
+ });
23
36
  const emits = __spreadValues({}, inputNumberEmits);
24
37
 
25
- var script = defineComponent({
38
+ var _export_sfc = (sfc, props) => {
39
+ const target = sfc.__vccOpts || sfc;
40
+ for (const [key, val] of props) {
41
+ target[key] = val;
42
+ }
43
+ return target;
44
+ };
45
+
46
+ const _sfc_main = defineComponent({
26
47
  name: "VkfInputNumber",
27
48
  components: {
28
49
  VkfFormItem,
@@ -31,37 +52,48 @@ var script = defineComponent({
31
52
  emits,
32
53
  props,
33
54
  setup(props2, { emit }) {
34
- const iBindProps = createInputNumberBindProps(props2);
55
+ const iBindProps = createInputNumberBindProps(props2, ["disabled", "readonly"]);
35
56
  const iOnEmits = createInputNumberOnEmits(emit);
36
57
  const formItemBindProps = _VkfFormItemCtx.createBindProps(props2);
58
+ const readonly = useComputedReadonly(props2);
37
59
  return {
38
60
  formItemBindProps,
39
61
  iBindProps,
40
- iOnEmits
62
+ iOnEmits,
63
+ readonly
41
64
  };
42
65
  }
43
66
  });
44
-
45
- function render(_ctx, _cache, $props, $setup, $data, $options) {
67
+ const _hoisted_1 = {
68
+ key: 0,
69
+ class: "vkf-input-number-unit"
70
+ };
71
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46
72
  const _component_ElInputNumber = resolveComponent("ElInputNumber");
47
73
  const _component_VkfFormItem = resolveComponent("VkfFormItem");
48
74
  return openBlock(), createBlock(_component_VkfFormItem, normalizeProps(guardReactiveProps(_ctx.formItemBindProps)), {
49
75
  default: withCtx(() => [
50
- createVNode(_component_ElInputNumber, mergeProps(_ctx.iBindProps, toHandlers(_ctx.iOnEmits)), null, 16)
76
+ createVNode(_component_ElInputNumber, mergeProps({
77
+ class: {
78
+ "is-readonly": _ctx.readonly
79
+ }
80
+ }, _ctx.iBindProps, toHandlers(_ctx.iOnEmits), {
81
+ readonly: _ctx.readonly,
82
+ disabled: _ctx.readonly || _ctx.disabled
83
+ }), null, 16, ["class", "readonly", "disabled"]),
84
+ _ctx.unit ? (openBlock(), createElementBlock("span", _hoisted_1, toDisplayString(_ctx.unit), 1)) : createCommentVNode("v-if", true)
51
85
  ]),
52
86
  _: 1
53
87
  }, 16);
54
88
  }
55
-
56
- script.render = render;
57
- script.__file = "input-number/src/index.vue";
89
+ var VkfInputNumber = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "index.vue"]]);
58
90
 
59
91
  var types = /*#__PURE__*/Object.freeze({
60
92
  __proto__: null
61
93
  });
62
94
 
63
- script.install = (app) => {
64
- app.component(script.name, script);
95
+ VkfInputNumber.install = (app) => {
96
+ app.component(VkfInputNumber.name, VkfInputNumber);
65
97
  };
66
98
 
67
- export { script as VkfInputNumber, types as __VkfInputNumber, script as default };
99
+ export { VkfInputNumber, types as __VkfInputNumber, VkfInputNumber as default };
@@ -1,4 +1,12 @@
1
1
  export declare const props: {
2
+ readonly: {
3
+ type: BooleanConstructor;
4
+ default: undefined;
5
+ };
6
+ unit: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
2
10
  id: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, undefined, boolean>;
3
11
  step: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
4
12
  stepStrictly: BooleanConstructor;
@@ -9,7 +17,7 @@ export declare const props: {
9
17
  size: {
10
18
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
11
19
  readonly required: false;
12
- readonly validator: (val: unknown) => boolean;
20
+ readonly validator: ((val: unknown) => boolean) | undefined;
13
21
  __epPropKey: true;
14
22
  };
15
23
  controls: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
@@ -21,51 +29,55 @@ export declare const props: {
21
29
  precision: {
22
30
  readonly type: import("vue").PropType<number>;
23
31
  readonly required: false;
24
- readonly validator: (val: unknown) => boolean;
32
+ readonly validator: ((val: unknown) => boolean) | undefined;
25
33
  __epPropKey: true;
26
34
  };
27
35
  validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
28
36
  required: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
29
- rules: {
30
- readonly type: import("vue").PropType<unknown>;
31
- readonly required: false;
32
- readonly validator: (val: unknown) => boolean;
33
- __epPropKey: true;
34
- };
35
37
  labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
36
- inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
37
- showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
38
38
  prop: {
39
39
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp) | ((new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp))[], unknown, unknown>>;
40
40
  readonly required: false;
41
- readonly validator: (val: unknown) => boolean;
41
+ readonly validator: ((val: unknown) => boolean) | undefined;
42
+ __epPropKey: true;
43
+ };
44
+ rules: {
45
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>) | ((new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>))[], unknown, unknown>>;
46
+ readonly required: false;
47
+ readonly validator: ((val: unknown) => boolean) | undefined;
42
48
  __epPropKey: true;
43
49
  };
44
50
  error: StringConstructor;
45
51
  validateStatus: {
46
52
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
47
53
  readonly required: false;
48
- readonly validator: (val: unknown) => boolean;
54
+ readonly validator: ((val: unknown) => boolean) | undefined;
49
55
  __epPropKey: true;
50
56
  };
51
57
  for: StringConstructor;
58
+ inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
59
+ showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
52
60
  formItemSize: {
53
61
  type: import("vue").PropType<"default" | "small" | "large">;
54
62
  default: string;
55
63
  };
56
64
  formItemSlots: {
57
65
  type: import("vue").PropType<import("../../form-item/src/types").FormItemSlots>;
58
- default: any;
66
+ default: undefined;
59
67
  };
60
68
  elRef: {
61
69
  type: import("vue").PropType<any>;
62
70
  required: boolean;
63
71
  };
72
+ inline: {
73
+ type: BooleanConstructor;
74
+ default: boolean;
75
+ };
64
76
  };
65
77
  export declare const emits: {
66
- change: (prev: number, cur: number) => boolean;
78
+ change: (prev: number | undefined, cur: number | undefined) => boolean;
67
79
  blur: (e: FocusEvent) => boolean;
68
80
  focus: (e: FocusEvent) => boolean;
69
- input: (val: number) => boolean;
70
- "update:modelValue": (val: number) => boolean;
81
+ input: (val: number | null | undefined) => boolean;
82
+ "update:modelValue": (val: number | undefined) => boolean;
71
83
  };
@@ -2,6 +2,8 @@ import { _VkfFormItemCtx } from '@vunk/form/components/form-item';
2
2
  import { inputNumberProps, inputNumberEmits } from 'element-plus';
3
3
 
4
4
  var __defProp = Object.defineProperty;
5
+ var __defProps = Object.defineProperties;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
7
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -17,7 +19,17 @@ var __spreadValues = (a, b) => {
17
19
  }
18
20
  return a;
19
21
  };
20
- const props = __spreadValues(__spreadValues({}, _VkfFormItemCtx.props), inputNumberProps);
22
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
+ const props = __spreadProps(__spreadValues(__spreadValues({}, _VkfFormItemCtx.props), inputNumberProps), {
24
+ readonly: {
25
+ type: Boolean,
26
+ default: void 0
27
+ },
28
+ unit: {
29
+ type: String,
30
+ default: ""
31
+ }
32
+ });
21
33
  const emits = __spreadValues({}, inputNumberEmits);
22
34
 
23
35
  export { emits, props };
@@ -1,4 +1,12 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
+ readonly: {
3
+ type: BooleanConstructor;
4
+ default: undefined;
5
+ };
6
+ unit: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
2
10
  id: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, undefined, boolean>;
3
11
  step: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
4
12
  stepStrictly: BooleanConstructor;
@@ -9,7 +17,7 @@ declare const _default: import("vue").DefineComponent<{
9
17
  size: {
10
18
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
11
19
  readonly required: false;
12
- readonly validator: (val: unknown) => boolean;
20
+ readonly validator: ((val: unknown) => boolean) | undefined;
13
21
  __epPropKey: true;
14
22
  };
15
23
  controls: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
@@ -21,63 +29,108 @@ declare const _default: import("vue").DefineComponent<{
21
29
  precision: {
22
30
  readonly type: import("vue").PropType<number>;
23
31
  readonly required: false;
24
- readonly validator: (val: unknown) => boolean;
32
+ readonly validator: ((val: unknown) => boolean) | undefined;
25
33
  __epPropKey: true;
26
34
  };
27
35
  validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
28
36
  required: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
29
- rules: {
30
- readonly type: import("vue").PropType<unknown>;
31
- readonly required: false;
32
- readonly validator: (val: unknown) => boolean;
33
- __epPropKey: true;
34
- };
35
37
  labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
36
- inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
37
- showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
38
38
  prop: {
39
39
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp) | ((new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp))[], unknown, unknown>>;
40
40
  readonly required: false;
41
- readonly validator: (val: unknown) => boolean;
41
+ readonly validator: ((val: unknown) => boolean) | undefined;
42
+ __epPropKey: true;
43
+ };
44
+ rules: {
45
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>) | ((new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>))[], unknown, unknown>>;
46
+ readonly required: false;
47
+ readonly validator: ((val: unknown) => boolean) | undefined;
42
48
  __epPropKey: true;
43
49
  };
44
50
  error: StringConstructor;
45
51
  validateStatus: {
46
52
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
47
53
  readonly required: false;
48
- readonly validator: (val: unknown) => boolean;
54
+ readonly validator: ((val: unknown) => boolean) | undefined;
49
55
  __epPropKey: true;
50
56
  };
51
57
  for: StringConstructor;
58
+ inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
59
+ showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
52
60
  formItemSize: {
53
61
  type: import("vue").PropType<"default" | "small" | "large">;
54
62
  default: string;
55
63
  };
56
64
  formItemSlots: {
57
65
  type: import("vue").PropType<import("../../form-item/src/types").FormItemSlots>;
58
- default: any;
66
+ default: undefined;
59
67
  };
60
68
  elRef: {
61
69
  type: import("vue").PropType<any>;
62
70
  required: boolean;
63
71
  };
72
+ inline: {
73
+ type: BooleanConstructor;
74
+ default: boolean;
75
+ };
64
76
  }, {
65
- formItemBindProps: import("vue").ComputedRef<{}>;
66
- iBindProps: import("vue").ComputedRef<{}>;
77
+ formItemBindProps: import("vue").ComputedRef<{
78
+ required: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
79
+ label: string | undefined;
80
+ labelWidth: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
81
+ prop: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp) | ((new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp))[], unknown, unknown> | undefined;
82
+ rules: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>) | ((new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>))[], unknown, unknown> | undefined;
83
+ error: string | undefined;
84
+ validateStatus: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown> | undefined;
85
+ for: string | undefined;
86
+ inlineMessage: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
87
+ showMessage: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
88
+ formItemSize: "default" | "small" | "large";
89
+ formItemSlots: import("../../form-item/src/types").FormItemSlots | undefined;
90
+ elRef: any;
91
+ inline: boolean;
92
+ readonly: boolean | undefined;
93
+ }>;
94
+ iBindProps: import("vue").ComputedRef<{
95
+ label: string | undefined;
96
+ size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never> | undefined;
97
+ name: string | undefined;
98
+ id: string | undefined;
99
+ validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
100
+ placeholder: string | undefined;
101
+ modelValue: number | undefined;
102
+ step: number;
103
+ stepStrictly: boolean;
104
+ max: number;
105
+ min: number;
106
+ controls: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
107
+ controlsPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "right", unknown>;
108
+ valueOnClear: any;
109
+ precision: number | undefined;
110
+ }>;
67
111
  iOnEmits: {
68
- "update:modelValue": ((event: "update:modelValue", val: number) => void) & ((event: "input", val: number) => void) & ((event: "change", prev: number, cur: number) => void) & ((event: "focus", e: FocusEvent) => void) & ((event: "blur", e: FocusEvent) => void);
69
- input: ((event: "update:modelValue", val: number) => void) & ((event: "input", val: number) => void) & ((event: "change", prev: number, cur: number) => void) & ((event: "focus", e: FocusEvent) => void) & ((event: "blur", e: FocusEvent) => void);
70
- change: ((event: "update:modelValue", val: number) => void) & ((event: "input", val: number) => void) & ((event: "change", prev: number, cur: number) => void) & ((event: "focus", e: FocusEvent) => void) & ((event: "blur", e: FocusEvent) => void);
71
- focus: ((event: "update:modelValue", val: number) => void) & ((event: "input", val: number) => void) & ((event: "change", prev: number, cur: number) => void) & ((event: "focus", e: FocusEvent) => void) & ((event: "blur", e: FocusEvent) => void);
72
- blur: ((event: "update:modelValue", val: number) => void) & ((event: "input", val: number) => void) & ((event: "change", prev: number, cur: number) => void) & ((event: "focus", e: FocusEvent) => void) & ((event: "blur", e: FocusEvent) => void);
112
+ input: (val: number | undefined) => void;
113
+ blur: (val: number | undefined) => void;
114
+ change: (val: number | undefined) => void;
115
+ focus: (val: number | undefined) => void;
116
+ "update:modelValue": (val: number | undefined) => void;
73
117
  };
118
+ readonly: import("vue").ComputedRef<boolean>;
74
119
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
75
- change: (prev: number, cur: number) => boolean;
120
+ change: (prev: number | undefined, cur: number | undefined) => boolean;
76
121
  blur: (e: FocusEvent) => boolean;
77
122
  focus: (e: FocusEvent) => boolean;
78
- input: (val: number) => boolean;
79
- "update:modelValue": (val: number) => boolean;
123
+ input: (val: number | null | undefined) => boolean;
124
+ "update:modelValue": (val: number | undefined) => boolean;
80
125
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
126
+ readonly: {
127
+ type: BooleanConstructor;
128
+ default: undefined;
129
+ };
130
+ unit: {
131
+ type: StringConstructor;
132
+ default: string;
133
+ };
81
134
  id: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, undefined, boolean>;
82
135
  step: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
83
136
  stepStrictly: BooleanConstructor;
@@ -88,7 +141,7 @@ declare const _default: import("vue").DefineComponent<{
88
141
  size: {
89
142
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
90
143
  readonly required: false;
91
- readonly validator: (val: unknown) => boolean;
144
+ readonly validator: ((val: unknown) => boolean) | undefined;
92
145
  __epPropKey: true;
93
146
  };
94
147
  controls: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
@@ -100,68 +153,75 @@ declare const _default: import("vue").DefineComponent<{
100
153
  precision: {
101
154
  readonly type: import("vue").PropType<number>;
102
155
  readonly required: false;
103
- readonly validator: (val: unknown) => boolean;
156
+ readonly validator: ((val: unknown) => boolean) | undefined;
104
157
  __epPropKey: true;
105
158
  };
106
159
  validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
107
160
  required: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
108
- rules: {
109
- readonly type: import("vue").PropType<unknown>;
110
- readonly required: false;
111
- readonly validator: (val: unknown) => boolean;
112
- __epPropKey: true;
113
- };
114
161
  labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
115
- inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
116
- showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
117
162
  prop: {
118
163
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp) | ((new (...args: any[]) => import("element-plus").FormItemProp & {}) | (() => import("element-plus").FormItemProp))[], unknown, unknown>>;
119
164
  readonly required: false;
120
- readonly validator: (val: unknown) => boolean;
165
+ readonly validator: ((val: unknown) => boolean) | undefined;
166
+ __epPropKey: true;
167
+ };
168
+ rules: {
169
+ readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>) | ((new (...args: any[]) => import("element-plus").FormItemRule | import("element-plus").FormItemRule[]) | (() => import("element-plus/es/utils").Arrayable<import("element-plus").FormItemRule>))[], unknown, unknown>>;
170
+ readonly required: false;
171
+ readonly validator: ((val: unknown) => boolean) | undefined;
121
172
  __epPropKey: true;
122
173
  };
123
174
  error: StringConstructor;
124
175
  validateStatus: {
125
176
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
126
177
  readonly required: false;
127
- readonly validator: (val: unknown) => boolean;
178
+ readonly validator: ((val: unknown) => boolean) | undefined;
128
179
  __epPropKey: true;
129
180
  };
130
181
  for: StringConstructor;
182
+ inlineMessage: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
183
+ showMessage: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
131
184
  formItemSize: {
132
185
  type: import("vue").PropType<"default" | "small" | "large">;
133
186
  default: string;
134
187
  };
135
188
  formItemSlots: {
136
189
  type: import("vue").PropType<import("../../form-item/src/types").FormItemSlots>;
137
- default: any;
190
+ default: undefined;
138
191
  };
139
192
  elRef: {
140
193
  type: import("vue").PropType<any>;
141
194
  required: boolean;
142
195
  };
196
+ inline: {
197
+ type: BooleanConstructor;
198
+ default: boolean;
199
+ };
143
200
  }>> & {
144
- onChange?: (prev: number, cur: number) => any;
145
- "onUpdate:modelValue"?: (val: number) => any;
146
- onInput?: (val: number) => any;
147
- onFocus?: (e: FocusEvent) => any;
148
- onBlur?: (e: FocusEvent) => any;
201
+ "onUpdate:modelValue"?: ((val: number | undefined) => any) | undefined;
202
+ onBlur?: ((e: FocusEvent) => any) | undefined;
203
+ onChange?: ((prev: number | undefined, cur: number | undefined) => any) | undefined;
204
+ onFocus?: ((e: FocusEvent) => any) | undefined;
205
+ onInput?: ((val: number | null | undefined) => any) | undefined;
149
206
  }, {
150
207
  required: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
151
208
  labelWidth: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
152
209
  inlineMessage: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
153
210
  showMessage: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
211
+ formItemSize: "default" | "small" | "large";
212
+ formItemSlots: import("../../form-item/src/types").FormItemSlots;
213
+ inline: boolean;
214
+ readonly: boolean;
154
215
  disabled: boolean;
155
216
  id: string;
156
217
  validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
157
- formItemSize: "default" | "small" | "large";
158
- formItemSlots: import("../../form-item/src/types").FormItemSlots;
159
218
  step: number;
160
219
  stepStrictly: boolean;
161
220
  max: number;
162
221
  min: number;
163
222
  controls: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
164
223
  controlsPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "right", unknown>;
165
- valueOnClear: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, null], unknown, unknown>;
224
+ valueOnClear: any;
225
+ unit: string;
166
226
  }>;
167
227
  export default _default;
@@ -0,0 +1,29 @@
1
+
2
+ .el-radio-group.is-readonly,
3
+ .el-radio-group.is-readonly .el-radio-button{
4
+ --el-readonly-cursor: auto;
5
+ --el-disabled-bg-color: initial;
6
+ --el-disabled-text-color: initial;
7
+ --el-radio-button-disabled-checked-fill: var(--el-radio-button-checked-bg-color);
8
+ }
9
+
10
+ .el-radio-group.is-readonly .is-active .el-radio-button__original-radio:disabled+.el-radio-button__inner{
11
+ color: var(--el-radio-button-checked-text-color);
12
+ }
13
+ .el-radio-group.is-readonly .el-radio-button__original-radio:disabled+.el-radio-button__inner {
14
+ cursor: var(--el-readonly-cursor);
15
+ }
16
+
17
+ .el-radio-group.is-readonly .el-radio__input.is-checked+.el-radio__label{
18
+ color: var(--el-color-primary);
19
+ }
20
+ .el-radio-group.is-readonly .el-radio__input.is-checked .el-radio__inner {
21
+ border-color: var(--el-color-primary);
22
+ background: var(--el-color-primary);
23
+
24
+ }
25
+ .el-radio-group.is-readonly .el-radio__input .el-radio__inner,
26
+ .el-radio-group.is-readonly .el-radio__input.is-disabled+span.el-radio__label {
27
+ cursor: var(--el-readonly-cursor);
28
+ }
29
+
@@ -0,0 +1,4 @@
1
+ import VkfRadio from './src/index.vue';
2
+ export * as __VkfRadio from './src/types';
3
+ export { VkfRadio, };
4
+ export default VkfRadio;
@@ -0,0 +1,123 @@
1
+ import { _VkfFormItemCtx, VkfFormItem } from '@vunk/form/components/form-item';
2
+ import { radioGroupProps, radioGroupEmits, ElRadio, ElRadioGroup, ElRadioButton } from 'element-plus';
3
+ import { defineComponent, computed, resolveComponent, openBlock, createBlock, normalizeProps, guardReactiveProps, withCtx, createVNode, mergeProps, toHandlers, createElementBlock, Fragment, renderList, resolveDynamicComponent, createTextVNode, toDisplayString } from 'vue';
4
+ import { createRadioGroupBindProps, createRadioGroupOnEmits } from '@vunk/form/shared/element-plus';
5
+ import { pickObject } from '@vunk/core/shared/utils-object';
6
+ import { useComputedReadonly } from '@vunk/form/composables';
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __defProps = Object.defineProperties;
10
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
11
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
14
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
15
+ var __spreadValues = (a, b) => {
16
+ for (var prop in b || (b = {}))
17
+ if (__hasOwnProp.call(b, prop))
18
+ __defNormalProp(a, prop, b[prop]);
19
+ if (__getOwnPropSymbols)
20
+ for (var prop of __getOwnPropSymbols(b)) {
21
+ if (__propIsEnum.call(b, prop))
22
+ __defNormalProp(a, prop, b[prop]);
23
+ }
24
+ return a;
25
+ };
26
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
27
+ const props = __spreadProps(__spreadValues(__spreadValues({}, _VkfFormItemCtx.props), radioGroupProps), {
28
+ options: {
29
+ type: Array,
30
+ default: () => []
31
+ },
32
+ type: {
33
+ type: String,
34
+ default: "default"
35
+ },
36
+ modelValue: {
37
+ type: [String, Number]
38
+ },
39
+ defaultModelValue: null
40
+ });
41
+ const emits = __spreadValues({}, radioGroupEmits);
42
+
43
+ var _export_sfc = (sfc, props) => {
44
+ const target = sfc.__vccOpts || sfc;
45
+ for (const [key, val] of props) {
46
+ target[key] = val;
47
+ }
48
+ return target;
49
+ };
50
+
51
+ const _sfc_main = defineComponent({
52
+ name: "VkfRadio",
53
+ components: {
54
+ VkfFormItem,
55
+ ElRadio,
56
+ ElRadioGroup,
57
+ ElRadioButton
58
+ },
59
+ emits,
60
+ props,
61
+ setup(props2, { emit }) {
62
+ const formItemBindProps = _VkfFormItemCtx.createBindProps(props2);
63
+ const coreBindProps = createRadioGroupBindProps(props2, ["disabled"]);
64
+ const coreOnEmits = createRadioGroupOnEmits(emit);
65
+ const options = computed(() => {
66
+ return props2.options.filter((item) => item.value !== void 0 && item.value !== null);
67
+ });
68
+ const readonly = useComputedReadonly(props2);
69
+ !props2.modelValue && props2.defaultModelValue && emit("update:modelValue", props2.defaultModelValue);
70
+ return {
71
+ formItemBindProps,
72
+ coreBindProps,
73
+ coreOnEmits,
74
+ options,
75
+ pickObject,
76
+ readonly
77
+ };
78
+ }
79
+ });
80
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
81
+ const _component_ElRadioGroup = resolveComponent("ElRadioGroup");
82
+ const _component_VkfFormItem = resolveComponent("VkfFormItem");
83
+ return openBlock(), createBlock(_component_VkfFormItem, normalizeProps(guardReactiveProps(_ctx.formItemBindProps)), {
84
+ default: withCtx(() => [
85
+ createVNode(_component_ElRadioGroup, mergeProps({
86
+ class: {
87
+ "is-readonly": _ctx.readonly
88
+ }
89
+ }, _ctx.coreBindProps, toHandlers(_ctx.coreOnEmits), {
90
+ disabled: _ctx.readonly || _ctx.disabled
91
+ }), {
92
+ default: withCtx(() => [
93
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.options, (item) => {
94
+ return openBlock(), createBlock(resolveDynamicComponent(_ctx.type === "button" ? "ElRadioButton" : "ElRadio"), mergeProps({
95
+ key: item.value,
96
+ label: item.value
97
+ }, _ctx.pickObject(item, {
98
+ excludes: ["label", "value"]
99
+ })), {
100
+ default: withCtx(() => [
101
+ createTextVNode(toDisplayString(item.label ?? item.value), 1)
102
+ ]),
103
+ _: 2
104
+ }, 1040, ["label"]);
105
+ }), 128))
106
+ ]),
107
+ _: 1
108
+ }, 16, ["class", "disabled"])
109
+ ]),
110
+ _: 1
111
+ }, 16);
112
+ }
113
+ var VkfRadio = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "index.vue"]]);
114
+
115
+ var types = /*#__PURE__*/Object.freeze({
116
+ __proto__: null
117
+ });
118
+
119
+ VkfRadio.install = (app) => {
120
+ app.component(VkfRadio.name, VkfRadio);
121
+ };
122
+
123
+ export { VkfRadio, types as __VkfRadio, VkfRadio as default };