@robot-admin/naive-ui-components 0.13.5 → 0.13.7

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 (158) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +61 -6
  3. package/README_EN.md +53 -6
  4. package/dist/C_Form.base.css +174 -169
  5. package/dist/C_Form.cjs +1 -1
  6. package/dist/C_Form.css +174 -169
  7. package/dist/C_Form.d.cts +2 -2
  8. package/dist/C_Form.d.ts +2 -2
  9. package/dist/C_Form.js +1 -1
  10. package/dist/C_Form2.cjs +1 -1
  11. package/dist/C_Form2.js +1 -1
  12. package/dist/C_FormModal.css +15 -15
  13. package/dist/C_FormModal2.cjs +1 -1
  14. package/dist/C_FormModal2.js +1 -1
  15. package/dist/C_Loading.cjs +1 -0
  16. package/dist/C_Loading.css +119 -0
  17. package/dist/C_Loading.d.cts +2 -0
  18. package/dist/C_Loading.d.ts +2 -0
  19. package/dist/C_Loading.js +1 -0
  20. package/dist/C_Loading2.cjs +1 -0
  21. package/dist/C_Loading2.js +1 -0
  22. package/dist/C_Login.d.cts +1 -1
  23. package/dist/C_Login.d.ts +1 -1
  24. package/dist/C_Markdown.d.cts +1 -1
  25. package/dist/C_Markdown.d.ts +1 -1
  26. package/dist/C_Menu.d.ts +1 -1
  27. package/dist/C_OrgChart.d.cts +1 -1
  28. package/dist/C_OrgChart.d.ts +1 -1
  29. package/dist/C_Progress.d.cts +1 -1
  30. package/dist/C_Progress.d.ts +1 -1
  31. package/dist/C_Skeleton.d.cts +1 -1
  32. package/dist/C_Skeleton.d.ts +1 -1
  33. package/dist/C_Steps.d.cts +1 -1
  34. package/dist/C_Steps.d.ts +1 -1
  35. package/dist/C_Table.base.css +407 -282
  36. package/dist/C_Table.cjs +1 -1
  37. package/dist/C_Table.css +407 -282
  38. package/dist/C_Table.d.ts +2 -2
  39. package/dist/C_Table.js +1 -1
  40. package/dist/C_TagsView.d.cts +1 -1
  41. package/dist/C_TagsView.d.ts +1 -1
  42. package/dist/C_Theme.d.cts +1 -1
  43. package/dist/C_Theme.d.ts +1 -1
  44. package/dist/C_Timeline.d.cts +1 -1
  45. package/dist/C_Timeline.d.ts +1 -1
  46. package/dist/C_Transfer.d.cts +1 -1
  47. package/dist/C_Transfer.d.ts +1 -1
  48. package/dist/C_VtableGantt.d.cts +1 -1
  49. package/dist/C_VtableGantt.d.ts +1 -1
  50. package/dist/config.cjs +1 -1
  51. package/dist/config.js +1 -1
  52. package/dist/constants.d.cts +1 -1
  53. package/dist/constants.d.ts +1 -1
  54. package/dist/constants2.d.cts +4 -4
  55. package/dist/constants2.d.ts +4 -4
  56. package/dist/constants3.d.cts +3 -3
  57. package/dist/constants3.d.ts +3 -3
  58. package/dist/constants4.d.cts +5 -5
  59. package/dist/constants4.d.ts +5 -5
  60. package/dist/constants5.d.cts +2 -2
  61. package/dist/constants5.d.ts +2 -2
  62. package/dist/data.d.cts +6 -6
  63. package/dist/data.d.ts +6 -6
  64. package/dist/index.cjs +1 -1
  65. package/dist/index.d.cts +29 -28
  66. package/dist/index.d.ts +29 -28
  67. package/dist/index.js +1 -1
  68. package/dist/index.vue.d.cts +6 -6
  69. package/dist/index.vue.d.ts +6 -6
  70. package/dist/index10.vue.d.cts +2 -2
  71. package/dist/index10.vue.d.ts +1 -1
  72. package/dist/index11.vue.d.cts +1 -1
  73. package/dist/index11.vue.d.ts +3 -3
  74. package/dist/index12.vue.d.cts +3 -3
  75. package/dist/index12.vue.d.ts +1 -1
  76. package/dist/index13.vue.d.cts +1 -1
  77. package/dist/index13.vue.d.ts +5 -5
  78. package/dist/index14.vue.d.cts +5 -5
  79. package/dist/index14.vue.d.ts +5 -5
  80. package/dist/index15.vue.d.cts +5 -5
  81. package/dist/index15.vue.d.ts +1 -1
  82. package/dist/index16.vue.d.cts +1 -1
  83. package/dist/index16.vue.d.ts +13 -129
  84. package/dist/index17.vue.d.cts +13 -129
  85. package/dist/index17.vue.d.ts +129 -76
  86. package/dist/index18.vue.d.cts +129 -76
  87. package/dist/index18.vue.d.ts +75 -71
  88. package/dist/index19.vue.d.cts +75 -93
  89. package/dist/index19.vue.d.ts +68 -90
  90. package/dist/index2.vue.d.cts +2 -2
  91. package/dist/index2.vue.d.ts +2 -2
  92. package/dist/index20.vue.d.cts +87 -40
  93. package/dist/index20.vue.d.ts +87 -40
  94. package/dist/index21.vue.d.cts +40 -89
  95. package/dist/index21.vue.d.ts +40 -89
  96. package/dist/index22.vue.d.cts +95 -37
  97. package/dist/index22.vue.d.ts +95 -37
  98. package/dist/index23.vue.d.cts +34 -8
  99. package/dist/index23.vue.d.ts +34 -8
  100. package/dist/index24.vue.d.cts +12 -654
  101. package/dist/index24.vue.d.ts +12 -654
  102. package/dist/index25.vue.d.cts +650 -85
  103. package/dist/index25.vue.d.ts +650 -85
  104. package/dist/index26.vue.d.cts +85 -100
  105. package/dist/index26.vue.d.ts +85 -100
  106. package/dist/index27.vue.d.cts +92 -61
  107. package/dist/index27.vue.d.ts +92 -61
  108. package/dist/index28.vue.d.cts +80 -0
  109. package/dist/index28.vue.d.ts +80 -0
  110. package/dist/index3.vue.d.cts +5 -5
  111. package/dist/index3.vue.d.ts +5 -5
  112. package/dist/index6.vue.d.ts +1 -1
  113. package/dist/index7.vue.d.cts +1 -1
  114. package/dist/index8.vue.d.ts +2 -2
  115. package/dist/index9.vue.d.cts +2 -2
  116. package/dist/index9.vue.d.ts +2 -2
  117. package/dist/mapUtils.d.cts +2 -2
  118. package/dist/mapUtils.d.ts +2 -2
  119. package/dist/presets.d.cts +1 -1
  120. package/dist/presets.d.ts +1 -1
  121. package/dist/resolver.cjs +1 -1
  122. package/dist/resolver.d.cts +1 -1
  123. package/dist/resolver.d.ts +1 -1
  124. package/dist/resolver.js +1 -1
  125. package/dist/style.css +424 -297
  126. package/dist/useCollapsePanel.d.cts +2 -2
  127. package/dist/useCollapsePanel.d.ts +2 -2
  128. package/dist/useCropperCore.d.cts +9 -9
  129. package/dist/useCropperCore.d.ts +9 -9
  130. package/dist/useDraggableLayout.d.cts +5 -5
  131. package/dist/useDraggableLayout.d.ts +5 -5
  132. package/dist/useDynamicFormState.d.cts +27 -7
  133. package/dist/useDynamicFormState.d.ts +27 -7
  134. package/dist/useEdgeInteraction.d.cts +2 -2
  135. package/dist/useEdgeInteraction.d.ts +2 -2
  136. package/dist/useInfiniteScroll.d.cts +1 -1
  137. package/dist/useInfiniteScroll.d.ts +1 -1
  138. package/dist/useQRCode.d.cts +4 -4
  139. package/dist/useQRCode.d.ts +4 -4
  140. package/dist/useSearchState.d.cts +3 -3
  141. package/dist/useSearchState.d.ts +3 -3
  142. package/dist/useSignatureHistory.d.cts +3 -3
  143. package/dist/useSignatureHistory.d.ts +3 -3
  144. package/dist/useSplitResize.d.cts +3 -3
  145. package/dist/useSplitResize.d.ts +3 -3
  146. package/dist/useTableQuery.cjs +3 -3
  147. package/dist/useTableQuery.d.cts +2 -0
  148. package/dist/useTableQuery.d.ts +2 -0
  149. package/dist/useTableQuery.js +3 -3
  150. package/dist/useTimeSelection.d.cts +2 -2
  151. package/dist/useTimeSelection.d.ts +2 -2
  152. package/dist/useTreeOperations.d.cts +6 -6
  153. package/dist/useTreeOperations.d.ts +6 -6
  154. package/dist/useWorkflowValidation.d.cts +3 -3
  155. package/dist/useWorkflowValidation.d.ts +3 -3
  156. package/dist/verification.d.cts +1 -1
  157. package/dist/verification.d.ts +1 -1
  158. package/package.json +4 -3
