holyes-table 0.0.1 → 1.0.0
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.
- package/README.md +82 -38
- package/dist/assets/pretextTableGetItemHeight-DzbzA5Qb.js +44 -0
- package/dist/index.css +2 -0
- package/dist/index.mjs +6643 -0
- package/dist/lib/main.d.ts +3 -3
- package/dist/lib/pretextTable/hook/useCheckbox.d.ts +24 -0
- package/dist/lib/pretextTable/hook/useExpand.d.ts +26 -0
- package/dist/lib/pretextTable/hook/useFilter.d.ts +119 -0
- package/dist/lib/pretextTable/hook/useFooter.d.ts +37 -0
- package/dist/lib/pretextTable/hook/useGridStyles.d.ts +21 -0
- package/dist/lib/pretextTable/hook/useHeader.d.ts +24 -0
- package/dist/lib/pretextTable/hook/useHeaderResize.d.ts +13 -0
- package/dist/lib/pretextTable/hook/useSort.d.ts +21 -0
- package/dist/lib/pretextTable/hook/useTree.d.ts +28 -0
- package/dist/lib/pretextTable/pretextTable.vue.d.ts +259 -0
- package/dist/lib/pretextTable/type.d.ts +258 -0
- package/dist/lib/pretextTable/useHolyesTable.d.ts +171 -0
- package/dist/lib/pretextTable/utils/index.d.ts +6 -0
- package/dist/lib/pretextTable/worker/pretextTableGetItemHeight.d.ts +50 -0
- package/package.json +6 -4
- package/dist/index.js +0 -21
- package/dist/lib/aa/aa.vue.d.ts +0 -2
package/dist/lib/main.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { App } from 'vue';
|
|
2
|
-
import { default as
|
|
3
|
-
export {
|
|
4
|
-
declare const HolyesTable: typeof
|
|
2
|
+
import { default as pretextTable } from './pretextTable/pretextTable.vue';
|
|
3
|
+
export { pretextTable };
|
|
4
|
+
declare const HolyesTable: typeof pretextTable & {
|
|
5
5
|
install: (app: App) => void;
|
|
6
6
|
};
|
|
7
7
|
export default HolyesTable;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
export declare function useCheckbox(dataObj: {
|
|
3
|
+
pretextId: string;
|
|
4
|
+
columns: Ref<any[]>;
|
|
5
|
+
blurAnyElement: () => void;
|
|
6
|
+
nowDataSource: ShallowRef<any[]>;
|
|
7
|
+
baseDataSource: ShallowRef<any[]>;
|
|
8
|
+
emits: any;
|
|
9
|
+
}): {
|
|
10
|
+
/** 获取多选列字段 */
|
|
11
|
+
getCheckField: () => string | undefined;
|
|
12
|
+
/** 表头多选列 */
|
|
13
|
+
headerChecked: Ref<boolean, boolean>;
|
|
14
|
+
/** 表头多选列是否半选 */
|
|
15
|
+
headerCheckedIndeterminate: Ref<boolean, boolean>;
|
|
16
|
+
/** 表头多选列选中 */
|
|
17
|
+
onHeaderChecked: () => void;
|
|
18
|
+
/** 单元格选中 */
|
|
19
|
+
onCellChecked: (item: any) => void;
|
|
20
|
+
/** 获取选中的数据 */
|
|
21
|
+
getCheckboxRecords: (isFull: boolean) => any[];
|
|
22
|
+
/** 清空多选列选中状态,给内部初始化用的 */
|
|
23
|
+
clearCheckboxRowInit: () => void;
|
|
24
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { HolyesTableExpandConfig, HolyesTableKeyNames } from '../type';
|
|
2
|
+
/** 展开行配置项 */
|
|
3
|
+
export declare const useExpand: (dataObj: {
|
|
4
|
+
keyNames: HolyesTableKeyNames;
|
|
5
|
+
expandConfig: HolyesTableExpandConfig;
|
|
6
|
+
/** 展开/收起后, 执行的操作 */
|
|
7
|
+
afterRowExpand: (rows: any[], expanded: boolean) => void;
|
|
8
|
+
/** 插入展开行数据 */
|
|
9
|
+
insertExpandRow: (parentRowOrParentId: any) => void;
|
|
10
|
+
}) => {
|
|
11
|
+
/** 默认的展开行配置项 */
|
|
12
|
+
defaultExpandConfig: {
|
|
13
|
+
transform: boolean;
|
|
14
|
+
parentField: string;
|
|
15
|
+
childrenField: string;
|
|
16
|
+
indent: number;
|
|
17
|
+
trigger: string;
|
|
18
|
+
lazy: boolean;
|
|
19
|
+
hasChildField: string;
|
|
20
|
+
showIcon: boolean;
|
|
21
|
+
};
|
|
22
|
+
/** 表头处理一下行列表配置 */
|
|
23
|
+
handleExpand: () => void;
|
|
24
|
+
/** 用于 expand-config,设置展开行,二个参数设置这一行展开与否 */
|
|
25
|
+
setRowExpand: (rows: any[], expanded: boolean) => void;
|
|
26
|
+
};
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { ShallowRef } from 'vue';
|
|
2
|
+
import { HolyesTableColumnPropsType, HolyesTableFilterlistOptions, HolyesTableFilterType, HolyesTableKeyNames, HolyesTableTreeConfig } from '../type';
|
|
3
|
+
/** 筛选字段 类型 */
|
|
4
|
+
export type FilterFieldsType = {
|
|
5
|
+
field: string;
|
|
6
|
+
type: HolyesTableFilterType;
|
|
7
|
+
/** 是否显示 */
|
|
8
|
+
isShow: boolean;
|
|
9
|
+
clientX: number;
|
|
10
|
+
clientY: number;
|
|
11
|
+
/** 是否激活了筛选图标 */
|
|
12
|
+
isActive: boolean;
|
|
13
|
+
/** 筛选值 */
|
|
14
|
+
value: string | number | null;
|
|
15
|
+
/** 输入筛选 类型 */
|
|
16
|
+
inputFilter?: {
|
|
17
|
+
type: "模糊" | "精确";
|
|
18
|
+
};
|
|
19
|
+
/** 数字筛选 类型 */
|
|
20
|
+
numberFilter?: {
|
|
21
|
+
type: ">" | "≥" | "=" | "<" | "≤";
|
|
22
|
+
};
|
|
23
|
+
/** 列表筛选 类型 */
|
|
24
|
+
listFilter?: {
|
|
25
|
+
listOptions: {
|
|
26
|
+
label: string;
|
|
27
|
+
value: HolyesTableFilterlistOptions;
|
|
28
|
+
}[];
|
|
29
|
+
selectedValue: HolyesTableFilterlistOptions[];
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export declare function useFilter(dataObj: {
|
|
33
|
+
/** 特殊字段的名称 */
|
|
34
|
+
keyNames: HolyesTableKeyNames;
|
|
35
|
+
/** 表格列属性 */
|
|
36
|
+
columns: ShallowRef<HolyesTableColumnPropsType[]>;
|
|
37
|
+
/** 基础数据 */
|
|
38
|
+
baseDataSource: ShallowRef<any[]>;
|
|
39
|
+
/** 设置当前数据序列 */
|
|
40
|
+
setNowDataSource: (tempData: any[]) => void;
|
|
41
|
+
scrollTo: (obj: {
|
|
42
|
+
top?: number;
|
|
43
|
+
left?: number;
|
|
44
|
+
}) => void;
|
|
45
|
+
refresh: () => void;
|
|
46
|
+
/** 筛选后, 执行 */
|
|
47
|
+
afterFilter: () => void;
|
|
48
|
+
/** 树配置 */
|
|
49
|
+
treeConfig: HolyesTableTreeConfig;
|
|
50
|
+
/** 默认树配置 */
|
|
51
|
+
defaultTreeConfig: any;
|
|
52
|
+
}): {
|
|
53
|
+
/** 筛选弹窗宽度 */
|
|
54
|
+
filterPopupWidth: number;
|
|
55
|
+
/** 筛选弹窗id前缀 */
|
|
56
|
+
filterPopupId: string;
|
|
57
|
+
/** 输入筛选 类型 */
|
|
58
|
+
inputFilterOptions: {
|
|
59
|
+
label: string;
|
|
60
|
+
value: string;
|
|
61
|
+
}[];
|
|
62
|
+
/** 数字筛选 类型 */
|
|
63
|
+
numberFilterOptions: {
|
|
64
|
+
label: string;
|
|
65
|
+
value: string;
|
|
66
|
+
}[];
|
|
67
|
+
/** 筛选字段 */
|
|
68
|
+
filterFields: import('vue').Ref<{
|
|
69
|
+
field: string;
|
|
70
|
+
type: HolyesTableFilterType;
|
|
71
|
+
isShow: boolean;
|
|
72
|
+
clientX: number;
|
|
73
|
+
clientY: number;
|
|
74
|
+
isActive: boolean;
|
|
75
|
+
value: string | number | null;
|
|
76
|
+
inputFilter?: {
|
|
77
|
+
type: "\u6A21\u7CCA" | "\u7CBE\u786E";
|
|
78
|
+
} | undefined;
|
|
79
|
+
numberFilter?: {
|
|
80
|
+
type: ">" | "\u2265" | "=" | "<" | "\u2264";
|
|
81
|
+
} | undefined;
|
|
82
|
+
listFilter?: {
|
|
83
|
+
listOptions: {
|
|
84
|
+
label: string;
|
|
85
|
+
value: HolyesTableFilterlistOptions;
|
|
86
|
+
}[];
|
|
87
|
+
selectedValue: HolyesTableFilterlistOptions[];
|
|
88
|
+
} | undefined;
|
|
89
|
+
}[], FilterFieldsType[] | {
|
|
90
|
+
field: string;
|
|
91
|
+
type: HolyesTableFilterType;
|
|
92
|
+
isShow: boolean;
|
|
93
|
+
clientX: number;
|
|
94
|
+
clientY: number;
|
|
95
|
+
isActive: boolean;
|
|
96
|
+
value: string | number | null;
|
|
97
|
+
inputFilter?: {
|
|
98
|
+
type: "\u6A21\u7CCA" | "\u7CBE\u786E";
|
|
99
|
+
} | undefined;
|
|
100
|
+
numberFilter?: {
|
|
101
|
+
type: ">" | "\u2265" | "=" | "<" | "\u2264";
|
|
102
|
+
} | undefined;
|
|
103
|
+
listFilter?: {
|
|
104
|
+
listOptions: {
|
|
105
|
+
label: string;
|
|
106
|
+
value: HolyesTableFilterlistOptions;
|
|
107
|
+
}[];
|
|
108
|
+
selectedValue: HolyesTableFilterlistOptions[];
|
|
109
|
+
} | undefined;
|
|
110
|
+
}[]>;
|
|
111
|
+
/** 获取筛选字段 */
|
|
112
|
+
getFilterFields: () => void;
|
|
113
|
+
/** 筛选图标点击事件 */
|
|
114
|
+
filterClick: (index: number, e: any) => void;
|
|
115
|
+
/** 设置筛选值 */
|
|
116
|
+
setFilter: (field: string, value?: any) => Promise<void>;
|
|
117
|
+
/** 清除筛选值 */
|
|
118
|
+
clearFilter: (field?: string) => Promise<void>;
|
|
119
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { HolyesTableColumnPropsType, HolyesTableFooterColumns, HolyesTableFooterProps } from '../type';
|
|
3
|
+
/** 表尾数据 */
|
|
4
|
+
export declare const useFooter: (dataObj: {
|
|
5
|
+
showFooter: boolean;
|
|
6
|
+
nowDataSource: Ref<any[]>;
|
|
7
|
+
columns: Ref<HolyesTableColumnPropsType[]>;
|
|
8
|
+
}) => {
|
|
9
|
+
/** 表尾行高度 */
|
|
10
|
+
footerHeight: Ref<number, number>;
|
|
11
|
+
/** 表尾配置 */
|
|
12
|
+
footerColumns: Ref<{
|
|
13
|
+
height?: number | undefined;
|
|
14
|
+
field: string;
|
|
15
|
+
fixed?: string | undefined;
|
|
16
|
+
type?: import('../type').HolyesTableFooterType | undefined;
|
|
17
|
+
text?: string | undefined;
|
|
18
|
+
dataType?: import('../type').HolyesTableFooterDataType | undefined;
|
|
19
|
+
data: any;
|
|
20
|
+
slot?: string | undefined;
|
|
21
|
+
}[][], HolyesTableFooterColumns[][] | {
|
|
22
|
+
height?: number | undefined;
|
|
23
|
+
field: string;
|
|
24
|
+
fixed?: string | undefined;
|
|
25
|
+
type?: import('../type').HolyesTableFooterType | undefined;
|
|
26
|
+
text?: string | undefined;
|
|
27
|
+
dataType?: import('../type').HolyesTableFooterDataType | undefined;
|
|
28
|
+
data: any;
|
|
29
|
+
slot?: string | undefined;
|
|
30
|
+
}[][]>;
|
|
31
|
+
/** 计算表尾行高度 */
|
|
32
|
+
getFooterHeight: (footerProps: HolyesTableFooterProps[]) => void;
|
|
33
|
+
/** 更新表尾数据 */
|
|
34
|
+
updateFooter: (field?: string) => void;
|
|
35
|
+
/** 更新表尾单元格文本 */
|
|
36
|
+
updateFooterCellLabel: (field: string, rowIndex: number, label: string) => void;
|
|
37
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { HolyesTableColumnPropsType } from '../type';
|
|
3
|
+
/** 表格样式属性 */
|
|
4
|
+
export declare const useGridStyles: (dataObj: {
|
|
5
|
+
columns: Ref<HolyesTableColumnPropsType[]>;
|
|
6
|
+
}) => {
|
|
7
|
+
/** fixed 列 left */
|
|
8
|
+
fixedColumnsLeft: Ref<string[], string[]>;
|
|
9
|
+
/** fixed 列 right */
|
|
10
|
+
fixedColumnsRight: Ref<string[], string[]>;
|
|
11
|
+
/** fixed 列 left 最后一列 */
|
|
12
|
+
fixedLeftIndex: Ref<number, number>;
|
|
13
|
+
/** fixed 列 right 最后一列 */
|
|
14
|
+
fixedRightIndex: Ref<number, number>;
|
|
15
|
+
/** 刷新表格网格列 */
|
|
16
|
+
reflashGridTemplateColumns: () => void;
|
|
17
|
+
/** 表格网格列 */
|
|
18
|
+
gridTemplateColumns: Ref<string, string>;
|
|
19
|
+
/** 获取网格列样式(fixed) */
|
|
20
|
+
getGridStyles: () => void;
|
|
21
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { HolyesTableColumnPropsType } from '../type';
|
|
3
|
+
export declare function useHeader(dataObj: {
|
|
4
|
+
pretextTableRef: Ref<any>;
|
|
5
|
+
}): {
|
|
6
|
+
/** 表头高度 */
|
|
7
|
+
headerHeight: Ref<number, number>;
|
|
8
|
+
/** 表头样式 */
|
|
9
|
+
headerStyles: {
|
|
10
|
+
fontWeight: string;
|
|
11
|
+
fontSize: string;
|
|
12
|
+
};
|
|
13
|
+
/** 生成表头 */
|
|
14
|
+
createHeader: (tempColumns: HolyesTableColumnPropsType[]) => {
|
|
15
|
+
/** 最终的列字段配置列表 */
|
|
16
|
+
finalColumns: HolyesTableColumnPropsType[];
|
|
17
|
+
/** 真实的表头分组后的列字段配置 */
|
|
18
|
+
realColumns: (HolyesTableColumnPropsType | null)[][];
|
|
19
|
+
};
|
|
20
|
+
/** 表头引用 */
|
|
21
|
+
headerRef: Ref<HTMLDivElement | undefined, HTMLDivElement | undefined>;
|
|
22
|
+
/** 计算表头高度 */
|
|
23
|
+
getHeaderRefHeight: () => void;
|
|
24
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { HolyesTableColumnPropsType } from '../type';
|
|
3
|
+
export declare const useHeaderResize: (dataObj: {
|
|
4
|
+
pretextTableRef: Ref<HTMLDivElement | null | undefined>;
|
|
5
|
+
afterResize: any;
|
|
6
|
+
}) => {
|
|
7
|
+
/** 是否正在拖拽 */
|
|
8
|
+
isDragging: Ref<boolean, boolean>;
|
|
9
|
+
/** 拖拽线位置 */
|
|
10
|
+
dragLineLeft: Ref<number, number>;
|
|
11
|
+
/** 按下拖拽手柄开始调整宽度 */
|
|
12
|
+
startResize: (e: MouseEvent, column: HolyesTableColumnPropsType) => void;
|
|
13
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ShallowRef } from 'vue';
|
|
2
|
+
import { HolyesTableKeyNames, HolyesTableTreeConfig } from '../type';
|
|
3
|
+
/** 排序 */
|
|
4
|
+
export declare function useSort(dataObj: {
|
|
5
|
+
keyNames: HolyesTableKeyNames;
|
|
6
|
+
nowDataSource: ShallowRef<any[]>;
|
|
7
|
+
getVisibleData: () => void;
|
|
8
|
+
setNowDataSource: (tempData: any[]) => void;
|
|
9
|
+
treeConfig?: HolyesTableTreeConfig;
|
|
10
|
+
/** 默认树配置 */
|
|
11
|
+
defaultTreeConfig?: any;
|
|
12
|
+
}): {
|
|
13
|
+
/** 当前排序字段 */
|
|
14
|
+
sortField: import('vue').Ref<string, string>;
|
|
15
|
+
/** 当前排序方向 */
|
|
16
|
+
sortOrder: import('vue').Ref<"asc" | "desc" | null, "asc" | "desc" | null>;
|
|
17
|
+
/** 排序 */
|
|
18
|
+
sort: (field: string, order: "desc" | "asc" | null | "auto") => void;
|
|
19
|
+
/** 拿当前的排序字段和排序方向, 排序 */
|
|
20
|
+
handleSort: () => void;
|
|
21
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { HolyesTableKeyNames, HolyesTableTreeConfig } from '../type';
|
|
2
|
+
/** 树形结构配置项 */
|
|
3
|
+
export declare const useTree: (dataObj: {
|
|
4
|
+
treeConfig: HolyesTableTreeConfig;
|
|
5
|
+
keyNames: HolyesTableKeyNames;
|
|
6
|
+
afterTreeExpand: (rows: any[], expanded: boolean) => void;
|
|
7
|
+
insertChild: (records: any[], parentRowOrParentId: any) => Promise<void>;
|
|
8
|
+
}) => {
|
|
9
|
+
/** 默认的树形结构配置项 */
|
|
10
|
+
defaultTreeConfig: {
|
|
11
|
+
isOpenTree: boolean;
|
|
12
|
+
transform: boolean;
|
|
13
|
+
idField: string;
|
|
14
|
+
parentField: string;
|
|
15
|
+
childrenField: string;
|
|
16
|
+
indent: number;
|
|
17
|
+
trigger: string;
|
|
18
|
+
lazy: boolean;
|
|
19
|
+
hasChildField: string;
|
|
20
|
+
showIcon: boolean;
|
|
21
|
+
};
|
|
22
|
+
/** 树形结构, 展开的行Map, 键是行的idField 或 keyNames.id, 值是行数据 */
|
|
23
|
+
treeExpandMap: Map<string, any>;
|
|
24
|
+
/** 处理树形结构 */
|
|
25
|
+
handleTree: (baseDataSource: any[]) => any[];
|
|
26
|
+
/** 用于 tree-config,设置展开树形节点,二个参数设置这一行展开与否 */
|
|
27
|
+
setTreeExpand: (rows: any[], expanded: boolean) => Promise<void>;
|
|
28
|
+
};
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { HolyesTableTreeConfig, HolyesTableFooterProps, HolyesTableColumnPropsType, HolyesTableExpandConfig } from './type';
|
|
3
|
+
declare const _default: __VLS_WithSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
4
|
+
/** 表格列属性 */
|
|
5
|
+
columns: {
|
|
6
|
+
type: PropType<HolyesTableColumnPropsType[]>;
|
|
7
|
+
default: () => never[];
|
|
8
|
+
};
|
|
9
|
+
/** 表格高度 */
|
|
10
|
+
height: {
|
|
11
|
+
type: NumberConstructor;
|
|
12
|
+
};
|
|
13
|
+
/** 单元格最小行高 */
|
|
14
|
+
cellMinHeight: {
|
|
15
|
+
type: NumberConstructor;
|
|
16
|
+
default: number;
|
|
17
|
+
};
|
|
18
|
+
/** 加载中 */
|
|
19
|
+
loading: {
|
|
20
|
+
type: BooleanConstructor;
|
|
21
|
+
default: boolean;
|
|
22
|
+
};
|
|
23
|
+
/** 加载中配置 */
|
|
24
|
+
loadingConfig: {
|
|
25
|
+
type: PropType<{
|
|
26
|
+
/** 加载中文本 */
|
|
27
|
+
text?: string;
|
|
28
|
+
}>;
|
|
29
|
+
default: () => {};
|
|
30
|
+
};
|
|
31
|
+
/** 自定义插槽是否懒加载,默认否;开启后,自定义插槽多时滚动会更流畅 */
|
|
32
|
+
lazyLoadSlot: {
|
|
33
|
+
type: BooleanConstructor;
|
|
34
|
+
default: boolean;
|
|
35
|
+
};
|
|
36
|
+
/** 行配置 */
|
|
37
|
+
rowConfig: {
|
|
38
|
+
type: PropType<{
|
|
39
|
+
/** 当鼠标点击行时,是否要高亮当前行 */
|
|
40
|
+
isCurrent?: boolean;
|
|
41
|
+
/** 当鼠标移到行时,是否要高亮当前行 */
|
|
42
|
+
isHover?: boolean;
|
|
43
|
+
}>;
|
|
44
|
+
default: () => {};
|
|
45
|
+
};
|
|
46
|
+
/** 排序配置 */
|
|
47
|
+
sortConfig: {
|
|
48
|
+
type: PropType<{
|
|
49
|
+
/** 排序方式 */
|
|
50
|
+
trigger?: "cell" | "default";
|
|
51
|
+
}>;
|
|
52
|
+
default: () => {};
|
|
53
|
+
};
|
|
54
|
+
/** 是否显示斑马纹背景 */
|
|
55
|
+
stripe: {
|
|
56
|
+
type: BooleanConstructor;
|
|
57
|
+
default: boolean;
|
|
58
|
+
};
|
|
59
|
+
/** 是否显示溢出内容 */
|
|
60
|
+
showOverflow: {
|
|
61
|
+
type: PropType<"title" | "tooltip" | "ellipsis" | "">;
|
|
62
|
+
default: string;
|
|
63
|
+
};
|
|
64
|
+
/** 是否显示表尾行 */
|
|
65
|
+
showFooter: {
|
|
66
|
+
type: BooleanConstructor;
|
|
67
|
+
default: boolean;
|
|
68
|
+
};
|
|
69
|
+
/** 表尾行属性, 这里是定有多少行和列字段属性等 */
|
|
70
|
+
footerProps: {
|
|
71
|
+
type: PropType<HolyesTableFooterProps[]>;
|
|
72
|
+
default: () => never[];
|
|
73
|
+
};
|
|
74
|
+
/** 树形结构配置项 */
|
|
75
|
+
treeConfig: {
|
|
76
|
+
type: PropType<HolyesTableTreeConfig>;
|
|
77
|
+
default: () => {};
|
|
78
|
+
};
|
|
79
|
+
/** 展开配置 */
|
|
80
|
+
expandConfig: {
|
|
81
|
+
type: PropType<HolyesTableExpandConfig>;
|
|
82
|
+
default: () => {};
|
|
83
|
+
};
|
|
84
|
+
}>, {
|
|
85
|
+
loadData: (tempData: any[]) => Promise<void>;
|
|
86
|
+
reloadData: (tempData: any[]) => Promise<void>;
|
|
87
|
+
getCheckboxRecords: (isFull: boolean) => any[];
|
|
88
|
+
clearCheckboxRow: () => void;
|
|
89
|
+
updateFooter: (field?: string) => void;
|
|
90
|
+
updateFooterCellLabel: (field: string, rowIndex: number, label: string) => void;
|
|
91
|
+
getFooterHeight: (footerProps: HolyesTableFooterProps[]) => void;
|
|
92
|
+
getTableData: () => {
|
|
93
|
+
fullData: any[];
|
|
94
|
+
visibleData: any[];
|
|
95
|
+
};
|
|
96
|
+
setTreeExpand: (rows: any[], expanded: boolean) => Promise<void>;
|
|
97
|
+
setAllTreeExpand: (isExpand: boolean) => void;
|
|
98
|
+
clearTreeExpand: () => void;
|
|
99
|
+
setRowExpand: (rows: any[], expanded: boolean) => void;
|
|
100
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
101
|
+
checkboxAll: (...args: any[]) => void;
|
|
102
|
+
checkboxChange: (...args: any[]) => void;
|
|
103
|
+
currentChange: (...args: any[]) => void;
|
|
104
|
+
cellClick: (...args: any[]) => void;
|
|
105
|
+
headerCellClick: (...args: any[]) => void;
|
|
106
|
+
resizableChange: (...args: any[]) => void;
|
|
107
|
+
toggleRowExpand: (...args: any[]) => void;
|
|
108
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
109
|
+
/** 表格列属性 */
|
|
110
|
+
columns: {
|
|
111
|
+
type: PropType<HolyesTableColumnPropsType[]>;
|
|
112
|
+
default: () => never[];
|
|
113
|
+
};
|
|
114
|
+
/** 表格高度 */
|
|
115
|
+
height: {
|
|
116
|
+
type: NumberConstructor;
|
|
117
|
+
};
|
|
118
|
+
/** 单元格最小行高 */
|
|
119
|
+
cellMinHeight: {
|
|
120
|
+
type: NumberConstructor;
|
|
121
|
+
default: number;
|
|
122
|
+
};
|
|
123
|
+
/** 加载中 */
|
|
124
|
+
loading: {
|
|
125
|
+
type: BooleanConstructor;
|
|
126
|
+
default: boolean;
|
|
127
|
+
};
|
|
128
|
+
/** 加载中配置 */
|
|
129
|
+
loadingConfig: {
|
|
130
|
+
type: PropType<{
|
|
131
|
+
/** 加载中文本 */
|
|
132
|
+
text?: string;
|
|
133
|
+
}>;
|
|
134
|
+
default: () => {};
|
|
135
|
+
};
|
|
136
|
+
/** 自定义插槽是否懒加载,默认否;开启后,自定义插槽多时滚动会更流畅 */
|
|
137
|
+
lazyLoadSlot: {
|
|
138
|
+
type: BooleanConstructor;
|
|
139
|
+
default: boolean;
|
|
140
|
+
};
|
|
141
|
+
/** 行配置 */
|
|
142
|
+
rowConfig: {
|
|
143
|
+
type: PropType<{
|
|
144
|
+
/** 当鼠标点击行时,是否要高亮当前行 */
|
|
145
|
+
isCurrent?: boolean;
|
|
146
|
+
/** 当鼠标移到行时,是否要高亮当前行 */
|
|
147
|
+
isHover?: boolean;
|
|
148
|
+
}>;
|
|
149
|
+
default: () => {};
|
|
150
|
+
};
|
|
151
|
+
/** 排序配置 */
|
|
152
|
+
sortConfig: {
|
|
153
|
+
type: PropType<{
|
|
154
|
+
/** 排序方式 */
|
|
155
|
+
trigger?: "cell" | "default";
|
|
156
|
+
}>;
|
|
157
|
+
default: () => {};
|
|
158
|
+
};
|
|
159
|
+
/** 是否显示斑马纹背景 */
|
|
160
|
+
stripe: {
|
|
161
|
+
type: BooleanConstructor;
|
|
162
|
+
default: boolean;
|
|
163
|
+
};
|
|
164
|
+
/** 是否显示溢出内容 */
|
|
165
|
+
showOverflow: {
|
|
166
|
+
type: PropType<"title" | "tooltip" | "ellipsis" | "">;
|
|
167
|
+
default: string;
|
|
168
|
+
};
|
|
169
|
+
/** 是否显示表尾行 */
|
|
170
|
+
showFooter: {
|
|
171
|
+
type: BooleanConstructor;
|
|
172
|
+
default: boolean;
|
|
173
|
+
};
|
|
174
|
+
/** 表尾行属性, 这里是定有多少行和列字段属性等 */
|
|
175
|
+
footerProps: {
|
|
176
|
+
type: PropType<HolyesTableFooterProps[]>;
|
|
177
|
+
default: () => never[];
|
|
178
|
+
};
|
|
179
|
+
/** 树形结构配置项 */
|
|
180
|
+
treeConfig: {
|
|
181
|
+
type: PropType<HolyesTableTreeConfig>;
|
|
182
|
+
default: () => {};
|
|
183
|
+
};
|
|
184
|
+
/** 展开配置 */
|
|
185
|
+
expandConfig: {
|
|
186
|
+
type: PropType<HolyesTableExpandConfig>;
|
|
187
|
+
default: () => {};
|
|
188
|
+
};
|
|
189
|
+
}>> & Readonly<{
|
|
190
|
+
onCheckboxAll?: ((...args: any[]) => any) | undefined;
|
|
191
|
+
onCheckboxChange?: ((...args: any[]) => any) | undefined;
|
|
192
|
+
onCurrentChange?: ((...args: any[]) => any) | undefined;
|
|
193
|
+
onCellClick?: ((...args: any[]) => any) | undefined;
|
|
194
|
+
onHeaderCellClick?: ((...args: any[]) => any) | undefined;
|
|
195
|
+
onResizableChange?: ((...args: any[]) => any) | undefined;
|
|
196
|
+
onToggleRowExpand?: ((...args: any[]) => any) | undefined;
|
|
197
|
+
}>, {
|
|
198
|
+
showFooter: boolean;
|
|
199
|
+
columns: HolyesTableColumnPropsType[];
|
|
200
|
+
treeConfig: HolyesTableTreeConfig;
|
|
201
|
+
expandConfig: HolyesTableExpandConfig;
|
|
202
|
+
cellMinHeight: number;
|
|
203
|
+
loading: boolean;
|
|
204
|
+
loadingConfig: {
|
|
205
|
+
/** 加载中文本 */
|
|
206
|
+
text?: string;
|
|
207
|
+
};
|
|
208
|
+
lazyLoadSlot: boolean;
|
|
209
|
+
rowConfig: {
|
|
210
|
+
/** 当鼠标点击行时,是否要高亮当前行 */
|
|
211
|
+
isCurrent?: boolean;
|
|
212
|
+
/** 当鼠标移到行时,是否要高亮当前行 */
|
|
213
|
+
isHover?: boolean;
|
|
214
|
+
};
|
|
215
|
+
sortConfig: {
|
|
216
|
+
/** 排序方式 */
|
|
217
|
+
trigger?: "cell" | "default";
|
|
218
|
+
};
|
|
219
|
+
stripe: boolean;
|
|
220
|
+
showOverflow: "" | "title" | "tooltip" | "ellipsis";
|
|
221
|
+
footerProps: HolyesTableFooterProps[];
|
|
222
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
|
|
223
|
+
[x: string]: ((props: {
|
|
224
|
+
column: HolyesTableColumnPropsType;
|
|
225
|
+
text: string;
|
|
226
|
+
}) => any) | undefined;
|
|
227
|
+
} & {
|
|
228
|
+
[x: string]: ((props: {
|
|
229
|
+
row: any;
|
|
230
|
+
rowIndex: number;
|
|
231
|
+
}) => any) | undefined;
|
|
232
|
+
} & {
|
|
233
|
+
[x: string]: ((props: {
|
|
234
|
+
row: any;
|
|
235
|
+
column: HolyesTableColumnPropsType;
|
|
236
|
+
rowIndex: number;
|
|
237
|
+
}) => any) | undefined;
|
|
238
|
+
} & {
|
|
239
|
+
[x: string]: ((props: {
|
|
240
|
+
footerColumn: {
|
|
241
|
+
height?: number | undefined;
|
|
242
|
+
field: string;
|
|
243
|
+
fixed?: string | undefined;
|
|
244
|
+
type?: import('./type').HolyesTableFooterType | undefined;
|
|
245
|
+
text?: string | undefined;
|
|
246
|
+
dataType?: import('./type').HolyesTableFooterDataType | undefined;
|
|
247
|
+
data: any;
|
|
248
|
+
slot?: string | undefined;
|
|
249
|
+
};
|
|
250
|
+
footerData: any;
|
|
251
|
+
footerRowIndex: number;
|
|
252
|
+
}) => any) | undefined;
|
|
253
|
+
}>;
|
|
254
|
+
export default _default;
|
|
255
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
256
|
+
new (): {
|
|
257
|
+
$slots: S;
|
|
258
|
+
};
|
|
259
|
+
};
|