@vunk/form 2.19.24 → 2.19.26

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 (106) hide show
  1. package/components/ai-provider/index.cjs +1 -1
  2. package/components/ai-provider/index.d.ts +2 -2
  3. package/components/ai-provider/index.mjs +98 -44
  4. package/components/ai-provider/src/ctx.d.ts +9 -1
  5. package/components/ai-provider/src/index.vue.d.ts +43 -6
  6. package/components/ai-provider/src/types.d.ts +45 -0
  7. package/components/ai-provider/src/use.d.ts +3 -1
  8. package/components/api-tables-select/src/ctx.d.ts +7 -7
  9. package/components/api-tables-select/src/index.vue.d.ts +9 -9
  10. package/components/button/src/ctx.d.ts +7 -7
  11. package/components/button/src/index.vue.d.ts +35 -35
  12. package/components/card-input-collection/src/core.vue.d.ts +12 -12
  13. package/components/card-input-collection/src/ctx.d.ts +5 -5
  14. package/components/card-input-collection/src/index.vue.d.ts +12 -12
  15. package/components/cascader/src/ctx.d.ts +8 -109
  16. package/components/cascader/src/index.vue.d.ts +16 -217
  17. package/components/checkbox/src/ctx.d.ts +7 -7
  18. package/components/checkbox/src/index.vue.d.ts +54 -54
  19. package/components/color-picker/src/ctx.d.ts +7 -108
  20. package/components/color-picker/src/index.vue.d.ts +16 -217
  21. package/components/components.css +1 -1
  22. package/components/date-picker/src/ctx.d.ts +9 -110
  23. package/components/date-picker/src/index.vue.d.ts +20 -221
  24. package/components/date-picker-range/src/ctx.d.ts +6 -107
  25. package/components/date-picker-range/src/index.vue.d.ts +34 -436
  26. package/components/dialog/src/ctx.d.ts +4 -4
  27. package/components/dialog/src/index.vue.d.ts +12 -8
  28. package/components/dialog-input-collection/src/ctx.d.ts +5 -5
  29. package/components/dialog-input-collection/src/index.vue.d.ts +11 -11
  30. package/components/download-plus/src/ctx.d.ts +5 -5
  31. package/components/download-plus/src/index.vue.d.ts +75 -75
  32. package/components/editable-text/src/ctx.d.ts +5 -5
  33. package/components/editable-text/src/index.vue.d.ts +11 -11
  34. package/components/esri-input-geojson/src/append.vue.d.ts +25 -25
  35. package/components/esri-input-geojson/src/ctx.d.ts +11 -11
  36. package/components/esri-input-geojson/src/index.vue.d.ts +101 -101
  37. package/components/form/src/ctx.d.ts +2 -2
  38. package/components/form/src/index.vue.d.ts +12 -12
  39. package/components/form-item/index.cjs +1 -1
  40. package/components/form-item/index.mjs +218 -144
  41. package/components/form-item/src/core.vue.d.ts +7 -7
  42. package/components/form-item/src/ctx.d.ts +3 -3
  43. package/components/form-item/src/index.vue.d.ts +5 -5
  44. package/components/form-item/src/use.d.ts +5 -1
  45. package/components/form-item/src/validate-guard.vue.d.ts +25 -0
  46. package/components/information-collection/src/ctx.d.ts +5 -5
  47. package/components/information-collection/src/index.vue.d.ts +11 -11
  48. package/components/information-tag/src/ctx.d.ts +1 -1
  49. package/components/information-tag/src/index.vue.d.ts +3 -3
  50. package/components/input/src/ctx.d.ts +11 -11
  51. package/components/input/src/index.vue.d.ts +71 -71
  52. package/components/input-array/src/ctx.d.ts +5 -5
  53. package/components/input-array/src/index.vue.d.ts +11 -11
  54. package/components/input-collection/src/core.vue.d.ts +15 -15
  55. package/components/input-collection/src/ctx.d.ts +5 -5
  56. package/components/input-collection/src/index.vue.d.ts +15 -15
  57. package/components/input-file/src/index.vue.d.ts +12 -12
  58. package/components/input-link/src/ctx.d.ts +9 -9
  59. package/components/input-link/src/index.vue.d.ts +95 -95
  60. package/components/input-number/src/ctx.d.ts +9 -9
  61. package/components/input-number/src/index.vue.d.ts +51 -51
  62. package/components/input-tag/src/ctx.d.ts +8 -8
  63. package/components/input-tag/src/index.vue.d.ts +41 -41
  64. package/components/monaco-editor/src/ctx.d.ts +5 -5
  65. package/components/monaco-editor/src/index.vue.d.ts +16 -16
  66. package/components/radio/src/ctx.d.ts +6 -6
  67. package/components/radio/src/index.vue.d.ts +33 -33
  68. package/components/radio/src/wraper.vue.d.ts +13 -13
  69. package/components/select/src/core.vue.d.ts +34 -43
  70. package/components/select/src/ctx.d.ts +9 -14
  71. package/components/select/src/index.vue.d.ts +25 -34
  72. package/components/slider/src/ctx.d.ts +8 -8
  73. package/components/slider/src/index.vue.d.ts +18 -18
  74. package/components/switch/src/ctx.d.ts +6 -6
  75. package/components/switch/src/index.vue.d.ts +13 -13
  76. package/components/tables-select/index.mjs +4 -1
  77. package/components/tables-select/src/ctx.d.ts +13 -13
  78. package/components/tables-select/src/index.vue.d.ts +15 -15
  79. package/components/templates-default/src/index.vue.d.ts +420 -1131
  80. package/components/templates-esri/src/index.vue.d.ts +101 -101
  81. package/components/templates-layout/src/index.vue.d.ts +3 -3
  82. package/components/templates-variant/src/index.vue.d.ts +34 -436
  83. package/components/time-picker/src/ctx.d.ts +9 -110
  84. package/components/time-picker/src/index.vue.d.ts +19 -220
  85. package/components/upload/src/ctx.d.ts +6 -6
  86. package/components/upload/src/file.vue.d.ts +21 -21
  87. package/components/upload/src/index.vue.d.ts +45 -45
  88. package/components/upload/src/wraper.vue.d.ts +12 -12
  89. package/components/upload-plus/src/ctx.d.ts +5 -5
  90. package/components/upload-plus/src/index.vue.d.ts +11 -11
  91. package/components/van-cascader/src/ctx.d.ts +7 -108
  92. package/components/van-cascader/src/index.vue.d.ts +16 -217
  93. package/components/var-datetime-picker/src/const.d.ts +1 -1
  94. package/components/var-datetime-picker/src/ctx.d.ts +5 -5
  95. package/components/var-datetime-picker/src/index.vue.d.ts +37 -238
  96. package/components/vditor/src/ctx.d.ts +5 -5
  97. package/components/vditor/src/index.vue.d.ts +17 -17
  98. package/index.css +1 -1
  99. package/locale/index.cjs +1 -1
  100. package/locale/index.mjs +9 -3
  101. package/locale/lang/ar.d.ts +2 -0
  102. package/locale/lang/en.d.ts +2 -0
  103. package/locale/lang/zh-cn.d.ts +2 -0
  104. package/package.json +1 -1
  105. package/shared/element-plus/ctx.d.ts +2 -2
  106. package/shared/element-plus/instances.d.ts +6 -208