@@ -71,13 +71,13 @@ declare var __VLS_7: `header-${string}`, __VLS_8: {
71
71
  type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_7>]?: (props: typeof __VLS_8) => any } & { [K in NonNullable<typeof __VLS_16>]?: (props: typeof __VLS_17) => any } & { [K in NonNullable<typeof __VLS_31>]?: (props: typeof __VLS_32) => any };
72
72
  declare const __VLS_base: vue.DefineComponent<Props, CollapsePanelExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
73
73
  change: (activeKeys: string[]) => any;
74
- collapse: (key: string) => any;
75
74
  expand: (key: string) => any;
75
+ collapse: (key: string) => any;
76
76
  "update:activeKeys": (keys: string[]) => any;
77
77
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
78
78
  onChange?: ((activeKeys: string[]) => any) | undefined;
79
- onCollapse?: ((key: string) => any) | undefined;
80
79
  onExpand?: ((key: string) => any) | undefined;
80
+ onCollapse?: ((key: string) => any) | undefined;
81
81
  "onUpdate:activeKeys"?: ((keys: string[]) => any) | undefined;
82
82
  }>, {
83
83
  bordered: boolean;
@@ -71,13 +71,13 @@ declare var __VLS_7: `header-${string}`, __VLS_8: {
71
71
  type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_7>]?: (props: typeof __VLS_8) => any } & { [K in NonNullable<typeof __VLS_16>]?: (props: typeof __VLS_17) => any } & { [K in NonNullable<typeof __VLS_31>]?: (props: typeof __VLS_32) => any };
72
72
  declare const __VLS_base: vue.DefineComponent<Props, CollapsePanelExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
73
73
  change: (activeKeys: string[]) => any;
74
- collapse: (key: string) => any;
75
74
  expand: (key: string) => any;
75
+ collapse: (key: string) => any;
76
76
  "update:activeKeys": (keys: string[]) => any;
77
77
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
78
78
  onChange?: ((activeKeys: string[]) => any) | undefined;
79
- onCollapse?: ((key: string) => any) | undefined;
80
79
  onExpand?: ((key: string) => any) | undefined;
80
+ onCollapse?: ((key: string) => any) | undefined;
81
81
  "onUpdate:activeKeys"?: ((keys: string[]) => any) | undefined;
