@vunk/form 2.19.24 → 2.19.25
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/ai-provider/index.cjs +1 -1
- package/components/ai-provider/index.d.ts +2 -2
- package/components/ai-provider/index.mjs +98 -44
- package/components/ai-provider/src/ctx.d.ts +9 -1
- package/components/ai-provider/src/index.vue.d.ts +43 -6
- package/components/ai-provider/src/types.d.ts +45 -0
- package/components/ai-provider/src/use.d.ts +3 -1
- package/components/api-tables-select/src/ctx.d.ts +4 -4
- package/components/api-tables-select/src/index.vue.d.ts +5 -5
- package/components/button/src/ctx.d.ts +4 -4
- package/components/button/src/index.vue.d.ts +10 -10
- package/components/card-input-collection/src/core.vue.d.ts +10 -10
- package/components/card-input-collection/src/ctx.d.ts +4 -4
- package/components/card-input-collection/src/index.vue.d.ts +10 -10
- package/components/cascader/src/ctx.d.ts +5 -5
- package/components/cascader/src/index.vue.d.ts +9 -9
- package/components/checkbox/src/ctx.d.ts +5 -5
- package/components/checkbox/src/index.vue.d.ts +10 -10
- package/components/color-picker/src/ctx.d.ts +4 -4
- package/components/color-picker/src/index.vue.d.ts +9 -9
- package/components/components.css +1 -1
- package/components/date-picker/src/ctx.d.ts +5 -5
- package/components/date-picker/src/index.vue.d.ts +9 -9
- package/components/date-picker-range/src/ctx.d.ts +4 -4
- package/components/date-picker-range/src/index.vue.d.ts +18 -18
- package/components/dialog-input-collection/src/ctx.d.ts +4 -4
- package/components/dialog-input-collection/src/index.vue.d.ts +9 -9
- package/components/download-plus/src/ctx.d.ts +4 -4
- package/components/download-plus/src/index.vue.d.ts +10 -10
- package/components/editable-text/src/ctx.d.ts +4 -4
- package/components/editable-text/src/index.vue.d.ts +9 -9
- package/components/esri-input-geojson/src/append.vue.d.ts +1 -1
- package/components/esri-input-geojson/src/ctx.d.ts +5 -5
- package/components/esri-input-geojson/src/index.vue.d.ts +20 -20
- package/components/form/src/ctx.d.ts +1 -1
- package/components/form/src/index.vue.d.ts +1 -1
- package/components/form-item/index.cjs +1 -1
- package/components/form-item/index.mjs +218 -144
- package/components/form-item/src/core.vue.d.ts +7 -7
- package/components/form-item/src/ctx.d.ts +1 -1
- package/components/form-item/src/index.vue.d.ts +1 -1
- package/components/form-item/src/use.d.ts +5 -1
- package/components/form-item/src/validate-guard.vue.d.ts +25 -0
- package/components/information-collection/src/ctx.d.ts +4 -4
- package/components/information-collection/src/index.vue.d.ts +9 -9
- package/components/information-tag/src/index.vue.d.ts +1 -1
- package/components/input/src/ctx.d.ts +5 -5
- package/components/input/src/index.vue.d.ts +10 -10
- package/components/input-array/src/ctx.d.ts +4 -4
- package/components/input-array/src/index.vue.d.ts +9 -9
- package/components/input-collection/src/core.vue.d.ts +13 -13
- package/components/input-collection/src/ctx.d.ts +4 -4
- package/components/input-collection/src/index.vue.d.ts +13 -13
- package/components/input-file/src/index.vue.d.ts +10 -10
- package/components/input-link/src/ctx.d.ts +4 -4
- package/components/input-link/src/index.vue.d.ts +19 -19
- package/components/input-number/src/ctx.d.ts +5 -5
- package/components/input-number/src/index.vue.d.ts +10 -10
- package/components/input-tag/src/ctx.d.ts +5 -5
- package/components/input-tag/src/index.vue.d.ts +10 -10
- package/components/monaco-editor/src/ctx.d.ts +4 -4
- package/components/monaco-editor/src/index.vue.d.ts +10 -10
- package/components/radio/src/ctx.d.ts +4 -4
- package/components/radio/src/index.vue.d.ts +10 -10
- package/components/radio/src/wraper.vue.d.ts +9 -9
- package/components/select/src/core.vue.d.ts +10 -10
- package/components/select/src/ctx.d.ts +5 -5
- package/components/select/src/index.vue.d.ts +9 -9
- package/components/slider/src/ctx.d.ts +4 -4
- package/components/slider/src/index.vue.d.ts +9 -9
- package/components/switch/src/ctx.d.ts +4 -4
- package/components/switch/src/index.vue.d.ts +9 -9
- package/components/tables-select/src/ctx.d.ts +5 -5
- package/components/tables-select/src/index.vue.d.ts +6 -6
- package/components/templates-default/src/index.vue.d.ts +141 -141
- package/components/templates-esri/src/index.vue.d.ts +20 -20
- package/components/templates-variant/src/index.vue.d.ts +18 -18
- package/components/time-picker/src/ctx.d.ts +5 -5
- package/components/time-picker/src/index.vue.d.ts +9 -9
- package/components/upload/src/ctx.d.ts +5 -5
- package/components/upload/src/index.vue.d.ts +12 -12
- package/components/upload/src/wraper.vue.d.ts +10 -10
- package/components/upload-plus/src/ctx.d.ts +4 -4
- package/components/upload-plus/src/index.vue.d.ts +9 -9
- package/components/van-cascader/src/ctx.d.ts +4 -4
- package/components/van-cascader/src/index.vue.d.ts +9 -9
- package/components/var-datetime-picker/src/ctx.d.ts +4 -4
- package/components/var-datetime-picker/src/index.vue.d.ts +10 -10
- package/components/vditor/src/ctx.d.ts +4 -4
- package/components/vditor/src/index.vue.d.ts +10 -10
- package/index.css +1 -1
- package/locale/index.cjs +1 -1
- package/locale/index.mjs +9 -3
- package/locale/lang/ar.d.ts +2 -0
- package/locale/lang/en.d.ts +2 -0
- package/locale/lang/zh-cn.d.ts +2 -0
- package/package.json +1 -1
- package/shared/element-plus/ctx.d.ts +1 -1
|
@@ -94,6 +94,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
94
94
|
required: import("element-plus/es/utils/index.mjs").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
95
95
|
error: StringConstructor;
|
|
96
96
|
prop: null;
|
|
97
|
+
ai: {
|
|
98
|
+
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
99
|
+
default: undefined;
|
|
100
|
+
};
|
|
97
101
|
labelPosition: {
|
|
98
102
|
type: import("vue").PropType<"left" | "right" | "top" | "start" | "end">;
|
|
99
103
|
default: undefined;
|
|
@@ -132,10 +136,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
132
136
|
type: import("vue").PropType<import("element-plus").UseTooltipProps>;
|
|
133
137
|
default: () => {};
|
|
134
138
|
};
|
|
135
|
-
ai: {
|
|
136
|
-
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
137
|
-
default: undefined;
|
|
138
|
-
};
|
|
139
139
|
aiOutput: null;
|
|
140
140
|
label: StringConstructor;
|
|
141
141
|
labelWidth: {
|
|
@@ -236,6 +236,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
236
236
|
required: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
|
|
237
237
|
error: string | undefined;
|
|
238
238
|
prop: any;
|
|
239
|
+
ai: import("../../ai-provider/index.ts").AiConfig | undefined;
|
|
239
240
|
ariaLabel: string | undefined;
|
|
240
241
|
size: import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never> | undefined;
|
|
241
242
|
labelPosition: "start" | "left" | "right" | "top" | "end" | undefined;
|
|
@@ -249,7 +250,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
249
250
|
information: boolean;
|
|
250
251
|
defaultModelValue: any;
|
|
251
252
|
labelTipProps: import("element-plus").UseTooltipProps;
|
|
252
|
-
ai: import("../../ai-provider/index.ts").AiConfig | undefined;
|
|
253
253
|
aiOutput: any;
|
|
254
254
|
label: string | undefined;
|
|
255
255
|
labelWidth: import("element-plus/es/utils/index.mjs").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown> | undefined;
|
|
@@ -427,6 +427,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
427
427
|
required: import("element-plus/es/utils/index.mjs").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
428
428
|
error: StringConstructor;
|
|
429
429
|
prop: null;
|
|
430
|
+
ai: {
|
|
431
|
+
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
432
|
+
default: undefined;
|
|
433
|
+
};
|
|
430
434
|
labelPosition: {
|
|
431
435
|
type: import("vue").PropType<"left" | "right" | "top" | "start" | "end">;
|
|
432
436
|
default: undefined;
|
|
@@ -465,10 +469,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
465
469
|
type: import("vue").PropType<import("element-plus").UseTooltipProps>;
|
|
466
470
|
default: () => {};
|
|
467
471
|
};
|
|
468
|
-
ai: {
|
|
469
|
-
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
470
|
-
default: undefined;
|
|
471
|
-
};
|
|
472
472
|
aiOutput: null;
|
|
473
473
|
label: StringConstructor;
|
|
474
474
|
labelWidth: {
|
|
@@ -581,6 +581,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
581
581
|
type: import("element-plus/es/utils/index.mjs").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType) | null)[], unknown, unknown>;
|
|
582
582
|
id: string;
|
|
583
583
|
required: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
584
|
+
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
584
585
|
labelPosition: "start" | "left" | "right" | "top" | "end";
|
|
585
586
|
formItemSize: "small" | "default" | "large";
|
|
586
587
|
formItemSlots: import("../../form-item/src/types.ts").FormItemSlots;
|
|
@@ -590,7 +591,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
590
591
|
labelTip: string;
|
|
591
592
|
information: boolean;
|
|
592
593
|
labelTipProps: import("element-plus").UseTooltipProps;
|
|
593
|
-
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
594
594
|
inlineMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
595
595
|
showMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
596
596
|
disabled: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -643,6 +643,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
643
643
|
required: import("element-plus/es/utils/index.mjs").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
644
644
|
error: StringConstructor;
|
|
645
645
|
prop: null;
|
|
646
|
+
ai: {
|
|
647
|
+
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
648
|
+
default: undefined;
|
|
649
|
+
};
|
|
646
650
|
labelPosition: {
|
|
647
651
|
type: import("vue").PropType<"left" | "right" | "top" | "start" | "end">;
|
|
648
652
|
default: undefined;
|
|
@@ -685,10 +689,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
685
689
|
type: import("vue").PropType<import("element-plus").UseTooltipProps>;
|
|
686
690
|
default: () => {};
|
|
687
691
|
};
|
|
688
|
-
ai: {
|
|
689
|
-
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
690
|
-
default: undefined;
|
|
691
|
-
};
|
|
692
692
|
aiOutput: null;
|
|
693
693
|
label: StringConstructor;
|
|
694
694
|
labelWidth: {
|
|
@@ -853,6 +853,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
853
853
|
required: import("element-plus/es/utils/index.mjs").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
854
854
|
error: StringConstructor;
|
|
855
855
|
prop: null;
|
|
856
|
+
ai: {
|
|
857
|
+
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
858
|
+
default: undefined;
|
|
859
|
+
};
|
|
856
860
|
labelPosition: {
|
|
857
861
|
type: import("vue").PropType<"left" | "right" | "top" | "start" | "end">;
|
|
858
862
|
default: undefined;
|
|
@@ -895,10 +899,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
895
899
|
type: import("vue").PropType<import("element-plus").UseTooltipProps>;
|
|
896
900
|
default: () => {};
|
|
897
901
|
};
|
|
898
|
-
ai: {
|
|
899
|
-
type: import("vue").PropType<import("../../ai-provider/index.ts").AiConfig>;
|
|
900
|
-
default: undefined;
|
|
901
|
-
};
|
|
902
902
|
aiOutput: null;
|
|
903
903
|
label: StringConstructor;
|
|
904
904
|
labelWidth: {
|
|
@@ -1009,6 +1009,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
1009
1009
|
type: import("element-plus/es/utils/index.mjs").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType) | null)[], unknown, unknown>;
|
|
1010
1010
|
id: string;
|
|
1011
1011
|
required: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1012
|
+
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
1012
1013
|
labelPosition: "start" | "left" | "right" | "top" | "end";
|
|
1013
1014
|
formItemSize: "small" | "default" | "large";
|
|
1014
1015
|
formItemSlots: import("../../form-item/src/types.ts").FormItemSlots;
|
|
@@ -1018,7 +1019,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
1018
1019
|
labelTip: string;
|
|
1019
1020
|
information: boolean;
|
|
1020
1021
|
labelTipProps: import("element-plus").UseTooltipProps;
|
|
1021
|
-
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
1022
1022
|
inlineMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1023
1023
|
showMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1024
1024
|
disabled: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -1369,6 +1369,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
1369
1369
|
};
|
|
1370
1370
|
}, "size">>> & Readonly<{}>, {
|
|
1371
1371
|
required: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1372
|
+
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
1372
1373
|
labelPosition: "start" | "left" | "right" | "top" | "end";
|
|
1373
1374
|
formItemSize: "small" | "default" | "large";
|
|
1374
1375
|
formItemSlots: import("../../form-item/src/types.ts").FormItemSlots;
|
|
@@ -1378,7 +1379,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
1378
1379
|
labelTip: string;
|
|
1379
1380
|
information: boolean;
|
|
1380
1381
|
labelTipProps: import("element-plus").UseTooltipProps;
|
|
1381
|
-
ai: import("../../ai-provider/index.ts").AiConfig;
|
|
1382
1382
|
inlineMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1383
1383
|
showMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
1384
1384
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -80,7 +80,7 @@ export declare const props: {
|
|
|
80
80
|
};
|
|
81
81
|
disabled: BooleanConstructor;
|
|
82
82
|
};
|
|
83
|
-
export declare const createBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"model", keyof T2> | Extract<"
|
|
83
|
+
export declare const createBindProps: <T2 extends import("@vunk/core").NormalObject, EX extends (Extract<"model", keyof T2> | Extract<"data", keyof T2> | Extract<"size", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"disabled", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"layout", keyof T2> | Extract<"formItems", keyof T2> | Extract<"rowSource", keyof T2> | Extract<"colSource", keyof T2> | Extract<"segmentAttrs", keyof T2>)[]>(propsArg: T2, excludes?: EX | undefined) => import("vue").ComputedRef<{ [P in EX extends (infer KE)[] ? Exclude<Extract<"model", keyof T2>, KE> | Exclude<Extract<"data", keyof T2>, KE> | Exclude<Extract<"size", keyof T2>, KE> | Exclude<Extract<"labelPosition", keyof T2>, KE> | Exclude<Extract<"elRef", keyof T2>, KE> | Exclude<Extract<"inline", keyof T2>, KE> | Exclude<Extract<"readonly", keyof T2>, KE> | Exclude<Extract<"labelWidth", keyof T2>, KE> | Exclude<Extract<"rules", keyof T2>, KE> | Exclude<Extract<"inlineMessage", keyof T2>, KE> | Exclude<Extract<"showMessage", keyof T2>, KE> | Exclude<Extract<"disabled", keyof T2>, KE> | Exclude<Extract<"requireAsteriskPosition", keyof T2>, KE> | Exclude<Extract<"labelSuffix", keyof T2>, KE> | Exclude<Extract<"statusIcon", keyof T2>, KE> | Exclude<Extract<"validateOnRuleChange", keyof T2>, KE> | Exclude<Extract<"hideRequiredAsterisk", keyof T2>, KE> | Exclude<Extract<"scrollToError", keyof T2>, KE> | Exclude<Extract<"scrollIntoViewOptions", keyof T2>, KE> | Exclude<Extract<"layout", keyof T2>, KE> | Exclude<Extract<"formItems", keyof T2>, KE> | Exclude<Extract<"rowSource", keyof T2>, KE> | Exclude<Extract<"colSource", keyof T2>, KE> | Exclude<Extract<"segmentAttrs", keyof T2>, KE> : Extract<"model", keyof T2> | Extract<"data", keyof T2> | Extract<"size", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"disabled", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"layout", keyof T2> | Extract<"formItems", keyof T2> | Extract<"rowSource", keyof T2> | Extract<"colSource", keyof T2> | Extract<"segmentAttrs", keyof T2>]: { [k in Extract<"model", keyof T2> | Extract<"data", keyof T2> | Extract<"size", keyof T2> | Extract<"labelPosition", keyof T2> | Extract<"elRef", keyof T2> | Extract<"inline", keyof T2> | Extract<"readonly", keyof T2> | Extract<"labelWidth", keyof T2> | Extract<"rules", keyof T2> | Extract<"inlineMessage", keyof T2> | Extract<"showMessage", keyof T2> | Extract<"disabled", keyof T2> | Extract<"requireAsteriskPosition", keyof T2> | Extract<"labelSuffix", keyof T2> | Extract<"statusIcon", keyof T2> | Extract<"validateOnRuleChange", keyof T2> | Extract<"hideRequiredAsterisk", keyof T2> | Extract<"scrollToError", keyof T2> | Extract<"scrollIntoViewOptions", keyof T2> | Extract<"layout", keyof T2> | Extract<"formItems", keyof T2> | Extract<"rowSource", keyof T2> | Extract<"colSource", keyof T2> | Extract<"segmentAttrs", keyof T2>]: T2[k]; }[P]; }>;
|
|
84
84
|
export declare const emits: {
|
|
85
85
|
setData: (e: SetDataEvent) => SetDataEvent;
|
|
86
86
|
validate: null;
|
|
@@ -155,6 +155,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
155
155
|
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
156
156
|
onSetData?: ((e: import("@vunk/core").SetDataEvent) => any) | undefined;
|
|
157
157
|
}>, {
|
|
158
|
+
data: Record<string, any>;
|
|
158
159
|
labelPosition: "start" | "left" | "right" | "top" | "end";
|
|
159
160
|
elRef: import("@vunk/shared").AnyFunc;
|
|
160
161
|
inline: boolean;
|
|
@@ -163,7 +164,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
163
164
|
inlineMessage: boolean;
|
|
164
165
|
showMessage: import("element-plus/es/utils/index.mjs").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
165
166
|
disabled: boolean;
|
|
166
|
-
data: Record<string, any>;
|
|
167
167
|
requireAsteriskPosition: import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "left" | "right", unknown>;
|
|
168
168
|
labelSuffix: string;
|
|
169
169
|
statusIcon: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const g=require("element-plus"),E=require("@vunk/core/shared/utils-vue"),e=require("vue"),w=require("@vunk/form/shared/element-plus"),I=require("@vunk/form/composables"),A=require("@vunk/form/composables/element-plus"),$=require("@vunk/core/shared/utils-object"),z=require("@vunk/form/shared/rules"),F=require("../index-Bc7UifHG.js"),M=require("@vunk/form/components/collapse-item"),G=require("@vunk/form/components/generate-icon"),j=require("@vunk/form/components/ai-provider"),K=require("@vunk/form/components/form-item-renderer"),N={...g.formItemProps,labelPosition:{type:String,default:void 0},formItemSize:{type:String,default:void 0},formItemSlots:{type:Object,default:void 0},elRef:{type:Function,required:!1},inline:{type:Boolean,default:!1},readonly:{type:Boolean,default:void 0},formItemTip:{type:String,default:void 0},formItemTipClass:null,labelTip:{type:String,default:void 0},information:{type:Boolean,default:!1},prop:null,defaultModelValue:null,labelTipProps:{type:Object,default:()=>({})},ai:{type:Object,default:void 0},aiOutput:null};Reflect.deleteProperty(N,"size");const V=N,L=E.bindPropsFactory(V),H=Object.freeze(Object.defineProperty({__proto__:null,createBindProps:L,props:V},Symbol.toStringTag,{value:"Module"}));function W(t,f={}){const o=j.useAi(),i=j.useAiHost(),{data:c,getDataValue:m,emitSetData:d}=I.useRendererData(),{tr:v}=A.useLocale(),k=K.useAiSchema(),p=e.ref(!1),l=e.ref(""),u=e.computed(()=>{if(!p.value)return"";const r=l.value;if(!r)return v("vkf.formItem.aiThinking","AI 思考中…");const b=r.slice(-60);return v("vkf.formItem.aiThinkingText","AI 思考中:{text}",{text:`${r.length>b.length?"…":""}${b}`})}),a=r=>Array.isArray(r)?r.join():String(r),C=e.computed(()=>k?.find(r=>a(r.prop)===a(t.prop))),n=e.computed(()=>typeof t.ai=="object"&&t.ai!==null?t.ai:void 0),s=e.computed(()=>!!o&&!!n.value&&n.value.enable!==!1),h=r=>v("vkf.formItem.aiPrompt","请为表单字段「{label}」生成一个合理的值,只输出值本身。",{label:r});function T(){const r=n.value??{};return{...r,prompt:r.prompt??h(t.label??a(t.prop)),output:r.output??t.aiOutput}}function x(){return{data:c?.value,getDataValue:m,emitSetData:d,client:o,formItem:C.value,ai:T()}}async function B(r,b){if(o){f.onBeforeGenerate?.(),p.value=!0,l.value="";try{if(r.ai.stream&&o.generateStream){let y="",O=!0;const q=()=>{O&&(O=!1,b?.onFirstChunk?.(y))};await o.generateStream(r,{onChunk(S){y+=S,d?.({k:t.prop,v:y}),q()},onReasoning(S){l.value+=S,q()},onDone(){y&&d?.({k:t.prop,v:y})}});return}const P=(await o.generate(r))?.[a(t.prop)];P!==void 0&&d?.({k:t.prop,v:P})}finally{p.value=!1}}}async function D(r){if(!o||p.value||t.prop==null)return;const b=x();if(i?.hasDialog){const _={...b,el:r?.currentTarget,generate:(P,y)=>B({...b,ai:{...b.ai,...P}},y)};i.openDialog(_);return}await B(b)}return{hasAi:s,generating:p,aiTip:u,handleGenerate:D}}const J=e.defineComponent({__name:"validate-guard",props:{suspended:{type:Boolean,default:!1}},setup(t){const f=t,o=e.inject(g.formItemContextKey,null);if(o){const i=Object.create(o);i.validate=(c,m)=>f.suspended?(m?.(!0),Promise.resolve(!0)):o.validate(c,m),e.provide(g.formItemContextKey,i)}return(i,c)=>e.renderSlot(i.$slots,"default")}}),Q={key:0,class:"vkf-form-item__tip vkf-form-item__tip--ai"},U={key:0,class:"vkf-form-item-label__span"},X={key:3,class:"vkf-form-item-label__actions"},Y=e.defineComponent({inheritAttrs:!1,__name:"core",props:{labelTip:{type:String,default:""},formItemTip:{type:String,default:""},formItemTipClass:null,elRef:null,label:null,prop:null,labelTipProps:null,ai:null,aiOutput:null},setup(t){const f=t,{mittOn:o}=I.useFormMitt();let i=null;function c(l){i=l,f.elRef?.(l)}const{hasAi:m,generating:d,aiTip:v,handleGenerate:k}=W(f,{onBeforeGenerate:()=>i?.clearValidate?.()}),p=M.useCollapseItemContext();return o("afterValidate",({invalidFields:l})=>{if(!l||f.prop==null||!(f.prop in l))return;const u=p;if(!u)return;const a=u.name;if(u.accordion){if(Object.keys(l)[0]===f.prop){if(u.activeNames.includes(a))return;u.handleItemClick(a)}}else{if(u.activeNames.includes(a))return;u.handleItemClick(a)}}),(l,u)=>(e.openBlock(),e.createBlock(e.unref(g.ElFormItem),e.mergeProps(l.$attrs,{ref:c,prop:t.prop,class:["vkf-form-item",{"has-label-actions":l.$slots.labelActions}],label:t.label}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"before"),e.createVNode(J,{suspended:e.unref(d)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default")]),_:3},8,["suspended"]),e.renderSlot(l.$slots,"after"),e.unref(v)?(e.openBlock(),e.createElementBlock("div",Q,[e.createElementVNode("span",null,e.toDisplayString(e.unref(v)),1)])):e.createCommentVNode("",!0),t.formItemTip?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["vkf-form-item__tip",t.formItemTipClass])},[e.createElementVNode("span",null,e.toDisplayString(t.formItemTip),1)],2)):e.createCommentVNode("",!0)]),label:e.withCtx(a=>[e.renderSlot(l.$slots,"label",e.normalizeProps(e.guardReactiveProps(a)),()=>[t.label?(e.openBlock(),e.createElementBlock("span",U,e.toDisplayString(a.label),1)):e.createCommentVNode("",!0),t.labelTip?(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),e.mergeProps({key:1,content:t.labelTip},t.labelTipProps),{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElButton),{text:"",class:"vkf-form-item-label-tip-button"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(F.warning_default))]),_:1})]),_:1})]),_:1},16,["content"])):e.createCommentVNode("",!0),e.unref(m)?(e.openBlock(),e.createBlock(e.unref(g.ElButton),{key:2,text:"",class:"vkf-form-item-label-tip-button",type:"primary",onClick:e.unref(k)},{default:e.withCtx(()=>[e.createVNode(e.unref(G.VkfGenerateIcon),{generating:e.unref(d)},null,8,["generating"])]),_:1},8,["onClick"])):e.createCommentVNode("",!0),l.$slots.labelActions?(e.openBlock(),e.createElementBlock("div",X,[e.renderSlot(l.$slots,"labelActions")])):e.createCommentVNode("",!0)])]),error:e.withCtx(a=>[e.renderSlot(l.$slots,"error",e.normalizeProps(e.guardReactiveProps(a)))]),_:3},16,["prop","class","label"]))}}),R=e.defineComponent({name:"VkfFormItem",props:V,setup(t,{slots:f}){const o=w.createFormItemBindProps(t,["rules"]),i=I.useComputedReadonly(t),{tr:c}=A.useLocale(),m=e.ref(),d=e.computed(()=>t.labelPosition),v=I.useComputedLabelPosition(m,d),k=()=>t.label||c("vkf.formItem.defaultField","该字段"),p=n=>{if(n.message)return;n.required&&(n.message=c("vkf.formItem.required","{label}不能为空",{label:k()}));const s=z.PATTERN_OPTIONS.find(h=>h.value===n.pattern);s&&(n.message=c("vkf.formItem.pattern","输入 {label} {pattern}",{label:k(),pattern:s.title}))},l=e.computed(()=>{let n=[];return!t.rules&&t.required&&n.push({required:!0}),$.isPlainObject(t.rules)&&(n=[t.rules]),Array.isArray(t.rules)&&(n=t.rules,t.required&&!t.rules.find(s=>s.required)&&n.push({required:!0})),n=n.filter(s=>{if(s&&$.isPlainObject(s))return Object.keys(s).filter(T=>!T.startsWith("data-")).length>0}),n.forEach(s=>{p(s)}),n}),{getDataValue:u,emitSetData:a}=I.useRendererData();setTimeout(()=>{t.defaultModelValue!==void 0&&t.prop&&u?.(t.prop)===void 0&&a?.({k:t.prop,v:t.defaultModelValue})});const C=n=>{m.value=n?.$el??n,typeof t.elRef=="function"&&t.elRef(n)};return()=>e.h(Y,{...o.value,"label-position":v.value,elRef:C,class:{"is-readonly":i.value,"vkf-form-item--inline":t.inline,"is-empty-label":!t.label,"is-information":t.information},size:t.formItemSize,rules:l.value,formItemTip:t.formItemTip,formItemTipClass:t.formItemTipClass,labelTip:t.labelTip,label:t.label,labelTipProps:t.labelTipProps,ai:t.ai,aiOutput:t.aiOutput},{...f,...t.formItemSlots})}}),Z=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}));exports.VkfFormItem=R;exports._VkfFormItemCtx=H;exports.__VkfFormItem=Z;exports.default=R;
|