@gopowerteam/table-render 0.0.123 → 0.0.125

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.
@@ -49,6 +49,12 @@ export interface ExportColumnOptions {
49
49
  width?: number;
50
50
  content?: (record: DataRecord) => string | number | undefined;
51
51
  }
52
+ export interface ColumnsGroup {
53
+ title: string;
54
+ children: (ColumnsGroup | {
55
+ key: string;
56
+ })[];
57
+ }
52
58
  export type TableColumnsOptions<T = DataRecord> = TableColumnOptions<T>[];
53
59
  export type TableColumnsTypeKeyOptions<T = DataRecord> = TableColumnTypeKeyOptions<T>[];
54
60
  export type TableColumnsStringKeyOptions<T = DataRecord> = TableColumnStringKeyOptions<T>[];
@@ -1,6 +1,6 @@
1
1
  import { PageableOptions } from '../interfaces/pageable-options';
2
2
  import { EventEmits, TableEditEventOptions, TableExportEventOptions, TablePreviewEventOptions, TableReloadEventOptions } from '../hooks';
3
- import { TableColumnSharedOptions, TableColumnsOptions, TableFormSharedOptions, TableLoadParams } from '../interfaces';
3
+ import { ColumnsGroup, TableColumnSharedOptions, TableColumnsOptions, TableFormSharedOptions, TableLoadParams } from '../interfaces';
4
4
  import { RequestPlugin } from '@gopowerteam/request';
5
5
  import { DataRecord, FormItemsOptions, FormRenderInstance } from '@gopowerteam/form-render';
6
6
  import { PropType, Ref } from 'vue';
@@ -108,6 +108,30 @@ export declare const TableRender: import('vue').DefineComponent<{
108
108
  type: BooleanConstructor;
109
109
  required: false;
110
110
  };
111
+ hoverable: {
112
+ type: BooleanConstructor;
113
+ required: false;
114
+ default: boolean;
115
+ };
116
+ bordered: {
117
+ type: BooleanConstructor;
118
+ required: false;
119
+ default: boolean;
120
+ };
121
+ stripe: {
122
+ type: BooleanConstructor;
123
+ required: false;
124
+ default: boolean;
125
+ };
126
+ columnsGroups: {
127
+ type: PropType<ColumnsGroup[]>;
128
+ required: false;
129
+ default: () => never[];
130
+ };
131
+ rowClass: {
132
+ type: PropType<(record: any) => string>;
133
+ required: false;
134
+ };
111
135
  }, {
112
136
  tableId: string;
113
137
  tableInstance: Ref<import('vue').CreateComponentPublicInstance<Readonly<{
@@ -838,7 +862,7 @@ export declare const TableRender: import('vue').DefineComponent<{
838
862
  onCellDblclick?: ((record: TableData, column: TableColumnData, ev: Event) => any) | undefined;
839
863
  onRowContextmenu?: ((record: TableData, ev: Event) => any) | undefined;
840
864
  onCellContextmenu?: ((record: TableData, column: TableColumnData, ev: Event) => any) | undefined;
841
- }, "rowKey" | "columns" | "size" | "data" | "bordered" | "hoverable" | "stripe" | "tableLayoutFixed" | "loading" | "pagination" | "pagePosition" | "indentSize" | "showHeader" | "spanAll" | "filterIconAlignLeft" | "hideExpandButtonOnEmpty" | "columnResizable" | "summaryText" | "defaultExpandAllRows" | "stickyHeader" | "scrollbar" | "showEmptyTree">>>;
865
+ }, "rowKey" | "columns" | "size" | "hoverable" | "bordered" | "stripe" | "data" | "tableLayoutFixed" | "loading" | "pagination" | "pagePosition" | "indentSize" | "showHeader" | "spanAll" | "filterIconAlignLeft" | "hideExpandButtonOnEmpty" | "columnResizable" | "summaryText" | "defaultExpandAllRows" | "stickyHeader" | "scrollbar" | "showEmptyTree">>>;
842
866
  tableColumns: any;
843
867
  tableEvents: EventEmits;
844
868
  tableForm: FormItemsOptions;
@@ -1102,9 +1126,7 @@ export declare const TableRender: import('vue').DefineComponent<{
1102
1126
  layout: "inline" | "horizontal" | "vertical";
1103
1127
  labelColProps: Record<string, any>;
1104
1128
  wrapperColProps: Record<string, any>;
1105
- labelAlign: "left" | "right"; /**
1106
- * 创建表单配置选项
1107
- */
1129
+ labelAlign: "left" | "right";
1108
1130
  autoLabelWidth: boolean;
1109
1131
  scrollToFirstError: boolean;
1110
1132
  }> | undefined>;
@@ -1462,9 +1484,7 @@ export declare const TableRender: import('vue').DefineComponent<{
1462
1484
  layout: "inline" | "horizontal" | "vertical";
1463
1485
  labelColProps: Record<string, any>;
1464
1486
  wrapperColProps: Record<string, any>;
1465
- labelAlign: "left" | "right"; /**
1466
- * 创建表单配置选项
1467
- */
1487
+ labelAlign: "left" | "right";
1468
1488
  autoLabelWidth: boolean;
1469
1489
  scrollToFirstError: boolean;
1470
1490
  }> | undefined>;
@@ -1615,6 +1635,30 @@ export declare const TableRender: import('vue').DefineComponent<{
1615
1635
  type: BooleanConstructor;
1616
1636
  required: false;
1617
1637
  };
1638
+ hoverable: {
1639
+ type: BooleanConstructor;
1640
+ required: false;
1641
+ default: boolean;
1642
+ };
1643
+ bordered: {
1644
+ type: BooleanConstructor;
1645
+ required: false;
1646
+ default: boolean;
1647
+ };
1648
+ stripe: {
1649
+ type: BooleanConstructor;
1650
+ required: false;
1651
+ default: boolean;
1652
+ };
1653
+ columnsGroups: {
1654
+ type: PropType<ColumnsGroup[]>;
1655
+ required: false;
1656
+ default: () => never[];
1657
+ };
1658
+ rowClass: {
1659
+ type: PropType<(record: any) => string>;
1660
+ required: false;
1661
+ };
1618
1662
  }>>, {
1619
1663
  autoLoad: boolean;
1620
1664
  size: "mini" | "small" | "medium" | "large";
@@ -1629,6 +1673,10 @@ export declare const TableRender: import('vue').DefineComponent<{
1629
1673
  size: number;
1630
1674
  } | "client" | "server";
1631
1675
  draggable: boolean;
1676
+ hoverable: boolean;
1677
+ bordered: boolean;
1678
+ stripe: boolean;
1679
+ columnsGroups: ColumnsGroup[];
1632
1680
  }, {}>;