82
82
  }>, {
83
83
  bordered: boolean;
@@ -52,30 +52,30 @@ interface ImageCropperEmits {
52
52
  //#region src/components/C_ImageCropper/index.vue.d.ts
53
53
  declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
54
54
  error: (error: Error) => any;
55
- crop: (result: CropResult) => any;
55
+ cancel: () => any;
56
56
  ready: () => any;
57
57
  confirm: (result: CropResult) => any;
58
- cancel: () => any;
58
+ crop: (result: CropResult) => any;
59
59
  }, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
60
60
  onError?: ((error: Error) => any) | undefined;
61
- onCrop?: ((result: CropResult) => any) | undefined;
61
+ onCancel?: (() => any) | undefined;
62
62
  onReady?: (() => any) | undefined;
63
63
  onConfirm?: ((result: CropResult) => any) | undefined;
64
- onCancel?: (() => any) | undefined;
64
+ onCrop?: ((result: CropResult) => any) | undefined;
65
65
  }>, {
66
66
  disabled: boolean;
67
- src: string;
67
+ height: string | number;
68
+ showPreview: boolean;
68
69
  aspectRatio: number;
70
+ showToolbar: boolean;
71
+ src: string;
72
+ modalTitle: string;
69
73
  outputFormat: CropOutputFormat;
70
74
  outputQuality: number;
71
75
  maxOutputWidth: number;
72
76
  maxOutputHeight: number;
73
- showPreview: boolean;
74
- showToolbar: boolean;
75
77
  circular: boolean;
76
- height: string | number;
77
78
  modal: boolean;
78
- modalTitle: string;
79
79
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
80
80
  declare const _default: typeof __VLS_export;
81
81
  //#endregion
@@ -52,30 +52,30 @@ interface ImageCropperEmits {
52
52
  //#region src/components/C_ImageCropper/index.vue.d.ts
53
53
  declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
54
54
  error: (error: Error) => any;
55
- crop: (result: CropResult) => any;
55
+ cancel: () => any;
56
56
  ready: () => any;
57
57
  confirm: (result: CropResult) => any;
58
- cancel: () => any;
58
+ crop: (result: CropResult) => any;
59
59
  }, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
60
60
  onError?: ((error: Error) => any) | undefined;
61
- onCrop?: ((result: CropResult) => any) | undefined;
61
+ onCancel?: (() => any) | undefined;
62
62
  onReady?: (() => any) | undefined;
63
63
  onConfirm?: ((result: CropResult) => any) | undefined;
64
- onCancel?: (() => any) | undefined;
64
+ onCrop?: ((result: CropResult) => any) | undefined;
65
65
  }>, {
66
66
  disabled: boolean;
67
- src: string;
67
+ height: string | number;
68
+ showPreview: boolean;
68
69
  aspectRatio: number;
70
+ showToolbar: boolean;
71
+ src: string;
72
+ modalTitle: string;
69
73
  outputFormat: CropOutputFormat;
70
74
  outputQuality: number;
71
75
  maxOutputWidth: number;
72
76
  maxOutputHeight: number;
73
- showPreview: boolean;
74
- showToolbar: boolean;
75
77
  circular: boolean;
76
- height: string | number;
77
78
  modal: boolean;
78
- modalTitle: string;
79
79
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
80
80
  declare const _default: typeof __VLS_export;
81
81
  //#endregion
@@ -116,15 +116,16 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
116
116
  "onItem-remove"?: ((item: DraggableItem, index: number) => any) | undefined;
117
117
  "onList-change"?: ((list: DraggableItem[]) => any) | undefined;
118
118
  }>, {
119
- modelValue: DraggableItem[];
120
119
  sort: boolean;
121
- direction: "vertical" | "horizontal";
120
+ modelValue: DraggableItem[];
122
121
  disabled: boolean;
122
+ direction: "vertical" | "horizontal";
123
123
  emptyText: string;
124
+ itemClass: string;
125
+ animation: number;
124
126
  layout: LayoutMode;
125
- delay: number;
126
127
  group: string | GroupOptions;
127
- animation: number;
128
+ delay: number;
128
129
  handle: string;
129
130
  showHandle: boolean;
130
131
  ghostClass: string;
@@ -132,7 +133,6 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
132
133
  dragClass: string;
133
134
  wrapperClass: string;
134
135
  listClass: string;
135
- itemClass: string;
136
136
  showEmptyState: boolean;
137
137
  swapThreshold: number;
138
138
  invertSwap: boolean;
@@ -116,15 +116,16 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
116
116
  "onItem-remove"?: ((item: DraggableItem, index: number) => any) | undefined;
117
117
  "onList-change"?: ((list: DraggableItem[]) => any) | undefined;
118
118
  }>, {
119
- modelValue: DraggableItem[];
120
119
  sort: boolean;
121
- direction: "vertical" | "horizontal";
120
+ modelValue: DraggableItem[];
122
121
  disabled: boolean;
122
+ direction: "vertical" | "horizontal";
123
123
  emptyText: string;
124
+ itemClass: string;
125
+ animation: number;
124
126
  layout: LayoutMode;
125
- delay: number;
126
127
  group: string | GroupOptions;
127
- animation: number;
128
+ delay: number;
128
129
  handle: string;
129
130
  showHandle: boolean;
130
131
  ghostClass: string;
@@ -132,7 +133,6 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
132
133
  dragClass: string;
133
134
  wrapperClass: string;
134
135
  listClass: string;
135
- itemClass: string;
136
136
  showEmptyState: boolean;
137
137
  swapThreshold: number;
138
138
  invertSwap: boolean;
@@ -3,8 +3,18 @@ import * as vue from "vue";
3
3
  import { CSSProperties, Component, ComputedRef, DeepReadonly, InjectionKey, MaybeRefOrGetter, Ref, Slots, VNode } from "vue";
4
4
  import { FormInst, FormItemInst, FormItemRule, FormRules } from "naive-ui";
5
5
  import * as naive_ui_es_form_src_interface0 from "naive-ui/es/form/src/interface";
6
+ import { NAIVE_COMBOS, NaiveRule, PRESET_RULES, RuleSpec, RuleSpec as RuleSpec$1, SPEC_RULES } from "@robot-admin/form-validate";
6
7
  import * as _vue_shared0 from "@vue/shared";
7
8
 
9
+ //#region src/components/C_Form/utils/formValidation.d.ts
10
+ /** 原生规则、验证库规则和框架无关规则均可直接作为字段配置。 */
11
+ type FormValidationRule = FormItemRule | NaiveRule | RuleSpec;
12
+ type NativePresetRule = FormItemRule & Pick<NaiveRule, 'trigger' | 'validator' | 'required' | 'message'>;
13
+ type NativeRuleFactories<T> = { readonly [Key in keyof T]: T[Key] extends ((...args: infer Args) => infer Result) ? (...args: Args) => Result extends readonly NaiveRule[] ? NativePresetRule[] : Result extends NaiveRule ? NativePresetRule : Result : T[Key] };
14
+ /** 运行时保持验证库的工厂对象,只有公开类型在组件包内统一适配。 */
15
+ declare const PRESET_RULES$1: NativeRuleFactories<typeof PRESET_RULES>;
16
+ declare const NAIVE_COMBOS$1: NativeRuleFactories<typeof NAIVE_COMBOS>;
17
+ //#endregion
8
18
  //#region src/components/C_Form/types.d.ts
9
19
  type MaybePromise<T> = T | Promise<T>;
10
20
  type FormRecord = Record<string, unknown>;
@@ -52,6 +62,10 @@ interface FormErrorContext {
52
62
  source: 'initialize' | 'async-options' | 'callback' | 'render' | 'submit';
53
63
  field?: string;
54
64
  }
65
+ /** 组件卸载时取消当前提交,业务请求可直接使用 signal。 */
66
+ interface FormSubmitContext {
67
+ signal: AbortSignal;
68
+ }
55
69
  /**
56
70
  * 标签页配置接口
57
71
  * @description 用于标签页布局的单个标签页配置
@@ -106,7 +120,7 @@ interface DynamicFieldConfig {
106
120
  layout?: {
107
121
  span?: number;
108
122
  };
109
- rules?: FormItemRule[];
123
+ rules?: readonly FormValidationRule[];
110
124
  }
111
125
  /**
112
126
  * 表单项布局配置
@@ -251,7 +265,7 @@ interface FormOption<T extends object = FormRecord> {
251
265
  label?: string;
252
266
  value?: unknown;
253
267
  placeholder?: string;
254
- rules?: FormItemRule[];
268
+ rules?: readonly FormValidationRule[];
255
269
  attrs?: Record<string, unknown>;
256
270
  children?: OptionItem[];
257
271
  show?: boolean;
@@ -269,7 +283,7 @@ interface FormOption<T extends object = FormRecord> {
269
283
  /** 异步数据源:select / cascader / checkbox / radio 的远程选项加载 */
270
284
  asyncOptions?: (formModel: FormModel<T>, context?: AsyncOptionsContext) => Promise<readonly OptionItem[]>;
271
285
  /** 联动校验规则:根据表单数据动态返回校验规则 */
272
- rulesWhen?: (formModel: FormModel<T>) => FormItemRule[];
286
+ rulesWhen?: (formModel: FormModel<T>) => readonly FormValidationRule[];
273
287
  /** 跨字段校验:需要引用多个字段值的验证函数,返回错误消息或 null */
274
288
  crossFieldValidator?: (formModel: FormModel<T>) => MaybePromise<string | null>;
275
289
  }
