@vunk/form 1.2.2 → 1.3.0

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 (176) hide show
  1. package/components/download-plus/index.cjs +4 -4
  2. package/components/download-plus/index.mjs +4 -4
  3. package/components/form-item/index.cjs +3 -4
  4. package/components/form-item/index.mjs +3 -4
  5. package/components/input/index.cjs +2 -2
  6. package/components/input/index.mjs +2 -2
  7. package/components/monaco-editor/index.cjs +83 -0
  8. package/components/monaco-editor/index.css +3 -0
  9. package/components/monaco-editor/index.mjs +77 -0
  10. package/components/slider/index.cjs +3 -3
  11. package/components/slider/index.mjs +3 -3
  12. package/components/templates-default/index.cjs +41 -26
  13. package/components/templates-default/index.mjs +41 -26
  14. package/components/upload/index.cjs +2 -2
  15. package/components/upload/index.mjs +2 -2
  16. package/components/upload-plus/index.cjs +19 -20
  17. package/components/upload-plus/index.mjs +19 -20
  18. package/components/vditor/index.cjs +43 -408
  19. package/components/vditor/index.mjs +44 -409
  20. package/composables/useSourceManager.d.ts +1 -1
  21. package/index.css +4 -13
  22. package/package.json +9 -4
  23. package/shared/element-plus/ctx.d.ts +3 -3
  24. package/shared/element-plus/instances.d.ts +2 -2
  25. package/components/button/index.d.ts +0 -4
  26. package/components/button/src/ctx.d.ts +0 -96
  27. package/components/button/src/index.vue.d.ts +0 -219
  28. package/components/button/src/types.d.ts +0 -13
  29. package/components/cascader/index.d.ts +0 -6
  30. package/components/cascader/src/ctx.d.ts +0 -120
  31. package/components/cascader/src/index.vue.d.ts +0 -291
  32. package/components/cascader/src/types.d.ts +0 -7
  33. package/components/cascader/src/use.d.ts +0 -5
  34. package/components/checkbox/index.d.ts +0 -5
  35. package/components/checkbox/src/ctx.d.ts +0 -89
  36. package/components/checkbox/src/index.vue.d.ts +0 -203
  37. package/components/checkbox/src/types.d.ts +0 -8
  38. package/components/color-picker/index.d.ts +0 -4
  39. package/components/color-picker/src/ctx.d.ts +0 -80
  40. package/components/color-picker/src/index.vue.d.ts +0 -192
  41. package/components/color-picker/src/types.d.ts +0 -7
  42. package/components/date-picker/index.d.ts +0 -5
  43. package/components/date-picker/src/ctx.d.ts +0 -158
  44. package/components/date-picker/src/index.vue.d.ts +0 -376
  45. package/components/date-picker/src/types.d.ts +0 -20
  46. package/components/date-picker-range/index.d.ts +0 -4
  47. package/components/date-picker-range/src/ctx.d.ts +0 -177
  48. package/components/date-picker-range/src/index.vue.d.ts +0 -398
  49. package/components/date-picker-range/src/types.d.ts +0 -12
  50. package/components/download-plus/index.d.ts +0 -4
  51. package/components/download-plus/src/api.d.ts +0 -13
  52. package/components/download-plus/src/const.d.ts +0 -9
  53. package/components/download-plus/src/ctx.d.ts +0 -84
  54. package/components/download-plus/src/index.vue.d.ts +0 -206
  55. package/components/download-plus/src/types.d.ts +0 -17
  56. package/components/esri-input-geojson/index.d.ts +0 -6
  57. package/components/esri-input-geojson/src/append.vue.d.ts +0 -32
  58. package/components/esri-input-geojson/src/const.d.ts +0 -12
  59. package/components/esri-input-geojson/src/ctx.d.ts +0 -223
  60. package/components/esri-input-geojson/src/default-view.vue.d.ts +0 -133
  61. package/components/esri-input-geojson/src/index.vue.d.ts +0 -549
  62. package/components/esri-input-geojson/src/types.d.ts +0 -22
  63. package/components/esri-input-geojson/src/viewer.vue.d.ts +0 -296
  64. package/components/form/index.d.ts +0 -5
  65. package/components/form/src/ctx.d.ts +0 -84
  66. package/components/form/src/index.vue.d.ts +0 -455
  67. package/components/form/src/types.d.ts +0 -12
  68. package/components/form/src/utils.d.ts +0 -15
  69. package/components/form-item/index.d.ts +0 -5
  70. package/components/form-item/src/ctx.d.ts +0 -62
  71. package/components/form-item/src/index.vue.d.ts +0 -140
  72. package/components/form-item/src/types.d.ts +0 -6
  73. package/components/form-item-renderer/index.d.ts +0 -5
  74. package/components/form-item-renderer/src/ctx.d.ts +0 -16
  75. package/components/form-item-renderer/src/index.vue.d.ts +0 -38
  76. package/components/form-item-renderer/src/symbols.d.ts +0 -2
  77. package/components/form-item-renderer/src/types.d.ts +0 -7
  78. package/components/form-item-renderer-template/index.d.ts +0 -4
  79. package/components/form-item-renderer-template/src/ctx.d.ts +0 -7
  80. package/components/form-item-renderer-template/src/index.vue.d.ts +0 -16
  81. package/components/form-item-renderer-template/src/types.d.ts +0 -1
  82. package/components/geoinput/index.d.ts +0 -4
  83. package/components/geoinput/src/ctx.d.ts +0 -228
  84. package/components/geoinput/src/index.vue.d.ts +0 -496
  85. package/components/geoinput/src/types.d.ts +0 -12
  86. package/components/geoinput-read/index.d.ts +0 -5
  87. package/components/geoinput-read/src/append.vue.d.ts +0 -6
  88. package/components/geoinput-read/src/core.vue.d.ts +0 -482
  89. package/components/geoinput-read/src/ctx.d.ts +0 -199
  90. package/components/geoinput-read/src/index.vue.d.ts +0 -441
  91. package/components/geoinput-read/src/types.d.ts +0 -3
  92. package/components/geoinput-update/index.d.ts +0 -5
  93. package/components/geoinput-update/src/append.vue.d.ts +0 -20
  94. package/components/geoinput-update/src/ctx.d.ts +0 -207
  95. package/components/geoinput-update/src/index.vue.d.ts +0 -508
  96. package/components/geoinput-update/src/types.d.ts +0 -6
  97. package/components/input/index.d.ts +0 -5
  98. package/components/input/src/ctx.d.ts +0 -148
  99. package/components/input/src/index.vue.d.ts +0 -343
  100. package/components/input/src/types.d.ts +0 -13
  101. package/components/input-link/index.d.ts +0 -4
  102. package/components/input-link/src/ctx.d.ts +0 -179
  103. package/components/input-link/src/index.vue.d.ts +0 -373
  104. package/components/input-link/src/types.d.ts +0 -7
  105. package/components/input-number/index.d.ts +0 -4
  106. package/components/input-number/src/ctx.d.ts +0 -90
  107. package/components/input-number/src/index.vue.d.ts +0 -216
  108. package/components/input-number/src/types.d.ts +0 -8
  109. package/components/radio/index.d.ts +0 -4
  110. package/components/radio/src/ctx.d.ts +0 -82
  111. package/components/radio/src/index.vue.d.ts +0 -195
  112. package/components/radio/src/types.d.ts +0 -8
  113. package/components/select/index.d.ts +0 -4
  114. package/components/select/src/ctx.d.ts +0 -156
  115. package/components/select/src/index.vue.d.ts +0 -492
  116. package/components/select/src/types.d.ts +0 -11
  117. package/components/slider/index.d.ts +0 -4
  118. package/components/slider/src/ctx.d.ts +0 -127
  119. package/components/slider/src/index.vue.d.ts +0 -328
  120. package/components/slider/src/types.d.ts +0 -7
  121. package/components/switch/index.d.ts +0 -4
  122. package/components/switch/src/ctx.d.ts +0 -114
  123. package/components/switch/src/index.vue.d.ts +0 -273
  124. package/components/switch/src/types.d.ts +0 -8
  125. package/components/templates-default/index.d.ts +0 -4
  126. package/components/templates-default/src/ctx.d.ts +0 -19
  127. package/components/templates-default/src/index.vue.d.ts +0 -43
  128. package/components/templates-default/src/types.d.ts +0 -53
  129. package/components/templates-element-plus/index.d.ts +0 -4
  130. package/components/templates-element-plus/src/ctx.d.ts +0 -9
  131. package/components/templates-element-plus/src/index.vue.d.ts +0 -19
  132. package/components/templates-element-plus/src/types.d.ts +0 -13
  133. package/components/templates-esri/index.d.ts +0 -4
  134. package/components/templates-esri/src/ctx.d.ts +0 -11
  135. package/components/templates-esri/src/index.vue.d.ts +0 -20
  136. package/components/templates-esri/src/types.d.ts +0 -2
  137. package/components/templates-layout/index.d.ts +0 -4
  138. package/components/templates-layout/src/ctx.d.ts +0 -9
  139. package/components/templates-layout/src/index.vue.d.ts +0 -19
  140. package/components/templates-layout/src/types.d.ts +0 -32
  141. package/components/templates-mapbox/index.d.ts +0 -4
  142. package/components/templates-mapbox/src/ctx.d.ts +0 -11
  143. package/components/templates-mapbox/src/index.vue.d.ts +0 -20
  144. package/components/templates-mapbox/src/types.d.ts +0 -3
  145. package/components/templates-variant/index.d.ts +0 -4
  146. package/components/templates-variant/src/ctx.d.ts +0 -11
  147. package/components/templates-variant/src/index.vue.d.ts +0 -20
  148. package/components/templates-variant/src/types.d.ts +0 -2
  149. package/components/upload/index.d.ts +0 -5
  150. package/components/upload/src/ctx.d.ts +0 -180
  151. package/components/upload/src/file.vue.d.ts +0 -106
  152. package/components/upload/src/index.vue.d.ts +0 -427
  153. package/components/upload/src/types.d.ts +0 -7
  154. package/components/upload-plus/index.d.ts +0 -6
  155. package/components/upload-plus/src/api.d.ts +0 -38
  156. package/components/upload-plus/src/const.d.ts +0 -9
  157. package/components/upload-plus/src/ctx.d.ts +0 -103
  158. package/components/upload-plus/src/index.vue.d.ts +0 -215
  159. package/components/upload-plus/src/types.d.ts +0 -32
  160. package/components/van-cascader/index.d.ts +0 -4
  161. package/components/van-cascader/src/ctx.d.ts +0 -118
  162. package/components/van-cascader/src/index.vue.d.ts +0 -275
  163. package/components/van-cascader/src/types.d.ts +0 -1
  164. package/components/var-datetime-picker/index.d.ts +0 -4
  165. package/components/var-datetime-picker/src/const.d.ts +0 -10
  166. package/components/var-datetime-picker/src/ctx.d.ts +0 -67
  167. package/components/var-datetime-picker/src/index.vue.d.ts +0 -157
  168. package/components/var-datetime-picker/src/types.d.ts +0 -22
  169. package/components/vditor/index.css +0 -12
  170. package/components/vditor/index.d.ts +0 -4
  171. package/components/vditor/src/ctx.d.ts +0 -31
  172. package/components/vditor/src/handle-fullscreen.vue.d.ts +0 -18
  173. package/components/vditor/src/handle-value.vue.d.ts +0 -18
  174. package/components/vditor/src/index.vue.d.ts +0 -66
  175. package/components/vditor/src/types.d.ts +0 -9
  176. package/components/vditor/src/use.d.ts +0 -4
