@aspire-ui/element-component-pro 1.0.25 → 1.0.27

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 (37) hide show
  1. package/dist/ProTableForm/CellEditor.vue.d.ts +33 -0
  2. package/dist/ProTableForm/ProTableForm.vue.d.ts +122 -102
  3. package/dist/ProTableForm/index.d.ts +4 -2
  4. package/dist/ProTableForm/types.d.ts +1 -69
  5. package/dist/ProTableForm/useProTableForm.d.ts +55 -0
  6. package/dist/element-component-pro.es.js +1433 -1255
  7. package/dist/element-component-pro.es.js.map +1 -1
  8. package/dist/element-component-pro.umd.js +2 -2
  9. package/dist/element-component-pro.umd.js.map +1 -1
  10. package/dist/index.d.ts +445 -282
  11. package/dist/style.css +1 -1
  12. package/dist/types/index.d.ts +227 -0
  13. package/docs/CollapseContainer.md +100 -0
  14. package/docs/ComponentSetting.md +113 -0
  15. package/docs/ProDescriptions.md +215 -0
  16. package/docs/ProForm.md +879 -0
  17. package/docs/ProTable-Redesign.md +214 -0
  18. package/docs/ProTable.md +556 -0
  19. package/docs/ProTableForm.md +207 -0
  20. package/docs/image.png +0 -0
  21. package/package.json +3 -2
  22. package/src/CollapseContainer/CollapseContainer.vue +1 -1
  23. package/src/ProDescriptions/ProDescriptions.vue +1 -1
  24. package/src/ProForm/FormActions.vue +1 -1
  25. package/src/ProForm/ProForm.vue +1 -1
  26. package/src/ProForm/ProFormItem.vue +1 -1
  27. package/src/ProForm/TreeSelect.vue +1 -1
  28. package/src/ProTable/ProTable.vue +1 -2
  29. package/src/ProTable/TableAction.vue +1 -1
  30. package/src/ProTableForm/CellEditor.vue +192 -0
  31. package/src/ProTableForm/ProTableForm.vue +350 -453
  32. package/src/ProTableForm/TableFormCell.vue +46 -0
  33. package/src/ProTableForm/index.ts +6 -7
  34. package/src/ProTableForm/types.ts +12 -72
  35. package/src/ProTableForm/useProTableForm.ts +442 -0
  36. package/src/index.ts +6 -4
  37. package/src/types/index.ts +241 -0
package/dist/index.d.ts CHANGED
@@ -5,6 +5,7 @@ import { default as ProDescriptions } from './ProDescriptions';
5
5
  import { default as CollapseContainer } from './CollapseContainer';
6
6
  import { ProTableForm } from './ProTableForm';
7
7
  import { useForm } from './ProForm/useForm';
8
+ import { useProTableForm } from './ProTableForm/useProTableForm';
8
9
  import { useDescription } from './ProDescriptions/useDescription';
9
10
  import { useProTable } from './ProTable/useProTable';
10
11
  import { useComponentSetting } from './useComponentSetting';
@@ -13,8 +14,8 @@ export { ProForm, ProFormItem, FormActions, FormattedNumberInput, useForm };
13
14
  export { ProTable, useProTable, TableAction };
14
15
  export { ProDescriptions, useDescription };
15
16
  export { CollapseContainer };
16
- export { ProTableForm };
17
- export type { ProTableFormColumn, ProTableFormFixedRow, ProTableFormProps, ProTableFormActionColumn, } from './ProTableForm/types';
17
+ export { ProTableForm, useProTableForm };
18
+ export type { ProTableFormColumn, ProTableFormColumnChild, ProTableFormProps, ProTableFormBuiltInComponent, ProTableFormActionType, } from './types';
18
19
  export { useComponentSetting };
19
20
  export type { UseComponentSettingReturn } from './useComponentSetting';
20
21
  export type { UseProTableReturn, UseProTablePropsReactive } from './ProTable/useProTable';
@@ -2992,522 +2993,684 @@ declare const _default: {
2992
2993
  inputLimit: boolean;
2993
2994
  }>;
