ele-admin-plus 1.1.7 → 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/index.js +1 -0
- package/es/ele-data-table/props.d.ts +8 -5
- package/es/ele-data-table/props.js +4 -0
- package/es/ele-data-table/style/css-var.scss +20 -2
- package/es/ele-data-table/style/index.scss +87 -30
- 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 +29 -9
- package/es/ele-pro-table/props.d.ts +9 -6
- package/es/ele-pro-table/props.js +4 -0
- package/es/ele-pro-table/style/index.scss +62 -9
- package/es/ele-pro-table/util.d.ts +18 -1
- package/es/ele-pro-table/util.js +19 -0
- package/es/ele-segmented/index.js +2 -2
- package/es/ele-table/style/css-var.scss +46 -0
- package/es/ele-table/style/index.scss +8 -82
- package/es/ele-tabs/index.js +1 -1
- package/es/ele-toolbar/index.js +5 -1
- 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-virtual-table/style/css-var.scss +38 -16
- package/es/ele-virtual-table/style/index.scss +42 -31
- 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 +17 -9
- 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 +1 -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-data-table/style/css-var.scss +20 -2
- package/lib/ele-data-table/style/index.scss +87 -30
- 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 +28 -8
- 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/style/index.scss +62 -9
- package/lib/ele-pro-table/util.cjs +19 -0
- package/lib/ele-pro-table/util.d.ts +18 -1
- package/lib/ele-segmented/index.cjs +2 -2
- package/lib/ele-table/style/css-var.scss +46 -0
- package/lib/ele-table/style/index.scss +8 -82
- package/lib/ele-tabs/index.cjs +1 -1
- package/lib/ele-toolbar/index.cjs +5 -1
- 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-virtual-table/style/css-var.scss +38 -16
- package/lib/ele-virtual-table/style/index.scss +42 -31
- 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 +17 -9
- package/lib/style/util.scss +5 -0
- package/package.json +20 -20
package/lib/ele-menus/props.d.ts
CHANGED
|
@@ -46,6 +46,9 @@ export declare const menusProps: {
|
|
|
46
46
|
popperOffset: import("element-plus/es/utils/index").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
47
47
|
ellipsisIcon: import("element-plus/es/utils/index").EpPropFinalized<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
48
48
|
popperEffect: import("element-plus/es/utils/index").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
49
|
+
popperClass: StringConstructor;
|
|
50
|
+
showTimeout: import("element-plus/es/utils/index").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
|
|
51
|
+
hideTimeout: import("element-plus/es/utils/index").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
|
|
49
52
|
};
|
|
50
53
|
export type MenusProps = ExtractPropTypes<typeof menusProps>;
|
|
51
54
|
export type MenuPropKeys = Array<keyof typeof menuProps>;
|
package/lib/ele-modal/index.d.ts
CHANGED
|
@@ -200,11 +200,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
200
200
|
}>> & {
|
|
201
201
|
onOpen?: (() => any) | undefined;
|
|
202
202
|
onClose?: (() => any) | undefined;
|
|
203
|
-
onOpenAutoFocus?: (() => any) | undefined;
|
|
204
|
-
onCloseAutoFocus?: (() => any) | undefined;
|
|
205
203
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
206
204
|
onOpened?: (() => any) | undefined;
|
|
207
205
|
onClosed?: (() => any) | undefined;
|
|
206
|
+
onOpenAutoFocus?: (() => any) | undefined;
|
|
207
|
+
onCloseAutoFocus?: (() => any) | undefined;
|
|
208
208
|
"onUpdate:fullscreen"?: ((_fullscreen: boolean) => any) | undefined;
|
|
209
209
|
}, {
|
|
210
210
|
form: boolean;
|
|
@@ -15,32 +15,12 @@
|
|
|
15
15
|
&.is-multi-card {
|
|
16
16
|
padding-bottom: 0;
|
|
17
17
|
|
|
18
|
+
.ele-card,
|
|
18
19
|
.el-card {
|
|
19
20
|
margin-bottom: eleVar('page', 'padding');
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
|
|
23
|
-
/* 内部表格高度铺满 */
|
|
24
|
-
&.is-flex-table {
|
|
25
|
-
flex: 1;
|
|
26
|
-
display: flex;
|
|
27
|
-
flex-direction: column;
|
|
28
|
-
overflow: auto;
|
|
29
|
-
|
|
30
|
-
& > .ele-pro-table {
|
|
31
|
-
flex: 1;
|
|
32
|
-
display: flex;
|
|
33
|
-
flex-direction: column;
|
|
34
|
-
overflow: auto;
|
|
35
|
-
|
|
36
|
-
& > .ele-pro-table-view {
|
|
37
|
-
flex: 1;
|
|
38
|
-
height: 100%;
|
|
39
|
-
overflow: hidden;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
24
|
/* 关闭页脚 */
|
|
45
25
|
&.is-hide-footer + .ele-footer {
|
|
46
26
|
display: none;
|
|
@@ -52,6 +32,31 @@
|
|
|
52
32
|
flex: auto;
|
|
53
33
|
}
|
|
54
34
|
|
|
35
|
+
.ele-page.is-hide-footer {
|
|
36
|
+
flex: none;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/* 内部表格高度铺满 */
|
|
40
|
+
.ele-page.is-flex-table {
|
|
41
|
+
flex: 1;
|
|
42
|
+
display: flex;
|
|
43
|
+
flex-direction: column;
|
|
44
|
+
overflow: auto;
|
|
45
|
+
|
|
46
|
+
& > .ele-pro-table {
|
|
47
|
+
flex: 1;
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
overflow: auto;
|
|
51
|
+
|
|
52
|
+
& > .ele-pro-table-view {
|
|
53
|
+
flex: 1;
|
|
54
|
+
height: 100%;
|
|
55
|
+
overflow: hidden;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
55
60
|
/* 内容定宽 */
|
|
56
61
|
.ele-admin-limited .ele-page:not(.is-plain) {
|
|
57
62
|
margin: 0 auto;
|
|
@@ -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
|
|
|
@@ -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,
|
|
@@ -112,7 +113,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
112
113
|
const option = {
|
|
113
114
|
...props2.loadingProps || {},
|
|
114
115
|
loading: tableLoading.value,
|
|
115
|
-
class: [
|
|
116
|
+
class: [
|
|
117
|
+
"ele-pro-table",
|
|
118
|
+
{ "is-maximized": tableMaximized.value },
|
|
119
|
+
{ "is-border": tableProps.value.border }
|
|
120
|
+
],
|
|
116
121
|
style: tableMaximized.value ? { zIndex } : void 0
|
|
117
122
|
};
|
|
118
123
|
return option;
|
|
@@ -149,7 +154,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
149
154
|
tableLimit.value
|
|
150
155
|
);
|
|
151
156
|
cacheData.value = props2.datasource;
|
|
152
|
-
tableData.value =
|
|
157
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
158
|
+
data,
|
|
159
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
160
|
+
tablePage.value
|
|
161
|
+
);
|
|
153
162
|
tablePage.value = page;
|
|
154
163
|
tableTotal.value = total;
|
|
155
164
|
onDone({ data, page, total, response: props2.datasource });
|
|
@@ -217,7 +226,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
217
226
|
return;
|
|
218
227
|
}
|
|
219
228
|
}
|
|
220
|
-
tableData.value =
|
|
229
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
230
|
+
data,
|
|
231
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
232
|
+
tablePage.value
|
|
233
|
+
);
|
|
221
234
|
tableTotal.value = total || data.length;
|
|
222
235
|
}
|
|
223
236
|
tableLoading.value = false;
|
|
@@ -308,14 +321,19 @@ const _sfc_main = vue.defineComponent({
|
|
|
308
321
|
return tableData.value;
|
|
309
322
|
};
|
|
310
323
|
const setData = (data) => {
|
|
311
|
-
tableData.value =
|
|
324
|
+
tableData.value = util$1.addDefaultRowKey(
|
|
325
|
+
data,
|
|
326
|
+
util$1.getDefaultRowKey(props2.rowKey),
|
|
327
|
+
tablePage.value
|
|
328
|
+
);
|
|
312
329
|
};
|
|
313
330
|
const goPageByRowKey = (key) => {
|
|
314
|
-
if (!
|
|
331
|
+
if (!paginationProps.value || tableLimit.value == null || isFunctionSource.value) {
|
|
315
332
|
return;
|
|
316
333
|
}
|
|
334
|
+
const rowKey = util$1.getRowKey(props2.rowKey);
|
|
317
335
|
const data = util$1.sortData(props2.datasource, tableState.sorter);
|
|
318
|
-
const index2 = data.findIndex((d) => util.getValue(d,
|
|
336
|
+
const index2 = data.findIndex((d) => util.getValue(d, rowKey) === key);
|
|
319
337
|
const page = Math.floor(index2 / tableLimit.value) + 1;
|
|
320
338
|
if (tablePage.value !== page) {
|
|
321
339
|
reload({ page });
|
|
@@ -378,13 +396,15 @@ const _sfc_main = vue.defineComponent({
|
|
|
378
396
|
vue.watch(
|
|
379
397
|
() => props2.current,
|
|
380
398
|
(current) => {
|
|
381
|
-
methods.setCurrentRowKey(util.getValue(current, props2.rowKey));
|
|
399
|
+
methods.setCurrentRowKey(util.getValue(current, util$1.getRowKey(props2.rowKey)));
|
|
382
400
|
}
|
|
383
401
|
);
|
|
384
402
|
vue.watch(
|
|
385
403
|
() => props2.selections,
|
|
386
404
|
(selections) => {
|
|
387
|
-
methods.setSelectedRowKeys(
|
|
405
|
+
methods.setSelectedRowKeys(
|
|
406
|
+
util.getRowKeys(selections, util$1.getRowKey(props2.rowKey))
|
|
407
|
+
);
|
|
388
408
|
}
|
|
389
409
|
);
|
|
390
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
|
};
|
|
@@ -4,18 +4,71 @@
|
|
|
4
4
|
|
|
5
5
|
@include set-pro-table-var($ele);
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
/* 工具栏 */
|
|
8
|
+
.ele-pro-table > .ele-toolbar {
|
|
9
|
+
border-bottom-left-radius: 0;
|
|
10
|
+
border-bottom-right-radius: 0;
|
|
11
|
+
|
|
12
|
+
& + .ele-toolbar {
|
|
13
|
+
border-top: none;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.ele-pro-table:not(.is-border) > .ele-toolbar {
|
|
18
|
+
border-top: none;
|
|
19
|
+
border-left: none;
|
|
20
|
+
border-right: none;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.ele-pro-table.is-border > .ele-toolbar {
|
|
24
|
+
border-bottom: none;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/* 取消表格上边圆角 */
|
|
28
|
+
.ele-pro-table > .ele-toolbar.is-default {
|
|
29
|
+
& + .ele-data-table > .el-table__inner-wrapper > .el-table__header-wrapper,
|
|
30
|
+
& + .ele-data-table.el-table--border > .el-table__inner-wrapper::after,
|
|
31
|
+
&
|
|
32
|
+
+ .ele-data-table.el-table--border.hide-header
|
|
33
|
+
> .el-table__inner-wrapper
|
|
34
|
+
> .el-table__body-wrapper,
|
|
35
|
+
&
|
|
36
|
+
+ .ele-virtual-table
|
|
37
|
+
> .el-table-v2
|
|
38
|
+
> .el-table-v2__main
|
|
39
|
+
> .el-table-v2__header-wrapper,
|
|
40
|
+
& + .ele-virtual-table.is-border > .el-table-v2::after,
|
|
41
|
+
&
|
|
42
|
+
+ .ele-virtual-table.is-border.hide-header
|
|
43
|
+
> .el-table-v2
|
|
44
|
+
> .el-table-v2__main
|
|
45
|
+
> .el-table-v2__body
|
|
46
|
+
> div:not(.el-virtual-scrollbar) {
|
|
47
|
+
border-top-left-radius: 0;
|
|
48
|
+
border-top-right-radius: 0;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
& + .ele-data-table.el-table--border::before,
|
|
52
|
+
& + .ele-virtual-table.is-border::before {
|
|
53
|
+
border-top-left-radius: 0;
|
|
13
54
|
}
|
|
14
55
|
|
|
15
|
-
|
|
16
|
-
&
|
|
17
|
-
|
|
56
|
+
& + .ele-data-table.el-table--border::after,
|
|
57
|
+
& + .ele-virtual-table.is-border::after {
|
|
58
|
+
border-top-right-radius: 0;
|
|
18
59
|
}
|
|
60
|
+
|
|
61
|
+
&
|
|
62
|
+
+ .ele-data-table.hide-header:not(.el-table--border)
|
|
63
|
+
> .el-table__inner-wrapper::after,
|
|
64
|
+
& + .ele-virtual-table.hide-header:not(.is-border) > .el-table-v2::after {
|
|
65
|
+
display: none;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* 加载图标 */
|
|
70
|
+
.ele-pro-table > .ele-loading-spinner {
|
|
71
|
+
background: transparent;
|
|
19
72
|
}
|
|
20
73
|
|
|
21
74
|
/* 底栏 */
|
|
@@ -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[];
|
|
@@ -49,9 +49,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
49
49
|
"onUpdate:modelValue": _ctx.onUpdateModelValue
|
|
50
50
|
}, {
|
|
51
51
|
default: vue.withCtx(() => [
|
|
52
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item) => {
|
|
52
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item, index2) => {
|
|
53
53
|
return vue.openBlock(), vue.createBlock(_component_ElTabPane, {
|
|
54
|
-
key: item.value,
|
|
54
|
+
key: index2 + "-" + item.value + "-" + item.label,
|
|
55
55
|
name: item.value,
|
|
56
56
|
disabled: _ctx.disabled || item.disabled
|
|
57
57
|
}, {
|
|
@@ -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
|
+
}
|