@@ -1,435 +1,70 @@
1
- import Vditor from 'vditor';
2
- import { inject, unref, ref, getCurrentScope, onScopeDispose, watch, defineComponent, nextTick, shallowRef, provide, onMounted, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, createBlock, withCtx, normalizeClass, renderSlot, createCommentVNode } from 'vue';
1
+ import { defineComponent, resolveComponent, openBlock, createBlock, normalizeProps, guardReactiveProps, withCtx, createVNode, mergeProps, toHandlers, renderSlot } from 'vue';
2
+ import { _VkVditorCtx, VkVditor } from '@vunk/plus/components/vditor';
3
+ import { _VkfFormItemCtx, VkfFormItem } from '@vunk/form/components/form-item';
4
+ import { useComputedReadonly } from '@vunk/form/composables';
3
5
  import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
4
- import { VkAsyncTeleport } from '@vunk/core';
5
6
 
6
7
  const props = {
7
- modelValue: {
8
- type: String,
9
- default: ""
10
- },
11
- defaultOptions: {
12
- type: Object,
13
- default: () => ({})
14
- },
15
- placeholder: {
16
- type: String,
17
- default: "\u95EE\u6211\u4EFB\u4F55\u95EE\u9898...(Crtl + Enter \u53D1\u9001)"
18
- },
19
- toolbar: {
20
- type: Array,
21
- default: () => [
22
- "headings",
23
- "bold",
24
- "italic",
25
- "strike",
26
- "link",
27
- "|",
28
- "list",
29
- "ordered-list",
30
- "outdent",
31
- "indent",
32
- "|",
33
- "line",
34
- "code",
35
- "inline-code",
36
- "insert-before",
37
- "insert-after",
38
- "|",
39
- "table",
40
- "|",
41
- "undo",
42
- "redo",
43
- "|",
44
- "fullscreen",
45
- "outline",
46
- "export",
47
- "|"
48
- ]
49
- },
50
- fullscreen: {
8
+ ..._VkfFormItemCtx.props,
9
+ ..._VkVditorCtx.props,
10
+ readonly: {
51
11
  type: Boolean,
52
- default: false
12
+ default: void 0
53
13
  }
54
14
  };
55
15
  const emits = {
56
- load: (e) => e,
57
- "update:modelValue": (e) => e,
58
- ctrlEnter: (e) => e,
59
- "update:fullscreen": (e) => e
16
+ ..._VkVditorCtx.emits
60
17
  };
61
18
 
62
- function mitt(n){return {all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e]);},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]));},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e);}),(i=n.get("*"))&&i.slice().map(function(n){n(t,e);});}}}
63
-
64
- const useVditor = () => {
65
- const core = inject("vkfVditorRef", null);
66
- if (!core) {
67
- throw new Error("useVditor must be used after VditorProvider");
68
- }
69
- return unref(core);
70
- };
71
- const useVditorMitter = () => {
72
- const core = inject("vkfVditorMitter", null);
73
- if (!core) {
74
- throw new Error("useVditorMitter must be used after VditorProvider");
75
- }
76
- return core;
77
- };
78
-
79
- var _a;
80
- const isClient = typeof window !== "undefined";
81
- isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && /iP(ad|hone|od)/.test(window.navigator.userAgent);
82
-
83
- function createFilterWrapper(filter, fn) {
84
- function wrapper(...args) {
85
- filter(() => fn.apply(this, args), { fn, thisArg: this, args });
86
- }
87
- return wrapper;
88
- }
89
- const bypassFilter = (invoke) => {
90
- return invoke();
91
- };
92
- function pausableFilter(extendFilter = bypassFilter) {
93
- const isActive = ref(true);
94
- function pause() {
95
- isActive.value = false;
96
- }
97
- function resume() {
98
- isActive.value = true;
99
- }
100
- const eventFilter = (...args) => {
101
- if (isActive.value)
102
- extendFilter(...args);
103
- };
104
- return { isActive, pause, resume, eventFilter };
105
- }
106
-
107
- function tryOnScopeDispose(fn) {
108
- if (getCurrentScope()) {
109
- onScopeDispose(fn);
110
- return true;
111
- }
112
- return false;
113
- }
114
-
115
- var __getOwnPropSymbols$6$1 = Object.getOwnPropertySymbols;
116
- var __hasOwnProp$6$1 = Object.prototype.hasOwnProperty;
117
- var __propIsEnum$6$1 = Object.prototype.propertyIsEnumerable;
118
- var __objRest$5 = (source, exclude) => {
119
- var target = {};
120
- for (var prop in source)
121
- if (__hasOwnProp$6$1.call(source, prop) && exclude.indexOf(prop) < 0)
122
- target[prop] = source[prop];
123
- if (source != null && __getOwnPropSymbols$6$1)
124
- for (var prop of __getOwnPropSymbols$6$1(source)) {
125
- if (exclude.indexOf(prop) < 0 && __propIsEnum$6$1.call(source, prop))
126
- target[prop] = source[prop];
127
- }
128
- return target;
129
- };
130
- function watchWithFilter(source, cb, options = {}) {
131
- const _a = options, {
132
- eventFilter = bypassFilter
133
- } = _a, watchOptions = __objRest$5(_a, [
134
- "eventFilter"
135
- ]);
136
- return watch(source, createFilterWrapper(eventFilter, cb), watchOptions);
137
- }
138
-
139
- var __defProp$2 = Object.defineProperty;
140
- var __defProps$2 = Object.defineProperties;
141
- var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
142
- var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
143
- var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
144
- var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
145
- var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
146
- var __spreadValues$2 = (a, b) => {
147
- for (var prop in b || (b = {}))
148
- if (__hasOwnProp$2.call(b, prop))
149
- __defNormalProp$2(a, prop, b[prop]);
150
- if (__getOwnPropSymbols$2)
151
- for (var prop of __getOwnPropSymbols$2(b)) {
152
- if (__propIsEnum$2.call(b, prop))
153
- __defNormalProp$2(a, prop, b[prop]);
154
- }
155
- return a;
156
- };
157
- var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
158
- var __objRest$1$1 = (source, exclude) => {
159
- var target = {};
160
- for (var prop in source)
161
- if (__hasOwnProp$2.call(source, prop) && exclude.indexOf(prop) < 0)
162
- target[prop] = source[prop];
163
- if (source != null && __getOwnPropSymbols$2)
164
- for (var prop of __getOwnPropSymbols$2(source)) {
165
- if (exclude.indexOf(prop) < 0 && __propIsEnum$2.call(source, prop))
166
- target[prop] = source[prop];
167
- }
168
- return target;
169
- };
170
- function watchPausable(source, cb, options = {}) {
171
- const _a = options, {
172
- eventFilter: filter
173
- } = _a, watchOptions = __objRest$1$1(_a, [
174
- "eventFilter"
175
- ]);
176
- const { eventFilter, pause, resume, isActive } = pausableFilter(filter);
177
- const stop = watchWithFilter(source, cb, __spreadProps$2(__spreadValues$2({}, watchOptions), {
178
- eventFilter
179
- }));
180
- return { stop, pause, resume, isActive };
181
- }
182
-
183
- function unrefElement(elRef) {
184
- var _a;
185
- const plain = unref(elRef);
186
- return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;
187
- }
188
-
189
- const defaultWindow = isClient ? window : void 0;
190
-
191
- const _global = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
192
- const globalKey = "__vueuse_ssr_handlers__";
193
- _global[globalKey] = _global[globalKey] || {};
194
-
195
- var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
196
- var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
197
- var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
198
- var __objRest$1 = (source, exclude) => {
199
- var target = {};
200
- for (var prop in source)
201
- if (__hasOwnProp$6.call(source, prop) && exclude.indexOf(prop) < 0)
202
- target[prop] = source[prop];
203
- if (source != null && __getOwnPropSymbols$6)
204
- for (var prop of __getOwnPropSymbols$6(source)) {
205
- if (exclude.indexOf(prop) < 0 && __propIsEnum$6.call(source, prop))
206
- target[prop] = source[prop];
207
- }
208
- return target;
209
- };
210
- function useMutationObserver(target, callback, options = {}) {
211
- const _a = options, { window = defaultWindow } = _a, mutationOptions = __objRest$1(_a, ["window"]);
212
- let observer;
213
- const isSupported = window && "MutationObserver" in window;
214
- const cleanup = () => {
215
- if (observer) {
216
- observer.disconnect();
217
- observer = void 0;
218
- }
219
- };
220
- const stopWatch = watch(() => unrefElement(target), (el) => {
221
- cleanup();
222
- if (isSupported && window && el) {
223
- observer = new MutationObserver(callback);
224
- observer.observe(el, mutationOptions);
225
- }
226
- }, { immediate: true });
227
- const stop = () => {
228
- cleanup();
229
- stopWatch();
230
- };
231
- tryOnScopeDispose(stop);
232
- return {
233
- isSupported,
234
- stop
235
- };
236
- }
237
-
238
- var SwipeDirection;
239
- (function(SwipeDirection2) {
240
- SwipeDirection2["UP"] = "UP";
241
- SwipeDirection2["RIGHT"] = "RIGHT";
242
- SwipeDirection2["DOWN"] = "DOWN";
243
- SwipeDirection2["LEFT"] = "LEFT";
244
- SwipeDirection2["NONE"] = "NONE";
245
- })(SwipeDirection || (SwipeDirection = {}));
246
-
247
- var _sfc_main$2 = defineComponent({
248
- props: {
249
- modelValue: {
250
- type: String,
251
- default: ""
252
- }
253
- },
254
- emits: {
255
- "update:modelValue": null
256
- },
257
- setup(props, { emit }) {
258
- const vditor = useVditor();
259
- const mitter = useVditorMitter();
260
- if (props.modelValue) {
261
- vditor.setValue(props.modelValue, true);
262
- }
263
- const { pause, resume } = watchPausable(() => props.modelValue, (value) => {
264
- vditor.setValue(value, true);
265
- });
266
- mitter.on("input", (value) => {
267
- pause();
268
- emit("update:modelValue", value);
269
- nextTick(resume);
270
- });
271
- return () => null;
272
- }
273
- });
274
-
275
- var HandleValue = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "/home/runner/work/private-vunk-form/private-vunk-form/packages/components/vditor/src/handle-value.vue"]]);
276
-
277
- var _sfc_main$1 = defineComponent({
278
- props: {
279
- fullscreen: {
280
- type: Boolean,
281
- default: false
282
- }
283
- },
284
- emits: {
285
- "update:fullscreen": null
286
- },
287
- setup(props, { emit }) {
288
- const vditor = useVditor();
289
- const el = vditor.vditor.element;
290
- const domFullscreen = ref(false);
291
- useMutationObserver(el, () => {
292
- if (el.classList.contains("vditor--fullscreen")) {
293
- domFullscreen.value = true;
294
- } else {
295
- domFullscreen.value = false;
296
- }
297
- }, {
298
- attributes: true
299
- });
300
- watch(() => props.fullscreen, (value) => {
301
- if (value !== domFullscreen.value) {
302
- const ir = vditor.vditor.ir?.element;
303
- if (!ir) return;
304
- ir.dispatchEvent(new KeyboardEvent("keydown", {
305
- key: "'",
306
- ctrlKey: true
307
- }));
308
- }
309
- }, { immediate: true });
310
- watch(() => domFullscreen.value, (value) => {
311
- emit("update:fullscreen", value);
312
- });
313
- return () => null;
314
- }
315
- });
316
-
317
- var HandleFullscreen = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "/home/runner/work/private-vunk-form/private-vunk-form/packages/components/vditor/src/handle-fullscreen.vue"]]);
318
-
319
19
  var _sfc_main = defineComponent({
320
20
  name: "VkfVditor",
321
21
  components: {
322
- HandleValue,
323
- HandleFullscreen,
324
- VkAsyncTeleport
22
+ VkfFormItem,
23
+ VkVditor
325
24
  },
326
25
  props,
327
26
  emits,
328
27
  setup(props2, { emit }) {
329
- const vditorNode = ref();
330
- const ready = ref(false);
331
- const mitter = mitt();
332
- const vditorRef = shallowRef();
333
- const isTextareaFocus = ref(false);
334
- provide("vkfVditorMitter", mitter);
335
- provide("vkfVditorRef", vditorRef);
336
- onMounted(() => {
337
- const vditor = new Vditor(vditorNode.value, {
338
- ...props2.defaultOptions,
339
- placeholder: props2.placeholder,
340
- cache: {
341
- enable: true,
342
- id: "VkfVditorCache",
343
- ...props2.defaultOptions.cache || {}
344
- },
345
- after() {
346
- vditorRef.value = vditor;
347
- ready.value = true;
348
- emit("load", vditor);
349
- props2.defaultOptions.after?.();
350
- },
351
- input(value) {
352
- mitter.emit("input", value);
353
- props2.defaultOptions.input?.(value);
354
- },
355
- ctrlEnter(value) {
356
- emit("update:modelValue", value);
357
- emit("ctrlEnter", value);
358
- },
359
- focus(v) {
360
- isTextareaFocus.value = true;
361
- props2.defaultOptions.focus?.(v);
362
- },
363
- blur(v) {
364
- isTextareaFocus.value = false;
365
- props2.defaultOptions.blur?.(v);
366
- },
367
- toolbar: props2.toolbar
368
- });
369
- });
28
+ const coreProps = _VkVditorCtx.createBindProps(props2);
29
+ const coreEmits = _VkVditorCtx.createOnEmits(emit);
30
+ const formItemBindProps = _VkfFormItemCtx.createBindProps(props2);
31
+ const readonly = useComputedReadonly(props2);
370
32
  return {
371
- vditorNode,
372
- isTextareaFocus,
373
- ready
33
+ formItemBindProps,
34
+ coreProps,
35
+ coreEmits,
36
+ readonly
374
37
  };
375
38
  }
376
39
  });