2994
2995
  ProTableForm: import('vue/types/v3-component-public-instance').ComponentPublicInstanceConstructor<import('vue/types/v3-component-public-instance').Vue3Instance<{}, Readonly<import('vue').ExtractPropTypes<{
2996
+ disabled: {
2997
+ type: import('vue').PropType<boolean>;
2998
+ };
2999
+ size: {
3000
+ type: import('vue').PropType<"small" | "medium" | "large">;
3001
+ default: string;
3002
+ };
2995
3003
  bordered: {
2996
3004
  type: import('vue').PropType<boolean>;
2997
3005
  default: boolean;
2998
3006
  };
2999
3007
  modelValue: {
3000
- type: import('vue').PropType<Record<string, unknown>>;
3001
- default: () => {};
3008
+ type: import('vue').PropType<Record<string, unknown>[]>;
3009
+ default: () => never[];
3002
3010
  };
3003
3011
  labelWidth: {
3004
3012
  type: import('vue').PropType<string>;
3005
3013
  default: string;
3006
3014
  };
3015
+ labelPosition: {
3016
+ type: import('vue').PropType<"top" | "left" | "right">;
3017
+ };
3007
3018
  rules: {
3008
3019
  type: import('vue').PropType<Record<string, unknown>>;
3009
3020
  };
3010
3021
  columns: {
3011
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3022
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3012
3023
  required: true;
3013
3024
  };
3014
- actionColumn: {
3015
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3025
+ maxHeight: {
3026
+ type: import('vue').PropType<string | number>;
3016
3027
  };
3017
- fixedRows: {
3018
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3019
- required: true;
3028
+ height: {
3029
+ type: import('vue').PropType<string | number>;
3020
3030
  };
3021
- competitorsKey: {
3022
- type: import('vue').PropType<string>;
3023
- default: string;
3031
+ spanMethod: {
3032
+ type: import('vue').PropType<(params: {
3033
+ row: Record<string, unknown>;
3034
+ column: {
3035
+ property: string;
3036
+ label: string;
3037
+ };
3038
+ rowIndex: number;
3039
+ columnIndex: number;
3040
+ }) => [number, number] | {
3041
+ rowspan: number;
3042
+ colspan: number;
3043
+ } | void>;
3024
3044
  };
3025
- competitorNameKey: {
3026
- type: import('vue').PropType<string>;
3027
- default: string;
3045
+ defaultExpandAll: {
3046
+ type: import('vue').PropType<boolean>;
3047
+ default: boolean;
3028
3048
  };
3029
- firstColumnTitle: {
3030
- type: import('vue').PropType<string>;
3031
- default: string;
3049
+ expandRowKeys: {
3050
+ type: import('vue').PropType<(string | number)[]>;
3032
3051
  };
3033
- competitorNamePlaceholder: {
3034
- type: import('vue').PropType<string>;
3035
- default: string;
3052
+ tableProps: {
3053
+ type: import('vue').PropType<Record<string, unknown>>;
3036
3054
  };
3037
- metricPlaceholder: {
3038
- type: import('vue').PropType<string>;
3039
- default: string;
3055
+ rowClassName: {
3056
+ type: import('vue').PropType<string | ((params: {
3057
+ row: Record<string, unknown>;
3058
+ rowIndex: number;
3059
+ }) => string)>;
3040
3060
  };
3041
- addCompetitorText: {
3061
+ metricPlaceholder: {
3042
3062
  type: import('vue').PropType<string>;
3043
3063
  default: string;
3044
3064
  };
3045
- minCompetitors: {
3046
- type: import('vue').PropType<number>;
3047
- default: number;
3048
- };
3049
- firstColMinWidth: {
3065
+ minRows: {
3050
3066
  type: import('vue').PropType<number>;
3051
3067
  default: number;
3052
3068
  };
3053
- actionWidth: {
3054
- type: import('vue').PropType<number>;
3055
- default: number;
3069
+ formSize: {
3070
+ type: import('vue').PropType<"small" | "medium" | "large">;
3056
3071
  };
3057
- showFirstColumn: {
3072
+ stripe: {
3058
3073
  type: import('vue').PropType<boolean>;
3059
3074
  default: boolean;
3060
3075
  };
3061
- showActionColumn: {
3062
- type: import('vue').PropType<boolean>;
3063
- default: boolean;
3076
+ onRowClick: {
3077
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3078
+ };
3079
+ onRowDblclick: {
3080
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3081
+ };
3082
+ onSortChange: {
3083
+ type: import('vue').PropType<(sortInfo: {
3084
+ prop: string;
3085
+ order: string;
3086
+ }) => void>;
3087
+ };
3088
+ onExpandChange: {
3089
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3090
+ };
3091
+ formProps: {
3092
+ type: import('vue').PropType<Record<string, unknown>>;
3064
3093
  };
3065
3094
  }>>, Readonly<import('vue').ExtractPropTypes<{
3095
+ disabled: {
3096
+ type: import('vue').PropType<boolean>;
3097
+ };
3098
+ size: {
3099
+ type: import('vue').PropType<"small" | "medium" | "large">;
3100
+ default: string;
3101
+ };
3066
3102
  bordered: {
3067
3103
  type: import('vue').PropType<boolean>;
3068
3104
  default: boolean;
3069
3105
  };
3070
3106
  modelValue: {
3071
- type: import('vue').PropType<Record<string, unknown>>;
3072
- default: () => {};
3107
+ type: import('vue').PropType<Record<string, unknown>[]>;
3108
+ default: () => never[];
3073
3109
  };
3074
3110
  labelWidth: {
3075
3111
  type: import('vue').PropType<string>;
3076
3112
  default: string;
3077
3113
  };
3114
+ labelPosition: {
3115
+ type: import('vue').PropType<"top" | "left" | "right">;
3116
+ };
3078
3117
  rules: {
3079
3118
  type: import('vue').PropType<Record<string, unknown>>;
3080
3119
  };
3081
3120
  columns: {
3082
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3121
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3083
3122
  required: true;
3084
3123
  };
3085
- actionColumn: {
3086
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3124
+ maxHeight: {
3125
+ type: import('vue').PropType<string | number>;
3087
3126
  };
3088
- fixedRows: {
3089
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3090
- required: true;
3127
+ height: {
3128
+ type: import('vue').PropType<string | number>;
3091
3129
  };
3092
- competitorsKey: {
3093
- type: import('vue').PropType<string>;
3094
- default: string;
3130
+ spanMethod: {
3131
+ type: import('vue').PropType<(params: {
3132
+ row: Record<string, unknown>;
3133
+ column: {
3134
+ property: string;
3135
+ label: string;
3136
+ };
3137
+ rowIndex: number;
3138
+ columnIndex: number;
3139
+ }) => [number, number] | {
3140
+ rowspan: number;
3141
+ colspan: number;
3142
+ } | void>;
3095
3143
  };
3096
- competitorNameKey: {
3097
- type: import('vue').PropType<string>;
3098
- default: string;
3144
+ defaultExpandAll: {
3145
+ type: import('vue').PropType<boolean>;
3146
+ default: boolean;
3099
3147
  };
3100
- firstColumnTitle: {
3101
- type: import('vue').PropType<string>;
3102
- default: string;
3148
+ expandRowKeys: {
3149
+ type: import('vue').PropType<(string | number)[]>;
3103
3150
  };
3104
- competitorNamePlaceholder: {
3105
- type: import('vue').PropType<string>;
3106
- default: string;
3151
+ tableProps: {
3152
+ type: import('vue').PropType<Record<string, unknown>>;
3107
3153
  };
3108
- metricPlaceholder: {
3109
- type: import('vue').PropType<string>;
3110
- default: string;
3154
+ rowClassName: {
3155
+ type: import('vue').PropType<string | ((params: {
3156
+ row: Record<string, unknown>;
3157
+ rowIndex: number;
3158
+ }) => string)>;
3111
3159
  };
3112
- addCompetitorText: {
3160
+ metricPlaceholder: {
3113
3161
  type: import('vue').PropType<string>;
3114
3162
  default: string;
3115
3163
  };
3116
- minCompetitors: {
3117
- type: import('vue').PropType<number>;
3118
- default: number;
3119
- };
3120
- firstColMinWidth: {
3164
+ minRows: {
3121
3165
  type: import('vue').PropType<number>;
3122
3166
  default: number;
3123
3167
  };
3124
- actionWidth: {
3125
- type: import('vue').PropType<number>;
3126
- default: number;
3168
+ formSize: {
3169
+ type: import('vue').PropType<"small" | "medium" | "large">;
3127
3170
  };
3128
- showFirstColumn: {
3171
+ stripe: {
3129
3172
  type: import('vue').PropType<boolean>;
3130
3173
  default: boolean;
3131
3174
  };
3132
- showActionColumn: {
3133
- type: import('vue').PropType<boolean>;
3134
- default: boolean;
3175
+ onRowClick: {
3176
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3177
+ };
3178
+ onRowDblclick: {
3179
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3180
+ };
3181
+ onSortChange: {
3182
+ type: import('vue').PropType<(sortInfo: {
3183
+ prop: string;
3184
+ order: string;
3185
+ }) => void>;
3186
+ };
3187
+ onExpandChange: {
3188
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3189
+ };
3190
+ formProps: {
3191
+ type: import('vue').PropType<Record<string, unknown>>;
3135
3192
  };
3136
3193
  }>>, {
3137
- "update:modelValue": (v: Record<string, unknown>) => void;
3194
+ "update:modelValue": (v: Record<string, unknown>[]) => void;
3195
+ "add-row": () => void;
3196
+ "remove-row": (index: number) => void;
3197
+ register: (action: Record<string, unknown>) => void;
3138
3198
  }, {
3199
+ size: "medium" | "small" | "large";
3139
3200
  bordered: boolean;
3140
- modelValue: Record<string, unknown>;
3201
+ modelValue: Record<string, unknown>[];
3141
3202
  labelWidth: string;
3142
- competitorsKey: string;
3143
- competitorNameKey: string;
3144
- firstColumnTitle: string;
3145
- competitorNamePlaceholder: string;
3203
+ defaultExpandAll: boolean;
3146
3204
  metricPlaceholder: string;
3147
- addCompetitorText: string;
3148
- minCompetitors: number;
3149
- firstColMinWidth: number;
3150
- actionWidth: number;
3151
- showFirstColumn: boolean;
3152
- showActionColumn: boolean;
3205
+ minRows: number;
3206
+ stripe: boolean;
3153
3207
  }, true, import('vue').ComponentOptionsBase<any, any, any, any, any, any, any, any, any, any>> & Readonly<Readonly<import('vue').ExtractPropTypes<{
3208
+ disabled: {
3209
+ type: import('vue').PropType<boolean>;
3210
+ };
3211
+ size: {
3212
+ type: import('vue').PropType<"small" | "medium" | "large">;
3213
+ default: string;
3214
+ };
3154
3215
  bordered: {
3155
3216
  type: import('vue').PropType<boolean>;
3156
3217
  default: boolean;
3157
3218
  };
3158
3219
  modelValue: {
3159
- type: import('vue').PropType<Record<string, unknown>>;
3160
- default: () => {};
3220
+ type: import('vue').PropType<Record<string, unknown>[]>;
3221
+ default: () => never[];
3161
3222
  };
3162
3223
  labelWidth: {
3163
3224
  type: import('vue').PropType<string>;
3164
3225
  default: string;
3165
3226
  };
3227
+ labelPosition: {
3228
+ type: import('vue').PropType<"top" | "left" | "right">;
3229
+ };
3166
3230
  rules: {
3167
3231
  type: import('vue').PropType<Record<string, unknown>>;
3168
3232
  };
3169
3233
  columns: {
3170
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3234
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3171
3235
  required: true;
3172
3236
  };
3173
- actionColumn: {
3174
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3237
+ maxHeight: {
3238
+ type: import('vue').PropType<string | number>;
3175
3239
  };
3176
- fixedRows: {
3177
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3178
- required: true;
3240
+ height: {
3241
+ type: import('vue').PropType<string | number>;
3179
3242
  };
3180
- competitorsKey: {
3181
- type: import('vue').PropType<string>;
3182
- default: string;
3243
+ spanMethod: {
3244
+ type: import('vue').PropType<(params: {
3245
+ row: Record<string, unknown>;
3246
+ column: {
3247
+ property: string;
3248
+ label: string;
3249
+ };
3250
+ rowIndex: number;
3251
+ columnIndex: number;
3252
+ }) => [number, number] | {
3253
+ rowspan: number;
3254
+ colspan: number;
3255
+ } | void>;
3183
3256
  };
3184
- competitorNameKey: {
3185
- type: import('vue').PropType<string>;
3186
- default: string;
3257
+ defaultExpandAll: {
3258
+ type: import('vue').PropType<boolean>;
3259
+ default: boolean;
3187
3260
  };
3188
- firstColumnTitle: {
3189
- type: import('vue').PropType<string>;
3190
- default: string;
3261
+ expandRowKeys: {
3262
+ type: import('vue').PropType<(string | number)[]>;
3191
3263
  };
3192
- competitorNamePlaceholder: {
3193
- type: import('vue').PropType<string>;
3194
- default: string;
3264
+ tableProps: {
3265
+ type: import('vue').PropType<Record<string, unknown>>;
3195
3266
  };
3196
- metricPlaceholder: {
3197
- type: import('vue').PropType<string>;
3198
- default: string;
3267
+ rowClassName: {
3268
+ type: import('vue').PropType<string | ((params: {
3269
+ row: Record<string, unknown>;
3270
+ rowIndex: number;
3271
+ }) => string)>;
3199
3272
  };
3200
- addCompetitorText: {
3273
+ metricPlaceholder: {
3201
3274
  type: import('vue').PropType<string>;
3202
3275
  default: string;
3203
3276
  };
3204
- minCompetitors: {
3277
+ minRows: {
3205
3278
  type: import('vue').PropType<number>;
3206
3279
  default: number;
3207
3280
  };
3208
- firstColMinWidth: {
3209
- type: import('vue').PropType<number>;
3210
- default: number;
3211
- };
3212
- actionWidth: {
3213
- type: import('vue').PropType<number>;
3214
- default: number;
3281
+ formSize: {
3282
+ type: import('vue').PropType<"small" | "medium" | "large">;
3215
3283
  };
3216
- showFirstColumn: {
3284
+ stripe: {
3217
3285
  type: import('vue').PropType<boolean>;
3218
3286
  default: boolean;
3219
3287
  };
3220
- showActionColumn: {
3221
- type: import('vue').PropType<boolean>;
3222
- default: boolean;
3288
+ onRowClick: {
3289
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3290
+ };
3291
+ onRowDblclick: {
3292
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3293
+ };
3294
+ onSortChange: {
3295
+ type: import('vue').PropType<(sortInfo: {
3296
+ prop: string;
3297
+ order: string;
3298
+ }) => void>;
3299
+ };
3300
+ onExpandChange: {
3301
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3302
+ };
3303
+ formProps: {
3304
+ type: import('vue').PropType<Record<string, unknown>>;
3223
3305
  };
3224
3306
  }>>> & import('vue').ShallowUnwrapRef<{
3225
3307
  validate: () => Promise<boolean>;
3226
3308
  clearValidate: (propsArg?: string | string[]) => void;
3227
- addCompetitor: () => void;
3228
- removeCompetitor: (index: number) => void;
3309
+ addRow: () => void;
3310
+ removeRow: (index: number) => void;
3311
+ getRows: () => Record<string, unknown>[];
3312
+ getRowCount: () => number;
3313
+ getTable: () => {
3314
+ clearSelection: () => void;
3315
+ } | null;
3316
+ getModelValue: () => Record<string, unknown>[];
3317
+ setModelValue: (val: Record<string, unknown>[]) => void;
3318
+ getFormRef: () => import('./types').FormInstance | null;
3229
3319
  }> & import('vue/types/v3-component-options').ExtractComputedReturns<{}> & import('vue').ComponentCustomProperties & Readonly<import('vue').ExtractPropTypes<{
3320
+ disabled: {
3321
+ type: import('vue').PropType<boolean>;
3322
+ };
3323
+ size: {
3324
+ type: import('vue').PropType<"small" | "medium" | "large">;
3325
+ default: string;
3326
+ };
3230
3327
  bordered: {
3231
3328
  type: import('vue').PropType<boolean>;
3232
3329
  default: boolean;
3233
3330
  };
3234
3331
  modelValue: {
3235
- type: import('vue').PropType<Record<string, unknown>>;
3236
- default: () => {};
3332
+ type: import('vue').PropType<Record<string, unknown>[]>;
3333
+ default: () => never[];
3237
3334
  };
3238
3335
  labelWidth: {
3239
3336
  type: import('vue').PropType<string>;
3240
3337
  default: string;
3241
3338
  };
3339
+ labelPosition: {
3340
+ type: import('vue').PropType<"top" | "left" | "right">;
3341
+ };
3242
3342
  rules: {
3243
3343
  type: import('vue').PropType<Record<string, unknown>>;
3244
3344
  };
3245
3345
  columns: {
3246
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3346
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3247
3347
  required: true;
3248
3348
  };
3249
- actionColumn: {
3250
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3349
+ maxHeight: {
3350
+ type: import('vue').PropType<string | number>;
3251
3351
  };
3252
- fixedRows: {
3253
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3254
- required: true;
3352
+ height: {
3353
+ type: import('vue').PropType<string | number>;
3255
3354
  };
3256
- competitorsKey: {
3257
- type: import('vue').PropType<string>;
3258
- default: string;
3355
+ spanMethod: {
3356
+ type: import('vue').PropType<(params: {
3357
+ row: Record<string, unknown>;
3358
+ column: {
3359
+ property: string;
3360
+ label: string;
3361
+ };
3362
+ rowIndex: number;
3363
+ columnIndex: number;
3364
+ }) => [number, number] | {
3365
+ rowspan: number;
3366
+ colspan: number;
3367
+ } | void>;
3259
3368
  };
3260
- competitorNameKey: {
3261
- type: import('vue').PropType<string>;
3262
- default: string;
3369
+ defaultExpandAll: {
3370
+ type: import('vue').PropType<boolean>;
3371
+ default: boolean;
3263
3372
  };
3264
- firstColumnTitle: {
3265
- type: import('vue').PropType<string>;
3266
- default: string;
3373
+ expandRowKeys: {
3374
+ type: import('vue').PropType<(string | number)[]>;
3267
3375
  };
3268
- competitorNamePlaceholder: {
3269
- type: import('vue').PropType<string>;
3270
- default: string;
3376
+ tableProps: {
3377
+ type: import('vue').PropType<Record<string, unknown>>;
3271
3378
  };
3272
- metricPlaceholder: {
3273
- type: import('vue').PropType<string>;
3274
- default: string;
3379
+ rowClassName: {
3380
+ type: import('vue').PropType<string | ((params: {
3381
+ row: Record<string, unknown>;
3382
+ rowIndex: number;
3383
+ }) => string)>;
3275
3384
  };
3276
- addCompetitorText: {
3385
+ metricPlaceholder: {
3277
3386
  type: import('vue').PropType<string>;
3278
3387
  default: string;
3279
3388
  };
3280
- minCompetitors: {
3281
- type: import('vue').PropType<number>;
3282
- default: number;
3283
- };
3284
- firstColMinWidth: {
3389
+ minRows: {
3285
3390
  type: import('vue').PropType<number>;
3286
3391
  default: number;
3287
3392
  };
3288
- actionWidth: {
3289
- type: import('vue').PropType<number>;
3290
- default: number;
3393
+ formSize: {
3394
+ type: import('vue').PropType<"small" | "medium" | "large">;
3291
3395
  };
3292
- showFirstColumn: {
3396
+ stripe: {
3293
3397
  type: import('vue').PropType<boolean>;
3294
3398
  default: boolean;
3295
3399
  };
3296
- showActionColumn: {
3297
- type: import('vue').PropType<boolean>;
3298
- default: boolean;
3400
+ onRowClick: {
3401
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3402
+ };
3403
+ onRowDblclick: {
3404
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3405
+ };
3406
+ onSortChange: {
3407
+ type: import('vue').PropType<(sortInfo: {
3408
+ prop: string;
3409
+ order: string;
3410
+ }) => void>;
3411
+ };
3412
+ onExpandChange: {
3413
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3414
+ };
3415
+ formProps: {
3416
+ type: import('vue').PropType<Record<string, unknown>>;
3299
3417
  };
3300
3418
  }>>> & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
3419
+ disabled: {
3420
+ type: import('vue').PropType<boolean>;
3421
+ };
3422
+ size: {
3423
+ type: import('vue').PropType<"small" | "medium" | "large">;
3424
+ default: string;
3425
+ };
3301
3426
  bordered: {
3302
3427
  type: import('vue').PropType<boolean>;
3303
3428
  default: boolean;
3304
3429
  };
3305
3430
  modelValue: {
3306
- type: import('vue').PropType<Record<string, unknown>>;
3307
- default: () => {};
3431
+ type: import('vue').PropType<Record<string, unknown>[]>;
3432
+ default: () => never[];
3308
3433
  };
3309
3434
  labelWidth: {
3310
3435
  type: import('vue').PropType<string>;
3311
3436
  default: string;
3312
3437
  };
3438
+ labelPosition: {
3439
+ type: import('vue').PropType<"top" | "left" | "right">;
3440
+ };
3313
3441
  rules: {
3314
3442
  type: import('vue').PropType<Record<string, unknown>>;
3315
3443
  };
3316
3444
  columns: {
3317
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3445
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3318
3446
  required: true;
3319
3447
  };
3320
- actionColumn: {
3321
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3448
+ maxHeight: {
3449
+ type: import('vue').PropType<string | number>;
3322
3450
  };
3323
- fixedRows: {
3324
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3325
- required: true;
3451
+ height: {
3452
+ type: import('vue').PropType<string | number>;
3326
3453
  };
3327
- competitorsKey: {
3328
- type: import('vue').PropType<string>;
3329
- default: string;
3454
+ spanMethod: {
3455
+ type: import('vue').PropType<(params: {
3456
+ row: Record<string, unknown>;
3457
+ column: {
3458
+ property: string;
3459
+ label: string;
3460
+ };
3461
+ rowIndex: number;
3462
+ columnIndex: number;
3463
+ }) => [number, number] | {
3464
+ rowspan: number;
3465
+ colspan: number;
3466
+ } | void>;
3330
3467
  };
3331
- competitorNameKey: {
3332
- type: import('vue').PropType<string>;
3333
- default: string;
3468
+ defaultExpandAll: {
3469
+ type: import('vue').PropType<boolean>;
3470
+ default: boolean;
3334
3471
  };
3335
- firstColumnTitle: {
3336
- type: import('vue').PropType<string>;
3337
- default: string;
3472
+ expandRowKeys: {
3473
+ type: import('vue').PropType<(string | number)[]>;
3338
3474
  };
3339
- competitorNamePlaceholder: {
3340
- type: import('vue').PropType<string>;
3341
- default: string;
3475
+ tableProps: {
3476
+ type: import('vue').PropType<Record<string, unknown>>;
3342
3477
  };
3343
- metricPlaceholder: {
3344
- type: import('vue').PropType<string>;
3345
- default: string;
3478
+ rowClassName: {
3479
+ type: import('vue').PropType<string | ((params: {
3480
+ row: Record<string, unknown>;
3481
+ rowIndex: number;
3482
+ }) => string)>;
3346
3483
  };
3347
- addCompetitorText: {
3484
+ metricPlaceholder: {
3348
3485
  type: import('vue').PropType<string>;
3349
3486
  default: string;
3350
3487
  };
3351
- minCompetitors: {
3488
+ minRows: {
3352
3489
  type: import('vue').PropType<number>;
3353
3490
  default: number;
3354
3491
  };
3355
- firstColMinWidth: {
3356
- type: import('vue').PropType<number>;
3357
- default: number;
3358
- };
3359
- actionWidth: {
3360
- type: import('vue').PropType<number>;
3361
- default: number;
3492
+ formSize: {
3493
+ type: import('vue').PropType<"small" | "medium" | "large">;
3362
3494
  };
3363
- showFirstColumn: {
3495
+ stripe: {
3364
3496
  type: import('vue').PropType<boolean>;
3365
3497
  default: boolean;
3366
3498
  };
3367
- showActionColumn: {
3368
- type: import('vue').PropType<boolean>;
3369
- default: boolean;
3499
+ onRowClick: {
3500
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3501
+ };
3502
+ onRowDblclick: {
3503
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3504
+ };
3505
+ onSortChange: {
3506
+ type: import('vue').PropType<(sortInfo: {
3507
+ prop: string;
3508
+ order: string;
3509
+ }) => void>;
3510
+ };
3511
+ onExpandChange: {
3512
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3513
+ };
3514
+ formProps: {
3515
+ type: import('vue').PropType<Record<string, unknown>>;
3370
3516
  };
3371
3517
  }>>, {
3372
3518
  validate: () => Promise<boolean>;
3373
3519
  clearValidate: (propsArg?: string | string[]) => void;
3374
- addCompetitor: () => void;
3375
- removeCompetitor: (index: number) => void;
3520
+ addRow: () => void;
3521
+ removeRow: (index: number) => void;
3522
+ getRows: () => Record<string, unknown>[];
3523
+ getRowCount: () => number;
3524
+ getTable: () => {
3525
+ clearSelection: () => void;
3526
+ } | null;
3527
+ getModelValue: () => Record<string, unknown>[];
3528
+ setModelValue: (val: Record<string, unknown>[]) => void;
3529
+ getFormRef: () => import('./types').FormInstance | null;
3376
3530
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
3377
- "update:modelValue": (v: Record<string, unknown>) => void;
3531
+ "update:modelValue": (v: Record<string, unknown>[]) => void;
3532
+ "add-row": () => void;
3533
+ "remove-row": (index: number) => void;
3534
+ register: (action: Record<string, unknown>) => void;
3378
3535
  }, string, {
3536
+ size: "medium" | "small" | "large";
3379
3537
  bordered: boolean;
3380
- modelValue: Record<string, unknown>;
3538
+ modelValue: Record<string, unknown>[];
3381
3539
  labelWidth: string;
3382
- competitorsKey: string;
3383
- competitorNameKey: string;
3384
- firstColumnTitle: string;
3385
- competitorNamePlaceholder: string;
3540
+ defaultExpandAll: boolean;
3386
3541
  metricPlaceholder: string;
3387
- addCompetitorText: string;
3388
- minCompetitors: number;
3389
- firstColMinWidth: number;
3390
- actionWidth: number;
3391
- showFirstColumn: boolean;
3392
- showActionColumn: boolean;
3542
+ minRows: number;
3543
+ stripe: boolean;
3393
3544
  }> & {
3394
3545
  props: {
3546
+ disabled: {
3547
+ type: import('vue').PropType<boolean>;
3548
+ };
3549
+ size: {
3550
+ type: import('vue').PropType<"small" | "medium" | "large">;
3551
+ default: string;
3552
+ };
3395
3553
  bordered: {
3396
3554
  type: import('vue').PropType<boolean>;
3397
3555
  default: boolean;
3398
3556
  };
3399
3557
  modelValue: {
3400
- type: import('vue').PropType<Record<string, unknown>>;
3401
- default: () => {};
3558
+ type: import('vue').PropType<Record<string, unknown>[]>;
3559
+ default: () => never[];
3402
3560
  };
3403
3561
  labelWidth: {
3404
3562
  type: import('vue').PropType<string>;
3405
3563
  default: string;
3406
3564
  };
3565
+ labelPosition: {
3566
+ type: import('vue').PropType<"top" | "left" | "right">;
3567
+ };
3407
3568
  rules: {
3408
3569
  type: import('vue').PropType<Record<string, unknown>>;
3409
3570
  };
3410
3571
  columns: {
3411
- type: import('vue').PropType<import('./ProTableForm').ProTableFormColumn[]>;
3572
+ type: import('vue').PropType<import('./types').ProTableFormColumn[]>;
3412
3573
  required: true;
3413
3574
  };
3414
- actionColumn: {
3415
- type: import('vue').PropType<import('./ProTableForm').ProTableFormActionColumn>;
3575
+ maxHeight: {
3576
+ type: import('vue').PropType<string | number>;
3416
3577
  };
3417
- fixedRows: {
3418
- type: import('vue').PropType<import('./ProTableForm').ProTableFormFixedRow[]>;
3419
- required: true;
3578
+ height: {
3579
+ type: import('vue').PropType<string | number>;
3420
3580
  };
3421
- competitorsKey: {
3422
- type: import('vue').PropType<string>;
3423
- default: string;
3581
+ spanMethod: {
3582
+ type: import('vue').PropType<(params: {
3583
+ row: Record<string, unknown>;
3584
+ column: {
3585
+ property: string;
3586
+ label: string;
3587
+ };
3588
+ rowIndex: number;
3589
+ columnIndex: number;
3590
+ }) => [number, number] | {
3591
+ rowspan: number;
3592
+ colspan: number;
3593
+ } | void>;
3424
3594
  };
3425
- competitorNameKey: {
3426
- type: import('vue').PropType<string>;
3427
- default: string;
3595
+ defaultExpandAll: {
3596
+ type: import('vue').PropType<boolean>;
3597
+ default: boolean;
3428
3598
  };
3429
- firstColumnTitle: {
3430
- type: import('vue').PropType<string>;
3431
- default: string;
3599
+ expandRowKeys: {
3600
+ type: import('vue').PropType<(string | number)[]>;
3432
3601
  };
3433
- competitorNamePlaceholder: {
3434
- type: import('vue').PropType<string>;
3435
- default: string;
3602
+ tableProps: {
3603
+ type: import('vue').PropType<Record<string, unknown>>;
3436
3604
  };
3437
- metricPlaceholder: {
3438
- type: import('vue').PropType<string>;
3439
- default: string;
3605
+ rowClassName: {
3606
+ type: import('vue').PropType<string | ((params: {
3607
+ row: Record<string, unknown>;
3608
+ rowIndex: number;
3609
+ }) => string)>;
3440
3610
  };
3441
- addCompetitorText: {
3611
+ metricPlaceholder: {
3442
3612
  type: import('vue').PropType<string>;
3443
3613
  default: string;
3444
3614
  };
3445
- minCompetitors: {
3446
- type: import('vue').PropType<number>;
3447
- default: number;
3448
- };
3449
- firstColMinWidth: {
3615
+ minRows: {
3450
3616
  type: import('vue').PropType<number>;
3451
3617
  default: number;
3452
3618
  };
3453
- actionWidth: {
3454
- type: import('vue').PropType<number>;
3455
- default: number;
3619
+ formSize: {
3620
+ type: import('vue').PropType<"small" | "medium" | "large">;
3456
3621
  };
3457
- showFirstColumn: {
3622
+ stripe: {
3458
3623
  type: import('vue').PropType<boolean>;
3459
3624
  default: boolean;
3460
3625
  };
3461
- showActionColumn: {
3462
- type: import('vue').PropType<boolean>;
3463
- default: boolean;
3626
+ onRowClick: {
3627
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3628
+ };
3629
+ onRowDblclick: {
3630
+ type: import('vue').PropType<(row: Record<string, unknown>, event: Event) => void>;
3631
+ };
3632
+ onSortChange: {
3633
+ type: import('vue').PropType<(sortInfo: {
3634
+ prop: string;
3635
+ order: string;
3636
+ }) => void>;
3637
+ };
3638
+ onExpandChange: {
3639
+ type: import('vue').PropType<(row: Record<string, unknown>, expanded: boolean) => void>;
3640
+ };
3641
+ formProps: {
3642
+ type: import('vue').PropType<Record<string, unknown>>;
3464
3643
  };
3465
3644
  };
3466
3645
  } & (new () => {
3467
- $scopedSlots: Partial<Record<string, (_: {
3468
- column: import('./ProTableForm').ProTableFormColumn;
3469
- }) => any>> & Partial<Record<string, (_: {
3470
- column: import('./ProTableForm').ProTableFormColumn;
3646
+ $scopedSlots: Partial<Record<`header-${string}`, (_: {
3647
+ column: import('./types').ProTableFormColumn & {
3648
+ _key: string;
3649
+ };
3650
+ }) => any>> & Partial<Record<`header-${string}`, (_: {
3651
+ column: import('./types').ProTableFormColumnChild;
3652
+ }) => any>> & Partial<Record<`cell-${string}`, (_: {
3653
+ column: import('./types').ProTableFormColumnChild;
3471
3654
  row: any;
3655
+ index: any;
3472
3656
  value: unknown;
3473
3657
  updateValue: (v: unknown) => void;
3474
- }) => any>> & Partial<Record<string, (_: {
3475
- column: import('./ProTableForm').ProTableFormColumn;
3658
+ }) => any>> & Partial<Record<`header-${string}`, (_: {
3659
+ column: import('./types').ProTableFormColumn & {
3660
+ _key: string;
3661
+ };
3662
+ }) => any>> & Partial<Record<`cell-${string}`, (_: {
3663
+ column: import('./types').ProTableFormColumn & {
3664
+ _key: string;
3665
+ };
3476
3666
  row: any;
3667
+ index: any;
3477
3668
  value: unknown;
3478
3669
  updateValue: (v: unknown) => void;
3479
3670
  }) => any>> & {
3480
- firstColumnHeader?(_: {}): any;
3481
- firstColumn?(_: {
3482
- row: {
3483
- _type: "fixed";
3484
- rowKey: string;
3485
- rowLabel: string;
3486
- };
3487
- rowType: "fixed";
3488
- rowKey: string;
3489
- rowLabel: string;
3490
- rowIndex?: undefined;
3491
- value?: undefined;
3492
- updateValue?: undefined;
3493
- } | {
3494
- row: {
3495
- _type: "competitor";
3496
- _index: number;
3497
- };
3498
- rowType: "competitor";
3499
- rowIndex: number;
3500
- value: string;
3501
- updateValue: (v: string) => void;
3502
- rowKey?: undefined;
3503
- rowLabel?: undefined;
3504
- }): any;
3505
- actionHeader?(_: {}): any;
3506
3671
  action?(_: {
3507
- row: any;
3508
- canDelete: boolean;
3509
- addCompetitor: () => void;
3510
- removeCompetitor: (index: number) => void;
3672
+ addRow: () => void;
3673
+ removeRow: (index: number) => void;
3511
3674
  }): any;
3512
3675
  };
3513
3676
  });