@@ -361,6 +375,8 @@ interface FormSlots<T extends object = FormRecord> {
361
375
  /** Field-specific named slots are intentionally open-ended. */
362
376
  [slotName: string]: ((props: any) => unknown) | undefined;
363
377
  action?: (props: FormActionSlotProps<T>) => unknown;
378
+ /** 增加业务按钮,保留组件默认的提交、重置和加载管理。 */
379
+ 'action-extra'?: (props: FormActionSlotProps<T>) => unknown;
364
380
  'tab-actions'?: (props: FormTabActionsSlotProps) => unknown;
365
381
  'step-actions'?: (props: FormStepActionsSlotProps) => unknown;
366
382
  }
@@ -436,7 +452,7 @@ interface LayoutCallbacks<T extends object = FormRecord> {
436
452
  onGroupToggle?: (groupKey: string, collapsed: boolean) => void;
437
453
  onGroupReset?: (groupKey: string) => void;
438
454
  onFieldsChange?: (fields: FormOption<T>[]) => void;
439
- onSubmit?: (payload: SubmitEventPayload<T>) => MaybePromise<void>;
455
+ onSubmit?: (payload: SubmitEventPayload<T>, context?: FormSubmitContext) => MaybePromise<void>;
440
456
  onError?: (error: unknown, context: FormErrorContext) => void;
441
457
  }
442
458
  /**
@@ -469,6 +485,10 @@ interface FormConfig<T extends object = FormRecord> extends LayoutCallbacks<T> {
469
485
  submitText?: string;
470
486
  /** 默认重置按钮文案 */
471
487
  resetText?: string;
488
+ /** 提交完成后的提示;默认不显示,由业务明确配置。 */
489
+ submitSuccessText?: string;
490
+ /** 重置完成后的提示;默认不显示。 */
491
+ resetSuccessText?: string;
472
492
  /** 表单模式:create = 新建(默认),edit = 编辑(配合 initialValues 实现回填 + 脏检查) */
473
493
  mode?: FormMode;
474
494
  /** 编辑模式初始值:设置后自动作为脏检查基准 */
@@ -585,8 +605,8 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
585
605
  config?: FormConfig<T>; /** 当前表单实例的自定义渲染器,不污染全局注册表 */
586
606
  renderers?: Record<string, FormRenderer>;
587
607
  } & {
588
- "onUpdate:modelValue"?: ((model: T) => any) | undefined;
589
608
  onSubmit?: ((payload: SubmitEventPayload<T>) => any) | undefined;
609
+ "onUpdate:modelValue"?: ((model: T) => any) | undefined;
590
610
  "onValidate-success"?: ((model: T) => any) | undefined;
591
611
  "onValidate-error"?: ((errors: unknown) => any) | undefined;
592
612
  }> & (typeof globalThis extends {
@@ -631,7 +651,7 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
631
651
  }>) => void;
632
652
  attrs: any;
633
653
  slots: FormSlots<T>;
634
- emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
654
+ emit: ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "update:modelValue", model: T) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
635
655
  }>) => vue.VNode & {
636
656
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
637
657
  };
@@ -761,4 +781,4 @@ type DynamicFormStateType = DynamicFormController;
761
781
  */
762
782
  declare const DYNAMIC_FORM_STATE_KEY: unique symbol;
763
783
  //#endregion