377
40
 
378
- const _hoisted_1 = {
379
- ref: "vditorNode",
380
- class: "vkf-vditor"
381
- };
382
41
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
383
- const _component_VkAsyncTeleport = resolveComponent("VkAsyncTeleport");
384
- const _component_HandleValue = resolveComponent("HandleValue");
385
- const _component_HandleFullscreen = resolveComponent("HandleFullscreen");
386
- return openBlock(), createElementBlock(
387
- Fragment,
388
- null,
389
- [
390
- createElementVNode(
391
- "div",
392
- _hoisted_1,
393
- null,
394
- 512
395
- /* NEED_PATCH */
396
- ),
397
- _ctx.ready ? (openBlock(), createBlock(_component_VkAsyncTeleport, {
398
- key: 0,
399
- to: _ctx.vditorNode
400
- }, {
401
- default: withCtx(() => [
402
- createElementVNode(
403
- "div",
404
- {
405
- class: normalizeClass(["vkf-vditor-footer", {
406
- "is-textarea-focus": _ctx.isTextareaFocus
407
- }])
408
- },
409
- [
42
+ const _component_VkVditor = resolveComponent("VkVditor");
43
+ const _component_VkfFormItem = resolveComponent("VkfFormItem");
44
+ return openBlock(), createBlock(
45
+ _component_VkfFormItem,
46
+ normalizeProps(guardReactiveProps(_ctx.formItemBindProps)),
47
+ {
48
+ default: withCtx(() => [
49
+ createVNode(
50
+ _component_VkVditor,
51
+ mergeProps(_ctx.coreProps, toHandlers(_ctx.coreEmits)),
52
+ {
53
+ footer: withCtx(() => [
410
54
  renderSlot(_ctx.$slots, "footer")
411
- ],
412
- 2
413
- /* CLASS */
414
- )
415
- ]),
416
- _: 3
417
- /* FORWARDED */
418
- }, 8, ["to"])) : createCommentVNode("v-if", true),
419
- _ctx.ready ? (openBlock(), createBlock(_component_HandleValue, {
420
- key: 1,
421
- "model-value": _ctx.modelValue,
422
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.$emit("update:modelValue", $event))
423
- }, null, 8, ["model-value"])) : createCommentVNode("v-if", true),
424
- _ctx.ready ? (openBlock(), createBlock(_component_HandleFullscreen, {
425
- key: 2,
426
- fullscreen: _ctx.fullscreen,
427
- "onUpdate:fullscreen": _cache[1] || (_cache[1] = ($event) => _ctx.$emit("update:fullscreen", $event))
428
- }, null, 8, ["fullscreen"])) : createCommentVNode("v-if", true),
429
- _ctx.ready ? renderSlot(_ctx.$slots, "default", { key: 3 }) : createCommentVNode("v-if", true)
430
- ],
431
- 64
432
- /* STABLE_FRAGMENT */
55
+ ]),
56
+ _: 3
57
+ /* FORWARDED */
58
+ },
59
+ 16
60
+ /* FULL_PROPS */
61
+ )
62
+ ]),
63
+ _: 3
64
+ /* FORWARDED */
65
+ },
66
+ 16
67
+ /* FULL_PROPS */
433
68
  );
