fast-element-plus 1.0.2 → 1.0.4

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 (92) hide show
  1. package/dist/index.full.js +159 -104
  2. package/dist/index.full.js.map +1 -1
  3. package/dist/index.full.min.js +1 -1
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +1 -1
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +159 -104
  8. package/dist/index.full.mjs.map +1 -1
  9. package/dist/styles/index.css +1 -1
  10. package/es/components/avatar/src/avatar.d.ts +10 -9
  11. package/es/components/avatar/src/avatar.mjs +1 -1
  12. package/es/components/avatar/src/avatar.mjs.map +1 -1
  13. package/es/components/button/src/button.d.ts +4 -4
  14. package/es/components/carNumber/src/carNumber.d.ts +3 -3
  15. package/es/components/dialog/src/dialog.mjs +1 -1
  16. package/es/components/dialog/src/dialog.mjs.map +1 -1
  17. package/es/components/drawer/src/drawer.mjs +1 -1
  18. package/es/components/drawer/src/drawer.mjs.map +1 -1
  19. package/es/components/form/src/formItem.d.ts +18 -4
  20. package/es/components/image/src/image.d.ts +7 -0
  21. package/es/components/image/src/image.mjs +1 -1
  22. package/es/components/image/src/image.mjs.map +1 -1
  23. package/es/components/index.mjs +1 -1
  24. package/es/components/table/index.d.ts +2 -2
  25. package/es/components/table/index.mjs +1 -1
  26. package/es/components/table/index.mjs.map +1 -1
  27. package/es/components/table/src/table.d.ts +45 -11
  28. package/es/components/table/src/table.mjs +1 -1
  29. package/es/components/table/src/table.mjs.map +1 -1
  30. package/es/components/table/src/table.state.d.ts +0 -4
  31. package/es/components/table/src/table.type.d.ts +3 -62
  32. package/es/components/table/src/table.type.mjs.map +1 -1
  33. package/es/components/table/src/tableColumn.d.ts +9 -0
  34. package/es/components/table/src/tableColumn.mjs +1 -1
  35. package/es/components/table/src/tableColumn.mjs.map +1 -1
  36. package/es/components/table/src/tableColumnSettingDialog.d.ts +3 -3
  37. package/es/components/table/src/tableColumnSettingDialog.mjs +1 -1
  38. package/es/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
  39. package/es/components/table/src/useTable.mjs +1 -1
  40. package/es/components/table/src/useTable.mjs.map +1 -1
  41. package/es/components/table/utils/table.mjs +1 -1
  42. package/es/components/table/utils/table.mjs.map +1 -1
  43. package/es/components/upload/src/upload.d.ts +4 -4
  44. package/es/components/uploadImage/src/uploadImage.d.ts +4 -4
  45. package/es/components/uploadImages/src/uploadImages.d.ts +4 -4
  46. package/es/index.mjs +1 -1
  47. package/es/index.mjs.map +1 -1
  48. package/es/version.d.ts +1 -1
  49. package/es/version.mjs +1 -1
  50. package/es/version.mjs.map +1 -1
  51. package/lib/components/avatar/src/avatar.d.ts +10 -9
  52. package/lib/components/avatar/src/avatar.js +1 -1
  53. package/lib/components/avatar/src/avatar.js.map +1 -1
  54. package/lib/components/button/src/button.d.ts +4 -4
  55. package/lib/components/carNumber/src/carNumber.d.ts +3 -3
  56. package/lib/components/dialog/src/dialog.js +1 -1
  57. package/lib/components/dialog/src/dialog.js.map +1 -1
  58. package/lib/components/drawer/src/drawer.js +1 -1
  59. package/lib/components/drawer/src/drawer.js.map +1 -1
  60. package/lib/components/form/src/formItem.d.ts +18 -4
  61. package/lib/components/image/src/image.d.ts +7 -0
  62. package/lib/components/image/src/image.js +1 -1
  63. package/lib/components/image/src/image.js.map +1 -1
  64. package/lib/components/index.js +1 -1
  65. package/lib/components/table/index.d.ts +2 -2
  66. package/lib/components/table/index.js +1 -1
  67. package/lib/components/table/index.js.map +1 -1
  68. package/lib/components/table/src/table.d.ts +45 -11
  69. package/lib/components/table/src/table.js +1 -1
  70. package/lib/components/table/src/table.js.map +1 -1
  71. package/lib/components/table/src/table.state.d.ts +0 -4
  72. package/lib/components/table/src/table.type.d.ts +3 -62
  73. package/lib/components/table/src/table.type.js.map +1 -1
  74. package/lib/components/table/src/tableColumn.d.ts +9 -0
  75. package/lib/components/table/src/tableColumn.js +1 -1
  76. package/lib/components/table/src/tableColumn.js.map +1 -1
  77. package/lib/components/table/src/tableColumnSettingDialog.d.ts +3 -3
  78. package/lib/components/table/src/tableColumnSettingDialog.js +1 -1
  79. package/lib/components/table/src/tableColumnSettingDialog.js.map +1 -1
  80. package/lib/components/table/src/useTable.js +1 -1
  81. package/lib/components/table/src/useTable.js.map +1 -1
  82. package/lib/components/table/utils/table.js +1 -1
  83. package/lib/components/table/utils/table.js.map +1 -1
  84. package/lib/components/upload/src/upload.d.ts +4 -4
  85. package/lib/components/uploadImage/src/uploadImage.d.ts +4 -4
  86. package/lib/components/uploadImages/src/uploadImages.d.ts +4 -4
  87. package/lib/index.js +1 -1
  88. package/lib/version.d.ts +1 -1
  89. package/lib/version.js +1 -1
  90. package/lib/version.js.map +1 -1
  91. package/package.json +5 -5
  92. package/styles/components/table.scss +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../packages/components/table/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from \"@fast-china/utils\";\nimport Table, { tableProps } from \"./src/table\";\nimport TableColumn, { tableColumnProps } from \"./src/tableColumn\";\nimport TableColumnsSettingDialog from \"./src/tableColumnSettingDialog\";\nimport TablePagination from \"./src/tablePagination\";\nimport TableSearchForm from \"./src/tableSearchForm\";\nimport TableSearchFormItem from \"./src/tableSearchFormItem\";\nimport type { faTableEmits, faTableProps } from \"./src/table\";\nimport type { ExtractPropTypes } from \"vue\";\n\nexport const FaTable = withInstall(Table, {\n\tTableColumn,\n\tTableColumnsSettingDialog,\n\tTablePagination,\n\tTableSearchForm,\n\tTableSearchFormItem,\n});\nexport default FaTable;\n\nexport const FaTableColumn = withNoopInstall(TableColumn);\n\nexport * from \"./src/page.type\";\nexport * from \"./src/table.state\";\nexport * from \"./src/table.type\";\n\nexport { tableProps, tableColumnProps, faTableProps, faTableEmits };\n\nexport type FaTableInstance = InstanceType<typeof Table>;\n\nexport type FaTableProps = ExtractPropTypes<typeof faTableProps>;\n\nexport type FaTableEmits = typeof faTableEmits;\n\nexport type FaTableColumnInstance = InstanceType<typeof TableColumn>;\n\nexport * from \"./utils/table\";\n"],"names":["FaTable","withInstall","Table","TableColumn","TableColumnsSettingDialog","TablePagination","TableSearchForm","TableSearchFormItem","FaTableColumn","withNoopInstall"],"mappings":"kmBAUO,MAAMA,EAAUC,EAAYC,EAAO,CACzCC,cACAC,4BACAC,kBACAC,kBACAC,wBAIYC,EAAgBC,EAAgBN"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../packages/components/table/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from \"@fast-china/utils\";\nimport Table, { type FaTableSlots, faTableEmits, faTableProps, tableProps } from \"./src/table\";\nimport TableColumn, { tableColumnProps } from \"./src/tableColumn\";\nimport TableColumnsSettingDialog from \"./src/tableColumnSettingDialog\";\nimport TablePagination from \"./src/tablePagination\";\nimport TableSearchForm from \"./src/tableSearchForm\";\nimport TableSearchFormItem from \"./src/tableSearchFormItem\";\nimport type { ExtractPropTypes } from \"vue\";\n\nexport const FaTable = withInstall(Table, {\n\tTableColumn,\n\tTableColumnsSettingDialog,\n\tTablePagination,\n\tTableSearchForm,\n\tTableSearchFormItem,\n});\nexport default FaTable;\n\nexport const FaTableColumn = withNoopInstall(TableColumn);\n\nexport * from \"./src/page.type\";\nexport * from \"./src/table.state\";\nexport * from \"./src/table.type\";\n\nexport { tableProps, tableColumnProps, faTableProps, faTableEmits, FaTableSlots };\n\nexport type FaTableInstance = InstanceType<typeof Table>;\n\nexport type FaTableProps = ExtractPropTypes<typeof faTableProps>;\n\nexport type FaTableEmits = typeof faTableEmits;\n\nexport type FaTableColumnInstance = InstanceType<typeof TableColumn>;\n\nexport * from \"./utils/table\";\n"],"names":["FaTable","withInstall","Table","TableColumn","TableColumnsSettingDialog","TablePagination","TableSearchForm","TableSearchFormItem","FaTableColumn","withNoopInstall"],"mappings":"soBASO,MAAMA,EAAUC,EAAYC,EAAO,CACzCC,cACAC,4BACAC,kBACAC,kBACAC,wBAIYC,EAAgBC,EAAgBN"}