764
- export { LabelPlacement as $, useFormGlobalConfig as A, FieldPathValue as B, FormConfig as C, mergeFormConfig as D, ResolvedFormConfig as E, DynamicFieldConfig as F, FormModel as G, FormErrorContext as H, DynamicFormConfig as I, FormSlots as J, FormOption as K, DynamicFormController as L, CardLayoutConfig as M, ComponentType as N, resolveFormConfig as O, CustomLayoutConfig as P, InlineLayoutConfig as Q, DynamicFormState as R, FORM_GLOBAL_CONFIG_KEY as S, LayoutCallbacks as T, FormInstance as U, FormActionSlotProps as V, FormMode as W, FormTabActionsSlotProps as X, FormStepActionsSlotProps as Y, GridLayoutConfig as Z, UseFormRendererOptions as _, UseFormDirtyReturn as a, SubmitEventPayload as at, useFormRenderer as b, UseCFormOptions as c, useCForm as d, LayoutConfig as et, _default as f, RendererProps as g, FormRendererContext as h, useDynamicFormState as i, StepsLayoutConfig as it, AsyncOptionsContext as j, shouldShowActions as k, defineFormConfig as l, FormRenderer as m, DynamicFormStateType as n, MaybePromise as nt, useFormDirty as o, TabsLayoutConfig as ot, ComponentMap as p, FormRecord as q, FIELD_TYPE_OPTIONS as r, OptionItem as rt, useFormState as s, DYNAMIC_FORM_STATE_KEY as t, LayoutType as tt, defineFormOptions as u, registerRenderer as v, LAYOUTS_WITH_OWN_CONTROLS as w, FORM_DEFAULTS as x, unregisterRenderer as y, FieldPath as z };
784
+ export { InlineLayoutConfig as $, useFormGlobalConfig as A, FieldPathValue as B, FormConfig as C, mergeFormConfig as D, ResolvedFormConfig as E, DynamicFieldConfig as F, FormModel as G, FormErrorContext as H, DynamicFormConfig as I, FormSlots as J, FormOption as K, DynamicFormController as L, CardLayoutConfig as M, ComponentType as N, resolveFormConfig as O, CustomLayoutConfig as P, GridLayoutConfig as Q, DynamicFormState as R, FORM_GLOBAL_CONFIG_KEY as S, LayoutCallbacks as T, FormInstance as U, FormActionSlotProps as V, FormMode as W, FormSubmitContext as X, FormStepActionsSlotProps as Y, FormTabActionsSlotProps as Z, UseFormRendererOptions as _, UseFormDirtyReturn as a, StepsLayoutConfig as at, useFormRenderer as b, UseCFormOptions as c, FormValidationRule as ct, useCForm as d, RuleSpec$1 as dt, LabelPlacement as et, _default as f, SPEC_RULES as ft, RendererProps as g, FormRendererContext as h, useDynamicFormState as i, OptionItem as it, AsyncOptionsContext as j, shouldShowActions as k, defineFormConfig as l, NAIVE_COMBOS$1 as lt, FormRenderer as m, DynamicFormStateType as n, LayoutType as nt, useFormDirty as o, SubmitEventPayload as ot, ComponentMap as p, FormRecord as q, FIELD_TYPE_OPTIONS as r, MaybePromise as rt, useFormState as s, TabsLayoutConfig as st, DYNAMIC_FORM_STATE_KEY as t, LayoutConfig as tt, defineFormOptions as u, PRESET_RULES$1 as ut, registerRenderer as v, LAYOUTS_WITH_OWN_CONTROLS as w, FORM_DEFAULTS as x, unregisterRenderer as y, FieldPath as z };
@@ -2,9 +2,19 @@ import { i as ComponentLocale, r as ComponentFeedback } from "./config.js";
2
2
  import * as vue from "vue";
3
3
  import { CSSProperties, Component, ComputedRef, DeepReadonly, InjectionKey, MaybeRefOrGetter, Ref, Slots, VNode } from "vue";
4
4
  import { FormInst, FormItemInst, FormItemRule, FormRules } from "naive-ui";
5
+ import { NAIVE_COMBOS, NaiveRule, PRESET_RULES, RuleSpec, RuleSpec as RuleSpec$1, SPEC_RULES } from "@robot-admin/form-validate";
5
6
  import * as naive_ui_es_form_src_interface0 from "naive-ui/es/form/src/interface";
6
7
  import * as _vue_shared0 from "@vue/shared";
7
8
 
9
+ //#region src/components/C_Form/utils/formValidation.d.ts
10
+ /** 原生规则、验证库规则和框架无关规则均可直接作为字段配置。 */
11
+ type FormValidationRule = FormItemRule | NaiveRule | RuleSpec;
12
+ type NativePresetRule = FormItemRule & Pick<NaiveRule, 'trigger' | 'validator' | 'required' | 'message'>;
13
+ type NativeRuleFactories<T> = { readonly [Key in keyof T]: T[Key] extends ((...args: infer Args) => infer Result) ? (...args: Args) => Result extends readonly NaiveRule[] ? NativePresetRule[] : Result extends NaiveRule ? NativePresetRule : Result : T[Key] };
14
+ /** 运行时保持验证库的工厂对象,只有公开类型在组件包内统一适配。 */
15
+ declare const PRESET_RULES$1: NativeRuleFactories<typeof PRESET_RULES>;
16
+ declare const NAIVE_COMBOS$1: NativeRuleFactories<typeof NAIVE_COMBOS>;
17
+ //#endregion
8
18
  //#region src/components/C_Form/types.d.ts
9
19
  type MaybePromise<T> = T | Promise<T>;
10
20
  type FormRecord = Record<string, unknown>;
@@ -52,6 +62,10 @@ interface FormErrorContext {
52
62
  source: 'initialize' | 'async-options' | 'callback' | 'render' | 'submit';
53
63
  field?: string;
54
64
  }
