ele-admin-plus 1.1.8-beta.1 → 1.1.8-beta.3
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/es/ele-app/el.d.ts +7 -1
- package/es/ele-app/style/overwrite/cascader/index.scss +2 -1
- package/es/ele-app/style/overwrite/input/css-var.scss +5 -2
- package/es/ele-app/style/overwrite/input/index.scss +148 -59
- package/es/ele-app/style/overwrite/select/index.scss +57 -8
- package/es/ele-app/style/overwrite/tree-select/index.scss +11 -2
- package/es/ele-card/index.d.ts +2 -9
- package/es/ele-card/index.js +36 -49
- package/es/ele-card/props.d.ts +1 -4
- package/es/ele-card/props.js +1 -4
- package/es/ele-card/style/index.js +0 -1
- package/es/ele-card/style/index.scss +54 -67
- package/es/ele-cropper/style/index.scss +8 -0
- package/es/ele-data-table/index.d.ts +17 -12
- package/es/ele-data-table/index.js +15 -0
- package/es/ele-data-table/props.d.ts +8 -5
- package/es/ele-data-table/props.js +4 -0
- package/es/ele-drawer/index.d.ts +2 -2
- package/es/ele-menus/index.d.ts +8 -0
- package/es/ele-menus/props.d.ts +3 -0
- package/es/ele-modal/index.d.ts +2 -2
- package/es/ele-page/style/index.scss +26 -21
- package/es/ele-pagination/style/index.scss +27 -13
- package/es/ele-pro-table/index.d.ts +16 -9
- package/es/ele-pro-table/index.js +24 -8
- package/es/ele-pro-table/props.d.ts +9 -6
- package/es/ele-pro-table/props.js +4 -0
- package/es/ele-pro-table/util.d.ts +18 -1
- package/es/ele-pro-table/util.js +19 -0
- package/es/ele-table/style/css-var.scss +46 -0
- package/es/ele-table/style/index.scss +7 -81
- package/es/ele-tour/index.js +2 -2
- package/es/ele-tour/util.d.ts +5 -0
- package/es/ele-tour/util.js +9 -1
- package/es/ele-upload-list/components/list-item.js +1 -1
- package/es/ele-upload-list/types.d.ts +2 -0
- package/es/ele-virtual-table/components/body-cell.d.ts +2 -2
- package/es/ele-virtual-table/components/body-row.d.ts +2 -2
- package/es/ele-virtual-table/index.d.ts +20 -12
- package/es/ele-virtual-table/index.js +14 -1
- package/es/ele-virtual-table/props.d.ts +6 -3
- package/es/ele-watermark/index.d.ts +9 -0
- package/es/ele-watermark/index.js +3 -5
- package/es/ele-watermark/props.d.ts +5 -0
- package/es/ele-watermark/props.js +5 -0
- package/es/style/themes/default.scss +16 -8
- package/es/style/util.scss +5 -0
- package/lib/ele-app/el.d.ts +7 -1
- package/lib/ele-app/style/overwrite/cascader/index.scss +2 -1
- package/lib/ele-app/style/overwrite/input/css-var.scss +5 -2
- package/lib/ele-app/style/overwrite/input/index.scss +148 -59
- package/lib/ele-app/style/overwrite/select/index.scss +57 -8
- package/lib/ele-app/style/overwrite/tree-select/index.scss +11 -2
- package/lib/ele-card/index.cjs +35 -48
- package/lib/ele-card/index.d.ts +2 -9
- package/lib/ele-card/props.cjs +1 -4
- package/lib/ele-card/props.d.ts +1 -4
- package/lib/ele-card/style/index.cjs +0 -1
- package/lib/ele-card/style/index.scss +54 -67
- package/lib/ele-cropper/style/index.scss +8 -0
- package/lib/ele-data-table/index.cjs +15 -0
- package/lib/ele-data-table/index.d.ts +17 -12
- package/lib/ele-data-table/props.cjs +4 -0
- package/lib/ele-data-table/props.d.ts +8 -5
- package/lib/ele-drawer/index.d.ts +2 -2
- package/lib/ele-menus/index.d.ts +8 -0
- package/lib/ele-menus/props.d.ts +3 -0
- package/lib/ele-modal/index.d.ts +2 -2
- package/lib/ele-page/style/index.scss +26 -21
- package/lib/ele-pagination/style/index.scss +27 -13
- package/lib/ele-pro-table/index.cjs +23 -7
- package/lib/ele-pro-table/index.d.ts +16 -9
- package/lib/ele-pro-table/props.cjs +4 -0
- package/lib/ele-pro-table/props.d.ts +9 -6
- package/lib/ele-pro-table/util.cjs +19 -0
- package/lib/ele-pro-table/util.d.ts +18 -1
- package/lib/ele-table/style/css-var.scss +46 -0
- package/lib/ele-table/style/index.scss +7 -81
- package/lib/ele-tour/index.cjs +1 -1
- package/lib/ele-tour/util.cjs +8 -0
- package/lib/ele-tour/util.d.ts +5 -0
- package/lib/ele-upload-list/components/list-item.cjs +1 -1
- package/lib/ele-upload-list/types.d.ts +2 -0
- package/lib/ele-virtual-table/components/body-cell.d.ts +2 -2
- package/lib/ele-virtual-table/components/body-row.d.ts +2 -2
- package/lib/ele-virtual-table/index.cjs +13 -0
- package/lib/ele-virtual-table/index.d.ts +20 -12
- package/lib/ele-virtual-table/props.d.ts +6 -3
- package/lib/ele-watermark/index.cjs +3 -5
- package/lib/ele-watermark/index.d.ts +9 -0
- package/lib/ele-watermark/props.cjs +5 -0
- package/lib/ele-watermark/props.d.ts +5 -0
- package/lib/style/themes/default.scss +16 -8
- package/lib/style/util.scss +5 -0
- package/package.json +31 -28
|
@@ -92,20 +92,29 @@
|
|
|
92
92
|
width: 50px;
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
.el-pagination__sizes
|
|
96
|
-
|
|
95
|
+
.el-pagination__sizes {
|
|
96
|
+
.el-input,
|
|
97
|
+
.el-select {
|
|
98
|
+
width: 96px;
|
|
97
99
|
|
|
98
|
-
|
|
100
|
+
.el-select__caret {
|
|
101
|
+
margin-left: 0;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.el-input .el-input__wrapper,
|
|
106
|
+
.el-select .el-select__wrapper {
|
|
99
107
|
padding-left: 1px;
|
|
100
108
|
padding-right: 7px;
|
|
101
109
|
}
|
|
102
110
|
|
|
103
|
-
.el-
|
|
104
|
-
|
|
111
|
+
.el-select__selected-item {
|
|
112
|
+
text-align: center;
|
|
105
113
|
}
|
|
106
114
|
}
|
|
107
115
|
|
|
108
|
-
.el-input__inner
|
|
116
|
+
.el-input__inner,
|
|
117
|
+
.el-select__selected-item > span {
|
|
109
118
|
font-size: eleVar('pagination', 'sm-font-size');
|
|
110
119
|
}
|
|
111
120
|
|
|
@@ -161,19 +170,24 @@
|
|
|
161
170
|
width: 44px;
|
|
162
171
|
}
|
|
163
172
|
|
|
164
|
-
.el-pagination__sizes
|
|
165
|
-
|
|
173
|
+
.el-pagination__sizes {
|
|
174
|
+
.el-input,
|
|
175
|
+
.el-select {
|
|
176
|
+
width: 88px;
|
|
166
177
|
|
|
167
|
-
|
|
168
|
-
|
|
178
|
+
.el-select__caret {
|
|
179
|
+
font-size: 12px;
|
|
180
|
+
}
|
|
169
181
|
}
|
|
170
182
|
|
|
171
|
-
.el-
|
|
172
|
-
|
|
183
|
+
.el-input .el-input__wrapper,
|
|
184
|
+
.el-select .el-select__wrapper {
|
|
185
|
+
padding-right: 6px;
|
|
173
186
|
}
|
|
174
187
|
}
|
|
175
188
|
|
|
176
|
-
.el-input__inner
|
|
189
|
+
.el-input__inner,
|
|
190
|
+
.el-select__selected-item > span {
|
|
177
191
|
font-size: eleVar('pagination', 'sm-font-size');
|
|
178
192
|
}
|
|
179
193
|
|
|
@@ -3,6 +3,10 @@ import type { EleLoadingProps, ElePaginationProps, EleDataTableProps } from '../
|
|
|
3
3
|
import type { DataItem, Columns, Sorter, Filter, TableSize } from '../ele-data-table/types';
|
|
4
4
|
import type { ReloadFunction, DoneParams, FetchCallback, TableViewInstance } from './types';
|
|
5
5
|
declare const _default: import("vue").DefineComponent<{
|
|
6
|
+
rowKey: {
|
|
7
|
+
type: import("vue").PropType<string | ((row: DataItem) => string) | undefined>;
|
|
8
|
+
required: boolean;
|
|
9
|
+
};
|
|
6
10
|
loading: BooleanConstructor;
|
|
7
11
|
datasource: {
|
|
8
12
|
type: import("vue").PropType<import("./types").Datasource>;
|
|
@@ -68,7 +72,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
68
72
|
};
|
|
69
73
|
width: (StringConstructor | NumberConstructor)[];
|
|
70
74
|
lazy: BooleanConstructor;
|
|
71
|
-
rowKey: import("vue").PropType<string | ((row: any) => string) | undefined>;
|
|
72
75
|
columns: {
|
|
73
76
|
type: import("vue").PropType<Columns>;
|
|
74
77
|
required: boolean;
|
|
@@ -78,7 +81,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
78
81
|
type: BooleanConstructor;
|
|
79
82
|
default: boolean;
|
|
80
83
|
};
|
|
81
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
84
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
82
85
|
emptyText: StringConstructor;
|
|
83
86
|
indent: {
|
|
84
87
|
type: NumberConstructor;
|
|
@@ -113,7 +116,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
113
116
|
defaultExpandAll: BooleanConstructor;
|
|
114
117
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").Sort | undefined>;
|
|
115
118
|
tooltipEffect: StringConstructor;
|
|
116
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
119
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
117
120
|
spanMethod: import("vue").PropType<((data: {
|
|
118
121
|
row: any;
|
|
119
122
|
rowIndex: number;
|
|
@@ -223,16 +226,21 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
223
226
|
rowClick: (_row: DataItem, _column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
224
227
|
rowContextmenu: (_row: DataItem, _column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
225
228
|
rowDblclick: (_row: DataItem, _column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
226
|
-
headerClick: (_column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
227
|
-
headerContextmenu: (_column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
229
|
+
headerClick: (_column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
230
|
+
headerContextmenu: (_column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
228
231
|
sortChange: (_sorter: Sorter) => boolean;
|
|
229
|
-
filterChange: (_filter: Filter) => boolean;
|
|
232
|
+
filterChange: (_filter: Filter) => boolean; /** 每页显示数量 */
|
|
230
233
|
currentChange: (_current?: DataItem | null | undefined, _old?: DataItem | null | undefined) => boolean;
|
|
231
234
|
headerDragend: (_width: number, _old: number, _column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
235
|
+
/** 数据请求状态 */
|
|
232
236
|
expandChange: (_row: DataItem, _expanded: boolean) => boolean;
|
|
233
237
|
'update:currentRowKey': (_currentRowKey?: import("../ele-data-table/types").DataKey | undefined) => boolean;
|
|
234
238
|
'update:selectedRowKeys': (_selectedRowKeys?: import("../ele-data-table/types").DataKey[] | undefined) => boolean;
|
|
235
239
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
240
|
+
rowKey: {
|
|
241
|
+
type: import("vue").PropType<string | ((row: DataItem) => string) | undefined>;
|
|
242
|
+
required: boolean;
|
|
243
|
+
};
|
|
236
244
|
loading: BooleanConstructor;
|
|
237
245
|
datasource: {
|
|
238
246
|
type: import("vue").PropType<import("./types").Datasource>;
|
|
@@ -298,7 +306,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
298
306
|
};
|
|
299
307
|
width: (StringConstructor | NumberConstructor)[];
|
|
300
308
|
lazy: BooleanConstructor;
|
|
301
|
-
rowKey: import("vue").PropType<string | ((row: any) => string) | undefined>;
|
|
302
309
|
columns: {
|
|
303
310
|
type: import("vue").PropType<Columns>;
|
|
304
311
|
required: boolean;
|
|
@@ -308,7 +315,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
308
315
|
type: BooleanConstructor;
|
|
309
316
|
default: boolean;
|
|
310
317
|
};
|
|
311
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
318
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
312
319
|
emptyText: StringConstructor;
|
|
313
320
|
indent: {
|
|
314
321
|
type: NumberConstructor;
|
|
@@ -343,7 +350,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
343
350
|
defaultExpandAll: BooleanConstructor;
|
|
344
351
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").Sort | undefined>;
|
|
345
352
|
tooltipEffect: StringConstructor;
|
|
346
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
353
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
347
354
|
spanMethod: import("vue").PropType<((data: {
|
|
348
355
|
row: any;
|
|
349
356
|
rowIndex: number;
|
|
@@ -9,7 +9,7 @@ import EleDataTable from "../ele-data-table/index";
|
|
|
9
9
|
import EleVirtualTable from "../ele-virtual-table/index";
|
|
10
10
|
import EleToolbar from "../ele-toolbar/index";
|
|
11
11
|
import TableTools from "./components/table-tools";
|
|
12
|
-
import { getDefaultFilter, getTablePage, getTableLimit, getTableSize, getPaginationProps, mergeProps, getInitCacheColumns, reloadData, getRequestOrders, getRequestFilters, getResponseResult, getResponseName, isAutoAmend, sortData } from "./util";
|
|
12
|
+
import { getDefaultFilter, getTablePage, getTableLimit, getTableSize, getPaginationProps, mergeProps, getRowKey, getInitCacheColumns, reloadData, addDefaultRowKey, getDefaultRowKey, getRequestOrders, getRequestFilters, getResponseResult, getResponseName, isAutoAmend, sortData } from "./util";
|
|
13
13
|
import { proTableProps, proTableEmits } from "./props";
|
|
14
14
|
const _sfc_main = defineComponent({
|
|
15
15
|
name: "EleProTable",
|
|
@@ -90,6 +90,7 @@ const _sfc_main = defineComponent({
|
|
|
90
90
|
pageIndex: tableIndex.value,
|
|
91
91
|
emptyProps: tableEmptyProps.value,
|
|
92
92
|
rowHeight: props.virtual ? props.rowHeight : void 0,
|
|
93
|
+
rowKey: getRowKey(props.rowKey),
|
|
93
94
|
style: props.tableStyle,
|
|
94
95
|
class: "ele-pro-table-view",
|
|
95
96
|
...events,
|
|
@@ -152,7 +153,11 @@ const _sfc_main = defineComponent({
|
|
|
152
153
|
tableLimit.value
|
|
153
154
|
);
|
|
154
155
|
cacheData.value = props.datasource;
|
|
155
|
-
tableData.value =
|
|
156
|
+
tableData.value = addDefaultRowKey(
|
|
157
|
+
data,
|
|
158
|
+
getDefaultRowKey(props.rowKey),
|
|
159
|
+
tablePage.value
|
|
160
|
+
);
|
|
156
161
|
tablePage.value = page;
|
|
157
162
|
tableTotal.value = total;
|
|
158
163
|
onDone({ data, page, total, response: props.datasource });
|
|
@@ -220,7 +225,11 @@ const _sfc_main = defineComponent({
|
|
|
220
225
|
return;
|
|
221
226
|
}
|
|
222
227
|
}
|
|
223
|
-
tableData.value =
|
|
228
|
+
tableData.value = addDefaultRowKey(
|
|
229
|
+
data,
|
|
230
|
+
getDefaultRowKey(props.rowKey),
|
|
231
|
+
tablePage.value
|
|
232
|
+
);
|
|
224
233
|
tableTotal.value = total || data.length;
|
|
225
234
|
}
|
|
226
235
|
tableLoading.value = false;
|
|
@@ -311,14 +320,19 @@ const _sfc_main = defineComponent({
|
|
|
311
320
|
return tableData.value;
|
|
312
321
|
};
|
|
313
322
|
const setData = (data) => {
|
|
314
|
-
tableData.value =
|
|
323
|
+
tableData.value = addDefaultRowKey(
|
|
324
|
+
data,
|
|
325
|
+
getDefaultRowKey(props.rowKey),
|
|
326
|
+
tablePage.value
|
|
327
|
+
);
|
|
315
328
|
};
|
|
316
329
|
const goPageByRowKey = (key) => {
|
|
317
|
-
if (!
|
|
330
|
+
if (!paginationProps.value || tableLimit.value == null || isFunctionSource.value) {
|
|
318
331
|
return;
|
|
319
332
|
}
|
|
333
|
+
const rowKey = getRowKey(props.rowKey);
|
|
320
334
|
const data = sortData(props.datasource, tableState.sorter);
|
|
321
|
-
const index2 = data.findIndex((d) => getValue(d,
|
|
335
|
+
const index2 = data.findIndex((d) => getValue(d, rowKey) === key);
|
|
322
336
|
const page = Math.floor(index2 / tableLimit.value) + 1;
|
|
323
337
|
if (tablePage.value !== page) {
|
|
324
338
|
reload({ page });
|
|
@@ -381,13 +395,15 @@ const _sfc_main = defineComponent({
|
|
|
381
395
|
watch(
|
|
382
396
|
() => props.current,
|
|
383
397
|
(current) => {
|
|
384
|
-
methods.setCurrentRowKey(getValue(current, props.rowKey));
|
|
398
|
+
methods.setCurrentRowKey(getValue(current, getRowKey(props.rowKey)));
|
|
385
399
|
}
|
|
386
400
|
);
|
|
387
401
|
watch(
|
|
388
402
|
() => props.selections,
|
|
389
403
|
(selections) => {
|
|
390
|
-
methods.setSelectedRowKeys(
|
|
404
|
+
methods.setSelectedRowKeys(
|
|
405
|
+
getRowKeys(selections, getRowKey(props.rowKey))
|
|
406
|
+
);
|
|
391
407
|
}
|
|
392
408
|
);
|
|
393
409
|
watch(
|
|
@@ -6,6 +6,10 @@ import type { Where, Datasource, RequestOption, ResponseOption, ParseData, DoneP
|
|
|
6
6
|
* 属性
|
|
7
7
|
*/
|
|
8
8
|
export declare const proTableProps: {
|
|
9
|
+
rowKey: {
|
|
10
|
+
type: PropType<string | ((row: DataItem) => string) | undefined>;
|
|
11
|
+
required: boolean;
|
|
12
|
+
};
|
|
9
13
|
/** 数据请求状态 */
|
|
10
14
|
loading: BooleanConstructor;
|
|
11
15
|
/** 数据源 */
|
|
@@ -95,7 +99,6 @@ export declare const proTableProps: {
|
|
|
95
99
|
};
|
|
96
100
|
width: (StringConstructor | NumberConstructor)[];
|
|
97
101
|
lazy: BooleanConstructor;
|
|
98
|
-
rowKey: PropType<string | ((row: any) => string) | undefined>;
|
|
99
102
|
columns: {
|
|
100
103
|
type: PropType<Columns>;
|
|
101
104
|
required: boolean;
|
|
@@ -105,7 +108,7 @@ export declare const proTableProps: {
|
|
|
105
108
|
type: BooleanConstructor;
|
|
106
109
|
default: boolean;
|
|
107
110
|
};
|
|
108
|
-
showOverflowTooltip: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
111
|
+
showOverflowTooltip: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
109
112
|
emptyText: StringConstructor;
|
|
110
113
|
indent: {
|
|
111
114
|
type: NumberConstructor;
|
|
@@ -140,7 +143,7 @@ export declare const proTableProps: {
|
|
|
140
143
|
defaultExpandAll: BooleanConstructor;
|
|
141
144
|
defaultSort: PropType<import("element-plus/es/components/table/src/table/defaults").Sort | undefined>;
|
|
142
145
|
tooltipEffect: StringConstructor;
|
|
143
|
-
tooltipOptions: PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
146
|
+
tooltipOptions: PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
144
147
|
spanMethod: PropType<((data: {
|
|
145
148
|
row: any;
|
|
146
149
|
rowIndex: number;
|
|
@@ -176,7 +179,7 @@ export declare const proTableProps: {
|
|
|
176
179
|
};
|
|
177
180
|
slotNormalize: {
|
|
178
181
|
type: BooleanConstructor;
|
|
179
|
-
default: boolean;
|
|
182
|
+
default: boolean; /** 自定义请求参数名称 */
|
|
180
183
|
};
|
|
181
184
|
sticky: BooleanConstructor;
|
|
182
185
|
bottomLine: {
|
|
@@ -226,8 +229,8 @@ export declare const proTableEmits: {
|
|
|
226
229
|
sortChange: (_sorter: import("./types").Sorter) => boolean;
|
|
227
230
|
filterChange: (_filter: import("./types").Filter) => boolean;
|
|
228
231
|
currentChange: (_current?: DataItem | null | undefined, _old?: DataItem | null | undefined) => boolean;
|
|
229
|
-
headerDragend: (_width: number, _old: number, _column: import("./types").Column, _e: MouseEvent) => boolean;
|
|
230
|
-
expandChange: (_row: DataItem, _expanded: boolean) => boolean;
|
|
232
|
+
headerDragend: (_width: number, _old: number, _column: import("./types").Column, _e: MouseEvent) => boolean; /** 表格最大化切换事件 */
|
|
233
|
+
expandChange: (_row: DataItem, _expanded: boolean) => boolean;
|
|
231
234
|
'update:currentRowKey': (_currentRowKey?: import("../ele-data-table/types").DataKey | undefined) => boolean;
|
|
232
235
|
'update:selectedRowKeys': (_selectedRowKeys?: import("../ele-data-table/types").DataKey[] | undefined) => boolean;
|
|
233
236
|
};
|
|
@@ -2,6 +2,10 @@ import { omit } from "../utils/core";
|
|
|
2
2
|
import { dataTableProps, dataTableEmits } from "../ele-data-table/props";
|
|
3
3
|
const proTableProps = {
|
|
4
4
|
...omit(dataTableProps, ["data", "pageIndex", "errorText", "cacheData"]),
|
|
5
|
+
rowKey: {
|
|
6
|
+
type: [String, Function],
|
|
7
|
+
required: false
|
|
8
|
+
},
|
|
5
9
|
/** 数据请求状态 */
|
|
6
10
|
loading: Boolean,
|
|
7
11
|
/** 数据源 */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ElePaginationProps } from '../ele-app/plus';
|
|
2
|
-
import type { DataItem, Column, Columns, Sorter, Filter, TableSize, TreeProps } from '../ele-data-table/types';
|
|
2
|
+
import type { DataItem, Column, Columns, Sorter, Filter, TableSize, TreeProps, RowKey } from '../ele-data-table/types';
|
|
3
3
|
import type { Orders, Filters, OrderItem, RequestOption, ResponseOption, TablePagination, DatasourceResult, ResponseResult, ReloadDataResult, ColItem, ProProps } from './types';
|
|
4
4
|
/**
|
|
5
5
|
* 合并复合属性
|
|
@@ -153,3 +153,20 @@ export declare function getSizeCacheKey(cacheKey: string): string;
|
|
|
153
153
|
* @param cacheKey 缓存的名称
|
|
154
154
|
*/
|
|
155
155
|
export declare function getCacheSize(cacheKey?: string): TableSize;
|
|
156
|
+
/**
|
|
157
|
+
* 获取默认 rowKey
|
|
158
|
+
* @param rowKey 自定义 rowKey
|
|
159
|
+
*/
|
|
160
|
+
export declare function getDefaultRowKey(rowKey?: RowKey): "_rowKey" | undefined;
|
|
161
|
+
/**
|
|
162
|
+
* 获取 rowKey
|
|
163
|
+
* @param rowKey 自定义 rowKey
|
|
164
|
+
*/
|
|
165
|
+
export declare function getRowKey(rowKey?: RowKey): string | ((row: DataItem) => string) | undefined;
|
|
166
|
+
/**
|
|
167
|
+
* 数据添加默认的 rowKey 字段
|
|
168
|
+
* @param data 数据
|
|
169
|
+
* @param rowKey 字段名
|
|
170
|
+
* @param page 页码
|
|
171
|
+
*/
|
|
172
|
+
export declare function addDefaultRowKey(data: DataItem[], rowKey: string | undefined, page: number): DataItem[];
|
package/es/ele-pro-table/util.js
CHANGED
|
@@ -359,13 +359,31 @@ function getCacheSize(cacheKey) {
|
|
|
359
359
|
}
|
|
360
360
|
}
|
|
361
361
|
}
|
|
362
|
+
function getDefaultRowKey(rowKey) {
|
|
363
|
+
return rowKey ? void 0 : "_rowKey";
|
|
364
|
+
}
|
|
365
|
+
function getRowKey(rowKey) {
|
|
366
|
+
return rowKey ?? getDefaultRowKey();
|
|
367
|
+
}
|
|
368
|
+
function addDefaultRowKey(data, rowKey, page) {
|
|
369
|
+
if (rowKey == null) {
|
|
370
|
+
return data;
|
|
371
|
+
}
|
|
372
|
+
return data.map((d, i) => {
|
|
373
|
+
const item = { ...d };
|
|
374
|
+
item[rowKey] = `${page}-${i}`;
|
|
375
|
+
return item;
|
|
376
|
+
});
|
|
377
|
+
}
|
|
362
378
|
export {
|
|
379
|
+
addDefaultRowKey,
|
|
363
380
|
getCacheCols,
|
|
364
381
|
getCacheSize,
|
|
365
382
|
getCheckedColumns,
|
|
366
383
|
getColId,
|
|
367
384
|
getColsCacheKey,
|
|
368
385
|
getDefaultFilter,
|
|
386
|
+
getDefaultRowKey,
|
|
369
387
|
getInitCacheColumns,
|
|
370
388
|
getInitColumns,
|
|
371
389
|
getOrderItems,
|
|
@@ -376,6 +394,7 @@ export {
|
|
|
376
394
|
getResponseData,
|
|
377
395
|
getResponseName,
|
|
378
396
|
getResponseResult,
|
|
397
|
+
getRowKey,
|
|
379
398
|
getSettingCols,
|
|
380
399
|
getSizeCacheKey,
|
|
381
400
|
getTableLimit,
|
|
@@ -6,3 +6,49 @@
|
|
|
6
6
|
@include set-ele-var('table', $var);
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
+
|
|
10
|
+
/* 静态表格圆角 */
|
|
11
|
+
@mixin table-radius($radius) {
|
|
12
|
+
& > thead > tr:first-child > th:first-child,
|
|
13
|
+
& > thead > tr:first-child > td:first-child,
|
|
14
|
+
&.is-border:not(.has-header) > tr:first-child > td:first-child,
|
|
15
|
+
&.is-border:not(.has-header) > tbody > tr:first-child > td:first-child {
|
|
16
|
+
border-top-left-radius: $radius;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
& > thead > tr:first-child > th:last-child,
|
|
20
|
+
& > thead > tr:first-child > td:last-child,
|
|
21
|
+
&.is-border:not(.has-header) > tr:first-child > td:last-child,
|
|
22
|
+
&.is-border:not(.has-header) > tbody > tr:first-child > td:last-child {
|
|
23
|
+
border-top-right-radius: $radius;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&.is-border:not(.has-footer) > tr:last-child > td:first-child,
|
|
27
|
+
&.is-border:not(.has-footer) > tbody > tr:last-child > td:first-child,
|
|
28
|
+
& > tfoot > tr:last-child > td:first-child {
|
|
29
|
+
border-bottom-left-radius: $radius;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&.is-border:not(.has-footer) > tr:last-child > td:last-child,
|
|
33
|
+
&.is-border:not(.has-footer) > tbody > tr:last-child > td:last-child,
|
|
34
|
+
& > tfoot > tr:last-child > td:last-child {
|
|
35
|
+
border-bottom-right-radius: $radius;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&.has-header {
|
|
39
|
+
border-top-left-radius: $radius;
|
|
40
|
+
border-top-right-radius: $radius;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&.has-footer {
|
|
44
|
+
border-bottom-left-radius: $radius;
|
|
45
|
+
border-bottom-right-radius: $radius;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
&.is-border {
|
|
49
|
+
border-top-left-radius: $radius;
|
|
50
|
+
border-top-right-radius: $radius;
|
|
51
|
+
border-bottom-left-radius: $radius;
|
|
52
|
+
border-bottom-right-radius: $radius;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -82,33 +82,7 @@
|
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
/* 圆角 */
|
|
85
|
-
|
|
86
|
-
& > thead > tr:first-child > td:first-child {
|
|
87
|
-
border-top-left-radius: eleVar('table', 'radius');
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
& > thead > tr:first-child > th:last-child,
|
|
91
|
-
& > thead > tr:first-child > td:last-child {
|
|
92
|
-
border-top-right-radius: eleVar('table', 'radius');
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
& > tfoot > tr:last-child > td:first-child {
|
|
96
|
-
border-bottom-left-radius: eleVar('table', 'radius');
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
& > tfoot > tr:last-child > td:last-child {
|
|
100
|
-
border-bottom-right-radius: eleVar('table', 'radius');
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
&.has-header {
|
|
104
|
-
border-top-left-radius: eleVar('table', 'radius');
|
|
105
|
-
border-top-right-radius: eleVar('table', 'radius');
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
&.has-footer {
|
|
109
|
-
border-bottom-left-radius: eleVar('table', 'radius');
|
|
110
|
-
border-bottom-right-radius: eleVar('table', 'radius');
|
|
111
|
-
}
|
|
85
|
+
@include table-radius(eleVar('table', 'radius'));
|
|
112
86
|
|
|
113
87
|
/* 斑马纹 */
|
|
114
88
|
&.is-stripe {
|
|
@@ -151,33 +125,7 @@
|
|
|
151
125
|
}
|
|
152
126
|
}
|
|
153
127
|
|
|
154
|
-
|
|
155
|
-
& > thead > tr:first-child > td:first-child {
|
|
156
|
-
border-top-left-radius: eleVar('table', 'lg-radius');
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
& > thead > tr:first-child > th:last-child,
|
|
160
|
-
& > thead > tr:first-child > td:last-child {
|
|
161
|
-
border-top-right-radius: eleVar('table', 'lg-radius');
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
& > tfoot > tr:last-child > td:first-child {
|
|
165
|
-
border-bottom-left-radius: eleVar('table', 'lg-radius');
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
& > tfoot > tr:last-child > td:last-child {
|
|
169
|
-
border-bottom-right-radius: eleVar('table', 'lg-radius');
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
&.has-header {
|
|
173
|
-
border-top-left-radius: eleVar('table', 'lg-radius');
|
|
174
|
-
border-top-right-radius: eleVar('table', 'lg-radius');
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
&.has-footer {
|
|
178
|
-
border-bottom-left-radius: eleVar('table', 'lg-radius');
|
|
179
|
-
border-bottom-right-radius: eleVar('table', 'lg-radius');
|
|
180
|
-
}
|
|
128
|
+
@include table-radius(eleVar('table', 'lg-radius'));
|
|
181
129
|
}
|
|
182
130
|
|
|
183
131
|
/* 小型尺寸 */
|
|
@@ -193,33 +141,7 @@
|
|
|
193
141
|
}
|
|
194
142
|
}
|
|
195
143
|
|
|
196
|
-
|
|
197
|
-
& > thead > tr:first-child > td:first-child {
|
|
198
|
-
border-top-left-radius: eleVar('table', 'sm-radius');
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
& > thead > tr:first-child > th:last-child,
|
|
202
|
-
& > thead > tr:first-child > td:last-child {
|
|
203
|
-
border-top-right-radius: eleVar('table', 'sm-radius');
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
& > tfoot > tr:last-child > td:first-child {
|
|
207
|
-
border-bottom-left-radius: eleVar('table', 'sm-radius');
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
& > tfoot > tr:last-child > td:last-child {
|
|
211
|
-
border-bottom-right-radius: eleVar('table', 'sm-radius');
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
&.has-header {
|
|
215
|
-
border-top-left-radius: eleVar('table', 'sm-radius');
|
|
216
|
-
border-top-right-radius: eleVar('table', 'sm-radius');
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
&.has-footer {
|
|
220
|
-
border-bottom-left-radius: eleVar('table', 'sm-radius');
|
|
221
|
-
border-bottom-right-radius: eleVar('table', 'sm-radius');
|
|
222
|
-
}
|
|
144
|
+
@include table-radius(eleVar('table', 'sm-radius'));
|
|
223
145
|
}
|
|
224
146
|
|
|
225
147
|
/* 全边框 */
|
|
@@ -238,6 +160,10 @@
|
|
|
238
160
|
}
|
|
239
161
|
}
|
|
240
162
|
|
|
163
|
+
&:not(.has-header) {
|
|
164
|
+
border-top: 1px solid eleVar('table', 'border-color');
|
|
165
|
+
}
|
|
166
|
+
|
|
241
167
|
/* 表格内组件样式优化 */
|
|
242
168
|
@include table-common-style();
|
|
243
169
|
}
|
package/es/ele-tour/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { defineComponent, ref, shallowRef, onMounted, watch, nextTick, resolveCo
|
|
|
2
2
|
import { ElButton } from "element-plus";
|
|
3
3
|
import EleTooltip from "../ele-tooltip/index";
|
|
4
4
|
import { useLicense, useLocale } from "../ele-config-provider/receiver";
|
|
5
|
-
import { getOffset, getPopperProps } from "./util";
|
|
5
|
+
import { scrollIntoView, getOffset, getPopperProps } from "./util";
|
|
6
6
|
import { tourProps, tourEmits } from "./props";
|
|
7
7
|
const _sfc_main = defineComponent({
|
|
8
8
|
name: "EleTour",
|
|
@@ -34,7 +34,7 @@ const _sfc_main = defineComponent({
|
|
|
34
34
|
showMask.value = mask ?? props.mask;
|
|
35
35
|
const el = typeof target === "function" ? target() : target;
|
|
36
36
|
if (el) {
|
|
37
|
-
el
|
|
37
|
+
scrollIntoView(el);
|
|
38
38
|
const { width, height } = el.getBoundingClientRect();
|
|
39
39
|
const { top, left } = getOffset(el);
|
|
40
40
|
const space = padding ?? props.padding ?? 0;
|
package/es/ele-tour/util.d.ts
CHANGED
|
@@ -12,3 +12,8 @@ export declare function getOffset(el: HTMLElement): Offset;
|
|
|
12
12
|
* @param props 自定义属性
|
|
13
13
|
*/
|
|
14
14
|
export declare function getPopperProps(visible?: boolean, modal?: boolean, props?: EleTooltipProps): EleTooltipProps;
|
|
15
|
+
/**
|
|
16
|
+
* 让元素可见
|
|
17
|
+
* @param el 元素
|
|
18
|
+
*/
|
|
19
|
+
export declare function scrollIntoView(el: HTMLElement): void;
|
package/es/ele-tour/util.js
CHANGED
|
@@ -29,7 +29,15 @@ function getPopperProps(visible, modal, props) {
|
|
|
29
29
|
popperClass: classes.join(" ")
|
|
30
30
|
};
|
|
31
31
|
}
|
|
32
|
+
function scrollIntoView(el) {
|
|
33
|
+
if (typeof el["scrollIntoViewIfNeeded"] === "function") {
|
|
34
|
+
el.scrollIntoViewIfNeeded(true);
|
|
35
|
+
} else {
|
|
36
|
+
el.scrollIntoView({ behavior: "instant", block: "nearest" });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
32
39
|
export {
|
|
33
40
|
getOffset,
|
|
34
|
-
getPopperProps
|
|
41
|
+
getPopperProps,
|
|
42
|
+
scrollIntoView
|
|
35
43
|
};
|
|
@@ -97,7 +97,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
97
97
|
})
|
|
98
98
|
]))
|
|
99
99
|
]),
|
|
100
|
-
!_ctx.readonly && !_ctx.disabled ? (openBlock(), createElementBlock("div", {
|
|
100
|
+
!_ctx.readonly && !_ctx.disabled && !_ctx.item.readonly ? (openBlock(), createElementBlock("div", {
|
|
101
101
|
key: 0,
|
|
102
102
|
class: "ele-upload-remove",
|
|
103
103
|
onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.onRemove && _ctx.onRemove(...args), ["stop"]))
|
|
@@ -30,7 +30,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
30
30
|
colspan: number;
|
|
31
31
|
} | undefined) | undefined>;
|
|
32
32
|
/** 溢出提示组件全局属性 */
|
|
33
|
-
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
33
|
+
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
34
34
|
/** 序号列起始编号 */
|
|
35
35
|
pageIndex: NumberConstructor;
|
|
36
36
|
/** 表格行高 */
|
|
@@ -110,7 +110,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
110
110
|
colspan: number;
|
|
111
111
|
} | undefined) | undefined>;
|
|
112
112
|
/** 溢出提示组件全局属性 */
|
|
113
|
-
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
113
|
+
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
114
114
|
/** 序号列起始编号 */
|
|
115
115
|
pageIndex: NumberConstructor;
|
|
116
116
|
/** 表格行高 */
|
|
@@ -29,7 +29,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
29
29
|
colspan: number;
|
|
30
30
|
} | undefined) | undefined>;
|
|
31
31
|
/** 溢出提示组件全局属性 */
|
|
32
|
-
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
32
|
+
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
33
33
|
/** 序号列起始编号 */
|
|
34
34
|
pageIndex: NumberConstructor;
|
|
35
35
|
/** 表格行高 */
|
|
@@ -109,7 +109,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
109
109
|
colspan: number;
|
|
110
110
|
} | undefined) | undefined>;
|
|
111
111
|
/** 溢出提示组件全局属性 */
|
|
112
|
-
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
112
|
+
tableTooltipProps: PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "effect" | "placement" | "popperOptions" | "popperClass" | "showArrow" | "appendTo" | "transition" | "enterable" | "showAfter" | "hideAfter">> | undefined>;
|
|
113
113
|
/** 序号列起始编号 */
|
|
114
114
|
pageIndex: NumberConstructor;
|
|
115
115
|
/** 表格行高 */
|