el-plus 0.0.18 → 0.0.20

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 (169) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +327 -200
  4. package/dist/index.full.min.js +1 -1
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +1 -1
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +326 -200
  9. package/es/components/date-picker-range/index.d.ts +3 -3
  10. package/es/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
  11. package/es/components/form/src/form-item-vue.d.ts +5 -2
  12. package/es/components/form/src/form-item.d.ts +2 -1
  13. package/es/components/form/src/form-item.mjs +2 -2
  14. package/es/components/form/src/form-item.mjs.map +1 -1
  15. package/es/components/form/src/hooks/use-form-item.mjs +3 -1
  16. package/es/components/form/src/hooks/use-form-item.mjs.map +1 -1
  17. package/es/components/header/index.d.ts +6 -6
  18. package/es/components/header/src/header.d.ts +1 -1
  19. package/es/components/header/src/header.mjs.map +1 -1
  20. package/es/components/header/src/header.vue.d.ts +3 -3
  21. package/es/components/header/src/use-header.mjs +4 -7
  22. package/es/components/header/src/use-header.mjs.map +1 -1
  23. package/es/components/index.d.ts +1 -0
  24. package/es/components/index.mjs +2 -0
  25. package/es/components/index.mjs.map +1 -1
  26. package/es/components/input/style/css.d.ts +1 -1
  27. package/es/components/input/style/css.mjs +1 -1
  28. package/es/components/input/style/index.d.ts +1 -1
  29. package/es/components/input/style/index.mjs +1 -1
  30. package/es/components/link/index.d.ts +118 -0
  31. package/es/components/link/index.mjs +8 -0
  32. package/es/components/link/index.mjs.map +1 -0
  33. package/es/components/link/src/link.d.ts +30 -0
  34. package/es/components/link/src/link.mjs +19 -0
  35. package/es/components/link/src/link.mjs.map +1 -0
  36. package/es/components/link/src/link.vue.d.ts +73 -0
  37. package/es/components/link/src/link.vue.mjs +6 -0
  38. package/es/components/link/src/link.vue.mjs.map +1 -0
  39. package/es/components/link/src/link.vue2.mjs +52 -0
  40. package/es/components/link/src/link.vue2.mjs.map +1 -0
  41. package/es/components/link/style/css.d.ts +2 -0
  42. package/es/components/link/style/css.mjs +5 -0
  43. package/es/components/link/style/css.mjs.map +1 -0
  44. package/es/components/link/style/index.d.ts +2 -0
  45. package/es/components/link/style/index.mjs +5 -0
  46. package/es/components/link/style/index.mjs.map +1 -0
  47. package/es/components/search-list-page/index.d.ts +51 -39
  48. package/es/components/search-list-page/src/search-list-page.d.ts +1 -4
  49. package/es/components/search-list-page/src/search-list-page.mjs +6 -9
  50. package/es/components/search-list-page/src/search-list-page.mjs.map +1 -1
  51. package/es/components/search-list-page/src/search-list-page.vue.d.ts +16 -17
  52. package/es/components/search-list-page/src/search-list-page.vue2.mjs +4 -3
  53. package/es/components/search-list-page/src/search-list-page.vue2.mjs.map +1 -1
  54. package/es/components/search-list-page/src/use-search-list-page.d.ts +15 -9
  55. package/es/components/search-list-page/src/use-search-list-page.mjs +22 -22
  56. package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
  57. package/es/components/table/index.d.ts +11 -6
  58. package/es/components/table/src/table.d.ts +2 -1
  59. package/es/components/table/src/table.mjs +2 -2
  60. package/es/components/table/src/table.mjs.map +1 -1
  61. package/es/components/table/src/table.vue.d.ts +4 -3
  62. package/es/components/table/src/table.vue2.mjs +4 -3
  63. package/es/components/table/src/table.vue2.mjs.map +1 -1
  64. package/es/components/table/src/use-table.d.ts +71 -12
  65. package/es/components/table/src/use-table.mjs +84 -27
  66. package/es/components/table/src/use-table.mjs.map +1 -1
  67. package/es/components.mjs +3 -1
  68. package/es/components.mjs.map +1 -1
  69. package/es/hooks/dialog/use-dialog.d.ts +2 -0
  70. package/es/hooks/dialog/use-dialog.mjs +4 -3
  71. package/es/hooks/dialog/use-dialog.mjs.map +1 -1
  72. package/es/hooks/use-navigation.d.ts +5 -0
  73. package/es/hooks/use-navigation.mjs +14 -2
  74. package/es/hooks/use-navigation.mjs.map +1 -1
  75. package/es/index.mjs +2 -0
  76. package/es/index.mjs.map +1 -1
  77. package/es/package.json.mjs +1 -1
  78. package/es/utils/file.d.ts +18 -0
  79. package/es/utils/file.mjs +133 -0
  80. package/es/utils/file.mjs.map +1 -0
  81. package/es/utils/http/core/types.d.ts +1 -0
  82. package/global.d.ts +6 -4
  83. package/lib/components/date-picker-range/index.d.ts +3 -3
  84. package/lib/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
  85. package/lib/components/form/src/form-item-vue.d.ts +5 -2
  86. package/lib/components/form/src/form-item.d.ts +2 -1
  87. package/lib/components/form/src/form-item.js +2 -2
  88. package/lib/components/form/src/form-item.js.map +1 -1
  89. package/lib/components/form/src/hooks/use-form-item.js +3 -1
  90. package/lib/components/form/src/hooks/use-form-item.js.map +1 -1
  91. package/lib/components/header/index.d.ts +6 -6
  92. package/lib/components/header/src/header.d.ts +1 -1
  93. package/lib/components/header/src/header.js.map +1 -1
  94. package/lib/components/header/src/header.vue.d.ts +3 -3
  95. package/lib/components/header/src/use-header.js +3 -6
  96. package/lib/components/header/src/use-header.js.map +1 -1
  97. package/lib/components/index.d.ts +1 -0
  98. package/lib/components/index.js +4 -0
  99. package/lib/components/index.js.map +1 -1
  100. package/lib/components/input/style/css.d.ts +1 -1
  101. package/lib/components/input/style/css.js +1 -1
  102. package/lib/components/input/style/index.d.ts +1 -1
  103. package/lib/components/input/style/index.js +1 -1
  104. package/lib/components/link/index.d.ts +118 -0
  105. package/lib/components/link/index.js +14 -0
  106. package/lib/components/link/index.js.map +1 -0
  107. package/lib/components/link/src/link.d.ts +30 -0
  108. package/lib/components/link/src/link.js +21 -0
  109. package/lib/components/link/src/link.js.map +1 -0
  110. package/lib/components/link/src/link.vue.d.ts +73 -0
  111. package/lib/components/link/src/link.vue.js +10 -0
  112. package/lib/components/link/src/link.vue.js.map +1 -0
  113. package/lib/components/link/src/link.vue2.js +56 -0
  114. package/lib/components/link/src/link.vue2.js.map +1 -0
  115. package/lib/components/link/style/css.d.ts +2 -0
  116. package/lib/components/link/style/css.js +7 -0
  117. package/lib/components/link/style/css.js.map +1 -0
  118. package/lib/components/link/style/index.d.ts +2 -0
  119. package/lib/components/link/style/index.js +7 -0
  120. package/lib/components/link/style/index.js.map +1 -0
  121. package/lib/components/search-list-page/index.d.ts +51 -39
  122. package/lib/components/search-list-page/src/search-list-page.d.ts +1 -4
  123. package/lib/components/search-list-page/src/search-list-page.js +6 -9
  124. package/lib/components/search-list-page/src/search-list-page.js.map +1 -1
  125. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +16 -17
  126. package/lib/components/search-list-page/src/search-list-page.vue2.js +3 -2
  127. package/lib/components/search-list-page/src/search-list-page.vue2.js.map +1 -1
  128. package/lib/components/search-list-page/src/use-search-list-page.d.ts +15 -9
  129. package/lib/components/search-list-page/src/use-search-list-page.js +22 -22
  130. package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
  131. package/lib/components/table/index.d.ts +11 -6
  132. package/lib/components/table/src/table.d.ts +2 -1
  133. package/lib/components/table/src/table.js +2 -2
  134. package/lib/components/table/src/table.js.map +1 -1
  135. package/lib/components/table/src/table.vue.d.ts +4 -3
  136. package/lib/components/table/src/table.vue2.js +4 -3
  137. package/lib/components/table/src/table.vue2.js.map +1 -1
  138. package/lib/components/table/src/use-table.d.ts +71 -12
  139. package/lib/components/table/src/use-table.js +83 -26
  140. package/lib/components/table/src/use-table.js.map +1 -1
  141. package/lib/components.js +3 -1
  142. package/lib/components.js.map +1 -1
  143. package/lib/hooks/dialog/use-dialog.d.ts +2 -0
  144. package/lib/hooks/dialog/use-dialog.js +4 -3
  145. package/lib/hooks/dialog/use-dialog.js.map +1 -1
  146. package/lib/hooks/use-navigation.d.ts +5 -0
  147. package/lib/hooks/use-navigation.js +13 -1
  148. package/lib/hooks/use-navigation.js.map +1 -1
  149. package/lib/index.js +10 -6
  150. package/lib/index.js.map +1 -1
  151. package/lib/package.json.js +1 -1
  152. package/lib/utils/file.d.ts +18 -0
  153. package/lib/utils/file.js +136 -0
  154. package/lib/utils/file.js.map +1 -0
  155. package/lib/utils/http/core/types.d.ts +1 -0
  156. package/package.json +1 -1
  157. package/theme-chalk/base.css +1 -1
  158. package/theme-chalk/custom-column.css +1 -1
  159. package/theme-chalk/header.css +1 -1
  160. package/theme-chalk/index.css +1 -1
  161. package/theme-chalk/link.css +1 -0
  162. package/theme-chalk/src/base.scss +1 -0
  163. package/theme-chalk/src/common/common.scss +4 -0
  164. package/theme-chalk/src/custom-column.scss +6 -4
  165. package/theme-chalk/src/header.scss +1 -0
  166. package/theme-chalk/src/index.scss +2 -1
  167. package/theme-chalk/src/link.scss +6 -0
  168. package/theme-chalk/src/table.scss +20 -1
  169. package/theme-chalk/table.css +1 -1