65
+ /** 组件卸载时取消当前提交,业务请求可直接使用 signal。 */
66
+ interface FormSubmitContext {
67
+ signal: AbortSignal;
68
+ }
55
69
  /**
56
70
  * 标签页配置接口
57
71
  * @description 用于标签页布局的单个标签页配置
@@ -106,7 +120,7 @@ interface DynamicFieldConfig {
106
120
  layout?: {
107
121
  span?: number;
108
122
  };
109
- rules?: FormItemRule[];
123
+ rules?: readonly FormValidationRule[];
110
124
  }
111
125
  /**
112
126
  * 表单项布局配置
@@ -251,7 +265,7 @@ interface FormOption<T extends object = FormRecord> {
251
265
  label?: string;
252
266
  value?: unknown;
253
267
  placeholder?: string;
254
- rules?: FormItemRule[];
268
+ rules?: readonly FormValidationRule[];
255
269
  attrs?: Record<string, unknown>;
256
270
  children?: OptionItem[];
257
271
  show?: boolean;
@@ -269,7 +283,7 @@ interface FormOption<T extends object = FormRecord> {
269
283
  /** 异步数据源:select / cascader / checkbox / radio 的远程选项加载 */
270
284
  asyncOptions?: (formModel: FormModel<T>, context?: AsyncOptionsContext) => Promise<readonly OptionItem[]>;
271
285
  /** 联动校验规则:根据表单数据动态返回校验规则 */
272
- rulesWhen?: (formModel: FormModel<T>) => FormItemRule[];
286
+ rulesWhen?: (formModel: FormModel<T>) => readonly FormValidationRule[];
273
287
  /** 跨字段校验:需要引用多个字段值的验证函数,返回错误消息或 null */
274
288
  crossFieldValidator?: (formModel: FormModel<T>) => MaybePromise<string | null>;
275
289
  }
@@ -361,6 +375,8 @@ interface FormSlots<T extends object = FormRecord> {
361
375
  /** Field-specific named slots are intentionally open-ended. */
362
376
  [slotName: string]: ((props: any) => unknown) | undefined;
363
377
  action?: (props: FormActionSlotProps<T>) => unknown;
378
+ /** 增加业务按钮,保留组件默认的提交、重置和加载管理。 */
379
+ 'action-extra'?: (props: FormActionSlotProps<T>) => unknown;
364
380
  'tab-actions'?: (props: FormTabActionsSlotProps) => unknown;
365
381
  'step-actions'?: (props: FormStepActionsSlotProps) => unknown;
366
382
  }
@@ -436,7 +452,7 @@ interface LayoutCallbacks<T extends object = FormRecord> {
436
452
  onGroupToggle?: (groupKey: string, collapsed: boolean) => void;
437
453
  onGroupReset?: (groupKey: string) => void;
438
454
  onFieldsChange?: (fields: FormOption<T>[]) => void;
439
- onSubmit?: (payload: SubmitEventPayload<T>) => MaybePromise<void>;
455
+ onSubmit?: (payload: SubmitEventPayload<T>, context?: FormSubmitContext) => MaybePromise<void>;
440
456
  onError?: (error: unknown, context: FormErrorContext) => void;
441
457
  }
442
458
  /**
@@ -469,6 +485,10 @@ interface FormConfig<T extends object = FormRecord> extends LayoutCallbacks<T> {
469
485
  submitText?: string;
470
486
  /** 默认重置按钮文案 */
471
487
  resetText?: string;
488
+ /** 提交完成后的提示;默认不显示,由业务明确配置。 */
489
+ submitSuccessText?: string;
490
+ /** 重置完成后的提示;默认不显示。 */
491
+ resetSuccessText?: string;
472
492
  /** 表单模式:create = 新建(默认),edit = 编辑(配合 initialValues 实现回填 + 脏检查) */
473
493
  mode?: FormMode;
474
494
  /** 编辑模式初始值:设置后自动作为脏检查基准 */
@@ -585,8 +605,8 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
585
605
  config?: FormConfig<T>; /** 当前表单实例的自定义渲染器,不污染全局注册表 */
586
606
  renderers?: Record<string, FormRenderer>;
587
607
  } & {
588
- "onUpdate:modelValue"?: ((model: T) => any) | undefined;
589
608
  onSubmit?: ((payload: SubmitEventPayload<T>) => any) | undefined;
609
+ "onUpdate:modelValue"?: ((model: T) => any) | undefined;
590
610
  "onValidate-success"?: ((model: T) => any) | undefined;
591
611
  "onValidate-error"?: ((errors: unknown) => any) | undefined;
592
612
  }> & (typeof globalThis extends {
@@ -631,7 +651,7 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
631
651
  }>) => void;
632
652
  attrs: any;
633
653
  slots: FormSlots<T>;
634
- emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
654
+ emit: ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "update:modelValue", model: T) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
635
655
  }>) => vue.VNode & {
636
656
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
637
657
  };
@@ -761,4 +781,4 @@ type DynamicFormStateType = DynamicFormController;
761
781
  */
762
782
  declare const DYNAMIC_FORM_STATE_KEY: unique symbol;
763
783
  //#endregion