@@ -73,14 +73,14 @@ export declare const props: {
73
73
  scrollToError: BooleanConstructor;
74
74
  scrollIntoViewOptions: import("element-plus/es/utils/index.mjs").EpPropFinalized<(new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions) | (((new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions)) | null)[], unknown, unknown, true, boolean>;
75
75
  size: {
76
- readonly type: PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
76
+ readonly type: PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", unknown>>;
77
77
  readonly required: false;
78
78
  readonly validator: ((val: unknown) => boolean) | undefined;
79
79
  __epPropKey: true;
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<"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<"data", 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<"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<"data", 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<"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<"data", 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<"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<"data", 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]; }>;
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;
@@ -56,7 +56,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
56
56
  scrollToError: BooleanConstructor;
57
57
  scrollIntoViewOptions: import("element-plus/es/utils/index.mjs").EpPropFinalized<(new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions) | (((new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions)) | null)[], unknown, unknown, true, boolean>;
58
58
  size: {
59
- readonly type: import("vue").PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
59
+ readonly type: import("vue").PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", unknown>>;
60
60
  readonly required: false;
61
61
  readonly validator: ((val: unknown) => boolean) | undefined;
62
62
  __epPropKey: true;
@@ -144,7 +144,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
144
144
  scrollToError: BooleanConstructor;
145
145
  scrollIntoViewOptions: import("element-plus/es/utils/index.mjs").EpPropFinalized<(new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions) | (((new (...args: any[]) => boolean | ScrollIntoViewOptions) | (() => boolean | ScrollIntoViewOptions)) | null)[], unknown, unknown, true, boolean>;
146
146
  size: {
147
- readonly type: import("vue").PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", unknown>>;
147
+ readonly type: import("vue").PropType<import("element-plus/es/utils/index.mjs").EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", unknown>>;
148
148
  readonly required: false;
149
149
  readonly validator: ((val: unknown) => boolean) | undefined;
150
150
  __epPropKey: true;
@@ -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;
@@ -295,9 +295,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
295
295
  } & {
296
296
  FormItem: {
297
297
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("element-plus").FormItemProps> & Readonly<{}>, {
298
- size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
298
+ size: import("vue").ComputedRef<"" | "default" | "large" | "small">;
299
299
  validateMessage: import("vue").Ref<string, string>;
300
- validateState: import("vue").Ref<"" | "success" | "error" | "validating", "" | "success" | "error" | "validating">;
300
+ validateState: import("vue").Ref<"" | "error" | "success" | "validating", "" | "error" | "success" | "validating">;
301
301
  validate: (trigger: string, callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
302
302
  clearValidate: () => void;
303
303
  resetField: () => void;
@@ -315,9 +315,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
315
315
  M: {};
316
316
  Defaults: {};
317
317
  }, Readonly<import("element-plus").FormItemProps> & Readonly<{}>, {
318
- size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
318
+ size: import("vue").ComputedRef<"" | "default" | "large" | "small">;
319
319
  validateMessage: import("vue").Ref<string, string>;
320
- validateState: import("vue").Ref<"" | "success" | "error" | "validating", "" | "success" | "error" | "validating">;
320
+ validateState: import("vue").Ref<"" | "error" | "success" | "validating", "" | "error" | "success" | "validating">;
321
321
  validate: (trigger: string, callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
322
322
  clearValidate: () => void;
323
323
  resetField: () => void;
@@ -332,9 +332,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
332
332
  __isTeleport?: never;
333
333
  __isSuspense?: never;
334
334
  } & import("vue").ComponentOptionsBase<Readonly<import("element-plus").FormItemProps> & Readonly<{}>, {
335
- size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
335
+ size: import("vue").ComputedRef<"" | "default" | "large" | "small">;
336
336
  validateMessage: import("vue").Ref<string, string>;
337
- validateState: import("vue").Ref<"" | "success" | "error" | "validating", "" | "success" | "error" | "validating">;
337
+ validateState: import("vue").Ref<"" | "error" | "success" | "validating", "" | "error" | "success" | "validating">;
338
338
  validate: (trigger: string, callback?: import("element-plus").FormValidateCallback) => import("element-plus").FormValidationResult;
339
339
  clearValidate: () => void;
340
340
  resetField: () => void;
@@ -479,9 +479,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
479
479
  ElCol: import("element-plus/es/utils/index.mjs").SFCWithInstall<{
480
480
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("element-plus").ColProps> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
481
481
  push: number;
482
- offset: number;
483
482
  tag: string;
484
483
  span: number;
484
+ offset: number;
485
485
  pull: number;
486
486
  xs: import("element-plus").ColSize;
487
487
  sm: import("element-plus").ColSize;
@@ -497,9 +497,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
497
497
  Defaults: {};
498
498
  }, Readonly<import("element-plus").ColProps> & Readonly<{}>, {}, {}, {}, {}, {
499
499
  push: number;
500
- offset: number;
501
500
  tag: string;
502
501
  span: number;
502
+ offset: number;
503
503
  pull: number;
504
504
  xs: import("element-plus").ColSize;
505
505
  sm: import("element-plus").ColSize;
@@ -512,9 +512,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
512
512
  __isSuspense?: never;
513
513
  } & import("vue").ComponentOptionsBase<Readonly<import("element-plus").ColProps> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
514
514
  push: number;
515
- offset: number;
516
515
  tag: string;
517
516
  span: number;
517
+ offset: number;
518
518
  pull: number;
519
519
  xs: import("element-plus").ColSize;
520
520
  sm: import("element-plus").ColSize;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("element-plus"),O=require("@vunk/core/shared/utils-vue"),e=require("vue"),B=require("@vunk/form/shared/element-plus"),p=require("@vunk/form/composables"),T=require("@vunk/form/composables/element-plus"),S=require("@vunk/core/shared/utils-object"),j=require("@vunk/form/shared/rules"),R=require("../index-Bc7UifHG.js"),A=require("@vunk/form/components/collapse-item"),N=require("@vunk/form/components/generate-icon"),$=require("@vunk/form/components/ai-provider"),E=require("@vunk/form/components/form-item-renderer"),h={...c.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(h,"size");const C=h,D=O.bindPropsFactory(C),_=Object.freeze(Object.defineProperty({__proto__:null,createBindProps:D,props:C},Symbol.toStringTag,{value:"Module"}));function w(t){const i=$.useAi(),{data:m,getDataValue:d,emitSetData:u}=p.useRendererData(),{tr:s}=T.useLocale(),b=E.useAiSchema(),a=e.ref(!1),r=l=>Array.isArray(l)?l.join():String(l),o=e.computed(()=>b?.find(l=>r(l.prop)===r(t.prop))),f=e.computed(()=>typeof t.ai=="object"&&t.ai!==null?t.ai:void 0),k=e.computed(()=>!!i&&!!f.value&&f.value.enable!==!1),g=l=>s("vkf.formItem.aiPrompt","请为表单字段「{label}」生成一个合理的值,只输出值本身。",{label:l});function I(){const l=f.value??{};return{...l,prompt:l.prompt??g(t.label??r(t.prop)),output:l.output??t.aiOutput}}async function n(){if(!i||a.value||t.prop==null)return;const l={data:m?.value,getDataValue:d,emitSetData:u,client:i,formItem:o.value,ai:I()};a.value=!0;try{if(l.ai.stream&&i.generateStream){let y="";await i.generateStream(l,{onChunk(q){y+=q,u?.({k:t.prop,v:y})},onDone(){y&&u?.({k:t.prop,v:y})}});return}const v=(await i.generate(l))?.[r(t.prop)];v!==void 0&&u?.({k:t.prop,v})}finally{a.value=!1}}return{hasAi:k,generating:a,handleGenerate:n}}const z={key:0,class:"vkf-form-item-label__span"},x={key:3,class:"vkf-form-item-label__actions"},M=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 i=t,{mittOn:m}=p.useFormMitt(),{hasAi:d,generating:u,handleGenerate:s}=w(i),b=A.useCollapseItemContext();return m("afterValidate",({invalidFields:a})=>{if(!a||i.prop==null||!(i.prop in a))return;const r=b;if(!r)return;const o=r.name;if(r.accordion){if(Object.keys(a)[0]===i.prop){if(r.activeNames.includes(o))return;r.handleItemClick(o)}}else{if(r.activeNames.includes(o))return;r.handleItemClick(o)}}),(a,r)=>(e.openBlock(),e.createBlock(e.unref(c.ElFormItem),e.mergeProps(a.$attrs,{ref:o=>i.elRef?.(o),prop:t.prop,class:["vkf-form-item",{"has-label-actions":a.$slots.labelActions}],label:t.label}),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"before"),e.renderSlot(a.$slots,"default"),e.renderSlot(a.$slots,"after"),t.formItemTip?(e.openBlock(),e.createElementBlock("div",{key:0,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(o=>[e.renderSlot(a.$slots,"label",e.normalizeProps(e.guardReactiveProps(o)),()=>[t.label?(e.openBlock(),e.createElementBlock("span",z,e.toDisplayString(o.label),1)):e.createCommentVNode("",!0),t.labelTip?(e.openBlock(),e.createBlock(e.unref(c.ElTooltip),e.mergeProps({key:1,content:t.labelTip},t.labelTipProps),{default:e.withCtx(()=>[e.createVNode(e.unref(c.ElButton),{text:"",class:"vkf-form-item-label-tip-button"},{default:e.withCtx(()=>[e.createVNode(e.unref(c.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(R.warning_default))]),_:1})]),_:1})]),_:1},16,["content"])):e.createCommentVNode("",!0),e.unref(d)?(e.openBlock(),e.createBlock(e.unref(c.ElButton),{key:2,text:"",class:"vkf-form-item-label-tip-button",type:"primary",onClick:e.unref(s)},{default:e.withCtx(()=>[e.createVNode(e.unref(N.VkfGenerateIcon),{generating:e.unref(u)},null,8,["generating"])]),_:1},8,["onClick"])):e.createCommentVNode("",!0),a.$slots.labelActions?(e.openBlock(),e.createElementBlock("div",x,[e.renderSlot(a.$slots,"labelActions")])):e.createCommentVNode("",!0)])]),error:e.withCtx(o=>[e.renderSlot(a.$slots,"error",e.normalizeProps(e.guardReactiveProps(o)))]),_:3},16,["prop","class","label"]))}}),V=e.defineComponent({name:"VkfFormItem",props:C,setup(t,{slots:i}){const m=B.createFormItemBindProps(t,["rules"]),d=p.useComputedReadonly(t),{tr:u}=T.useLocale(),s=e.ref(),b=e.computed(()=>t.labelPosition),a=p.useComputedLabelPosition(s,b),r=()=>t.label||u("vkf.formItem.defaultField","该字段"),o=n=>{if(n.message)return;n.required&&(n.message=u("vkf.formItem.required","{label}不能为空",{label:r()}));const l=j.PATTERN_OPTIONS.find(P=>P.value===n.pattern);l&&(n.message=u("vkf.formItem.pattern","输入 {label} {pattern}",{label:r(),pattern:l.title}))},f=e.computed(()=>{let n=[];return!t.rules&&t.required&&n.push({required:!0}),S.isPlainObject(t.rules)&&(n=[t.rules]),Array.isArray(t.rules)&&(n=t.rules,t.required&&!t.rules.find(l=>l.required)&&n.push({required:!0})),n=n.filter(l=>{if(l&&S.isPlainObject(l))return Object.keys(l).filter(v=>!v.startsWith("data-")).length>0}),n.forEach(l=>{o(l)}),n}),{getDataValue:k,emitSetData:g}=p.useRendererData();setTimeout(()=>{t.defaultModelValue!==void 0&&t.prop&&k?.(t.prop)===void 0&&g?.({k:t.prop,v:t.defaultModelValue})});const I=n=>{s.value=n?.$el??n,typeof t.elRef=="function"&&t.elRef(n)};return()=>e.h(M,{...m.value,"label-position":a.value,elRef:I,class:{"is-readonly":d.value,"vkf-form-item--inline":t.inline,"is-empty-label":!t.label,"is-information":t.information},size:t.formItemSize,rules:f.value,formItemTip:t.formItemTip,formItemTipClass:t.formItemTipClass,labelTip:t.labelTip,label:t.label,labelTipProps:t.labelTipProps,ai:t.ai,aiOutput:t.aiOutput},{...i,...t.formItemSlots})}}),F=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}));exports.VkfFormItem=V;exports._VkfFormItemCtx=_;exports.__VkfFormItem=F;exports.default=V;
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;