@@ -31,7 +31,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
31
31
  readonly type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
32
32
  readonly default: () => never[];
33
33
  };
34
- readonly linkProps: {
34
+ readonly formatColumns: {
35
35
  readonly type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
36
36
  readonly default: () => never[];
37
37
  };
@@ -42,9 +42,6 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
42
42
  readonly default: true;
43
43
  };
44
44
  readonly add: FunctionConstructor;
45
- readonly templateDownloadApi: StringConstructor;
46
- readonly importApi: StringConstructor;
47
- readonly exportApi: StringConstructor;
48
45
  readonly offsetTop: {
49
46
  readonly type: NumberConstructor;
50
47
  readonly default: 0;
@@ -104,6 +101,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
104
101
  type: string;
105
102
  props: Record<string, any>;
106
103
  filter: boolean;
104
+ editable: boolean | ((formData: Record<string, any>) => void);
107
105
  } & {} & {
108
106
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
109
107
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -161,7 +159,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
161
159
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
162
160
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
163
161
  }>[];
164
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
162
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
165
163
  name: string;
166
164
  prop: string;
167
165
  permission: string;
@@ -210,6 +208,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
210
208
  type: string;
211
209
  props: Record<string, any>;
212
210
  filter: boolean;
211
+ editable: boolean | ((formData: Record<string, any>) => void);
213
212
  } & {} & {
214
213
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
215
214
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -267,7 +266,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
267
266
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
268
267
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
269
268
  }>[];
270
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
269
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
271
270
  name: string;
272
271
  prop: string;
273
272
  permission: string;
@@ -339,7 +338,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
339
338
  readonly tooltipEffect?: string | undefined;
340
339
  readonly appendFilterPanelTo?: string | undefined;
341
340
  readonly scrollbarTabindex?: string | number | undefined;
342
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "linkProps" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar">;
341
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "formatColumns" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar">;
343
342
  $attrs: {
344
343
  [x: string]: unknown;
345
344
  };
@@ -394,7 +393,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
394
393
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
395
394
  default: () => never[];
396
395
  };
397
- readonly linkProps: {
396
+ readonly formatColumns: {
398
397
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
399
398
  default: () => never[];
400
399
  };
@@ -1150,6 +1149,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1150
1149
  type: string;
1151
1150
  props: Record<string, any>;
1152
1151
  filter: boolean;
1152
+ editable: boolean | ((formData: Record<string, any>) => void);
1153
1153
  } & {} & {
1154
1154
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1155
1155
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1207,7 +1207,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1207
1207
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1208
1208
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
1209
1209
  }>[];
1210
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1210
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1211
1211
  name: string;
1212
1212
  prop: string;
1213
1213
  permission: string;
@@ -1276,6 +1276,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1276
1276
  type: string;
1277
1277
  props: Record<string, any>;
1278
1278
  filter: boolean;
1279
+ editable: boolean | ((formData: Record<string, any>) => void);
1279
1280
  } & {} & {
1280
1281
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1281
1282
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1333,7 +1334,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1333
1334
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1334
1335
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
1335
1336
  }>[];
1336
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1337
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1337
1338
  name: string;
1338
1339
  prop: string;
1339
1340
  permission: string;
@@ -1403,7 +1404,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1403
1404
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
1404
1405
  default: () => never[];
1405
1406
  };
1406
- readonly linkProps: {
1407
+ readonly formatColumns: {
1407
1408
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
1408
1409
  default: () => never[];
1409
1410
  };
@@ -2132,7 +2133,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2132
2133
  };
2133
2134
  readonly preserveExpandedContent: BooleanConstructor;
2134
2135
  readonly nativeScrollbar: BooleanConstructor;
2135
- }>> & Readonly<{}>, "search" | "validate" | "resetFields" | "clearValidate" | "elFormRef" | "elTableRef" | "openCustomColumnDialog" | ("data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "linkProps" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar")> & import("vue").ShallowUnwrapRef<{
2136
+ }>> & Readonly<{}>, "search" | "validate" | "resetFields" | "clearValidate" | "elFormRef" | "elTableRef" | "openCustomColumnDialog" | ("data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "formatColumns" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar")> & import("vue").ShallowUnwrapRef<{
2136
2137
  elFormRef: Readonly<import("vue").ShallowRef<import("element-plus").FormInstance | null>>;
2137
2138
  elTableRef: Readonly<import("vue").ShallowRef<import("element-plus").TableInstance | null>>;
2138
2139
  validate: () => import("element-plus").FormValidationResult;
@@ -2436,7 +2437,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2436
2437
  readonly type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
2437
2438
  readonly default: () => never[];
2438
2439
  };
2439
- readonly linkProps: {
2440
+ readonly formatColumns: {
2440
2441
  readonly type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
2441
2442
  readonly default: () => never[];
2442
2443
  };
@@ -2447,9 +2448,6 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2447
2448
  readonly default: true;
2448
2449
  };
2449
2450
  readonly add: FunctionConstructor;