434
69
  }
435
70
  var VkfVditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/private-vunk-form/private-vunk-form/packages/components/vditor/src/index.vue"]]);
@@ -3,7 +3,7 @@ import { MaybeRef } from '@vunk/core';
3
3
  import { Ref } from 'vue';
4
4
  export declare const useSourceManager: <T = FormItemRendererSource>(source: MaybeRef<T[]>, opts?: {
5
5
  slotsChildren?: string[];
6
- }) => readonly [Ref<T[]>, {
6
+ }) => readonly [Ref<T[], T[]>, {
7
7
  readonly manager: import("vue").ComputedRef<{
8
8
  keyRecord: Record<string, ManagerInfo<T>>;
9
9
  propRecord: Record<string, ManagerInfo<T>>;
package/index.css CHANGED
@@ -247,6 +247,10 @@
247
247
  cursor: var(--el-readonly-cursor);
248
248
  }
249
249
 
250
+ .vkf-form-item .vk-monaco-editor{
251
+ margin-top: 0.5em;
252
+ }
253
+
250
254
  .el-radio-group.is-readonly,
251
255
  .el-radio-group.is-readonly .el-radio-button{
252
256
  --el-readonly-cursor: auto;
@@ -439,16 +443,3 @@
439
443
  padding-left: var(--date-picker-title-padding);
440
444
  padding-right: var(--date-picker-title-padding);
441
445
  }
442
-
443
- .vkf-vditor ul li {
444
- list-style: initial;
445
- }
446
- .vkf-vditor ol li {
447
- list-style: decimal;
448
- }
449
- .vkf-vditor.vditor{
450
- --textarea-background-color: var(--el-fill-color-extra-light);
451
- }
452
- .vkf-vditor-footer.is-textarea-focus{
453
- background-color: var(--textarea-background-color);
454
- }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vunk/form",
3
- "version": "1.2.2",
3
+ "version": "1.3.0",
4
4
  "description": "",
5
5
  "main": "index.esm.js",
6
6
  "scripts": {
@@ -165,6 +165,11 @@
165
165
  "types": "./components/radio/index.d.ts",
166
166
  "require": "./components/radio/index.cjs"
167
167
  },
168
+ "./components/monaco-editor": {
169
+ "import": "./components/monaco-editor/index.mjs",
170
+ "types": "./components/monaco-editor/index.d.ts",
171
+ "require": "./components/monaco-editor/index.cjs"
172
+ },
168
173
  "./components/input-number": {
169
174
  "import": "./components/input-number/index.mjs",
170
175
  "types": "./components/input-number/index.d.ts",
@@ -258,9 +263,6 @@
258
263
  "./index.css": {
259
264
  "import": "./index.css"
260
265
  },
261
- "./components/vditor/index.css": {
262
- "import": "./components/vditor/index.css"
263
- },
264
266
  "./components/var-datetime-picker/index.css": {
265
267
  "import": "./components/var-datetime-picker/index.css"
266
268
  },
@@ -285,6 +287,9 @@
285
287
  "./components/radio/index.css": {
286
288
  "import": "./components/radio/index.css"
287
289
  },
290
+ "./components/monaco-editor/index.css": {
291
+ "import": "./components/monaco-editor/index.css"
292
+ },
288
293
  "./components/input-number/index.css": {
289
294
  "import": "./components/input-number/index.css"
290
295
  },
@@ -5,7 +5,7 @@ export declare const createFormOnEmits: <T2 extends import("@vunk/core").AnyFunc
5
5
  export declare const createFormItemBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"required", keyof T2> | Extract<"rules", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"size", keyof T2> | Extract<"prop", keyof T2> | Extract<"label", keyof T2> | Extract<"error", keyof T2> | Extract<"validateStatus", keyof T2> | Extract<"for", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"required" | "rules" | "labelWidth" | "inlineMessage" | "showMessage" | "size" | "prop" | "label" | "error" | "validateStatus" | "for", keyof T2>, KE> : Extract<"required" | "rules" | "labelWidth" | "inlineMessage" | "showMessage" | "size" | "prop" | "label" | "error" | "validateStatus" | "for", keyof T2>]: { [k in Extract<"required" | "rules" | "labelWidth" | "inlineMessage" | "showMessage" | "size" | "prop" | "label" | "error" | "validateStatus" | "for", keyof T2>]: T2[k]; }[P]; }>;
6
6
  export declare const createSwitchBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"label", keyof T2> | Extract<"name", keyof T2> | Extract<"id", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"tabindex", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"loading", keyof T2> | Extract<"width", keyof T2> | Extract<"inlinePrompt", keyof T2> | Extract<"inactiveActionIcon", keyof T2> | Extract<"activeActionIcon", keyof T2> | Extract<"activeIcon", keyof T2> | Extract<"inactiveIcon", keyof T2> | Extract<"activeText", keyof T2> | Extract<"inactiveText", keyof T2> | Extract<"activeValue", keyof T2> | Extract<"inactiveValue", keyof T2> | Extract<"beforeChange", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "disabled" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "loading" | "width" | "inlinePrompt" | "inactiveActionIcon" | "activeActionIcon" | "activeIcon" | "inactiveIcon" | "activeText" | "inactiveText" | "activeValue" | "inactiveValue" | "beforeChange", keyof T2>, KE> : Extract<"size" | "disabled" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "loading" | "width" | "inlinePrompt" | "inactiveActionIcon" | "activeActionIcon" | "activeIcon" | "inactiveIcon" | "activeText" | "inactiveText" | "activeValue" | "inactiveValue" | "beforeChange", keyof T2>]: { [k in Extract<"size" | "disabled" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "loading" | "width" | "inlinePrompt" | "inactiveActionIcon" | "activeActionIcon" | "activeIcon" | "inactiveIcon" | "activeText" | "inactiveText" | "activeValue" | "inactiveValue" | "beforeChange", keyof T2>]: T2[k]; }[P]; }>;