1633
1681
  export type TableRenderInstance = InstanceType<typeof TableRender>;
1634
1682
  export type TableRenderProps = TableRenderInstance['$props'];
@@ -1,6 +1,6 @@
1
1
  import { EventEmits } from '../hooks';
2
2
  import { RenderColumnType } from '../utils';
3
- import { TableColumnOptions, TableColumnSharedOptions, TableColumnsOptions } from '../interfaces';
3
+ import { ColumnsGroup, TableColumnOptions, TableColumnSharedOptions, TableColumnsOptions } from '../interfaces';
4
4
  import { Ref } from 'vue';
5
5
  import { TableColumnData, TableData } from '@arco-design/web-vue';
6
6
 
@@ -22,11 +22,18 @@ export declare function toRenderColumn<T>(options?: TableColumnOptions<T>, conte
22
22
  isRender: boolean;
23
23
  type: string | undefined;
24
24
  } | undefined;
25
- export declare function renderTableColumns(columns: TableColumnsOptions, columnsOptions: TableColumnSharedOptions | undefined, pageMode: 'client' | 'server', collapsedColumns: Ref<{
26
- key: string;
27
- title: string;
28
- collapsed: boolean;
29
- }[]>, events: EventEmits): TableColumnData[];
25
+ export declare function renderTableColumns({ columns, columnsOptions, columnsGroups, pageMode, collapsedColumns, events, }: {
26
+ columns: TableColumnsOptions;
27
+ columnsOptions: TableColumnSharedOptions | undefined;
28
+ columnsGroups: ColumnsGroup[];
29
+ pageMode: 'client' | 'server';
30
+ collapsedColumns: Ref<{
31
+ key: string;
32
+ title: string;
33
+ collapsed: boolean;
34
+ }[]>;
35
+ events: EventEmits;
36
+ }): TableColumnData[];
30
37
  /**
31
38
  * 创建表格列
32
39
  * @param options