ele-admin-plus 1.1.8-beta.1 → 1.1.8-beta.2
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/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.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 +20 -20
|
@@ -91,6 +91,7 @@ const _sfc_main = vue.defineComponent({
|
|
|
91
91
|
pageIndex: tableIndex.value,
|
|
92
92
|
emptyProps: tableEmptyProps.value,
|
|
93
93
|
rowHeight: props2.virtual ? props2.rowHeight : void 0,
|
|
94
|
+
rowKey: util$1.getRowKey(props2.rowKey),
|
|
94
95
|
style: props2.tableStyle,
|
|
95
96
|
class: "ele-pro-table-view",
|
|
96
97
|
...events,
|
|
@@ -153,7 +154,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
153
154
|
tableLimit.value
|
|
154
155
|
);
|
|
155
156
|
cacheData.value = props2.datasource;
|
|
156
|
-
tableData.value =
|
|
157
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
158
|
+
data,
|
|
159
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
160
|
+
tablePage.value
|
|
161
|
+
);
|
|
157
162
|
tablePage.value = page;
|
|
158
163
|
tableTotal.value = total;
|
|
159
164
|
onDone({ data, page, total, response: props2.datasource });
|
|
@@ -221,7 +226,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
221
226
|
return;
|
|
222
227
|
}
|
|
223
228
|
}
|
|
224
|
-
tableData.value =
|
|
229
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
230
|
+
data,
|
|
231
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
232
|
+
tablePage.value
|
|
233
|
+
);
|
|
225
234
|
tableTotal.value = total || data.length;
|
|
226
235
|
}
|
|
227
236
|
tableLoading.value = false;
|
|
@@ -312,14 +321,19 @@ const _sfc_main = vue.defineComponent({
|
|
|
312
321
|
return tableData.value;
|
|
313
322
|
};
|
|
314
323
|
const setData = (data) => {
|
|
315
|
-
tableData.value =
|
|
324
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
325
|
+
data,
|
|
326
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
327
|
+
tablePage.value
|
|
328
|
+
);
|
|
316
329
|
};
|
|
317
330
|
const goPageByRowKey = (key) => {
|
|
318
|
-
if (!
|
|
331
|
+
if (!paginationProps.value || tableLimit.value == null || isFunctionSource.value) {
|
|
319
332
|
return;
|
|
320
333
|
}
|
|
334
|
+
const rowKey = util$1.getRowKey(props2.rowKey);
|
|
321
335
|
const data = util$1.sortData(props2.datasource, tableState.sorter);
|
|
322
|
-
const index2 = data.findIndex((d) => util.getValue(d,
|
|
336
|
+
const index2 = data.findIndex((d) => util.getValue(d, rowKey) === key);
|
|
323
337
|
const page = Math.floor(index2 / tableLimit.value) + 1;
|
|
324
338
|
if (tablePage.value !== page) {
|
|
325
339
|
reload({ page });
|
|
@@ -382,13 +396,15 @@ const _sfc_main = vue.defineComponent({
|
|
|
382
396
|
vue.watch(
|
|
383
397
|
() => props2.current,
|
|
384
398
|
(current) => {
|
|
385
|
-
methods.setCurrentRowKey(util.getValue(current, props2.rowKey));
|
|
399
|
+
methods.setCurrentRowKey(util.getValue(current, util$1.getRowKey(props2.rowKey)));
|
|
386
400
|
}
|
|
387
401
|
);
|
|
388
402
|
vue.watch(
|
|
389
403
|
() => props2.selections,
|
|
390
404
|
(selections) => {
|
|
391
|
-
methods.setSelectedRowKeys(
|
|
405
|
+
methods.setSelectedRowKeys(
|
|
406
|
+
util.getRowKeys(selections, util$1.getRowKey(props2.rowKey))
|
|
407
|
+
);
|
|
392
408
|
}
|
|
393
409
|
);
|
|
394
410
|
vue.watch(
|
|
@@ -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;
|
|
@@ -4,6 +4,10 @@ const core = require("../utils/core");
|
|
|
4
4
|
const props = require("../ele-data-table/props");
|
|
5
5
|
const proTableProps = {
|
|
6
6
|
...core.omit(props.dataTableProps, ["data", "pageIndex", "errorText", "cacheData"]),
|
|
7
|
+
rowKey: {
|
|
8
|
+
type: [String, Function],
|
|
9
|
+
required: false
|
|
10
|
+
},
|
|
7
11
|
/** 数据请求状态 */
|
|
8
12
|
loading: Boolean,
|
|
9
13
|
/** 数据源 */
|
|
@@ -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
|
};
|
|
@@ -361,12 +361,30 @@ function getCacheSize(cacheKey) {
|
|
|
361
361
|
}
|
|
362
362
|
}
|
|
363
363
|
}
|
|
364
|
+
function getDefaultRowKey(rowKey) {
|
|
365
|
+
return rowKey ? void 0 : "_rowKey";
|
|
366
|
+
}
|
|
367
|
+
function getRowKey(rowKey) {
|
|
368
|
+
return rowKey ?? getDefaultRowKey();
|
|
369
|
+
}
|
|
370
|
+
function addDefaultRowKey(data, rowKey, page) {
|
|
371
|
+
if (rowKey == null) {
|
|
372
|
+
return data;
|
|
373
|
+
}
|
|
374
|
+
return data.map((d, i) => {
|
|
375
|
+
const item = { ...d };
|
|
376
|
+
item[rowKey] = `${page}-${i}`;
|
|
377
|
+
return item;
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
exports.addDefaultRowKey = addDefaultRowKey;
|
|
364
381
|
exports.getCacheCols = getCacheCols;
|
|
365
382
|
exports.getCacheSize = getCacheSize;
|
|
366
383
|
exports.getCheckedColumns = getCheckedColumns;
|
|
367
384
|
exports.getColId = getColId;
|
|
368
385
|
exports.getColsCacheKey = getColsCacheKey;
|
|
369
386
|
exports.getDefaultFilter = getDefaultFilter;
|
|
387
|
+
exports.getDefaultRowKey = getDefaultRowKey;
|
|
370
388
|
exports.getInitCacheColumns = getInitCacheColumns;
|
|
371
389
|
exports.getInitColumns = getInitColumns;
|
|
372
390
|
exports.getOrderItems = getOrderItems;
|
|
@@ -377,6 +395,7 @@ exports.getRequestOrders = getRequestOrders;
|
|
|
377
395
|
exports.getResponseData = getResponseData;
|
|
378
396
|
exports.getResponseName = getResponseName;
|
|
379
397
|
exports.getResponseResult = getResponseResult;
|
|
398
|
+
exports.getRowKey = getRowKey;
|
|
380
399
|
exports.getSettingCols = getSettingCols;
|
|
381
400
|
exports.getSizeCacheKey = getSizeCacheKey;
|
|
382
401
|
exports.getTableLimit = getTableLimit;
|
|
@@ -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[];
|
|
@@ -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/lib/ele-tour/index.cjs
CHANGED
|
@@ -35,7 +35,7 @@ const _sfc_main = vue.defineComponent({
|
|
|
35
35
|
showMask.value = mask ?? props2.mask;
|
|
36
36
|
const el = typeof target === "function" ? target() : target;
|
|
37
37
|
if (el) {
|
|
38
|
-
|
|
38
|
+
util.scrollIntoView(el);
|
|
39
39
|
const { width, height } = el.getBoundingClientRect();
|
|
40
40
|
const { top, left } = util.getOffset(el);
|
|
41
41
|
const space = padding ?? props2.padding ?? 0;
|
package/lib/ele-tour/util.cjs
CHANGED
|
@@ -31,5 +31,13 @@ function getPopperProps(visible, modal, props) {
|
|
|
31
31
|
popperClass: classes.join(" ")
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
+
function scrollIntoView(el) {
|
|
35
|
+
if (typeof el["scrollIntoViewIfNeeded"] === "function") {
|
|
36
|
+
el.scrollIntoViewIfNeeded(true);
|
|
37
|
+
} else {
|
|
38
|
+
el.scrollIntoView({ behavior: "instant", block: "nearest" });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
34
41
|
exports.getOffset = getOffset;
|
|
35
42
|
exports.getPopperProps = getPopperProps;
|
|
43
|
+
exports.scrollIntoView = scrollIntoView;
|
package/lib/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;
|
|
@@ -98,7 +98,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
98
98
|
})
|
|
99
99
|
]))
|
|
100
100
|
]),
|
|
101
|
-
!_ctx.readonly && !_ctx.disabled ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
101
|
+
!_ctx.readonly && !_ctx.disabled && !_ctx.item.readonly ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
102
102
|
key: 0,
|
|
103
103
|
class: "ele-upload-remove",
|
|
104
104
|
onClick: _cache[0] || (_cache[0] = vue.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
|
/** 表格行高 */
|
|
@@ -894,6 +894,19 @@ const _sfc_main = vue.defineComponent({
|
|
|
894
894
|
},
|
|
895
895
|
{ deep: true }
|
|
896
896
|
);
|
|
897
|
+
vue.watch(
|
|
898
|
+
() => props2.showHeader,
|
|
899
|
+
(showHeader) => {
|
|
900
|
+
if (showHeader) {
|
|
901
|
+
vue.nextTick(() => {
|
|
902
|
+
const left = tableScrollLeft.value;
|
|
903
|
+
if (left) {
|
|
904
|
+
setScrollLeft(left - 1);
|
|
905
|
+
}
|
|
906
|
+
});
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
);
|
|
897
910
|
return {
|
|
898
911
|
rootRef,
|
|
899
912
|
tableRef,
|