2450
- readonly templateDownloadApi: StringConstructor;
2451
- readonly importApi: StringConstructor;
2452
- readonly exportApi: StringConstructor;
2453
2451
  readonly offsetTop: {
2454
2452
  readonly type: NumberConstructor;
2455
2453
  readonly default: 0;
@@ -2496,6 +2494,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2496
2494
  type: string;
2497
2495
  props: Record<string, any>;
2498
2496
  filter: boolean;
2497
+ editable: boolean | ((formData: Record<string, any>) => void);
2499
2498
  } & {} & {
2500
2499
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2501
2500
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2517,7 +2516,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2517
2516
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2518
2517
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
2519
2518
  }>[];
2520
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
2519
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
2521
2520
  name: string;
2522
2521
  prop: string;
2523
2522
  permission: string;
@@ -1,4 +1,4 @@
1
- import { defineComponent, createElementBlock, openBlock, normalizeStyle, normalizeClass, unref, createElementVNode, renderSlot, createVNode, normalizeProps, guardReactiveProps } from 'vue';
1
+ import { defineComponent, createElementBlock, openBlock, normalizeStyle, normalizeClass, unref, createElementVNode, renderSlot, createVNode, normalizeProps, guardReactiveProps, mergeProps } from 'vue';
2
2
  import { EpForm } from '../../form/index.mjs';
3
3
  import { EpTable } from '../../table/index.mjs';
4
4
  import { EpButtons } from '../../buttons/index.mjs';
@@ -22,7 +22,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
22
22
  reset,
23
23
  tableRef,
24
24
  formRef,
25
- tableProps
25
+ tableProps,
26
+ beforeSearch
26
27
  } = useSearchListPage(props);
27
28
  __expose({
28
29
  search,
@@ -53,7 +54,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
53
54
  ], 2)
54
55
  ]),
55
56
  renderSlot(_ctx.$slots, "tableBefore"),
56
- createVNode(unref(EpTable), normalizeProps(guardReactiveProps(unref(tableProps))), null, 16)
57
+ createVNode(unref(EpTable), mergeProps(unref(tableProps), { "before-search": unref(beforeSearch) }), null, 16, ["before-search"])
57
58
  ], 6);
58
59
  };
59
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"search-list-page.vue2.mjs","sources":["../../../../../../packages/components/search-list-page/src/search-list-page.vue"],"sourcesContent":["<template>\n <div\n :class=\"[bem.b(), prepareClassNames()]\"\n :style=\"{\n ...prepareStyles(),\n }\"\n >\n <div id=\"top\">\n <EpForm v-bind=\"formProps\" />\n </div>\n <div id=\"middle\">\n <div :class=\"bem.e('middle-left')\">\n <EpButtons v-bind=\"buttonsProps\" />\n </div>\n <div :class=\"bem.e('middle-right')\">\n <EpButtons :list=\"searchButtons\" />\n </div>\n </div>\n <slot name=\"tableBefore\"></slot>\n <EpTable v-bind=\"tableProps\" />\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { nextTick, ref } from 'vue'\nimport EpForm from '@el-plus/components/form'\nimport EpTable from '@el-plus/components/table'\nimport EpButtons from '@el-plus/components/buttons'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { searchListPageProps } from './search-list-page'\nimport { useSearchListPage } from './use-search-list-page'\nimport { computed } from 'vue'\ndefineOptions({ name: 'EpSearchListPage' })\nconst bem = createNameSpace('search-list-page')\nconst props = defineProps(searchListPageProps)\n\nconst {\n formProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n tableProps,\n} = useSearchListPage(props)\n\ndefineExpose({\n search,\n reset,\n tableRef,\n formRef,\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_unref","_normalizeStyle","_createElementVNode","_createVNode","_renderSlot"],"mappings":";;;;;;;;;;;;;;AAsCA,IAAA,MAAM,GAAA,GAAM,gBAAgB,kBAAkB,CAAA;AAC9C,IAAA,MAAM,KAAA,GAAQ,OAAA;AAEd,IAAA,MAAM;AAAA,MACJ,SAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,OAAA;AAAA,MACA;AAAA,KACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,IAAA,QAAA,CAAa;AAAA,MACX,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA;AAAA,KACD,CAAA;;0BAxDCA,kBAAA,CAmBM,KAAA,EAAA;AAAA,QAlBH,KAAA,EAAKC,cAAA,CAAA,CAAGC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,IAAKA,KAAA,CAAA,iBAAA,CAAA,EAAiB,CAAA,CAAA;AAAA,QAClC,OAAKC,cAAA,CAAA;AAAA,aAAaD,KAAA,CAAA,aAAA,CAAA;AAAa;;QAIhCE,kBAAA,CAEM,KAAA,EAAA,EAFD,EAAA,EAAG,OAAK,EAAA;AAAA,UACXC,WAAA,CAA6BH,KAAA,4CAAbA,KAAA,CAAA,SAAA,CAAS,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAAA;QAE3BE,kBAAA,CAOM,KAAA,EAAA,EAPD,EAAA,EAAG,UAAQ,EAAA;AAAA,UACdA,mBAEM,KAAA,EAAA;AAAA,YAFA,OAAKH,cAAA,CAAEC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,CAAC,aAAA,CAAA;AAAA;YAChBG,WAAA,CAAmCH,KAAA,+CAAhBA,KAAA,CAAA,YAAA,CAAY,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAAA;UAEjCE,mBAEM,KAAA,EAAA;AAAA,YAFA,OAAKH,cAAA,CAAEC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,CAAC,cAAA,CAAA;AAAA;YAChBG,WAAA,CAAmCH,KAAA,CAAA,SAAA,CAAA,EAAA,EAAvB,IAAA,EAAMA,KAAA,CAAA,aAAA,CAAA,EAAa,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,MAAA,CAAA;AAAA;;QAGnCI,UAAA,CAAgC,IAAA,CAAA,MAAA,EAAA,aAAA,CAAA;AAAA,QAChCD,WAAA,CAA+BH,KAAA,6CAAdA,KAAA,CAAA,UAAA,CAAU,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"search-list-page.vue2.mjs","sources":["../../../../../../packages/components/search-list-page/src/search-list-page.vue"],"sourcesContent":["<template>\n <div\n :class=\"[bem.b(), prepareClassNames()]\"\n :style=\"{\n ...prepareStyles(),\n }\"\n >\n <div id=\"top\">\n <EpForm v-bind=\"formProps\" />\n </div>\n <div id=\"middle\">\n <div :class=\"bem.e('middle-left')\">\n <EpButtons v-bind=\"buttonsProps\" />\n </div>\n <div :class=\"bem.e('middle-right')\">\n <EpButtons :list=\"searchButtons\" />\n </div>\n </div>\n <slot name=\"tableBefore\"></slot>\n <EpTable v-bind=\"tableProps\" :before-search=\"beforeSearch\" />\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { nextTick, ref } from 'vue'\nimport EpForm from '@el-plus/components/form'\nimport EpTable from '@el-plus/components/table'\nimport EpButtons from '@el-plus/components/buttons'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { searchListPageProps } from './search-list-page'\nimport { useSearchListPage } from './use-search-list-page'\ndefineOptions({ name: 'EpSearchListPage' })\nconst bem = createNameSpace('search-list-page')\nconst props = defineProps(searchListPageProps)\n\nconst {\n formProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n tableProps,\n beforeSearch,\n} = useSearchListPage(props)\n\ndefineExpose({\n search,\n reset,\n tableRef,\n formRef,\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_unref","_normalizeStyle","_createElementVNode","_createVNode","_renderSlot","_mergeProps"],"mappings":";;;;;;;;;;;;;;AAqCA,IAAA,MAAM,GAAA,GAAM,gBAAgB,kBAAkB,CAAA;AAC9C,IAAA,MAAM,KAAA,GAAQ,OAAA;AAEd,IAAA,MAAM;AAAA,MACJ,SAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA;AAAA,KACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,IAAA,QAAA,CAAa;AAAA,MACX,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA;AAAA,KACD,CAAA;;0BAxDCA,kBAAA,CAmBM,KAAA,EAAA;AAAA,QAlBH,KAAA,EAAKC,cAAA,CAAA,CAAGC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,IAAKA,KAAA,CAAA,iBAAA,CAAA,EAAiB,CAAA,CAAA;AAAA,QAClC,OAAKC,cAAA,CAAA;AAAA,aAAaD,KAAA,CAAA,aAAA,CAAA;AAAa;;QAIhCE,kBAAA,CAEM,KAAA,EAAA,EAFD,EAAA,EAAG,OAAK,EAAA;AAAA,UACXC,WAAA,CAA6BH,KAAA,4CAAbA,KAAA,CAAA,SAAA,CAAS,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAAA;QAE3BE,kBAAA,CAOM,KAAA,EAAA,EAPD,EAAA,EAAG,UAAQ,EAAA;AAAA,UACdA,mBAEM,KAAA,EAAA;AAAA,YAFA,OAAKH,cAAA,CAAEC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,CAAC,aAAA,CAAA;AAAA;YAChBG,WAAA,CAAmCH,KAAA,+CAAhBA,KAAA,CAAA,YAAA,CAAY,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAAA;UAEjCE,mBAEM,KAAA,EAAA;AAAA,YAFA,OAAKH,cAAA,CAAEC,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,CAAC,cAAA,CAAA;AAAA;YAChBG,WAAA,CAAmCH,KAAA,CAAA,SAAA,CAAA,EAAA,EAAvB,IAAA,EAAMA,KAAA,CAAA,aAAA,CAAA,EAAa,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,MAAA,CAAA;AAAA;;QAGnCI,UAAA,CAAgC,IAAA,CAAA,MAAA,EAAA,aAAA,CAAA;AAAA,QAChCD,YAA6DH,KAAA,WAA7DK,UAAA,CAA6DL,KAAA,cAAlC,EAAG,iBAAeA,KAAA,CAAA,YAAA,GAAY,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA;AAAA;;;;;;;"}
@@ -19,6 +19,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
19
19
  type: string;