7
7
  export declare const createSwitchOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "input" | "change")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "input" | "change", KE> : "update:modelValue" | "input" | "change"]: { [k in "update:modelValue" | "input" | "change"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
8
- export declare const createSelectBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"name", keyof T2> | Extract<"id", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"autocomplete", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"clearable", keyof T2> | Extract<"suffixIcon", keyof T2> | Extract<"multiple", keyof T2> | Extract<"loading", keyof T2> | Extract<"automaticDropdown", keyof T2> | Extract<"effect", keyof T2> | Extract<"filterable", keyof T2> | Extract<"allowCreate", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"remote", keyof T2> | Extract<"loadingText", keyof T2> | Extract<"noMatchText", keyof T2> | Extract<"noDataText", keyof T2> | Extract<"remoteMethod", keyof T2> | Extract<"filterMethod", keyof T2> | Extract<"multipleLimit", keyof T2> | Extract<"defaultFirstOption", keyof T2> | Extract<"reserveKeyword", keyof T2> | Extract<"valueKey", keyof T2> | Extract<"collapseTags", keyof T2> | Extract<"collapseTagsTooltip", keyof T2> | Extract<"teleported", keyof T2> | Extract<"persistent", keyof T2> | Extract<"clearIcon", keyof T2> | Extract<"fitInputWidth", keyof T2> | Extract<"tagType", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "disabled" | "name" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "multiple" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>, KE> : Extract<"size" | "disabled" | "name" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "multiple" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>]: { [k in Extract<"size" | "disabled" | "name" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "multiple" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>]: T2[k]; }[P]; }>;
8
+ export declare const createSelectBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"name", keyof T2> | Extract<"multiple", keyof T2> | Extract<"id", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"autocomplete", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"clearable", keyof T2> | Extract<"suffixIcon", keyof T2> | Extract<"loading", keyof T2> | Extract<"automaticDropdown", keyof T2> | Extract<"effect", keyof T2> | Extract<"filterable", keyof T2> | Extract<"allowCreate", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"remote", keyof T2> | Extract<"loadingText", keyof T2> | Extract<"noMatchText", keyof T2> | Extract<"noDataText", keyof T2> | Extract<"remoteMethod", keyof T2> | Extract<"filterMethod", keyof T2> | Extract<"multipleLimit", keyof T2> | Extract<"defaultFirstOption", keyof T2> | Extract<"reserveKeyword", keyof T2> | Extract<"valueKey", keyof T2> | Extract<"collapseTags", keyof T2> | Extract<"collapseTagsTooltip", keyof T2> | Extract<"teleported", keyof T2> | Extract<"persistent", keyof T2> | Extract<"clearIcon", keyof T2> | Extract<"fitInputWidth", keyof T2> | Extract<"tagType", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "disabled" | "name" | "multiple" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>, KE> : Extract<"size" | "disabled" | "name" | "multiple" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>]: { [k in Extract<"size" | "disabled" | "name" | "multiple" | "id" | "modelValue" | "autocomplete" | "placeholder" | "clearable" | "suffixIcon" | "loading" | "automaticDropdown" | "effect" | "filterable" | "allowCreate" | "popperClass" | "remote" | "loadingText" | "noMatchText" | "noDataText" | "remoteMethod" | "filterMethod" | "multipleLimit" | "defaultFirstOption" | "reserveKeyword" | "valueKey" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "persistent" | "clearIcon" | "fitInputWidth" | "tagType", keyof T2>]: T2[k]; }[P]; }>;
9
9
  export declare const createSelectOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("clear" | "update:modelValue" | "change" | "focus" | "blur" | "remove-tag" | "visible-change")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"clear" | "update:modelValue" | "change" | "focus" | "blur" | "remove-tag" | "visible-change", KE> : "clear" | "update:modelValue" | "change" | "focus" | "blur" | "remove-tag" | "visible-change"]: { [k in "clear" | "update:modelValue" | "change" | "focus" | "blur" | "remove-tag" | "visible-change"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
10
10
  export declare const createDatePickerBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"type", keyof T2> | Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"readonly", keyof T2> | Extract<"label", keyof T2> | Extract<"name", keyof T2> | Extract<"id", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"clearable", keyof T2> | Extract<"prefixIcon", keyof T2> | Extract<"tabindex", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"clearIcon", keyof T2> | Extract<"emptyValues", keyof T2> | Extract<"valueOnClear", keyof T2> | Extract<"disabledDate", keyof T2> | Extract<"cellClassName", keyof T2> | Extract<"shortcuts", keyof T2> | Extract<"arrowControl", keyof T2> | Extract<"unlinkPanels", keyof T2> | Extract<"disabledHours", keyof T2> | Extract<"disabledMinutes", keyof T2> | Extract<"disabledSeconds", keyof T2> | Extract<"format", keyof T2> | Extract<"valueFormat", keyof T2> | Extract<"dateFormat", keyof T2> | Extract<"timeFormat", keyof T2> | Extract<"editable", keyof T2> | Extract<"popperOptions", keyof T2> | Extract<"rangeSeparator", keyof T2> | Extract<"startPlaceholder", keyof T2> | Extract<"endPlaceholder", keyof T2> | Extract<"defaultValue", keyof T2> | Extract<"defaultTime", keyof T2> | Extract<"isRange", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"type" | "size" | "disabled" | "readonly" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "placeholder" | "clearable" | "prefixIcon" | "tabindex" | "validateEvent" | "popperClass" | "clearIcon" | "emptyValues" | "valueOnClear" | "disabledDate" | "cellClassName" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "editable" | "popperOptions" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange", keyof T2>, KE> : Extract<"type" | "size" | "disabled" | "readonly" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "placeholder" | "clearable" | "prefixIcon" | "tabindex" | "validateEvent" | "popperClass" | "clearIcon" | "emptyValues" | "valueOnClear" | "disabledDate" | "cellClassName" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "editable" | "popperOptions" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange", keyof T2>]: { [k in Extract<"type" | "size" | "disabled" | "readonly" | "label" | "name" | "id" | "ariaLabel" | "modelValue" | "placeholder" | "clearable" | "prefixIcon" | "tabindex" | "validateEvent" | "popperClass" | "clearIcon" | "emptyValues" | "valueOnClear" | "disabledDate" | "cellClassName" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "editable" | "popperOptions" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange", keyof T2>]: T2[k]; }[P]; }>;
11
11
  export declare const createDatePickerOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "change" | "focus" | "blur" | "keydown" | "visible-change" | "calendar-change" | "panel-change")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "change" | "focus" | "blur" | "keydown" | "visible-change" | "calendar-change" | "panel-change", KE> : "update:modelValue" | "change" | "focus" | "blur" | "keydown" | "visible-change" | "calendar-change" | "panel-change"]: { [k in "update:modelValue" | "change" | "focus" | "blur" | "keydown" | "visible-change" | "calendar-change" | "panel-change"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
@@ -15,10 +15,10 @@ export declare const createRadioGroupBindProps: <T2 extends import("@vunk/core")
15
15
  export declare const createRadioGroupOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "change")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "change", KE> : "update:modelValue" | "change"]: { [k in "update:modelValue" | "change"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
16
16
  export declare const createCheckboxGroupBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"fill", keyof T2> | Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"tag", keyof T2> | Extract<"label", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"min", keyof T2> | Extract<"max", keyof T2> | Extract<"textColor", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"fill" | "size" | "disabled" | "tag" | "label" | "ariaLabel" | "modelValue" | "validateEvent" | "min" | "max" | "textColor", keyof T2>, KE> : Extract<"fill" | "size" | "disabled" | "tag" | "label" | "ariaLabel" | "modelValue" | "validateEvent" | "min" | "max" | "textColor", keyof T2>]: { [k in Extract<"fill" | "size" | "disabled" | "tag" | "label" | "ariaLabel" | "modelValue" | "validateEvent" | "min" | "max" | "textColor", keyof T2>]: T2[k]; }[P]; }>;
17
17
  export declare const createCheckboxGroupOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "change")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "change", KE> : "update:modelValue" | "change"]: { [k in "update:modelValue" | "change"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
18
- export declare const createUploadBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"disabled", keyof T2> | Extract<"name", keyof T2> | Extract<"data", keyof T2> | Extract<"beforeUpload", keyof T2> | Extract<"beforeRemove", keyof T2> | Extract<"onRemove", keyof T2> | Extract<"onChange", keyof T2> | Extract<"onPreview", keyof T2> | Extract<"onSuccess", keyof T2> | Extract<"onProgress", keyof T2> | Extract<"onError", keyof T2> | Extract<"onExceed", keyof T2> | Extract<"crossorigin", keyof T2> | Extract<"action", keyof T2> | Extract<"headers", keyof T2> | Extract<"method", keyof T2> | Extract<"multiple", keyof T2> | Extract<"drag", keyof T2> | Extract<"withCredentials", keyof T2> | Extract<"showFileList", keyof T2> | Extract<"accept", keyof T2> | Extract<"fileList", keyof T2> | Extract<"autoUpload", keyof T2> | Extract<"listType", keyof T2> | Extract<"httpRequest", keyof T2> | Extract<"limit", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"disabled" | "name" | "data" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "multiple" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>, KE> : Extract<"disabled" | "name" | "data" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "multiple" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>]: { [k in Extract<"disabled" | "name" | "data" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "multiple" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>]: T2[k]; }[P]; }>;
18
+ export declare const createUploadBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"disabled", keyof T2> | Extract<"name", keyof T2> | Extract<"data", keyof T2> | Extract<"multiple", keyof T2> | Extract<"beforeUpload", keyof T2> | Extract<"beforeRemove", keyof T2> | Extract<"onRemove", keyof T2> | Extract<"onChange", keyof T2> | Extract<"onPreview", keyof T2> | Extract<"onSuccess", keyof T2> | Extract<"onProgress", keyof T2> | Extract<"onError", keyof T2> | Extract<"onExceed", keyof T2> | Extract<"crossorigin", keyof T2> | Extract<"action", keyof T2> | Extract<"headers", keyof T2> | Extract<"method", keyof T2> | Extract<"drag", keyof T2> | Extract<"withCredentials", keyof T2> | Extract<"showFileList", keyof T2> | Extract<"accept", keyof T2> | Extract<"fileList", keyof T2> | Extract<"autoUpload", keyof T2> | Extract<"listType", keyof T2> | Extract<"httpRequest", keyof T2> | Extract<"limit", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"disabled" | "name" | "data" | "multiple" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>, KE> : Extract<"disabled" | "name" | "data" | "multiple" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>]: { [k in Extract<"disabled" | "name" | "data" | "multiple" | "beforeUpload" | "beforeRemove" | "onRemove" | "onChange" | "onPreview" | "onSuccess" | "onProgress" | "onError" | "onExceed" | "crossorigin" | "action" | "headers" | "method" | "drag" | "withCredentials" | "showFileList" | "accept" | "fileList" | "autoUpload" | "listType" | "httpRequest" | "limit", keyof T2>]: T2[k]; }[P]; }>;
19
19
  export declare const createColorPickerBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"label", keyof T2> | Extract<"id", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"tabindex", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"teleported", keyof T2> | Extract<"showAlpha", keyof T2> | Extract<"colorFormat", keyof T2> | Extract<"predefine", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "disabled" | "label" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "popperClass" | "teleported" | "showAlpha" | "colorFormat" | "predefine", keyof T2>, KE> : Extract<"size" | "disabled" | "label" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "popperClass" | "teleported" | "showAlpha" | "colorFormat" | "predefine", keyof T2>]: { [k in Extract<"size" | "disabled" | "label" | "id" | "ariaLabel" | "modelValue" | "tabindex" | "validateEvent" | "popperClass" | "teleported" | "showAlpha" | "colorFormat" | "predefine", keyof T2>]: T2[k]; }[P]; }>;
