@vunk/form 2.5.8 → 2.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/date-picker/src/ctx.d.ts +1 -1
- package/components/date-picker/src/index.vue.d.ts +1 -1
- package/components/date-picker-range/src/ctx.d.ts +4 -4
- package/components/date-picker-range/src/index.vue.d.ts +9 -9
- package/components/input-collection/index.cjs +32 -24
- package/components/input-collection/index.css +3 -3
- package/components/input-collection/index.mjs +32 -24
- package/components/input-collection/src/index.vue.d.ts +3 -3
- package/components/input-collection/src/types.d.ts +10 -7
- package/index.css +3 -3
- package/package.json +1 -1
|
@@ -162,7 +162,7 @@ export declare const props: {
|
|
|
162
162
|
};
|
|
163
163
|
isRange: BooleanConstructor;
|
|
164
164
|
};
|
|
165
|
-
export declare const createBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"type", keyof T2> | Extract<"required", keyof T2> | Extract<"formItemSize", keyof T2> | Extract<"formItemSlots", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"formItemTip", keyof T2> | Extract<"formItemTipClass", keyof T2> | Extract<"labelTip", keyof T2> | Extract<"information", keyof T2> | Extract<"label", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"prop", keyof T2> | Extract<"rules", keyof T2> | Extract<"error", keyof T2> | Extract<"validateStatus", keyof T2> | Extract<"for", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"disabled", keyof T2> | Extract<"id", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"fallbackPlacements", keyof T2> | Extract<"placement", keyof T2> | Extract<"popperOptions", keyof T2> | Extract<"name", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"clearable", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"cellClassName", keyof T2> | Extract<"emptyValues", keyof T2> | Extract<"valueOnClear", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"tabindex", keyof T2> | Extract<"
|
|
165
|
+
export declare const createBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"size", keyof T2> | Extract<"type", keyof T2> | Extract<"required", keyof T2> | Extract<"formItemSize", keyof T2> | Extract<"formItemSlots", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"formItemTip", keyof T2> | Extract<"formItemTipClass", keyof T2> | Extract<"labelTip", keyof T2> | Extract<"information", keyof T2> | Extract<"label", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"prop", keyof T2> | Extract<"rules", keyof T2> | Extract<"error", keyof T2> | Extract<"validateStatus", keyof T2> | Extract<"for", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"disabled", keyof T2> | Extract<"id", keyof T2> | Extract<"ariaLabel", keyof T2> | Extract<"popperClass", keyof T2> | Extract<"fallbackPlacements", keyof T2> | Extract<"placement", keyof T2> | Extract<"popperOptions", keyof T2> | Extract<"name", keyof T2> | Extract<"modelValue", keyof T2> | Extract<"clearable", keyof T2> | Extract<"placeholder", keyof T2> | Extract<"cellClassName", keyof T2> | Extract<"emptyValues", keyof T2> | Extract<"valueOnClear", keyof T2> | Extract<"validateEvent", keyof T2> | Extract<"tabindex", keyof T2> | Extract<"showNow", keyof T2> | Extract<"disabledDate", 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<"clearIcon", keyof T2> | Extract<"editable", keyof T2> | Extract<"prefixIcon", 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> | Extract<"datePickerSlots", keyof T2>)[]>(propsArg: T2, excludes?: EX) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"size" | "type" | "required" | "formItemSize" | "formItemSlots" | "elRef" | "inline" | "readonly" | "formItemTip" | "formItemTipClass" | "labelTip" | "information" | "label" | "labelWidth" | "labelPosition" | "prop" | "rules" | "error" | "validateStatus" | "for" | "inlineMessage" | "showMessage" | "disabled" | "id" | "ariaLabel" | "popperClass" | "fallbackPlacements" | "placement" | "popperOptions" | "name" | "modelValue" | "clearable" | "placeholder" | "cellClassName" | "emptyValues" | "valueOnClear" | "validateEvent" | "tabindex" | "showNow" | "disabledDate" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "clearIcon" | "editable" | "prefixIcon" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange" | "datePickerSlots", keyof T2>, KE> : Extract<"size" | "type" | "required" | "formItemSize" | "formItemSlots" | "elRef" | "inline" | "readonly" | "formItemTip" | "formItemTipClass" | "labelTip" | "information" | "label" | "labelWidth" | "labelPosition" | "prop" | "rules" | "error" | "validateStatus" | "for" | "inlineMessage" | "showMessage" | "disabled" | "id" | "ariaLabel" | "popperClass" | "fallbackPlacements" | "placement" | "popperOptions" | "name" | "modelValue" | "clearable" | "placeholder" | "cellClassName" | "emptyValues" | "valueOnClear" | "validateEvent" | "tabindex" | "showNow" | "disabledDate" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "clearIcon" | "editable" | "prefixIcon" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange" | "datePickerSlots", keyof T2>]: { [k in Extract<"size" | "type" | "required" | "formItemSize" | "formItemSlots" | "elRef" | "inline" | "readonly" | "formItemTip" | "formItemTipClass" | "labelTip" | "information" | "label" | "labelWidth" | "labelPosition" | "prop" | "rules" | "error" | "validateStatus" | "for" | "inlineMessage" | "showMessage" | "disabled" | "id" | "ariaLabel" | "popperClass" | "fallbackPlacements" | "placement" | "popperOptions" | "name" | "modelValue" | "clearable" | "placeholder" | "cellClassName" | "emptyValues" | "valueOnClear" | "validateEvent" | "tabindex" | "showNow" | "disabledDate" | "shortcuts" | "arrowControl" | "unlinkPanels" | "disabledHours" | "disabledMinutes" | "disabledSeconds" | "format" | "valueFormat" | "dateFormat" | "timeFormat" | "clearIcon" | "editable" | "prefixIcon" | "rangeSeparator" | "startPlaceholder" | "endPlaceholder" | "defaultValue" | "defaultTime" | "isRange" | "datePickerSlots", keyof T2>]: T2[k]; }[P]; }>;
|
|
166
166
|
export declare const emits: {
|
|
167
167
|
'update:modelValue': any;
|
|
168
168
|
change: any;
|
|
@@ -408,7 +408,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
408
408
|
valueOnClear: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown>;
|
|
409
409
|
validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
410
410
|
tabindex: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
411
|
-
datePickerSlots: import("./types").DatePickerSlots;
|
|
412
411
|
showNow: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
413
412
|
shortcuts: unknown[];
|
|
414
413
|
arrowControl: boolean;
|
|
@@ -417,6 +416,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
417
416
|
prefixIcon: "";
|
|
418
417
|
rangeSeparator: string;
|
|
419
418
|
isRange: boolean;
|
|
419
|
+
datePickerSlots: import("./types").DatePickerSlots;
|
|
420
420
|
}, {}, {
|
|
421
421
|
VkfFormItem: {
|
|
422
422
|
new (...args: any[]): any;
|
|
@@ -124,10 +124,6 @@ export declare const props: {
|
|
|
124
124
|
valueOnClear: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
|
|
125
125
|
validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
126
126
|
tabindex: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
127
|
-
datePickerSlots: {
|
|
128
|
-
type: PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
129
|
-
default: any;
|
|
130
|
-
};
|
|
131
127
|
showNow: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
132
128
|
disabledDate: {
|
|
133
129
|
readonly type: import("vue").PropType<Function>;
|
|
@@ -181,6 +177,10 @@ export declare const props: {
|
|
|
181
177
|
__epPropKey: true;
|
|
182
178
|
};
|
|
183
179
|
isRange: BooleanConstructor;
|
|
180
|
+
datePickerSlots: {
|
|
181
|
+
type: PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
182
|
+
default: any;
|
|
183
|
+
};
|
|
184
184
|
};
|
|
185
185
|
export declare const emits: {
|
|
186
186
|
'update:startValue': any;
|
|
@@ -124,10 +124,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
124
124
|
valueOnClear: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
|
|
125
125
|
validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
126
126
|
tabindex: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
127
|
-
datePickerSlots: {
|
|
128
|
-
type: import("vue").PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
129
|
-
default: any;
|
|
130
|
-
};
|
|
131
127
|
showNow: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
132
128
|
disabledDate: {
|
|
133
129
|
readonly type: import("vue").PropType<Function>;
|
|
@@ -181,6 +177,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
181
177
|
__epPropKey: true;
|
|
182
178
|
};
|
|
183
179
|
isRange: BooleanConstructor;
|
|
180
|
+
datePickerSlots: {
|
|
181
|
+
type: import("vue").PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
182
|
+
default: any;
|
|
183
|
+
};
|
|
184
184
|
}>, {
|
|
185
185
|
coreProps: import("vue").ComputedRef<{}>;
|
|
186
186
|
coreEmits: {
|
|
@@ -329,10 +329,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
329
329
|
valueOnClear: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
|
|
330
330
|
validateEvent: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
331
331
|
tabindex: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
332
|
-
datePickerSlots: {
|
|
333
|
-
type: import("vue").PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
334
|
-
default: any;
|
|
335
|
-
};
|
|
336
332
|
showNow: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
337
333
|
disabledDate: {
|
|
338
334
|
readonly type: import("vue").PropType<Function>;
|
|
@@ -386,6 +382,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
386
382
|
__epPropKey: true;
|
|
387
383
|
};
|
|
388
384
|
isRange: BooleanConstructor;
|
|
385
|
+
datePickerSlots: {
|
|
386
|
+
type: import("vue").PropType<import("@vunk/form/components/date-picker/src/types").DatePickerSlots>;
|
|
387
|
+
default: any;
|
|
388
|
+
};
|
|
389
389
|
}>> & Readonly<{
|
|
390
390
|
onFocus?: (...args: any[] | unknown[]) => any;
|
|
391
391
|
onChange?: (...args: any[] | unknown[]) => any;
|
|
@@ -421,7 +421,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
421
421
|
valueOnClear: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown>;
|
|
422
422
|
validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
423
423
|
tabindex: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
424
|
-
datePickerSlots: import("@vunk/form/components/date-picker/src/types").DatePickerSlots;
|
|
425
424
|
showNow: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
426
425
|
shortcuts: unknown[];
|
|
427
426
|
arrowControl: boolean;
|
|
@@ -433,6 +432,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
433
432
|
startPlaceholder: string;
|
|
434
433
|
endPlaceholder: string;
|
|
435
434
|
isRange: boolean;
|
|
435
|
+
datePickerSlots: import("@vunk/form/components/date-picker/src/types").DatePickerSlots;
|
|
436
436
|
startValue: string;
|
|
437
437
|
endValue: string;
|
|
438
438
|
selectOptions: import("./types").SelectMedia[];
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var vue = require('vue');
|
|
6
|
+
var index = require('../index2.cjs');
|
|
7
|
+
var core = require('@vunk/core');
|
|
8
|
+
var fieldset = require('@vunk/form/components/fieldset');
|
|
6
9
|
var formItem = require('@vunk/form/components/form-item');
|
|
7
|
-
var tableColumns = require('@vunk/plus/components/table-columns');
|
|
8
|
-
var elementPlus = require('element-plus');
|
|
9
|
-
var composables = require('@vunk/form/composables');
|
|
10
|
-
var templatesDefault = require('@vunk/form/components/templates-default');
|
|
11
|
-
var templateInstancesProvider = require('@vunk/form/components/template-instances-provider');
|
|
12
10
|
var formItemRenderer = require('@vunk/form/components/form-item-renderer');
|
|
13
|
-
var core = require('@vunk/core');
|
|
14
|
-
var index = require('../index2.cjs');
|
|
15
11
|
var rendererData = require('@vunk/form/components/renderer-data');
|
|
16
|
-
var
|
|
12
|
+
var templateInstancesProvider = require('@vunk/form/components/template-instances-provider');
|
|
13
|
+
var templatesDefault = require('@vunk/form/components/templates-default');
|
|
14
|
+
var composables = require('@vunk/form/composables');
|
|
15
|
+
var tableColumns = require('@vunk/plus/components/table-columns');
|
|
16
|
+
var elementPlus = require('element-plus');
|
|
17
17
|
var cloneDeep = require('../cloneDeep.cjs');
|
|
18
18
|
var _pluginVue_exportHelper = require('../_plugin-vue_export-helper.cjs');
|
|
19
19
|
require('../isObject.cjs');
|
|
@@ -107,15 +107,21 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
107
107
|
return props2.columns.map(column => {
|
|
108
108
|
return {
|
|
109
109
|
...column,
|
|
110
|
-
slots: e =>
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
110
|
+
slots: e => {
|
|
111
|
+
const prop = [props2.prop ?? [], e.$index, column.prop].flat();
|
|
112
|
+
const formItemProps = {
|
|
113
|
+
prop,
|
|
114
114
|
readonly: readonly.value,
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
|
|
115
|
+
templateType: column.templateType,
|
|
116
|
+
templateProps: column.templateProps
|
|
117
|
+
};
|
|
118
|
+
return vue.createVNode(formItemRenderer.VkfFormItemRenderer, {
|
|
119
|
+
"source": [{
|
|
120
|
+
...formItemProps,
|
|
121
|
+
...column.createTemplateProps?.(e, formItemProps)
|
|
122
|
+
}]
|
|
123
|
+
}, null);
|
|
124
|
+
}
|
|
119
125
|
};
|
|
120
126
|
});
|
|
121
127
|
});
|
|
@@ -124,14 +130,16 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
124
130
|
type: "expand",
|
|
125
131
|
slots: e => {
|
|
126
132
|
const source = expandFormItemRaws.value.map(column => {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
templateType: column.templateType,
|
|
133
|
+
const prop = [props2.prop ?? [], e.$index, column.prop].flat();
|
|
134
|
+
const formItemProps = {
|
|
135
|
+
prop,
|
|
131
136
|
readonly: readonly.value,
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
137
|
+
templateType: column.templateType,
|
|
138
|
+
templateProps: column.templateProps
|
|
139
|
+
};
|
|
140
|
+
return {
|
|
141
|
+
...formItemProps,
|
|
142
|
+
...column.createTemplateProps?.(e, formItemProps)
|
|
135
143
|
};
|
|
136
144
|
});
|
|
137
145
|
return vue.createVNode(fieldset.VkfFieldset, {
|
|
@@ -198,7 +206,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
198
206
|
return props2.modelValue?.map((e, index) => {
|
|
199
207
|
return {
|
|
200
208
|
...e,
|
|
201
|
-
[ROW_KEY]: index
|
|
209
|
+
[ROW_KEY]: `${index}`
|
|
202
210
|
};
|
|
203
211
|
});
|
|
204
212
|
});
|
|
@@ -9,12 +9,12 @@
|
|
|
9
9
|
.vkf-input-collection-table .vkf-form-item {
|
|
10
10
|
margin-bottom: 0;
|
|
11
11
|
}
|
|
12
|
-
.vkf-input-collection-table .vk-input-collection__expand-form-item {
|
|
13
|
-
margin-bottom: 18px;
|
|
14
|
-
}
|
|
15
12
|
.vk-input-collection__expand-fieldset{
|
|
16
13
|
padding: 8px;
|
|
17
14
|
}
|
|
15
|
+
.vk-input-collection__expand-fieldset .vkf-form-item{
|
|
16
|
+
margin-bottom: 18px;
|
|
17
|
+
}
|
|
18
18
|
.vk-input-collection__buttons .cell{
|
|
19
19
|
padding: 0;
|
|
20
20
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { defineComponent, computed, createVNode, Fragment, ref, resolveComponent, openBlock, createBlock, withCtx, normalizeProps, guardReactiveProps, createSlots, createElementBlock, createTextVNode, createCommentVNode, renderSlot } from 'vue';
|
|
2
|
+
import { p as plus_default, b as minus_default } from '../index2.mjs';
|
|
3
|
+
import { ensetData, getValue } from '@vunk/core';
|
|
4
|
+
import { VkfFieldset } from '@vunk/form/components/fieldset';
|
|
2
5
|
import { _VkfFormItemCtx, VkfFormItem } from '@vunk/form/components/form-item';
|
|
3
|
-
import { VkTableColumns } from '@vunk/plus/components/table-columns';
|
|
4
|
-
import { ElTable, ElButton } from 'element-plus';
|
|
5
|
-
import { useComputedReadonly } from '@vunk/form/composables';
|
|
6
|
-
import { VkfTemplatesDefault } from '@vunk/form/components/templates-default';
|
|
7
|
-
import { VkfTemplateInstancesProvider } from '@vunk/form/components/template-instances-provider';
|
|
8
6
|
import { VkfFormItemRenderer } from '@vunk/form/components/form-item-renderer';
|
|
9
|
-
import { ensetData, getValue } from '@vunk/core';
|
|
10
|
-
import { p as plus_default, b as minus_default } from '../index2.mjs';
|
|
11
7
|
import { VkfRendererData } from '@vunk/form/components/renderer-data';
|
|
12
|
-
import {
|
|
8
|
+
import { VkfTemplateInstancesProvider } from '@vunk/form/components/template-instances-provider';
|
|
9
|
+
import { VkfTemplatesDefault } from '@vunk/form/components/templates-default';
|
|
10
|
+
import { useComputedReadonly } from '@vunk/form/composables';
|
|
11
|
+
import { VkTableColumns } from '@vunk/plus/components/table-columns';
|
|
12
|
+
import { ElTable, ElButton } from 'element-plus';
|
|
13
13
|
import { c as cloneDeep } from '../cloneDeep.mjs';
|
|
14
14
|
import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
|
|
15
15
|
import '../isObject.mjs';
|
|
@@ -103,15 +103,21 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
103
103
|
return props2.columns.map(column => {
|
|
104
104
|
return {
|
|
105
105
|
...column,
|
|
106
|
-
slots: e =>
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
106
|
+
slots: e => {
|
|
107
|
+
const prop = [props2.prop ?? [], e.$index, column.prop].flat();
|
|
108
|
+
const formItemProps = {
|
|
109
|
+
prop,
|
|
110
110
|
readonly: readonly.value,
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
|
|
111
|
+
templateType: column.templateType,
|
|
112
|
+
templateProps: column.templateProps
|
|
113
|
+
};
|
|
114
|
+
return createVNode(VkfFormItemRenderer, {
|
|
115
|
+
"source": [{
|
|
116
|
+
...formItemProps,
|
|
117
|
+
...column.createTemplateProps?.(e, formItemProps)
|
|
118
|
+
}]
|
|
119
|
+
}, null);
|
|
120
|
+
}
|
|
115
121
|
};
|
|
116
122
|
});
|
|
117
123
|
});
|
|
@@ -120,14 +126,16 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
120
126
|
type: "expand",
|
|
121
127
|
slots: e => {
|
|
122
128
|
const source = expandFormItemRaws.value.map(column => {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
templateType: column.templateType,
|
|
129
|
+
const prop = [props2.prop ?? [], e.$index, column.prop].flat();
|
|
130
|
+
const formItemProps = {
|
|
131
|
+
prop,
|
|
127
132
|
readonly: readonly.value,
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
133
|
+
templateType: column.templateType,
|
|
134
|
+
templateProps: column.templateProps
|
|
135
|
+
};
|
|
136
|
+
return {
|
|
137
|
+
...formItemProps,
|
|
138
|
+
...column.createTemplateProps?.(e, formItemProps)
|
|
131
139
|
};
|
|
132
140
|
});
|
|
133
141
|
return createVNode(VkfFieldset, {
|
|
@@ -194,7 +202,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
194
202
|
return props2.modelValue?.map((e, index) => {
|
|
195
203
|
return {
|
|
196
204
|
...e,
|
|
197
|
-
[ROW_KEY]: index
|
|
205
|
+
[ROW_KEY]: `${index}`
|
|
198
206
|
};
|
|
199
207
|
});
|
|
200
208
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { NormalObject } from '@vunk/shared';
|
|
1
|
+
import type { SetDataEvent } from '@vunk/core';
|
|
2
|
+
import type { __VkTableColumns } from '@vunk/plus/components/table-columns';
|
|
3
|
+
import type { NormalObject } from '@vunk/shared';
|
|
4
4
|
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
5
|
columns: {
|
|
6
6
|
type: import("vue").PropType<any[]>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import
|
|
1
|
+
import type { __VkfTemplatesDefault } from '@vunk/form/components/templates-default';
|
|
2
|
+
import type { BasicSource } from '@vunk/form/shared';
|
|
3
|
+
import type { __VkTableColumns } from '@vunk/plus/components/table-columns';
|
|
4
|
+
import type { Keyof, NormalObject, VueComponentPropsType } from '@vunk/shared';
|
|
5
|
+
import type { TableColumnCtx } from 'element-plus';
|
|
6
|
+
import type Core from './index.vue';
|
|
7
7
|
export interface Source<P extends string = string> extends VueComponentPropsType<typeof Core>, BasicSource {
|
|
8
8
|
prop?: P | P[];
|
|
9
9
|
templateType: 'VkfInputCollection';
|
|
@@ -12,9 +12,12 @@ export type Column<R extends NormalObject = NormalObject, SourceType extends Nor
|
|
|
12
12
|
templateType: SourceType['templateType'];
|
|
13
13
|
templateProps?: Partial<SourceType>;
|
|
14
14
|
expandVisible?: boolean;
|
|
15
|
-
createTemplateProps?: (
|
|
15
|
+
createTemplateProps?: (columnSlotEvent: {
|
|
16
16
|
row: R;
|
|
17
17
|
column: TableColumnCtx<R>;
|
|
18
18
|
$index: number;
|
|
19
|
+
}, formItemProps: {
|
|
20
|
+
prop: Array<string | number>;
|
|
21
|
+
readonly: boolean;
|
|
19
22
|
}) => Partial<SourceType>;
|
|
20
23
|
};
|
package/index.css
CHANGED
|
@@ -252,12 +252,12 @@
|
|
|
252
252
|
.vkf-input-collection-table .vkf-form-item {
|
|
253
253
|
margin-bottom: 0;
|
|
254
254
|
}
|
|
255
|
-
.vkf-input-collection-table .vk-input-collection__expand-form-item {
|
|
256
|
-
margin-bottom: 18px;
|
|
257
|
-
}
|
|
258
255
|
.vk-input-collection__expand-fieldset{
|
|
259
256
|
padding: 8px;
|
|
260
257
|
}
|
|
258
|
+
.vk-input-collection__expand-fieldset .vkf-form-item{
|
|
259
|
+
margin-bottom: 18px;
|
|
260
|
+
}
|
|
261
261
|
.vk-input-collection__buttons .cell{
|
|
262
262
|
padding: 0;
|
|
263
263
|
}
|