764
- export { LabelPlacement as $, useFormGlobalConfig as A, FieldPathValue as B, FormConfig as C, mergeFormConfig as D, ResolvedFormConfig as E, DynamicFieldConfig as F, FormModel as G, FormErrorContext as H, DynamicFormConfig as I, FormSlots as J, FormOption as K, DynamicFormController as L, CardLayoutConfig as M, ComponentType as N, resolveFormConfig as O, CustomLayoutConfig as P, InlineLayoutConfig as Q, DynamicFormState as R, FORM_GLOBAL_CONFIG_KEY as S, LayoutCallbacks as T, FormInstance as U, FormActionSlotProps as V, FormMode as W, FormTabActionsSlotProps as X, FormStepActionsSlotProps as Y, GridLayoutConfig as Z, UseFormRendererOptions as _, UseFormDirtyReturn as a, SubmitEventPayload as at, useFormRenderer as b, UseCFormOptions as c, useCForm as d, LayoutConfig as et, _default as f, RendererProps as g, FormRendererContext as h, useDynamicFormState as i, StepsLayoutConfig as it, AsyncOptionsContext as j, shouldShowActions as k, defineFormConfig as l, FormRenderer as m, DynamicFormStateType as n, MaybePromise as nt, useFormDirty as o, TabsLayoutConfig as ot, ComponentMap as p, FormRecord as q, FIELD_TYPE_OPTIONS as r, OptionItem as rt, useFormState as s, DYNAMIC_FORM_STATE_KEY as t, LayoutType as tt, defineFormOptions as u, registerRenderer as v, LAYOUTS_WITH_OWN_CONTROLS as w, FORM_DEFAULTS as x, unregisterRenderer as y, FieldPath as z };
784
+ export { InlineLayoutConfig as $, useFormGlobalConfig as A, FieldPathValue as B, FormConfig as C, mergeFormConfig as D, ResolvedFormConfig as E, DynamicFieldConfig as F, FormModel as G, FormErrorContext as H, DynamicFormConfig as I, FormSlots as J, FormOption as K, DynamicFormController as L, CardLayoutConfig as M, ComponentType as N, resolveFormConfig as O, CustomLayoutConfig as P, GridLayoutConfig as Q, DynamicFormState as R, FORM_GLOBAL_CONFIG_KEY as S, LayoutCallbacks as T, FormInstance as U, FormActionSlotProps as V, FormMode as W, FormSubmitContext as X, FormStepActionsSlotProps as Y, FormTabActionsSlotProps as Z, UseFormRendererOptions as _, UseFormDirtyReturn as a, StepsLayoutConfig as at, useFormRenderer as b, UseCFormOptions as c, FormValidationRule as ct, useCForm as d, RuleSpec$1 as dt, LabelPlacement as et, _default as f, SPEC_RULES as ft, RendererProps as g, FormRendererContext as h, useDynamicFormState as i, OptionItem as it, AsyncOptionsContext as j, shouldShowActions as k, defineFormConfig as l, NAIVE_COMBOS$1 as lt, FormRenderer as m, DynamicFormStateType as n, LayoutType as nt, useFormDirty as o, SubmitEventPayload as ot, ComponentMap as p, FormRecord as q, FIELD_TYPE_OPTIONS as r, MaybePromise as rt, useFormState as s, TabsLayoutConfig as st, DYNAMIC_FORM_STATE_KEY as t, LayoutConfig as tt, defineFormOptions as u, PRESET_RULES$1 as ut, registerRenderer as v, LAYOUTS_WITH_OWN_CONTROLS as w, FORM_DEFAULTS as x, unregisterRenderer as y, FieldPath as z };
@@ -259,11 +259,11 @@ declare const __VLS_export: vue.DefineComponent<Props, {
259
259
  onReady?: ((graph: Graph) => any) | undefined;
260
260
  "onData-change"?: ((data: DiagramData) => any) | undefined;
261
261
  }>, {
262
- showToolbar: boolean;
262
+ theme: "light" | "dark";
263
263
  height: string | number;
264
+ showToolbar: boolean;
264
265
  width: string | number;
265
266
  readonly: boolean;
266
- theme: "light" | "dark";
267
267
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
268
268
  declare const _default: typeof __VLS_export;
269
269
  //#endregion
@@ -259,11 +259,11 @@ declare const __VLS_export: vue.DefineComponent<Props, {
259
259
  onReady?: ((graph: Graph) => any) | undefined;
260
260
  "onData-change"?: ((data: DiagramData) => any) | undefined;
261
261
  }>, {
262
- showToolbar: boolean;
262
+ theme: "light" | "dark";
263
263
  height: string | number;
264
+ showToolbar: boolean;
264
265
  width: string | number;
265
266
  readonly: boolean;
266
- theme: "light" | "dark";
267
267
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
268
268
  declare const _default: typeof __VLS_export;
269
269
  //#endregion
@@ -90,8 +90,8 @@ declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {
90
90
  "onImage-error"?: ((item: WaterFallItem) => any) | undefined;
91
91
  }>, {
92
92
  loading: boolean;
93
- gap: number;
94
93
  columns: number;
94
+ gap: number;
95
95
  lazy: boolean;
96
96
  infinite: boolean;
97
97
  skeleton: boolean;
@@ -90,8 +90,8 @@ declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {
90
90
  "onImage-error"?: ((item: WaterFallItem) => any) | undefined;
91
91
  }>, {
92
92
  loading: boolean;
93
- gap: number;
94
93
  columns: number;
94
+ gap: number;
95
95
  lazy: boolean;
96
96
  infinite: boolean;
97
97
  skeleton: boolean;
@@ -51,15 +51,15 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
51
51
  onError?: ((error: Error) => any) | undefined;
52
52
  }>, {
53
53
  size: number;
54
+ color: string;
54
55
  label: string;
55
56
  mode: RenderMode;
56
- color: string;
57
- showBorder: boolean;
58
- showLabel: boolean;
57
+ margin: number;
59
58
  bgColor: string;
60
59
  errorCorrectionLevel: ErrorCorrectionLevel;
61
- margin: number;
62
60
  logo: LogoOptions;
61
+ showBorder: boolean;
62
+ showLabel: boolean;
63
63
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
64
64
  declare const _default: typeof __VLS_export;
65
65
  //#endregion
@@ -51,15 +51,15 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
51
51
  onError?: ((error: Error) => any) | undefined;
52
52
  }>, {
53
53
  size: number;
54
+ color: string;
54
55
  label: string;
55
56
  mode: RenderMode;
56
- color: string;
57
- showBorder: boolean;
58
- showLabel: boolean;
57
+ margin: number;
59
58
  bgColor: string;
60
59
  errorCorrectionLevel: ErrorCorrectionLevel;
61
- margin: number;
62
60
  logo: LogoOptions;
61
+ showBorder: boolean;
62
+ showLabel: boolean;
63
63
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
64
64
  declare const _default: typeof __VLS_export;
65
65
  //#endregion
@@ -83,21 +83,21 @@ declare const __VLS_export: vue.DefineComponent<FormSearchProps, {
83
83
  cleanFn: () => void;
84
84
  changeFoldState: () => void;
85
85
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
86
- "update:modelValue": (params: SearchFormParams) => any;
87
86
  search: (params: SearchFormParams) => any;
87
+ "update:modelValue": (params: SearchFormParams) => any;
88
88
  reset: () => any;
89
89
  "change-params": (params: SearchFormParams) => any;
90
90
  }, string, vue.PublicProps, Readonly<FormSearchProps> & Readonly<{
91
- "onUpdate:modelValue"?: ((params: SearchFormParams) => any) | undefined;
92
91
  onSearch?: ((params: SearchFormParams) => any) | undefined;
92
+ "onUpdate:modelValue"?: ((params: SearchFormParams) => any) | undefined;
93
93
  onReset?: (() => any) | undefined;
94
94
  "onChange-params"?: ((params: SearchFormParams) => any) | undefined;
95
95
  }>, {
96
+ loading: boolean;
96
97
  size: "small" | "medium" | "large";
97
98
  bordered: boolean;
98
99
  formItemList: SearchFormItem[];
99
100
  formParams: SearchFormParams;
100
- loading: boolean;
101
101
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
102
102
  declare const _default: typeof __VLS_export;
103
103
  //#endregion
@@ -82,21 +82,21 @@ declare const __VLS_export: vue.DefineComponent<FormSearchProps, {
82
82
  cleanFn: () => void;
83
83
  changeFoldState: () => void;
84
84
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
85
- "update:modelValue": (params: SearchFormParams) => any;
86
85
  search: (params: SearchFormParams) => any;
86
+ "update:modelValue": (params: SearchFormParams) => any;
87
87
  reset: () => any;
88
88
  "change-params": (params: SearchFormParams) => any;
89
89
  }, string, vue.PublicProps, Readonly<FormSearchProps> & Readonly<{
90
- "onUpdate:modelValue"?: ((params: SearchFormParams) => any) | undefined;
91
90
  onSearch?: ((params: SearchFormParams) => any) | undefined;
91
+ "onUpdate:modelValue"?: ((params: SearchFormParams) => any) | undefined;
92
92
  onReset?: (() => any) | undefined;
93
93
  "onChange-params"?: ((params: SearchFormParams) => any) | undefined;
94
94
  }>, {
95
+ loading: boolean;
95
96
  size: "small" | "medium" | "large";
96
97
  bordered: boolean;
97
98
  formItemList: SearchFormItem[];
98
99
  formParams: SearchFormParams;
99
- loading: boolean;
100
100
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
101
101
  declare const _default: typeof __VLS_export;
102
102
  //#endregion
@@ -92,8 +92,8 @@ interface SignatureEmits {
92
92
  //#endregion
93
93
  //#region src/components/C_Signature/index.vue.d.ts
94
94
  declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
95
- change: (data: SignatureStroke[]) => any;
96
95
  error: (error: Error) => any;
96
+ change: (data: SignatureStroke[]) => any;
97
97
  clear: () => any;
98
98
  "start-draw": () => any;
99
99
  drawing: (point: SignaturePoint) => any;
@@ -101,8 +101,8 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
101
101
  undo: () => any;
102
102
  redo: () => any;
103
103
  }, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
104
- onChange?: ((data: SignatureStroke[]) => any) | undefined;
105
104
  onError?: ((error: Error) => any) | undefined;
105
+ onChange?: ((data: SignatureStroke[]) => any) | undefined;
106
106
  onClear?: (() => any) | undefined;
107
107
  "onStart-draw"?: (() => any) | undefined;
108
108
  onDrawing?: ((point: SignaturePoint) => any) | undefined;
@@ -111,8 +111,8 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
111
111
  onRedo?: (() => any) | undefined;
112
112
  }>, {
113
113
  disabled: boolean;
114
- showToolbar: boolean;
115
114
  height: number | string;
115
+ showToolbar: boolean;
116
116
  width: number | string;
117
117
  readonly: boolean;
118
118
  maxHistory: number;
@@ -92,8 +92,8 @@ interface SignatureEmits {
92
92
  //#endregion
93
93
  //#region src/components/C_Signature/index.vue.d.ts
94
94
  declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
95
- change: (data: SignatureStroke[]) => any;
96
95
  error: (error: Error) => any;
96
+ change: (data: SignatureStroke[]) => any;
97
97
  clear: () => any;
98
98
  "start-draw": () => any;
99
99
  drawing: (point: SignaturePoint) => any;
@@ -101,8 +101,8 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
101
101
  undo: () => any;
102
102
  redo: () => any;
103
103
  }, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
104
- onChange?: ((data: SignatureStroke[]) => any) | undefined;
105
104
  onError?: ((error: Error) => any) | undefined;
105
+ onChange?: ((data: SignatureStroke[]) => any) | undefined;
106
106
  onClear?: (() => any) | undefined;
107
107
  "onStart-draw"?: (() => any) | undefined;
108
108
  onDrawing?: ((point: SignaturePoint) => any) | undefined;
@@ -111,8 +111,8 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
111
111
  onRedo?: (() => any) | undefined;
112
112
  }>, {
113
113
  disabled: boolean;
114
- showToolbar: boolean;
115
114
  height: number | string;
115
+ showToolbar: boolean;
116
116
  width: number | string;
117
117
  readonly: boolean;
118
118
  maxHistory: number;
@@ -66,23 +66,23 @@ type __VLS_Slots = {} & {
66
66
  second?: (props: typeof __VLS_13) => any;
67
67
  };
68
68
  declare const __VLS_base: vue.DefineComponent<Props, SplitPaneExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
69
+ expand: (target: CollapseTarget) => any;
69
70
  resize: (firstSize: number, secondSize: number) => any;
70
71
  collapse: (target: CollapseTarget) => any;
71
- expand: (target: CollapseTarget) => any;
72
72
  "drag-start": (size: number) => any;
73
73
  "drag-end": (size: number) => any;
74
74
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
75
+ onExpand?: ((target: CollapseTarget) => any) | undefined;
75
76
  onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
76
77
  onCollapse?: ((target: CollapseTarget) => any) | undefined;
77
- onExpand?: ((target: CollapseTarget) => any) | undefined;
78
78
  "onDrag-start"?: ((size: number) => any) | undefined;
79
79
  "onDrag-end"?: ((size: number) => any) | undefined;
80
80
  }>, {
81
+ disabled: boolean;
81
82
  direction: SplitDirection;
82
83
  defaultSize: number;
83
84
  minSize: number;
84
85
  maxSize: number;
85
- disabled: boolean;
86
86
  collapsible: boolean;
87
87
  showCollapseButton: boolean;
88
88
  gutterSize: number;