20
20
  props: Record<string, any>;
21
21
  filter: boolean;
22
+ editable: boolean | ((formData: Record<string, any>) => void);
22
23
  } & {} & {
23
24
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
24
25
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -41,7 +42,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
41
42
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
42
43
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
43
44
  }>[] | undefined;
44
- linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
45
+ formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
45
46
  name: string;
46
47
  prop: string;
47
48
  permission: string;
@@ -100,6 +101,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
100
101
  type: string;
101
102
  props: Record<string, any>;
102
103
  filter: boolean;
104
+ editable: boolean | ((formData: Record<string, any>) => void);
103
105
  } & {} & {
104
106
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
105
107
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -157,7 +159,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
157
159
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
158
160
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
159
161
  }>[];
160
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
162
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
161
163
  name: string;
162
164
  prop: string;
163
165
  permission: string;
@@ -206,6 +208,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
206
208
  type: string;
207
209
  props: Record<string, any>;
208
210
  filter: boolean;
211
+ editable: boolean | ((formData: Record<string, any>) => void);
209
212
  } & {} & {
210
213
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
211
214
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -263,7 +266,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
263
266
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
264
267
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
265
268
  }>[];
266
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
269
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
267
270
  name: string;
268
271
  prop: string;
269
272
  permission: string;
@@ -335,7 +338,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
335
338
  readonly tooltipEffect?: string | undefined;
336
339
  readonly appendFilterPanelTo?: string | undefined;
337
340
  readonly scrollbarTabindex?: string | number | undefined;
338
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "linkProps" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar">;
341
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "formatColumns" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar">;
339
342
  $attrs: {
340
343
  [x: string]: unknown;
341
344
  };
@@ -390,7 +393,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
390
393
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
391
394
  default: () => never[];
392
395
  };
393
- readonly linkProps: {
396
+ readonly formatColumns: {
394
397
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
395
398
  default: () => never[];
396
399
  };
@@ -1146,6 +1149,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1146
1149
  type: string;
1147
1150
  props: Record<string, any>;
1148
1151
  filter: boolean;
1152
+ editable: boolean | ((formData: Record<string, any>) => void);
1149
1153
  } & {} & {
1150
1154
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1151
1155
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1203,7 +1207,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1203
1207
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1204
1208
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
1205
1209
  }>[];
1206
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1210
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1207
1211
  name: string;
1208
1212
  prop: string;
1209
1213
  permission: string;
@@ -1272,6 +1276,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1272
1276
  type: string;
1273
1277
  props: Record<string, any>;
1274
1278
  filter: boolean;
1279
+ editable: boolean | ((formData: Record<string, any>) => void);
1275
1280
  } & {} & {
1276
1281
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1277
1282
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1329,7 +1334,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1329
1334
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1330
1335
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
1331
1336
  }>[];
1332
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1337
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1333
1338
  name: string;
1334
1339
  prop: string;
1335
1340
  permission: string;
@@ -1399,7 +1404,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1399
1404
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
1400
1405
  default: () => never[];
1401
1406
  };
1402
- readonly linkProps: {
1407
+ readonly formatColumns: {
1403
1408
  type: import("vue").PropType<import("el-plus/es/components/buttons").ButtonProps[]>;
1404
1409
  default: () => never[];
1405
1410
  };
@@ -2128,7 +2133,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
2128
2133
  };
2129
2134
  readonly preserveExpandedContent: BooleanConstructor;
2130
2135
  readonly nativeScrollbar: BooleanConstructor;
2131
- }>> & Readonly<{}>, "search" | "validate" | "resetFields" | "clearValidate" | "elFormRef" | "elTableRef" | "openCustomColumnDialog" | ("data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "linkProps" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar")> & import("vue").ShallowUnwrapRef<{
2136
+ }>> & Readonly<{}>, "search" | "validate" | "resetFields" | "clearValidate" | "elFormRef" | "elTableRef" | "openCustomColumnDialog" | ("data" | "style" | "size" | "disabled" | "className" | "border" | "align" | "lazy" | "headerCellStyle" | "columns" | "showSelectionCol" | "showSingleSelectionCol" | "showIndexCol" | "actionColWidth" | "reserveSelection" | "paginationProps" | "showPagination" | "isFrontPage" | "actionButtons" | "formatColumns" | "isInitSearch" | "fit" | "stripe" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "tableLayout" | "scrollbarAlwaysOn" | "flexible" | "scrollbarTabindex" | "allowDragLastColumn" | "preserveExpandedContent" | "nativeScrollbar")> & import("vue").ShallowUnwrapRef<{
2132
2137
  elFormRef: Readonly<import("vue").ShallowRef<import("element-plus").FormInstance | null>>;
2133
2138
  elTableRef: Readonly<import("vue").ShallowRef<import("element-plus").TableInstance | null>>;
2134
2139
  validate: () => import("element-plus").FormValidationResult;
@@ -2404,4 +2409,5 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
2404
2409
  default?: (props: {}) => any;
2405
2410
  };
2406
2411
  }) | null>>;
2412
+ beforeSearch: () => import("element-plus").FormValidationResult;
2407
2413
  };
@@ -21,7 +21,8 @@ const useSearchListPage = (props, config = {}) => {
21
21
  search,
22
22
  reset,
23
23
  tableRef,
24
- formRef
24
+ formRef,
25
+ beforeSearch: validate
25
26
  };