20
20
  export declare const createColorPickerOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "change" | "focus" | "blur" | "activeChange")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "change" | "focus" | "blur" | "activeChange", KE> : "update:modelValue" | "change" | "focus" | "blur" | "activeChange"]: { [k in "update:modelValue" | "change" | "focus" | "blur" | "activeChange"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
21
- export declare const createButtonBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"type", keyof T2> | Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"tag", keyof T2> | Extract<"text", keyof T2> | Extract<"dark", keyof T2> | Extract<"icon", keyof T2> | Extract<"circle", keyof T2> | Extract<"plain", keyof T2> | Extract<"link", keyof T2> | Extract<"autofocus", keyof T2> | Extract<"loading", keyof T2> | Extract<"nativeType", keyof T2> | Extract<"loadingIcon", keyof T2> | Extract<"bg", keyof T2> | Extract<"round", keyof T2> | Extract<"color", keyof T2> | Extract<"autoInsertSpace", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"type" | "size" | "disabled" | "tag" | "text" | "dark" | "icon" | "circle" | "plain" | "link" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>, KE> : Extract<"type" | "size" | "disabled" | "tag" | "text" | "dark" | "icon" | "circle" | "plain" | "link" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>]: { [k in Extract<"type" | "size" | "disabled" | "tag" | "text" | "dark" | "icon" | "circle" | "plain" | "link" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>]: T2[k]; }[P]; }>;
21
+ export declare const createButtonBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"type", keyof T2> | Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"tag", keyof T2> | Extract<"text", keyof T2> | Extract<"link", keyof T2> | Extract<"dark", keyof T2> | Extract<"icon", keyof T2> | Extract<"circle", keyof T2> | Extract<"plain", keyof T2> | Extract<"autofocus", keyof T2> | Extract<"loading", keyof T2> | Extract<"nativeType", keyof T2> | Extract<"loadingIcon", keyof T2> | Extract<"bg", keyof T2> | Extract<"round", keyof T2> | Extract<"color", keyof T2> | Extract<"autoInsertSpace", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"type" | "size" | "disabled" | "tag" | "text" | "link" | "dark" | "icon" | "circle" | "plain" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>, KE> : Extract<"type" | "size" | "disabled" | "tag" | "text" | "link" | "dark" | "icon" | "circle" | "plain" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>]: { [k in Extract<"type" | "size" | "disabled" | "tag" | "text" | "link" | "dark" | "icon" | "circle" | "plain" | "autofocus" | "loading" | "nativeType" | "loadingIcon" | "bg" | "round" | "color" | "autoInsertSpace", keyof T2>]: T2[k]; }[P]; }>;
22
22
  export declare const createButtonOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends "click"[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"click", KE> : "click"]: { [k in "click"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };
23
23
  export declare const createCascaderBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"disabled", keyof T2> | Extract<"props", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"clearable", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"options", keyof T2> | Extract<"filterable", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"filterMethod", keyof T2> | Extract<"collapseTags", keyof T2> | Extract<"collapseTagsTooltip", keyof T2> | Extract<"teleported", keyof T2> | Extract<"tagType", keyof T2> | Extract<"emptyValues", keyof T2> | Extract<"valueOnClear", keyof T2> | Extract<"separator", keyof T2> | Extract<"showAllLevels", keyof T2> | Extract<"maxCollapseTags", keyof T2> | Extract<"debounce", keyof T2> | Extract<"beforeFilter", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "disabled" | "props" | "modelValue" | "placeholder" | "clearable" | "validateEvent" | "options" | "filterable" | "popperClass" | "filterMethod" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "tagType" | "emptyValues" | "valueOnClear" | "separator" | "showAllLevels" | "maxCollapseTags" | "debounce" | "beforeFilter", keyof T2>, KE> : Extract<"size" | "disabled" | "props" | "modelValue" | "placeholder" | "clearable" | "validateEvent" | "options" | "filterable" | "popperClass" | "filterMethod" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "tagType" | "emptyValues" | "valueOnClear" | "separator" | "showAllLevels" | "maxCollapseTags" | "debounce" | "beforeFilter", keyof T2>]: { [k in Extract<"size" | "disabled" | "props" | "modelValue" | "placeholder" | "clearable" | "validateEvent" | "options" | "filterable" | "popperClass" | "filterMethod" | "collapseTags" | "collapseTagsTooltip" | "teleported" | "tagType" | "emptyValues" | "valueOnClear" | "separator" | "showAllLevels" | "maxCollapseTags" | "debounce" | "beforeFilter", keyof T2>]: T2[k]; }[P]; }>;
24
24
  export declare const createCascaderOnEmits: <T2 extends import("@vunk/core").AnyFunc, EX extends ("update:modelValue" | "change" | "focus" | "blur" | "visibleChange" | "expandChange" | "removeTag")[]>(emit: T2, excludes?: EX) => { [P in EX extends (infer KE)[] ? Exclude<"update:modelValue" | "change" | "focus" | "blur" | "visibleChange" | "expandChange" | "removeTag", KE> : "update:modelValue" | "change" | "focus" | "blur" | "visibleChange" | "expandChange" | "removeTag"]: { [k in "update:modelValue" | "change" | "focus" | "blur" | "visibleChange" | "expandChange" | "removeTag"]: (...e: import("@vunk/core").RestParameters<T2>) => void; }[P]; };