@@ -1,4 +1,4 @@
1
- import { FaTableChangeColumnsCtx, FaTableColumnCtx, FaTableDataRange, FaTableDefaultSlotsResult } from './table.type';
1
+ import { FaTableColumnCtx, FaTableDataRange, FaTableDefaultSlotsResult } from './table.type';
2
2
  import { PagedInput, PagedResult } from '../src/page.type';
3
3
  import { FaLayoutGridBreakPoint } from '../../layoutGrid';
4
4
  import { TableColumnCtx, TableProps } from 'element-plus';
@@ -246,18 +246,28 @@ export declare const faTableProps: {
246
246
  initParam: PropType<any>;
247
247
  /** @description 列配置 */
248
248
  columns: {
249
- type: PropType<FaTableColumnCtx[]>;
250
- default: () => FaTableColumnCtx[];
249
+ type: PropType<false | FaTableColumnCtx[]>;
250
+ default: () => FaTableColumnCtx[] | false;
251
251
  };
252
252
  /** @description 表格列改变 */
253
253
  columnsChange: {
254
- type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
254
+ type: PropType<(columns: FaTableColumnCtx[]) => Promise<void>>;
255
255
  };
256
256
  /** @description 搜索表单 Grid布局列配置 */
257
257
  searchFormCols: {
258
258
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
259
259
  default: () => string | number | Record<FaLayoutGridBreakPoint, number>;
260
260
  };
261
+ /** @description 折叠搜素 */
262
+ collapsedSearch: {
263
+ type: BooleanConstructor;
264
+ default: boolean;
265
+ };
266
+ /** @description 高级搜素抽屉 */
267
+ advancedSearchDrawer: {
268
+ type: BooleanConstructor;
269
+ default: boolean;
270
+ };
261
271
  /** @description 搜索表单 */
262
272
  searchForm: {
263
273
  type: BooleanConstructor;
@@ -585,6 +595,8 @@ export type FaTableSlots = {
585
595
  };
586
596
  /** @description 表格页脚插槽 */
587
597
  footer: FaTableDefaultSlotsResult;
598
+ /** @description 列配置 */
599
+ columnSetting: never;
588
600
  } & {
589
601
  [key: string]: FaTableDefaultSlotsResult & {
590
602
  /** @description slots为表格内容的时候才会返回 */
@@ -640,18 +652,28 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
640
652
  initParam: PropType<any>;
641
653
  /** @description 列配置 */
642
654
  columns: {
643
- type: PropType<FaTableColumnCtx[]>;
644
- default: () => FaTableColumnCtx[];
655
+ type: PropType<false | FaTableColumnCtx[]>;
656
+ default: () => FaTableColumnCtx[] | false;
645
657
  };
646
658
  /** @description 表格列改变 */
647
659
  columnsChange: {
648
- type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
660
+ type: PropType<(columns: FaTableColumnCtx[]) => Promise<void>>;
649
661
  };
650
662
  /** @description 搜索表单 Grid布局列配置 */
651
663
  searchFormCols: {
652
664
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
653
665
  default: () => string | number | Record<FaLayoutGridBreakPoint, number>;
654
666
  };
667
+ /** @description 折叠搜素 */
668
+ collapsedSearch: {
669
+ type: BooleanConstructor;
670
+ default: boolean;
671
+ };
672
+ /** @description 高级搜素抽屉 */
673
+ advancedSearchDrawer: {
674
+ type: BooleanConstructor;
675
+ default: boolean;
676
+ };
655
677
  /** @description 搜索表单 */
656
678
  searchForm: {
657
679
  type: BooleanConstructor;
@@ -1054,18 +1076,28 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1054
1076
  initParam: PropType<any>;
1055
1077
  /** @description 列配置 */
1056
1078
  columns: {
1057
- type: PropType<FaTableColumnCtx[]>;
1058
- default: () => FaTableColumnCtx[];
1079
+ type: PropType<false | FaTableColumnCtx[]>;
1080
+ default: () => FaTableColumnCtx[] | false;
1059
1081
  };
1060
1082
  /** @description 表格列改变 */
1061
1083
  columnsChange: {
1062
- type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
1084
+ type: PropType<(columns: FaTableColumnCtx[]) => Promise<void>>;
1063
1085
  };
1064
1086
  /** @description 搜索表单 Grid布局列配置 */
1065
1087
  searchFormCols: {
1066
1088
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
1067
1089
  default: () => string | number | Record<FaLayoutGridBreakPoint, number>;
1068
1090
  };
1091
+ /** @description 折叠搜素 */
1092
+ collapsedSearch: {
1093
+ type: BooleanConstructor;
1094
+ default: boolean;
1095
+ };
1096
+ /** @description 高级搜素抽屉 */
1097
+ advancedSearchDrawer: {
1098
+ type: BooleanConstructor;
1099
+ default: boolean;
1100
+ };
1069
1101
  /** @description 搜索表单 */
1070
1102
  searchForm: {
1071
1103
  type: BooleanConstructor;
@@ -1347,7 +1379,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1347
1379
  style: CSSProperties;
1348
1380
  lazy: boolean;
1349
1381
  className: string;
1350
- columns: FaTableColumnCtx[];
1382
+ columns: false | FaTableColumnCtx[];
1351
1383
  scrollbarAlwaysOn: boolean;
1352
1384
  defaultExpandAll: boolean;
1353
1385
  indent: number;
@@ -1358,6 +1390,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1358
1390
  highlightCurrentRow: boolean;
1359
1391
  tableKey: string;
1360
1392
  searchFormCols: string | number | Record<FaLayoutGridBreakPoint, number>;
1393
+ collapsedSearch: boolean;
1394
+ advancedSearchDrawer: boolean;
1361
1395
  searchForm: boolean;
1362
1396
  headerCard: boolean;
1363
1397
  refreshBtn: boolean;
@@ -1,2 +1,2 @@
1
- import{isVNode as e,defineComponent as a,ref as t,onMounted as l,watch as n,watchEffect as o,onActivated as i,computed as r,createVNode as s,withDirectives as c,Fragment as d,mergeProps as u,createTextVNode as m,resolveDirective as h}from"vue";import{useSizeProp as g,ElInput as p,ElDatePicker as f,ElButton as b,ElDropdown as C,ElDropdownMenu as w,ElTable as _,ElTableColumn as y,ElIcon as S,ElPagination as v,ElImageViewer as x}from"element-plus";import{Search as P,Refresh as L,Eleme as I,Setting as F,More as B}from"@element-plus/icons-vue";import{NotData as R}from"@fast-element-plus/icons-vue";import{definePropType as O,stringUtil as T,consoleWarn as k,clickUtil as D,useProps as N,useRender as E,dateUtil as j,useExpose as M,makeSlots as z}from"@fast-china/utils";import{isString as K,isObject as A,isNumber as H,isBoolean as $,isArray as V,isNull as W,isFunction as U,pick as Y,omit as q}from"lodash-unified";import{getTableDefaultSlots as G}from"./table.type.mjs";import J from"./tableColumn.mjs";import Q from"./tableColumnSettingDialog.mjs";import X from"./tablePagination.mjs";import Z from"./tableSearchForm.mjs";import{useTable as ee}from"./useTable.mjs";const ae={data:{type:Array,default:()=>[]},size:g,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children",checkStrictly:!1})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:Boolean,flexible:Boolean,showOverflowTooltip:[Boolean,Object],scrollbarTabindex:{type:[Number,String],default:void 0}},te={...ae,border:{type:Boolean,default:!0},highlightCurrentRow:{type:Boolean,default:!0},rowKey:{type:[String,Function],default:"id"},spanMethod:{type:Function,validator:()=>(k("FaTable","'spanMethod' 属性,组件已经封装,外部使用会失效。"),!1)},tableKey:{type:String,default:()=>T.generateRandomString(8)},data:{type:O(Array),default:()=>[]},requestApi:{type:O(Function)},dataCallback:{type:O(Function)},initParam:O([String,Number,Object]),columns:{type:O([Array,Boolean]),default:()=>[]},columnsChange:{type:O(Function)},searchFormCols:{type:O([String,Number,Object]),default:()=>({xs:3,sm:3,md:4,lg:5,xl:6})},searchForm:{type:Boolean,default:!0},headerCard:{type:Boolean,default:!0},refreshBtn:{type:Boolean,default:!0},searchBtn:{type:Boolean,default:!0},columnSettingBtn:{type:Boolean,default:!0},toolBtn:{type:Boolean,default:!0},hideSearchTime:Boolean,dataSearchRange:{type:O(String),default:"Past3D"},pagination:{type:Boolean,default:!0},hideImage:Boolean,single:Boolean,rowClickSelection:Boolean,treeData:Boolean,props:{type:O(Object),default:()=>({span:void 0,children:"children"})},autoRefresh:{type:Boolean,default:!0},rowSelectable:Function},le={select:(e,a)=>V(e)&&A(a),selectAll:e=>V(e),selectionChange:e=>V(e),cellMouseEnter:(e,a,t,l)=>A(e)&&A(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellMouseLeave:(e,a,t,l)=>A(e)&&A(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellClick:(e,a,t,l)=>A(e)&&A(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellDblclick:(e,a,t,l)=>A(e)&&A(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellContextmenu:(e,a,t,l)=>A(e)&&A(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,rowClick:(e,a,t)=>A(e)&&A(a)&&t instanceof Event,rowContextmenu:(e,a,t)=>A(e)&&A(a)&&t instanceof Event,rowDblclick:(e,a,t)=>A(e)&&A(a)&&t instanceof Event,headerClick:(e,a)=>A(e)&&a instanceof Event,headerContextmenu:(e,a)=>A(e)&&a instanceof Event,sortChange:e=>A(e),filterChange:e=>K(e)||H(e)||$(e)||A(e),currentChange:(e,a)=>A(e)&&(W(a)||A(a)),headerDragend:(e,a,t,l)=>H(e)&&H(a)&&A(t)&&l instanceof MouseEvent,expandChange:(e,a)=>A(e)&&($(a)||V(a)),refresh:e=>A(e),reset:e=>A(e),sizeChange:e=>H(e),paginationChange:(e,a)=>H(e)&&H(a),customCellClick:(e,{row:a,column:t,$index:l})=>K(e)&&A(a)&&A(t)&&H(l)},ne=/* @__PURE__ */a({name:"FaTable",props:te,emits:le,slots:z(),setup(a,{attrs:g,slots:O,emit:T,expose:k}){const{_globalSize:z,state:A,elementRef:H,tableRef:$,handleTableColumnAutoWidth:V,loadTableColumns:W,handleSizeChange:te,handlePaginationChange:le,defaultSearchTime:ne,tableSearch:oe,tableReset:ie,doRender:re,doLoading:se,handleCustomCellClick:ce}=ee(a,O,T),de=t();let ue=0;const me=e=>{if(0===e&&(ue=0),A.spanColumns?.length>0){return 0===Number(A.tableSpanData["__table-index"][e])?ue+(A.tablePagination.pageIndex-1)*A.tablePagination.pageSize+1:(ue++,ue+(A.tablePagination.pageIndex-1)*A.tablePagination.pageSize)}return e+(A.tablePagination.pageIndex-1)*A.tablePagination.pageSize+1},he=(e,t)=>{a.single&&($.value.clearSelection(),e.length>0&&t&&$.value.toggleRowSelection(t)),T("select",e,t)},ge=e=>{a.single&&(A.selected?A.tableData.length>0&&($.value.clearSelection(),$.value.toggleRowSelection(A.tableData[0])):$.value.clearSelection()),T("selectAll",e)},pe=e=>{0===e.length?A.selected=!1:A.selected=!0,a.single&&e.length>0?A.selectedList=[e[e.length-1]]:A.selectedList=e,A.indeterminateSelectedListIds=A.indeterminateSelectedListIds.filter(e=>A.selectedListIds.some(a=>a===e)),T("selectionChange",A.selectedList)},fe=({column:e,prop:t,order:l})=>{e.multiOrder?"descending"===e.multiOrder?e.multiOrder="ascending":e.multiOrder=null:e.multiOrder="descending",A.searchParam.sortList=[.../* @__PURE__ */new Set([...a.initParam?.sortList??[],...A.searchParam?.sortList??[]])];const n=A.orgColumns.find(e=>e.prop===t),o=n.sortableField??n.prop??n.property,i=A.searchParam.sortList.findIndex(e=>e.enField===o);e.multiOrder?-1===i?A.searchParam.sortList.push({enField:o,cnField:n.label,mode:e.multiOrder}):A.searchParam.sortList[i].mode=e.multiOrder:A.searchParam.sortList.splice(i,1),0===A.searchParam.sortList.length&&delete A.searchParam.sortList,T("sortChange",{column:e,prop:t,order:e.multiOrder}),oe()},be=(e,t)=>{e&&(a.rowClickSelection&&(a.single&&t&&$.value.toggleRowSelection(t),$.value.toggleRowSelection(e)),T("currentChange",e,t))},Ce=({row:e,column:t,rowIndex:l,columnIndex:n})=>{let o=null;if("selection"===t.type){const t=U(a.rowKey)?a.rowKey(e):e[a.rowKey];A.indeterminateSelectedListIds.some(e=>e===t)&&(o="fa-table__selection-column__indeterminate")}const i=A.tableColumns.find(e=>e.prop===t.property);if(i?.dataDeleteField&&e&&!0===e[i.dataDeleteField]&&(o?o+=" fa-table__data-delete-column":o="fa-table__data-delete-column"),"submitInfo"===i?.type&&(o?o+=" fa-table__line-height-normal-column":o="fa-table__line-height-normal-column"),"date"!==i?.type&&"time"!==i?.type&&"dateTime"!==i?.type||i?.dateFix&&(o?o+=" fa-table__line-height-normal-column":o="fa-table__line-height-normal-column"),a.cellClassName){let i=null;return i=K(a.cellClassName)?a.cellClassName:a.cellClassName({row:e,column:t,rowIndex:l,columnIndex:n}),i?o?`${o} ${i}`:i:o}return o},we=({row:e,column:t,rowIndex:l,columnIndex:n})=>(t.order=t.multiOrder,a.headerCellClassName?U(a.headerCellClassName)?a.headerCellClassName({row:e,column:t,rowIndex:l,columnIndex:n}):a.headerCellClassName:null),_e=({row:e,column:a,rowIndex:t,columnIndex:l})=>{const n=a.property??a.columnKey;if(-1!==A.spanColumns.findIndex(e=>e.prop===n)){const e=Number(A.tableSpanData[n][t]);return e>0?{rowspan:e,colspan:1}:{rowspan:0,colspan:0}}return{rowspan:1,colspan:1}},ye=async(e,a,t,l)=>{A.orgColumns.forEach(a=>{t.property===a.prop&&(a.width=e,a.smallWidth=e)}),T("headerDragend",e,a,t,l),await D.debounceAsync(de.value.change,500)},Se=e=>{A.previewList=[e],A.imagePreview=!0};l(async()=>{A.initParam=a.initParam,W(),ne(),Object.keys(a.initParam??{}).forEach(e=>{A.searchParam[e]=a.initParam[e]}),await oe(),n(()=>a.initParam,()=>{Object.keys(a.initParam??{}).forEach(e=>{A.searchParam[e]=a.initParam[e]})},{deep:!0}),n(()=>a.data,async()=>{!a.requestApi&&a.autoRefresh&&await oe()},{deep:!0,immediate:!0}),o(async()=>{const e=H.value;if(e){const a=new ResizeObserver(e=>{for(const a of e){const{width:e,height:t}=a.contentRect;A.tableWidth=e,A.tableHeight=t}D.debounceAsync(async()=>{await V()},100)});return a.observe(e),()=>{a.disconnect()}}})}),i(async()=>{await V()});const ve=r(()=>A.searchColumns.filter(e=>e.search.slot).map(e=>e.search.slot)),xe=r(()=>A.tableColumns.filter(e=>e.slot).map(e=>e.slot)),Pe=["multiOrder","columnID","order","sortableField","disabledSortable","spanProp","pureSearch","search"],Le=N(a,ae,["data","spanMethod","headerCellClassName","cellClassName"]);return E(()=>s("div",{ref:H,class:["fa-table",`fa-table-${z.value}`,`fa-table__${a.tableKey??"notFound"}`,{fa__click__disabled:A.loading}],style:{"--fa-table-width":""+(A.tableWidth?`${A.tableWidth}px`:""),"--fa-table-height":""+(A.tableHeight?`${A.tableHeight}px`:"")}},[s(Z,{show:a.searchForm&&A.searchForm,cols:a.searchFormCols,search:oe,reset:ie},Y(O,ve.value)),O.topHeader&&s("div",{class:"el-card fa-table__header"},[O.topHeader({search:oe,...G(A)})]),s("div",{class:"el-card fa-table__main"},[a.headerCard&&s("div",{class:"fa-table__main-header"},[s("div",{class:"fa-table__main-header-left"},[O.header&&O.header({search:oe,...G(A)})]),s("div",{class:"fa-table__main-header-right"},[a.toolBtn&&s(d,null,[s("div",{class:"fa-table__main-header-right__div-search"},[s(p,{class:"fa-table__main-header-right__input-search",disabled:A.loading,prefixIcon:P,placeholder:"关键字搜索",modelValue:A.searchParam.searchValue,modelModifiers:{trim:!0},"onUpdate:modelValue":e=>A.searchParam.searchValue=e,clearable:!0,onCompositionupdate:e=>{A.searchValueUpdate=e.data},onCompositionend:e=>{A.searchValueUpdate=""},onChange:()=>oe()},null),s("div",{class:"fa-table__main-header-right__div-search__hidden"},[A.searchParam.searchValue,A.searchValueUpdate])]),a.requestApi&&!a.hideSearchTime&&s(f,{class:"fa-table__main-header-right__data-search",popperClass:"fa-table__main-header-right__data-search__popper",disabled:A.loading,type:"daterange",modelValue:A.searchParam.searchTimeList,"onUpdate:modelValue":e=>A.searchParam.searchTimeList=e,defaultTime:j.getDefaultTime(),shortcuts:j.getShortcuts(),valueFormat:"YYYY-MM-DD HH:mm:ss",disabledDate:j.getDisabledDate,clearable:!1,teleported:!1,unlinkPanels:!0,onChange:()=>oe()},null),O.toolButton&&O.toolButton({search:oe,...G(A)}),a.refreshBtn&&s(b,{loading:A.loading,loadingIcon:I,title:"刷新",circle:!0,icon:L,onClick:()=>oe()},null),a.searchBtn&&A.searchColumns.length>0&&s(b,{loading:A.loading,loadingIcon:I,title:A.searchForm?"隐藏搜索栏":"显示搜索栏",circle:!0,icon:P,onClick:()=>A.searchForm=!A.searchForm},null),a.columnSettingBtn&&!a.columns&&s(b,{loading:A.loading,loadingIcon:I,title:"表格列配置",circle:!0,icon:F,onClick:()=>de.value.open()},null),O.toolButtonAdv&&s(C,{title:"高级操作",trigger:"click"},{default:()=>s(b,{loading:A.loading,loadingIcon:I,circle:!0,icon:B},null),dropdown:()=>{let a;return s(w,null,"function"==typeof(t=a=O.toolButtonAdv({search:oe,...G(A)}))||"[object Object]"===Object.prototype.toString.call(t)&&!e(t)?a:{default:()=>[a]});var t}})])])]),c(s(_,u(Le.value,{ref:$,"element-loading-text":A.loadingText,data:A.tableData,spanMethod:_e,headerCellClassName:we,cellClassName:Ce,onSelectionChange:pe,onSortChange:fe,onSelect:he,onSelectAll:ge,onCurrentChange:be,onHeaderDragend:ye,onCellMouseEnter:(e,a,t,l)=>T("cellMouseEnter",e,a,t,l),onCellMouseLeave:(e,a,t,l)=>T("cellMouseLeave",e,a,t,l),onCellClick:(e,a,t,l)=>T("cellClick",e,a,t,l),onCellDblclick:(e,a,t,l)=>T("cellDblclick",e,a,t,l),onCellContextmenu:(e,a,t,l)=>T("cellContextmenu",e,a,t,l),onRowClick:(e,a,t)=>T("rowClick",e,a,t),onRowContextmenu:(e,a,t)=>T("rowContextmenu",e,a,t),onRowDblclick:(e,a,t)=>T("rowDblclick",e,a,t),onHeaderClick:(e,a)=>T("headerClick",e,a),onHeaderContextmenu:(e,a)=>T("headerContextmenu",e,a),onFilterChange:e=>T("filterChange",e),onExpandChange:(e,a)=>T("expandChange",e,a)}),{append:()=>O.append&&O.append(),empty:()=>s("div",{class:"fa-table__empty"},[O.empty?O.empty():s(d,null,[s(S,null,{default:()=>[s(R,null,null)]}),s("div",null,[m("暂无数据")])])]),default:()=>s(d,null,[s(y,{className:"fa-table__index-column",type:"index",fixed:"left",width:A.tablePagination.pageIndex*A.tablePagination.pageSize>=100?A.tablePagination.pageIndex*A.tablePagination.pageSize>=1e3?50:40:30,align:"center",index:me,showOverflowTooltip:!1,resizable:!1,columnKey:"__table-index"},null),s(y,{className:"fa-table__selection-column",type:"selection",fixed:"left",width:35,align:"center",reserveSelection:!0,showOverflowTooltip:!1,resizable:!1,columnKey:"__table-selection",selectable:a.rowSelectable},null),O.operation&&s(y,{fixed:"right",width:A.operationColumnWidth,headerAlign:"center",align:"left",showOverflowTooltip:!1,className:"fa-table__operation-column",resizable:!1,columnKey:"__table-operation"},{header:()=>s("div",{class:"fa-table__auto-width-column__cell-header __fa-table__auto-width-column__cell-header____table-operation"},[s("span",null,[m("操作")])]),default:({row:e,column:a,$index:t})=>s("div",{class:"fa-table__auto-width-column__cell __fa-table__auto-width-column__cell____table-operation"},[O.operation({row:e,column:a,$index:t,search:oe,...G(A)})])}),0===A.tableColumns?.length?O.default&&O.default():A.tableColumns.map(e=>e.show&&("expand"===e.type?s(y,u(e,{width:35,fixed:e.fixed??"left",resizable:!1}),{default:({row:a,column:t,$index:l})=>s(d,null,[e.render&&e.render({row:a,column:t,$index:l,...G(A)}),e.slot&&O[e.slot]&&O[e.slot]({row:a,column:t,$index:l,...G(A)})])}):e.prop&&s(J,u(q(e,Pe),{resizable:!0,onImagePreview:Se,onCustomCellClick:ce}),Y(O,xe.value))))])}),[[h("loading"),A.loading]]),s("div",{class:"fa-table__main-footer"},[s("div",{class:"fa-table__main-footer__left"},[O.footer&&O.footer({search:oe,...G(A)})]),O.pagination?O.pagination({pageIndex:A.tablePagination.pageIndex,pageSize:A.tablePagination.pageSize,totalRows:A.tablePagination.totalRows,handleSizeChange:te,handlePaginationChange:le}):s(d,null,[a.pagination?s(X,{onSizeChange:te,onCurrentChange:le},null):s(v,{class:"fa-table-pagination",size:"small",layout:"total",total:A.tableData.length},null)])])]),A.imagePreview&&s(x,{closeOnPressEscape:!0,hideOnClickModal:!0,teleported:!0,onClose:()=>A.imagePreview=!1,urlList:A.previewList},null),s(Q,{ref:de,save:a.columnsChange},null)])),M(k,{clearSelection:r(()=>$.value?.clearSelection),getSelectionRows:r(()=>$.value?.getSelectionRows),toggleRowSelection:r(()=>$.value?.toggleRowSelection),toggleAllSelection:r(()=>$.value?.toggleAllSelection),toggleRowExpansion:r(()=>$.value?.toggleRowExpansion),setCurrentRow:r(()=>$.value?.setCurrentRow),clearSort:r(()=>$.value?.clearSort),clearFilter:r(()=>$.value?.clearFilter),doLayout:r(()=>$.value?.doLayout),sort:r(()=>$.value?.sort),scrollTo:r(()=>$.value?.scrollTo),setScrollTop:r(()=>$.value?.setScrollTop),setScrollLeft:r(()=>$.value?.setScrollLeft),columns:r(()=>$.value?.columns),updateKeyChildren:r(()=>$.value?.updateKeyChildren),loading:r(()=>A.loading),tableData:r(()=>A.tableData),tablePagination:r(()=>A.tablePagination),searchParam:r(()=>A.searchParam),selected:r(()=>A.selected),selectedList:r(()=>A.selectedList),selectedListIds:r(()=>A.selectedListIds),indeterminateSelectedListIds:r(()=>A.indeterminateSelectedListIds),tableWidth:r(()=>A.tableWidth),tableHeight:r(()=>A.tableHeight),toggleRowIndeterminateSelection:(e,t)=>{const l=U(a.rowKey)?a.rowKey(e):e[a.rowKey],n=A.tableData.find(e=>U(a.rowKey)?a.rowKey(e):e[a.rowKey]===l);if(!0===t)A.indeterminateSelectedListIds.some(e=>e===l)||A.indeterminateSelectedListIds.push(l),$.value.toggleRowSelection(n,!0);else if(!1===t){const e=A.indeterminateSelectedListIds.findIndex(e=>e===l);e>=0&&A.indeterminateSelectedListIds.splice(e,1),$.value.toggleRowSelection(n,!1)}else{const e=A.indeterminateSelectedListIds.findIndex(e=>e===l);e>=0?A.indeterminateSelectedListIds.splice(e,1):A.indeterminateSelectedListIds.push(l),$.value.toggleRowSelection(n)}},refresh:oe,reset:ie,doRender:re,doLoading:se})}});export{ne as default,le as faTableEmits,te as faTableProps,ae as tableProps};
1
+ import{isVNode as e,defineComponent as a,ref as t,onMounted as l,watch as n,watchEffect as o,onActivated as i,computed as r,createVNode as s,withDirectives as c,Fragment as d,createTextVNode as u,mergeProps as m,resolveDirective as h}from"vue";import{useSizeProp as g,ElInput as p,ElDatePicker as f,ElButton as b,ElDropdown as C,ElDropdownMenu as w,ElDropdownItem as S,ElTable as _,ElTableColumn as y,ElIcon as v,ElPagination as x,ElImageViewer as P}from"element-plus";import{Search as I,Refresh as L,Eleme as B,Setting as F,More as R}from"@element-plus/icons-vue";import{NotData as O}from"@fast-element-plus/icons-vue";import{definePropType as T,stringUtil as k,consoleWarn as D,clickUtil as N,useProps as E,useRender as j,dateUtil as M,useExpose as z,makeSlots as K}from"@fast-china/utils";import{isString as A,isObject as H,isNumber as $,isBoolean as V,isArray as W,isNull as U,isFunction as Y,pick as q,omit as G}from"lodash-unified";import{getTableDefaultSlots as J}from"./table.type.mjs";import Q from"./tableColumn.mjs";import X from"./tableColumnSettingDialog.mjs";import Z from"./tablePagination.mjs";import ee from"./tableSearchForm.mjs";import{useTable as ae}from"./useTable.mjs";const te={data:{type:Array,default:()=>[]},size:g,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children",checkStrictly:!1})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:Boolean,flexible:Boolean,showOverflowTooltip:[Boolean,Object],scrollbarTabindex:{type:[Number,String],default:void 0}},le={...te,border:{type:Boolean,default:!0},highlightCurrentRow:{type:Boolean,default:!0},rowKey:{type:[String,Function],default:"id"},spanMethod:{type:Function,validator:()=>(D("FaTable","'spanMethod' 属性,组件已经封装,外部使用会失效。"),!1)},tableKey:{type:String,default:()=>k.generateRandomString(8)},data:{type:T(Array),default:()=>[]},requestApi:{type:T(Function)},dataCallback:{type:T(Function)},initParam:T([String,Number,Object]),columns:{type:T([Array,Boolean]),default:()=>!1},columnsChange:{type:T(Function)},searchFormCols:{type:T([String,Number,Object]),default:()=>({xs:3,sm:3,md:4,lg:5,xl:6})},collapsedSearch:{type:Boolean,default:!0},advancedSearchDrawer:{type:Boolean,default:!1},searchForm:{type:Boolean,default:!0},headerCard:{type:Boolean,default:!0},refreshBtn:{type:Boolean,default:!0},searchBtn:{type:Boolean,default:!0},columnSettingBtn:{type:Boolean,default:!0},toolBtn:{type:Boolean,default:!0},hideSearchTime:Boolean,dataSearchRange:{type:T(String),default:"Past3D"},pagination:{type:Boolean,default:!0},hideImage:Boolean,single:Boolean,rowClickSelection:Boolean,treeData:Boolean,props:{type:T(Object),default:()=>({span:void 0,children:"children"})},autoRefresh:{type:Boolean,default:!0},rowSelectable:Function},ne={select:(e,a)=>W(e)&&H(a),selectAll:e=>W(e),selectionChange:e=>W(e),cellMouseEnter:(e,a,t,l)=>H(e)&&H(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellMouseLeave:(e,a,t,l)=>H(e)&&H(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellClick:(e,a,t,l)=>H(e)&&H(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellDblclick:(e,a,t,l)=>H(e)&&H(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,cellContextmenu:(e,a,t,l)=>H(e)&&H(a)&&t instanceof HTMLTableCellElement&&l instanceof Event,rowClick:(e,a,t)=>H(e)&&H(a)&&t instanceof Event,rowContextmenu:(e,a,t)=>H(e)&&H(a)&&t instanceof Event,rowDblclick:(e,a,t)=>H(e)&&H(a)&&t instanceof Event,headerClick:(e,a)=>H(e)&&a instanceof Event,headerContextmenu:(e,a)=>H(e)&&a instanceof Event,sortChange:e=>H(e),filterChange:e=>A(e)||$(e)||V(e)||H(e),currentChange:(e,a)=>H(e)&&(U(a)||H(a)),headerDragend:(e,a,t,l)=>$(e)&&$(a)&&H(t)&&l instanceof MouseEvent,expandChange:(e,a)=>H(e)&&(V(a)||W(a)),refresh:e=>H(e),reset:e=>H(e),sizeChange:e=>$(e),paginationChange:(e,a)=>$(e)&&$(a),customCellClick:(e,{row:a,column:t,$index:l})=>A(e)&&H(a)&&H(t)&&$(l)},oe=/* @__PURE__ */a({name:"FaTable",props:le,emits:ne,slots:K(),setup(a,{attrs:g,slots:T,emit:k,expose:D}){const{_globalSize:K,state:H,elementRef:$,tableRef:V,handleTableColumnAutoWidth:W,loadTableColumns:U,handleSizeChange:le,handlePaginationChange:ne,defaultSearchTime:oe,tableSearch:ie,tableReset:re,doRender:se,doLoading:ce,handleCustomCellClick:de}=ae(a,T,k),ue=t();let me=0;const he=e=>{if(0===e&&(me=0),H.spanColumns?.length>0){return 0===Number(H.tableSpanData["__table-index"][e])?me+(H.tablePagination.pageIndex-1)*H.tablePagination.pageSize+1:(me++,me+(H.tablePagination.pageIndex-1)*H.tablePagination.pageSize)}return e+(H.tablePagination.pageIndex-1)*H.tablePagination.pageSize+1},ge=(e,t)=>{a.single&&(V.value.clearSelection(),e.length>0&&t&&V.value.toggleRowSelection(t)),k("select",e,t)},pe=e=>{a.single&&(H.selected?H.tableData.length>0&&(V.value.clearSelection(),V.value.toggleRowSelection(H.tableData[0])):V.value.clearSelection()),k("selectAll",e)},fe=e=>{0===e.length?H.selected=!1:H.selected=!0,a.single&&e.length>0?H.selectedList=[e[e.length-1]]:H.selectedList=e,H.indeterminateSelectedListIds=H.indeterminateSelectedListIds.filter(e=>H.selectedListIds.some(a=>a===e)),k("selectionChange",H.selectedList)},be=({column:e,prop:t,order:l})=>{e.multiOrder?"descending"===e.multiOrder?e.multiOrder="ascending":e.multiOrder=null:e.multiOrder="descending",H.searchParam.sortList=[.../* @__PURE__ */new Set([...a.initParam?.sortList??[],...H.searchParam?.sortList??[]])];const n=H.orgColumns.find(e=>e.prop===t),o=n.sortableField??n.prop??n.property,i=H.searchParam.sortList.findIndex(e=>e.enField===o);e.multiOrder?-1===i?H.searchParam.sortList.push({enField:o,cnField:n.label,mode:e.multiOrder}):H.searchParam.sortList[i].mode=e.multiOrder:H.searchParam.sortList.splice(i,1),0===H.searchParam.sortList.length&&delete H.searchParam.sortList,k("sortChange",{column:e,prop:t,order:e.multiOrder}),ie()},Ce=(e,t)=>{e&&(a.rowClickSelection&&(a.single&&t&&V.value.toggleRowSelection(t),V.value.toggleRowSelection(e)),k("currentChange",e,t))},we=({row:e,column:t,rowIndex:l,columnIndex:n})=>{let o=null;if("selection"===t.type){const t=Y(a.rowKey)?a.rowKey(e):e[a.rowKey];H.indeterminateSelectedListIds.some(e=>e===t)&&(o="fa-table__selection-column__indeterminate")}const i=H.tableColumns.find(e=>e.prop===t.property);if(i?.dataDeleteField&&e&&!0===e[i.dataDeleteField]&&(o?o+=" fa-table__data-delete-column":o="fa-table__data-delete-column"),"submitInfo"===i?.type&&(o?o+=" fa-table__line-height-normal-column":o="fa-table__line-height-normal-column"),"date"!==i?.type&&"time"!==i?.type&&"dateTime"!==i?.type||i?.dateFix&&(o?o+=" fa-table__line-height-normal-column":o="fa-table__line-height-normal-column"),a.cellClassName){let i=null;return i=A(a.cellClassName)?a.cellClassName:a.cellClassName({row:e,column:t,rowIndex:l,columnIndex:n}),i?o?`${o} ${i}`:i:o}return o},Se=({row:e,column:t,rowIndex:l,columnIndex:n})=>(t.order=t.multiOrder,a.headerCellClassName?Y(a.headerCellClassName)?a.headerCellClassName({row:e,column:t,rowIndex:l,columnIndex:n}):a.headerCellClassName:null),_e=({row:e,column:a,rowIndex:t,columnIndex:l})=>{const n=a.property??a.columnKey;if(-1!==H.spanColumns.findIndex(e=>e.prop===n)){const e=Number(H.tableSpanData[n][t]);return e>0?{rowspan:e,colspan:1}:{rowspan:0,colspan:0}}return{rowspan:1,colspan:1}},ye=async(e,a,t,l)=>{H.orgColumns.forEach(a=>{t.property===a.prop&&(a.width=e,a.smallWidth=e)}),k("headerDragend",e,a,t,l),await N.debounceAsync(ue.value.change,500)},ve=e=>{H.previewList=[e],H.imagePreview=!0};l(async()=>{H.initParam=a.initParam,oe(),Object.keys(a.initParam??{}).forEach(e=>{H.searchParam[e]=a.initParam[e]}),await ie(),n(()=>a.columns,async()=>{U()},{deep:!0,immediate:!0}),n(()=>a.initParam,()=>{Object.keys(a.initParam??{}).forEach(e=>{H.searchParam[e]=a.initParam[e]})},{deep:!0}),n(()=>a.data,async()=>{!a.requestApi&&a.autoRefresh&&await ie()},{deep:!0,immediate:!0}),o(async()=>{const e=$.value;if(e){const a=new ResizeObserver(e=>{for(const a of e){const{width:e,height:t}=a.contentRect;H.tableWidth=e,H.tableHeight=t}N.debounceAsync(async()=>{await W()},100)});return a.observe(e),()=>{a.disconnect()}}})}),i(async()=>{await W()});const xe=r(()=>H.searchColumns.filter(e=>e.search.slot).map(e=>e.search.slot)),Pe=r(()=>H.tableColumns.filter(e=>e.slot).map(e=>e.slot)),Ie=["multiOrder","columnId","order","sortableField","disabledSortable","spanProp","pureSearch","search"],Le=E(a,te,["data","spanMethod","headerCellClassName","cellClassName"]);return j(()=>s("div",{ref:$,class:["fa-table",`fa-table-${K.value}`,`fa-table__${a.tableKey??"notFound"}`,{fa__click__disabled:H.loading}],style:{"--fa-table-width":""+(H.tableWidth?`${H.tableWidth}px`:""),"--fa-table-height":""+(H.tableHeight?`${H.tableHeight}px`:"")}},[s(ee,{show:a.searchForm&&H.searchForm,collapsedSearch:a.collapsedSearch,advancedSearchDrawer:a.advancedSearchDrawer,cols:a.searchFormCols,search:ie,reset:re},q(T,xe.value)),T.topHeader&&s("div",{class:"el-card fa-table__header"},[T.topHeader({search:ie,...J(H)})]),s("div",{class:"el-card fa-table__main"},[a.headerCard&&s("div",{class:"fa-table__main-header"},[s("div",{class:"fa-table__main-header-left"},[T.header&&T.header({search:ie,...J(H)})]),s("div",{class:"fa-table__main-header-right"},[a.toolBtn&&s(d,null,[s("div",{class:"fa-table__main-header-right__div-search"},[s(p,{class:"fa-table__main-header-right__input-search",disabled:H.loading,prefixIcon:I,placeholder:"关键字搜索",modelValue:H.searchParam.searchValue,modelModifiers:{trim:!0},"onUpdate:modelValue":e=>H.searchParam.searchValue=e,clearable:!0,onCompositionupdate:e=>{H.searchValueUpdate=e.data},onCompositionend:e=>{H.searchValueUpdate=""},onChange:()=>ie()},null),s("div",{class:"fa-table__main-header-right__div-search__hidden"},[H.searchParam.searchValue,H.searchValueUpdate])]),a.requestApi&&!a.hideSearchTime&&s(f,{class:"fa-table__main-header-right__data-search",popperClass:"fa-table__main-header-right__data-search__popper",disabled:H.loading,type:"daterange",modelValue:H.searchParam.searchTimeList,"onUpdate:modelValue":e=>H.searchParam.searchTimeList=e,defaultTime:M.getDefaultTime(),shortcuts:M.getShortcuts(),valueFormat:"YYYY-MM-DD HH:mm:ss",disabledDate:M.getDisabledDate,clearable:!1,teleported:!1,unlinkPanels:!0,onChange:()=>ie()},null),a.refreshBtn&&s(b,{loading:H.loading,loadingIcon:B,title:"刷新",circle:!0,icon:L,onClick:()=>ie()},null),a.searchBtn&&H.searchColumns.length>0&&s(b,{loading:H.loading,loadingIcon:B,title:H.searchForm?"隐藏搜索栏":"显示搜索栏",circle:!0,icon:I,onClick:()=>H.searchForm=!H.searchForm},null),a.columnSettingBtn&&a.columns&&s(C,{title:"表格列配置",trigger:"click"},{default:()=>s(b,{loading:H.loading,loadingIcon:B,circle:!0,icon:F},null),dropdown:()=>s(w,null,{default:()=>[T.columnSetting&&T.columnSetting(),s(S,{title:"表格列配置",divided:!0,onClick:()=>ue.value.open()},{default:()=>[u("表格列配置")]})]})}),T.toolButton&&T.toolButton({search:ie,...J(H)}),T.toolButtonAdv&&s(C,{title:"高级操作",trigger:"click"},{default:()=>s(b,{loading:H.loading,loadingIcon:B,circle:!0,icon:R},null),dropdown:()=>{let a;return s(w,null,"function"==typeof(t=a=T.toolButtonAdv({search:ie,...J(H)}))||"[object Object]"===Object.prototype.toString.call(t)&&!e(t)?a:{default:()=>[a]});var t}})])])]),c(s(_,m(Le.value,{ref:V,"element-loading-text":H.loadingText,data:H.tableData,spanMethod:_e,headerCellClassName:Se,cellClassName:we,onSelectionChange:fe,onSortChange:be,onSelect:ge,onSelectAll:pe,onCurrentChange:Ce,onHeaderDragend:ye,onCellMouseEnter:(e,a,t,l)=>k("cellMouseEnter",e,a,t,l),onCellMouseLeave:(e,a,t,l)=>k("cellMouseLeave",e,a,t,l),onCellClick:(e,a,t,l)=>k("cellClick",e,a,t,l),onCellDblclick:(e,a,t,l)=>k("cellDblclick",e,a,t,l),onCellContextmenu:(e,a,t,l)=>k("cellContextmenu",e,a,t,l),onRowClick:(e,a,t)=>k("rowClick",e,a,t),onRowContextmenu:(e,a,t)=>k("rowContextmenu",e,a,t),onRowDblclick:(e,a,t)=>k("rowDblclick",e,a,t),onHeaderClick:(e,a)=>k("headerClick",e,a),onHeaderContextmenu:(e,a)=>k("headerContextmenu",e,a),onFilterChange:e=>k("filterChange",e),onExpandChange:(e,a)=>k("expandChange",e,a)}),{append:()=>T.append&&T.append(),empty:()=>s("div",{class:"fa-table__empty"},[T.empty?T.empty():s(d,null,[s(v,null,{default:()=>[s(O,null,null)]}),s("div",null,[u("暂无数据")])])]),default:()=>s(d,null,[s(y,{className:"fa-table__index-column",type:"index",fixed:"left",width:H.tablePagination.pageIndex*H.tablePagination.pageSize>=100?H.tablePagination.pageIndex*H.tablePagination.pageSize>=1e3?50:40:30,align:"center",index:he,showOverflowTooltip:!1,resizable:!1,columnKey:"__table-index"},null),s(y,{className:"fa-table__selection-column",type:"selection",fixed:"left",width:35,align:"center",reserveSelection:!0,showOverflowTooltip:!1,resizable:!1,columnKey:"__table-selection",selectable:a.rowSelectable},null),T.operation&&s(y,{fixed:"right",width:H.operationColumnWidth,headerAlign:"center",align:"left",showOverflowTooltip:!1,className:"fa-table__operation-column",resizable:!1,columnKey:"__table-operation"},{header:()=>s("div",{class:"fa-table__auto-width-column__cell-header __fa-table__auto-width-column__cell-header____table-operation"},[s("span",null,[u("操作")])]),default:({row:e,column:a,$index:t})=>s("div",{class:"fa-table__auto-width-column__cell __fa-table__auto-width-column__cell____table-operation"},[T.operation({row:e,column:a,$index:t,search:ie,...J(H)})])}),0===H.tableColumns?.length?T.default&&T.default():H.tableColumns.map(e=>e.show&&("expand"===e.type?s(y,m(e,{width:35,fixed:e.fixed??"left",resizable:!1}),{default:({row:a,column:t,$index:l})=>s(d,null,[e.render&&e.render({row:a,column:t,$index:l,...J(H)}),e.slot&&T[e.slot]&&T[e.slot]({row:a,column:t,$index:l,...J(H)})])}):e.prop&&s(Q,m(G(e,Ie),{hideImage:a.hideImage,resizable:!0,onImagePreview:ve,onCustomCellClick:de}),q(T,Pe.value))))])}),[[h("loading"),H.loading]]),s("div",{class:"fa-table__main-footer"},[s("div",{class:"fa-table__main-footer__left"},[T.footer&&T.footer({search:ie,...J(H)})]),T.pagination?T.pagination({pageIndex:H.tablePagination.pageIndex,pageSize:H.tablePagination.pageSize,totalRows:H.tablePagination.totalRows,handleSizeChange:le,handlePaginationChange:ne}):s(d,null,[a.pagination?s(Z,{onSizeChange:le,onCurrentChange:ne},null):s(x,{class:"fa-table-pagination",size:"small",layout:"total",total:H.tableData.length},null)])])]),H.imagePreview&&s(P,{closeOnPressEscape:!0,hideOnClickModal:!0,teleported:!0,onClose:()=>H.imagePreview=!1,urlList:H.previewList},null),a.columnSettingBtn&&s(X,{ref:ue,change:a.columnsChange},null)])),z(D,{clearSelection:r(()=>V.value?.clearSelection),getSelectionRows:r(()=>V.value?.getSelectionRows),toggleRowSelection:r(()=>V.value?.toggleRowSelection),toggleAllSelection:r(()=>V.value?.toggleAllSelection),toggleRowExpansion:r(()=>V.value?.toggleRowExpansion),setCurrentRow:r(()=>V.value?.setCurrentRow),clearSort:r(()=>V.value?.clearSort),clearFilter:r(()=>V.value?.clearFilter),doLayout:r(()=>V.value?.doLayout),sort:r(()=>V.value?.sort),scrollTo:r(()=>V.value?.scrollTo),setScrollTop:r(()=>V.value?.setScrollTop),setScrollLeft:r(()=>V.value?.setScrollLeft),columns:r(()=>V.value?.columns),updateKeyChildren:r(()=>V.value?.updateKeyChildren),loading:r(()=>H.loading),tableData:r(()=>H.tableData),tablePagination:r(()=>H.tablePagination),searchParam:r(()=>H.searchParam),selected:r(()=>H.selected),selectedList:r(()=>H.selectedList),selectedListIds:r(()=>H.selectedListIds),indeterminateSelectedListIds:r(()=>H.indeterminateSelectedListIds),tableWidth:r(()=>H.tableWidth),tableHeight:r(()=>H.tableHeight),toggleRowIndeterminateSelection:(e,t)=>{const l=Y(a.rowKey)?a.rowKey(e):e[a.rowKey],n=H.tableData.find(e=>Y(a.rowKey)?a.rowKey(e):e[a.rowKey]===l);if(!0===t)H.indeterminateSelectedListIds.some(e=>e===l)||H.indeterminateSelectedListIds.push(l),V.value.toggleRowSelection(n,!0);else if(!1===t){const e=H.indeterminateSelectedListIds.findIndex(e=>e===l);e>=0&&H.indeterminateSelectedListIds.splice(e,1),V.value.toggleRowSelection(n,!1)}else{const e=H.indeterminateSelectedListIds.findIndex(e=>e===l);e>=0?H.indeterminateSelectedListIds.splice(e,1):H.indeterminateSelectedListIds.push(l),V.value.toggleRowSelection(n)}},refresh:ie,reset:re,doRender:se,doLoading:ce})}});export{oe as default,ne as faTableEmits,le as faTableProps,te as tableProps};
2
2
  //# sourceMappingURL=table.mjs.map