26
27
  };
27
28
  const useTable = (props, config) => {
@@ -38,7 +39,7 @@ const useTable = (props, config) => {
38
39
  showSelectionCol: props.showSelectionCol,
39
40
  showSingleSelectionCol: props.showSingleSelectionCol,
40
41
  actionButtons: props.actionButtons,
41
- linkProps: props.linkProps,
42
+ formatColumns: props.formatColumns,
42
43
  api: props.api,
43
44
  reqData: props.formData,
44
45
  customColumnModule: props.customColumnModule,
@@ -111,25 +112,25 @@ const useButtons = (props, { validate, resetFields, tableRef }) => {
111
112
  onClick: () => {
112
113
  props.add?.();
113
114
  }
114
- },
115
- {
116
- name: t("ep.searchListPage.templateDownload"),
117
- prop: "templateDownload",
118
- permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : "",
119
- show: !!props.templateDownloadApi
120
- },
121
- {
122
- name: t("ep.searchListPage.import"),
123
- prop: "import",
124
- permission: props.name ? `${props.name}:IMPORT` : "",
125
- show: !!props.importApi
126
- },
127
- {
128
- name: t("ep.searchListPage.export"),
129
- prop: "export",
130
- permission: props.name ? `${props.name}:EXPORT` : "",
131
- show: !!props.exportApi
132
115
  }
116
+ // {
117
+ // name: t('ep.searchListPage.templateDownload'),
118
+ // prop: 'templateDownload',
119
+ // permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : '',
120
+ // show: !!props.templateDownloadApi,
121
+ // },
122
+ // {
123
+ // name: t('ep.searchListPage.import'),
124
+ // prop: 'import',
125
+ // permission: props.name ? `${props.name}:IMPORT` : '',
126
+ // show: !!props.importApi,
127
+ // },
128
+ // {
129
+ // name: t('ep.searchListPage.export'),
130
+ // prop: 'export',
131
+ // permission: props.name ? `${props.name}:EXPORT` : '',
132
+ // show: !!props.exportApi,
133
+ // },
133
134
  ];
134
135
  const list = mergeListByKey(defaultButtons, props.leftButtons);
135
136
  if (props.customColumnModule) {
@@ -158,12 +159,11 @@ const useButtons = (props, { validate, resetFields, tableRef }) => {
158
159
  };
159
160
  });
160
161
  const search = async (isInitSearch = false) => {
161
- await validate();
162
162
  tableRef.value.search(isInitSearch);
163
163
  };
164
164
  const reset = async () => {
165
165
  resetFields();
166
- search();
166
+ search(true);
167
167
  };
