@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
@@ -0,0 +1,80 @@
1
+ import { defineComponent, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createBlock, normalizeProps, mergeProps, createTextVNode, toDisplayString, createCommentVNode, createElementVNode } from 'vue';
2
+ import { VkfFormItemRendererTemplate } from '@vunk/form/components/form-item-renderer-template';
3
+ import { ElLink, ElDivider } from 'element-plus';
4
+ import { pickObject } from '@vunk/core/shared/utils-object';
5
+
6
+ const props = {
7
+ data: {
8
+ type: Object,
9
+ default: () => ({})
10
+ }
11
+ };
12
+ const emits = {};
13
+
14
+ var _export_sfc = (sfc, props) => {
15
+ const target = sfc.__vccOpts || sfc;
16
+ for (const [key, val] of props) {
17
+ target[key] = val;
18
+ }
19
+ return target;
20
+ };
21
+
22
+ const _sfc_main = defineComponent({
23
+ name: "VkfFirtEp",
24
+ components: {
25
+ VkfFormItemRendererTemplate,
26
+ ElLink,
27
+ ElDivider
28
+ },
29
+ emits,
30
+ props,
31
+ setup() {
32
+ return {
33
+ pickObject
34
+ };
35
+ }
36
+ });
37
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
38
+ const _component_ElLink = resolveComponent("ElLink");
39
+ const _component_VkfFormItemRendererTemplate = resolveComponent("VkfFormItemRendererTemplate");
40
+ const _component_ElDivider = resolveComponent("ElDivider");
41
+ return openBlock(), createElementBlock(Fragment, null, [
42
+ createVNode(_component_VkfFormItemRendererTemplate, { type: "ElLink" }, {
43
+ default: withCtx(({ data: props2, templateIf }) => [
44
+ templateIf(_ctx.data) ? (openBlock(), createBlock(_component_ElLink, normalizeProps(mergeProps({ key: 0 }, _ctx.pickObject(props2, {
45
+ excludes: ["label"]
46
+ }))), {
47
+ default: withCtx(() => [
48
+ createTextVNode(toDisplayString(props2.label), 1)
49
+ ]),
50
+ _: 2
51
+ }, 1040)) : createCommentVNode("v-if", true)
52
+ ]),
53
+ _: 1
54
+ }),
55
+ createVNode(_component_VkfFormItemRendererTemplate, { type: "ElDivider" }, {
56
+ default: withCtx(({ data: props2, templateIf }) => [
57
+ templateIf(_ctx.data) ? (openBlock(), createBlock(_component_ElDivider, normalizeProps(mergeProps({ key: 0 }, _ctx.pickObject(props2, {
58
+ excludes: ["label"]
59
+ }))), {
60
+ default: withCtx(() => [
61
+ createElementVNode("span", null, toDisplayString(props2.label), 1)
62
+ ]),
63
+ _: 2
64
+ }, 1040)) : createCommentVNode("v-if", true)
65
+ ]),
66
+ _: 1
67
+ })
68
+ ], 64);
69
+ }
70
+ var VkfFirtEp = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "index.vue"]]);
71
+
72
+ var types = /*#__PURE__*/Object.freeze({
73
+ __proto__: null
74
+ });
75
+
76
+ VkfFirtEp.install = (app) => {
77
+ app.component(VkfFirtEp.name, VkfFirtEp);
78
+ };
79
+
80
+ export { VkfFirtEp, types as __VkfFirtEp, VkfFirtEp as default };
@@ -0,0 +1,9 @@
1
+ import { NormalObject } from '@vunk/core';
2
+ import { PropType } from 'vue';
3
+ export declare const props: {
4
+ data: {
5
+ type: PropType<NormalObject>;
6
+ default: () => {};
7
+ };
8
+ };
9
+ export declare const emits: {};
@@ -0,0 +1,9 @@
1
+ const props = {
2
+ data: {
3
+ type: Object,
4
+ default: () => ({})
5
+ }
6
+ };
7
+ const emits = {};
8
+
9
+ export { emits, props };
@@ -0,0 +1,19 @@
1
+ declare const _default: import("vue").DefineComponent<{
2
+ data: {
3
+ type: import("vue").PropType<import("@vunk/core").NormalObject>;
4
+ default: () => {};
5
+ };
6
+ }, {
7
+ pickObject: <T extends import("@vunk/core").NormalObject, EX extends (keyof T)[] | undefined, KI extends keyof T>(data: T, opts?: {
8
+ excludes?: EX | undefined;
9
+ includes?: KI[] | undefined;
10
+ } | undefined) => { [P in EX extends (infer KE)[] ? Exclude<KI, KE> : KI]: T[P]; };
11
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
12
+ data: {
13
+ type: import("vue").PropType<import("@vunk/core").NormalObject>;
14
+ default: () => {};
15
+ };
16
+ }>>, {
17
+ data: import("@vunk/core").NormalObject;
18
+ }>;
19
+ export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+
@@ -1,6 +1,7 @@
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';
@@ -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,7 +58,15 @@ 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,
@@ -67,21 +78,33 @@ var script = defineComponent({
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) {
97
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
79
98
  const _component_VkfFormItemRendererTemplateDefault = resolveComponent("VkfFormItemRendererTemplateDefault");
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 }, {
@@ -97,14 +120,12 @@ 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";
105
-
106
- script.install = (app) => {
107
- app.component(script.name, script);
127
+ VkfForm.install = (app) => {
128
+ app.component(VkfForm.name, VkfForm);
108
129
  };
109
130
 
110
- export { script as VkfForm, ctx as _VkfFormCtx, script as default };
131
+ export { VkfForm, ctx as _VkfFormCtx, VkfForm as default };