168
168
  const searchButtons = [
169
169
  {
@@ -1 +1 @@
1
- {"version":3,"file":"use-search-list-page.mjs","sources":["../../../../../../packages/components/search-list-page/src/use-search-list-page.ts"],"sourcesContent":["import { ref, onMounted, computed, useTemplateRef } from 'vue'\nimport type { SearchListPageProps } from './search-list-page'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport type { FormInstance } from '@el-plus/components/form'\nimport type { TableInstance } from '@el-plus/components/table'\nimport type { FormItemProp } from 'element-plus'\nimport { mergeListByKey, getEnv } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\nexport const useSearchListPage = (props: SearchListPageProps, config = {}) => {\n const { calcTableHeight, tableProps, tableRef } = useTable(props, config)\n const { formProps, validate, resetFields, formRef } = useForm(props, {\n calcTableHeight,\n })\n const { buttonsProps, searchButtons, search, reset } = useButtons(props, {\n validate,\n resetFields,\n tableRef,\n })\n return {\n formProps,\n tableProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n }\n}\nconst useTable = (props: SearchListPageProps, config) => {\n const instanceName = 'tableRef'\n const tableRef = useTemplateRef<TableInstance>(instanceName)\n const tableHeight = ref(window.innerHeight)\n const tableProps = computed(() => {\n return {\n ref: instanceName,\n columns: props.columns,\n showPagination: true,\n height: tableHeight.value,\n showIndexCol: props.showIndexCol,\n showSelectionCol: props.showSelectionCol,\n showSingleSelectionCol: props.showSingleSelectionCol,\n actionButtons: props.actionButtons,\n linkProps: props.linkProps,\n api: props.api,\n reqData: props.formData,\n customColumnModule: props.customColumnModule,\n minWidth: props.minWidth,\n actionColWidth: props.actionColWidth,\n ...props.tableProps,\n }\n })\n const calcTableHeight = () => {\n setTimeout(() => {\n const topHeight = (document.getElementById('top') as HTMLElement)\n .offsetHeight\n const middleHeight = (document.getElementById('middle') as HTMLElement)\n .offsetHeight\n let paginationHeight = 0\n if (tableProps.value.showPagination) {\n paginationHeight =\n (document.querySelector('.el-pagination') as HTMLElement)\n .offsetHeight + 12\n }\n const frameDistance = getEnv() ? 90 : 40\n tableHeight.value =\n window.innerHeight -\n topHeight -\n middleHeight -\n paginationHeight -\n frameDistance -\n props.offsetTop!\n }, 0)\n }\n\n onMounted(calcTableHeight)\n return {\n tableRef,\n tableProps,\n calcTableHeight,\n }\n}\nconst useForm = (props: SearchListPageProps, { calcTableHeight }) => {\n const instanceName = 'formRef'\n const formRef = useTemplateRef<FormInstance>(instanceName)\n const formProps = computed(() => {\n return {\n ref: instanceName,\n formItemList: props.formItemList,\n isShowFold: true,\n modelValue: props.formData,\n ...props.formProps,\n onToggleStatus: () => {\n calcTableHeight()\n },\n }\n })\n // 校验\n const validate = () => {\n return formRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return formRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return formRef.value!.clearValidate(props)\n }\n return {\n formProps,\n formRef,\n validate,\n resetFields,\n clearValidate,\n }\n}\nconst useButtons = (\n props: SearchListPageProps,\n { validate, resetFields, tableRef },\n) => {\n const { t } = useLocale()\n const defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.add'),\n prop: 'add',\n permission: props.name ? `${props.name}:ADD` : '',\n show: () => {\n return !!props.add\n },\n onClick: () => {\n props.add?.()\n },\n },\n {\n name: t('ep.searchListPage.templateDownload'),\n prop: 'templateDownload',\n permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : '',\n show: !!props.templateDownloadApi,\n },\n {\n name: t('ep.searchListPage.import'),\n prop: 'import',\n permission: props.name ? `${props.name}:IMPORT` : '',\n show: !!props.importApi,\n },\n {\n name: t('ep.searchListPage.export'),\n prop: 'export',\n permission: props.name ? `${props.name}:EXPORT` : '',\n show: !!props.exportApi,\n },\n ]\n const list = mergeListByKey(defaultButtons, props.leftButtons)\n if (props.customColumnModule) {\n list.push({\n name: t('ep.customColumn.defineColumn'),\n prop: 'customColumn',\n type: 'primary',\n onClick: () => {\n tableRef.value.openCustomColumnDialog()\n },\n })\n }\n list.forEach((item) => {\n if (item.onClick) {\n const clickFn = item.onClick\n item.onClick = () => {\n // 增加选中项\n const rows = tableRef.value.elTableRef.getSelectionRows()\n clickFn(rows)\n }\n }\n })\n\n const buttonsProps = computed(() => {\n return {\n list,\n ...props.buttonsProps,\n }\n })\n // 搜索\n const search = async (isInitSearch = false) => {\n await validate()\n tableRef.value.search(isInitSearch)\n }\n // 清空\n const reset = async () => {\n resetFields()\n search()\n }\n const searchButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.search'),\n type: 'primary',\n onClick: search.bind(null, true),\n },\n {\n name: t('ep.searchListPage.clear'),\n onClick: reset,\n },\n ]\n return {\n buttonsProps,\n searchButtons,\n search,\n reset,\n }\n}\n"],"names":["props"],"mappings":"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"}
1
+ {"version":3,"file":"use-search-list-page.mjs","sources":["../../../../../../packages/components/search-list-page/src/use-search-list-page.ts"],"sourcesContent":["import { ref, onMounted, computed, useTemplateRef } from 'vue'\nimport type { SearchListPageProps } from './search-list-page'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport type { FormInstance } from '@el-plus/components/form'\nimport type { TableInstance } from '@el-plus/components/table'\nimport type { FormItemProp } from 'element-plus'\nimport { mergeListByKey, getEnv } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\nexport const useSearchListPage = (props: SearchListPageProps, config = {}) => {\n const { calcTableHeight, tableProps, tableRef } = useTable(props, config)\n const { formProps, validate, resetFields, formRef } = useForm(props, {\n calcTableHeight,\n })\n const { buttonsProps, searchButtons, search, reset } = useButtons(props, {\n validate,\n resetFields,\n tableRef,\n })\n return {\n formProps,\n tableProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n beforeSearch: validate,\n }\n}\nconst useTable = (props: SearchListPageProps, config) => {\n const instanceName = 'tableRef'\n const tableRef = useTemplateRef<TableInstance>(instanceName)\n const tableHeight = ref(window.innerHeight)\n const tableProps = computed(() => {\n return {\n ref: instanceName,\n columns: props.columns,\n showPagination: true,\n height: tableHeight.value,\n showIndexCol: props.showIndexCol,\n showSelectionCol: props.showSelectionCol,\n showSingleSelectionCol: props.showSingleSelectionCol,\n actionButtons: props.actionButtons,\n formatColumns: props.formatColumns,\n api: props.api,\n reqData: props.formData,\n customColumnModule: props.customColumnModule,\n minWidth: props.minWidth,\n actionColWidth: props.actionColWidth,\n ...props.tableProps,\n }\n })\n const calcTableHeight = () => {\n setTimeout(() => {\n const topHeight = (document.getElementById('top') as HTMLElement)\n .offsetHeight\n const middleHeight = (document.getElementById('middle') as HTMLElement)\n .offsetHeight\n let paginationHeight = 0\n if (tableProps.value.showPagination) {\n paginationHeight =\n (document.querySelector('.el-pagination') as HTMLElement)\n .offsetHeight + 12\n }\n const frameDistance = getEnv() ? 90 : 40\n tableHeight.value =\n window.innerHeight -\n topHeight -\n middleHeight -\n paginationHeight -\n frameDistance -\n props.offsetTop!\n }, 0)\n }\n\n onMounted(calcTableHeight)\n return {\n tableRef,\n tableProps,\n calcTableHeight,\n }\n}\nconst useForm = (props: SearchListPageProps, { calcTableHeight }) => {\n const instanceName = 'formRef'\n const formRef = useTemplateRef<FormInstance>(instanceName)\n const formProps = computed(() => {\n return {\n ref: instanceName,\n formItemList: props.formItemList,\n isShowFold: true,\n modelValue: props.formData,\n ...props.formProps,\n onToggleStatus: () => {\n calcTableHeight()\n },\n }\n })\n // 校验\n const validate = () => {\n return formRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return formRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return formRef.value!.clearValidate(props)\n }\n return {\n formProps,\n formRef,\n validate,\n resetFields,\n clearValidate,\n }\n}\nconst useButtons = (\n props: SearchListPageProps,\n { validate, resetFields, tableRef },\n) => {\n const { t } = useLocale()\n const defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.add'),\n prop: 'add',\n permission: props.name ? `${props.name}:ADD` : '',\n show: () => {\n return !!props.add\n },\n onClick: () => {\n props.add?.()\n },\n },\n // {\n // name: t('ep.searchListPage.templateDownload'),\n // prop: 'templateDownload',\n // permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : '',\n // show: !!props.templateDownloadApi,\n // },\n // {\n // name: t('ep.searchListPage.import'),\n // prop: 'import',\n // permission: props.name ? `${props.name}:IMPORT` : '',\n // show: !!props.importApi,\n // },\n // {\n // name: t('ep.searchListPage.export'),\n // prop: 'export',\n // permission: props.name ? `${props.name}:EXPORT` : '',\n // show: !!props.exportApi,\n // },\n ]\n const list = mergeListByKey(defaultButtons, props.leftButtons)\n if (props.customColumnModule) {\n list.push({\n name: t('ep.customColumn.defineColumn'),\n prop: 'customColumn',\n type: 'primary',\n onClick: () => {\n tableRef.value.openCustomColumnDialog()\n },\n })\n }\n list.forEach((item) => {\n if (item.onClick) {\n const clickFn = item.onClick\n item.onClick = () => {\n // 增加选中项\n const rows = tableRef.value.elTableRef.getSelectionRows()\n clickFn(rows)\n }\n }\n })\n\n const buttonsProps = computed(() => {\n return {\n list,\n ...props.buttonsProps,\n }\n })\n // 搜索\n const search = async (isInitSearch = false) => {\n // await validate()\n tableRef.value.search(isInitSearch)\n }\n // 清空\n const reset = async () => {\n resetFields()\n search(true)\n }\n const searchButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.search'),\n type: 'primary',\n onClick: search.bind(null, true),\n },\n {\n name: t('ep.searchListPage.clear'),\n onClick: reset,\n },\n ]\n return {\n buttonsProps,\n searchButtons,\n search,\n reset,\n }\n}\n"],"names":["props"],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare const EpTable: {
11
11
  type: string;
12
12
  props: Record<string, any>;
13
13
  filter: boolean;
14
+ editable: boolean | ((formData: Record<string, any>) => void);
14
15
  } & {} & {
15
16
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
16
17
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -64,7 +65,7 @@ export declare const EpTable: {
64
65
  }>[]>;
65
66
  default: () => never[];
66
67
  };
67
- readonly linkProps: {
68
+ readonly formatColumns: {
68
69
  type: import("vue").PropType<Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
69
70
  name: string;
70
71
  prop: string;
@@ -832,6 +833,7 @@ export declare const EpTable: {
832
833
  type: string;
833
834
  props: Record<string, any>;
834
835
  filter: boolean;
836
+ editable: boolean | ((formData: Record<string, any>) => void);
835
837
  } & {} & {
836
838
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
837
839
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -889,7 +891,7 @@ export declare const EpTable: {
889
891
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
890
892
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
891
893
  }>[];
892
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
894
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
893
895
  name: string;
894
896
  prop: string;
895
897
  permission: string;
@@ -937,6 +939,7 @@ export declare const EpTable: {
937
939
  type: string;
938
940
  props: Record<string, any>;
939
941
  filter: boolean;
942
+ editable: boolean | ((formData: Record<string, any>) => void);
940
943
  } & {} & {
941
944
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
942
945
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -990,7 +993,7 @@ export declare const EpTable: {
990
993
  }>[]>;
991
994
  default: () => never[];
992
995
  };
993
- readonly linkProps: {
996
+ readonly formatColumns: {
994
997
  type: import("vue").PropType<Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
995
998
  name: string;
996
999
  prop: string;
@@ -1758,6 +1761,7 @@ export declare const EpTable: {
1758
1761
  type: string;
1759
1762
  props: Record<string, any>;
1760
1763
  filter: boolean;
1764
+ editable: boolean | ((formData: Record<string, any>) => void);
1761
1765
  } & {} & {
1762
1766
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1763
1767
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1815,7 +1819,7 @@ export declare const EpTable: {
1815
1819
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1816
1820
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
1817
1821
  }>[];
1818
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1822
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
1819
1823
  name: string;
1820
1824
  prop: string;
1821
1825
  permission: string;
@@ -1889,7 +1893,7 @@ export declare const EpTable: {
1889
1893
  type: import("vue").PropType<import("packages/el-plus/index.js").ButtonProps[]>;
1890
1894
  default: () => never[];
1891
1895
  };
1892
- readonly linkProps: {
1896
+ readonly formatColumns: {
1893
1897
  type: import("vue").PropType<import("packages/el-plus/index.js").ButtonProps[]>;
1894
1898
  default: () => never[];
1895
1899
  };
@@ -2645,6 +2649,7 @@ export declare const EpTable: {
2645
2649
  type: string;
2646
2650
  props: Record<string, any>;
2647
2651
  filter: boolean;
2652
+ editable: boolean | ((formData: Record<string, any>) => void);
2648
2653
  } & {} & {
2649
2654
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2650
2655
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2702,7 +2707,7 @@ export declare const EpTable: {
2702
2707
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2703
2708
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
2704
2709
  }>[];
2705
- readonly linkProps: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
2710
+ readonly formatColumns: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
2706
2711
  name: string;
2707
2712
  prop: string;
2708
2713
  permission: string;
@@ -11,6 +11,7 @@ export type TableColumn = Partial<TableColumnCtx & {
11
11
  type: string;
12
12
  props: Record<string, any>;
13
13
  filter: boolean;
14
+ editable: boolean | ((formData: Record<string, any>) => void);
14
15
  [key: string]: any;
15
16
  } & VisibleProps>;
16
17
  export type TableScope<T extends Record<string, unknown> = Record<string, unknown>> = {
@@ -60,7 +61,7 @@ export declare const tableProps: {
60
61
  type: PropType<ButtonProps[]>;
61
62
  default: () => never[];
62
63
  };
63
- readonly linkProps: {
64
+ readonly formatColumns: {
64
65
  type: PropType<ButtonProps[]>;
65
66
  default: () => never[];
66
67
  };
@@ -75,8 +75,8 @@ const expandTableProps = {
75
75
  type: Array,
76
76
  default: () => []
77
77
  },
78
- // 链接列
79
- linkProps: {
78
+ // 格式化列
79
+ formatColumns: {
80
80
  type: Array,
81
81
  default: () => []
82
82
  },
@@ -1 +1 @@
1
- {"version":3,"file":"table.mjs","sources":["../../../../../../packages/components/table/src/table.ts"],"sourcesContent":["import type { PropType, ExtractPublicPropTypes } from 'vue'\nimport elTableProps from 'element-plus/es/components/table/src/table/defaults'\nimport { ElTable } from 'element-plus'\nimport { apiProps, type VisibleProps } from '@el-plus/utils/props'\nimport type { WithOnPrefixAndCamelCase } from '@el-plus/types'\nimport type {\n TableColumnCtx,\n PaginationProps,\n PaginationEmits,\n} from 'element-plus'\nimport type { ButtonProps } from '@el-plus/components/buttons'\nimport { customColumnProps } from '@el-plus/components/custom-column'\nconst inheritTableProps = {\n ...elTableProps,\n // Table 的尺寸\n size: {\n ...elTableProps.size,\n default: 'default',\n },\n // 是否带有纵向边框\n border: {\n ...elTableProps.border,\n default: true,\n },\n // 表头样式\n headerCellStyle: {\n ...elTableProps.headerCellStyle,\n default: () => ({\n background: '#EEEFF3',\n // textAlign: 'center',\n fontSize: '14px',\n color: '#505050',\n }),\n },\n}\nexport type TableColumn = Partial<\n TableColumnCtx & {\n required: boolean | (() => boolean)\n cellRequired: (scope: TableScope) => boolean\n headerRender: TableColumnCtx['renderHeader']\n disabled: boolean | ((scope: TableScope) => boolean)\n type: string\n props: Record<string, any> // eslint-disable-line @typescript-eslint/no-explicit-any\n filter: boolean // 是否显示筛选\n [key: string]: any\n } & VisibleProps\n>\nexport type TableScope<\n T extends Record<string, unknown> = Record<string, unknown>,\n> = {\n column: TableColumnCtx<T>\n row: T\n $index: number\n store: unknown\n _self: unknown\n}\nconst expandTableProps = {\n ...apiProps,\n columns: {\n type: Array as PropType<TableColumn[]>,\n default: () => [],\n },\n // 是否显示复选勾选列\n showSelectionCol: Boolean,\n // 是否显示单选勾选列\n showSingleSelectionCol: Boolean,\n // 是否显示序号列\n showIndexCol: {\n type: Boolean,\n default: true,\n },\n // 对齐方式\n align: {\n type: String as PropType<'left' | 'center' | 'right'>,\n default: 'center',\n },\n // 最小宽度\n minWidth: {\n type: [Number, String] as PropType<TableColumnCtx['minWidth']>,\n },\n // 操作列宽度\n actionColWidth: {\n type: [Number, String] as PropType<TableColumnCtx['width']>,\n default: 200,\n },\n // 序号列自定义\n indexFormatter: {\n type: [Number, Function] as PropType<TableColumnCtx['index']>,\n },\n disabled: Boolean,\n reserveSelection: Boolean,\n selectable: {\n type: Function as PropType<TableColumnCtx['selectable']>,\n },\n paginationProps: {\n type: Object as PropType<\n Partial<PaginationProps & WithOnPrefixAndCamelCase<PaginationEmits>>\n >,\n default: () => ({}),\n },\n showPagination: Boolean,\n isFrontPage: Boolean,\n // 操作列\n actionButtons: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n // 链接列\n linkProps: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n // 是否初始化加载数据\n isInitSearch: {\n type: Boolean,\n default: true,\n },\n // 自定义列模块\n customColumnModule: {\n ...customColumnProps.module,\n },\n}\n\nexport const tableProps = {\n ...inheritTableProps,\n ...expandTableProps,\n} as const\nexport type TableProps = ExtractPublicPropTypes<typeof tableProps>\nexport const expandTablePropsKeys = Object.keys(expandTableProps)\n\nexport const tableEmits = [...ElTable.emits!, 'single-selection-change']\nexport type TableEmits = typeof tableEmits\nexport const tableEmitsKeys = tableEmits\n"],"names":[],"mappings":";;;;;AAYA,MAAM,iBAAA,GAAoB;AAAA,EACxB,GAAG,YAAA;AAAA;AAAA,EAEH,IAAA,EAAM;AAAA,IACJ,GAAG,YAAA,CAAa,IAAA;AAAA,IAChB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,GAAG,YAAA,CAAa,MAAA;AAAA,IAChB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,eAAA,EAAiB;AAAA,IACf,GAAG,YAAA,CAAa,eAAA;AAAA,IAChB,SAAS,OAAO;AAAA,MACd,UAAA,EAAY,SAAA;AAAA;AAAA,MAEZ,QAAA,EAAU,MAAA;AAAA,MACV,KAAA,EAAO;AAAA,KACT;AAAA;AAEJ,CAAA;AAsBA,MAAM,gBAAA,GAAmB;AAAA,EACvB,GAAG,QAAA;AAAA,EACH,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,gBAAA,EAAkB,OAAA;AAAA;AAAA,EAElB,sBAAA,EAAwB,OAAA;AAAA;AAAA,EAExB,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM;AAAA,GACvB;AAAA;AAAA,EAEA,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IACrB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,CAAC,MAAA,EAAQ,QAAQ;AAAA,GACzB;AAAA,EACA,QAAA,EAAU,OAAA;AAAA,EACV,gBAAA,EAAkB,OAAA;AAAA,EAClB,UAAA,EAAY;AAAA,IACV,IAAA,EAAM;AAAA,GACR;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,MAAA;AAAA,IAGN,OAAA,EAAS,OAAO,EAAC;AAAA,GACnB;AAAA,EACA,cAAA,EAAgB,OAAA;AAAA,EAChB,WAAA,EAAa,OAAA;AAAA;AAAA,EAEb,aAAA,EAAe;AAAA,IACb,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,kBAAA,EAAoB;AAAA,IAClB,GAAG,iBAAA,CAAkB;AAAA;AAEzB,CAAA;AAEO,MAAM,UAAA,GAAa;AAAA,EACxB,GAAG,iBAAA;AAAA,EACH,GAAG;AACL;AAEO,MAAM,oBAAA,GAAuB,MAAA,CAAO,IAAA,CAAK,gBAAgB;AAEzD,MAAM,UAAA,GAAa,CAAC,GAAG,OAAA,CAAQ,OAAQ,yBAAyB;AAEhE,MAAM,cAAA,GAAiB;;;;"}
1
+ {"version":3,"file":"table.mjs","sources":["../../../../../../packages/components/table/src/table.ts"],"sourcesContent":["import type { PropType, ExtractPublicPropTypes } from 'vue'\nimport elTableProps from 'element-plus/es/components/table/src/table/defaults'\nimport { ElTable } from 'element-plus'\nimport { apiProps, type VisibleProps } from '@el-plus/utils/props'\nimport type { WithOnPrefixAndCamelCase } from '@el-plus/types'\nimport type {\n TableColumnCtx,\n PaginationProps,\n PaginationEmits,\n} from 'element-plus'\nimport type { ButtonProps } from '@el-plus/components/buttons'\nimport { customColumnProps } from '@el-plus/components/custom-column'\nconst inheritTableProps = {\n ...elTableProps,\n // Table 的尺寸\n size: {\n ...elTableProps.size,\n default: 'default',\n },\n // 是否带有纵向边框\n border: {\n ...elTableProps.border,\n default: true,\n },\n // 表头样式\n headerCellStyle: {\n ...elTableProps.headerCellStyle,\n default: () => ({\n background: '#EEEFF3',\n // textAlign: 'center',\n fontSize: '14px',\n color: '#505050',\n }),\n },\n}\nexport type TableColumn = Partial<\n TableColumnCtx & {\n required: boolean | (() => boolean)\n cellRequired: (scope: TableScope) => boolean\n headerRender: TableColumnCtx['renderHeader']\n disabled: boolean | ((scope: TableScope) => boolean)\n type: string\n props: Record<string, any> // eslint-disable-line @typescript-eslint/no-explicit-any\n filter: boolean // 是否显示筛选\n editable: boolean | ((formData: Record<string, any>) => void) // 是否可批量编辑\n [key: string]: any\n } & VisibleProps\n>\nexport type TableScope<\n T extends Record<string, unknown> = Record<string, unknown>,\n> = {\n column: TableColumnCtx<T>\n row: T\n $index: number\n store: unknown\n _self: unknown\n}\nconst expandTableProps = {\n ...apiProps,\n columns: {\n type: Array as PropType<TableColumn[]>,\n default: () => [],\n },\n // 是否显示复选勾选列\n showSelectionCol: Boolean,\n // 是否显示单选勾选列\n showSingleSelectionCol: Boolean,\n // 是否显示序号列\n showIndexCol: {\n type: Boolean,\n default: true,\n },\n // 对齐方式\n align: {\n type: String as PropType<'left' | 'center' | 'right'>,\n default: 'center',\n },\n // 最小宽度\n minWidth: {\n type: [Number, String] as PropType<TableColumnCtx['minWidth']>,\n },\n // 操作列宽度\n actionColWidth: {\n type: [Number, String] as PropType<TableColumnCtx['width']>,\n default: 200,\n },\n // 序号列自定义\n indexFormatter: {\n type: [Number, Function] as PropType<TableColumnCtx['index']>,\n },\n disabled: Boolean,\n reserveSelection: Boolean,\n selectable: {\n type: Function as PropType<TableColumnCtx['selectable']>,\n },\n paginationProps: {\n type: Object as PropType<\n Partial<PaginationProps & WithOnPrefixAndCamelCase<PaginationEmits>>\n >,\n default: () => ({}),\n },\n showPagination: Boolean,\n isFrontPage: Boolean,\n // 操作列\n actionButtons: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n // 格式化列\n formatColumns: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n // 是否初始化加载数据\n isInitSearch: {\n type: Boolean,\n default: true,\n },\n // 自定义列模块\n customColumnModule: {\n ...customColumnProps.module,\n },\n}\n\nexport const tableProps = {\n ...inheritTableProps,\n ...expandTableProps,\n} as const\nexport type TableProps = ExtractPublicPropTypes<typeof tableProps>\nexport const expandTablePropsKeys = Object.keys(expandTableProps)\n\nexport const tableEmits = [...ElTable.emits!, 'single-selection-change']\nexport type TableEmits = typeof tableEmits\nexport const tableEmitsKeys = tableEmits\n"],"names":[],"mappings":";;;;;AAYA,MAAM,iBAAA,GAAoB;AAAA,EACxB,GAAG,YAAA;AAAA;AAAA,EAEH,IAAA,EAAM;AAAA,IACJ,GAAG,YAAA,CAAa,IAAA;AAAA,IAChB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,GAAG,YAAA,CAAa,MAAA;AAAA,IAChB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,eAAA,EAAiB;AAAA,IACf,GAAG,YAAA,CAAa,eAAA;AAAA,IAChB,SAAS,OAAO;AAAA,MACd,UAAA,EAAY,SAAA;AAAA;AAAA,MAEZ,QAAA,EAAU,MAAA;AAAA,MACV,KAAA,EAAO;AAAA,KACT;AAAA;AAEJ,CAAA;AAuBA,MAAM,gBAAA,GAAmB;AAAA,EACvB,GAAG,QAAA;AAAA,EACH,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,gBAAA,EAAkB,OAAA;AAAA;AAAA,EAElB,sBAAA,EAAwB,OAAA;AAAA;AAAA,EAExB,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM;AAAA,GACvB;AAAA;AAAA,EAEA,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IACrB,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,CAAC,MAAA,EAAQ,QAAQ;AAAA,GACzB;AAAA,EACA,QAAA,EAAU,OAAA;AAAA,EACV,gBAAA,EAAkB,OAAA;AAAA,EAClB,UAAA,EAAY;AAAA,IACV,IAAA,EAAM;AAAA,GACR;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,MAAA;AAAA,IAGN,OAAA,EAAS,OAAO,EAAC;AAAA,GACnB;AAAA,EACA,cAAA,EAAgB,OAAA;AAAA,EAChB,WAAA,EAAa,OAAA;AAAA;AAAA,EAEb,aAAA,EAAe;AAAA,IACb,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,aAAA,EAAe;AAAA,IACb,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,kBAAA,EAAoB;AAAA,IAClB,GAAG,iBAAA,CAAkB;AAAA;AAEzB,CAAA;AAEO,MAAM,UAAA,GAAa;AAAA,EACxB,GAAG,iBAAA;AAAA,EACH,GAAG;AACL;AAEO,MAAM,oBAAA,GAAuB,MAAA,CAAO,IAAA,CAAK,gBAAgB;AAEzD,MAAM,UAAA,GAAa,CAAC,GAAG,OAAA,CAAQ,OAAQ,yBAAyB;AAEhE,MAAM,cAAA,GAAiB;;;;"}