@dinert/element-plus 1.1.45 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/dist/element-plus.umd.js +2 -2
- package/dist/element-plus.umd.js.map +1 -1
- package/dist/style.css +1 -1
- package/es/node_modules/@element-plus/icons-vue/dist/index.mjs +22 -97
- package/es/node_modules/@element-plus/icons-vue/dist/index.mjs.map +1 -1
- package/es/packages/assets/scss/dinert-dialog.scss +81 -60
- package/es/packages/assets/scss/dinert-drawer.scss +69 -0
- package/es/packages/assets/scss/dinert-drawer.scss.mjs +2 -0
- package/es/packages/assets/scss/dinert-drawer.scss.mjs.map +1 -0
- package/es/packages/assets/scss/dinert-form.scss +65 -52
- package/es/packages/assets/scss/dinert-table-page.scss +11 -13
- package/es/packages/assets/scss/dinert-table.scss +100 -88
- package/es/packages/assets/scss/dinert-tooltip.scss +2 -3
- package/es/packages/components/dialog/src/index.mjs +112 -48
- package/es/packages/components/dialog/src/index.mjs.map +1 -1
- package/es/packages/components/drawer/index.mjs +10 -0
- package/es/packages/components/drawer/index.mjs.map +1 -0
- package/es/packages/components/drawer/src/index.mjs +88 -0
- package/es/packages/components/drawer/src/index.mjs.map +1 -0
- package/es/packages/components/form/src/cascader.mjs +30 -18
- package/es/packages/components/form/src/cascader.mjs.map +1 -1
- package/es/packages/components/form/src/checkbox.mjs +35 -20
- package/es/packages/components/form/src/checkbox.mjs.map +1 -1
- package/es/packages/components/form/src/date.mjs +35 -22
- package/es/packages/components/form/src/date.mjs.map +1 -1
- package/es/packages/components/form/src/form-item.mjs +384 -0
- package/es/packages/components/form/src/form-item.mjs.map +1 -0
- package/es/packages/components/form/src/index.mjs +48 -244
- package/es/packages/components/form/src/index.mjs.map +1 -1
- package/es/packages/components/form/src/input-autocomplete.mjs +22 -10
- package/es/packages/components/form/src/input-autocomplete.mjs.map +1 -1
- package/es/packages/components/form/src/input-number.mjs +22 -10
- package/es/packages/components/form/src/input-number.mjs.map +1 -1
- package/es/packages/components/form/src/input.mjs +29 -19
- package/es/packages/components/form/src/input.mjs.map +1 -1
- package/es/packages/components/form/src/radio.mjs +28 -13
- package/es/packages/components/form/src/radio.mjs.map +1 -1
- package/es/packages/components/form/src/rate.mjs +22 -10
- package/es/packages/components/form/src/rate.mjs.map +1 -1
- package/es/packages/components/form/src/select-v2.mjs +22 -10
- package/es/packages/components/form/src/select-v2.mjs.map +1 -1
- package/es/packages/components/form/src/select.mjs +24 -10
- package/es/packages/components/form/src/select.mjs.map +1 -1
- package/es/packages/components/form/src/slider.mjs +22 -10
- package/es/packages/components/form/src/slider.mjs.map +1 -1
- package/es/packages/components/form/src/switch.mjs +24 -12
- package/es/packages/components/form/src/switch.mjs.map +1 -1
- package/es/packages/components/form/src/time-picker.mjs +22 -10
- package/es/packages/components/form/src/time-picker.mjs.map +1 -1
- package/es/packages/components/form/src/time-select.mjs +22 -10
- package/es/packages/components/form/src/time-select.mjs.map +1 -1
- package/es/packages/components/form/src/tree-select.mjs +28 -16
- package/es/packages/components/form/src/tree-select.mjs.map +1 -1
- package/es/packages/components/form/utils/index.mjs +35 -93
- package/es/packages/components/form/utils/index.mjs.map +1 -1
- package/es/packages/components/index.mjs +10 -10
- package/es/packages/components/table/hooks/index.mjs +9 -12
- package/es/packages/components/table/hooks/index.mjs.map +1 -1
- package/es/packages/components/table/src/index.mjs +130 -207
- package/es/packages/components/table/src/index.mjs.map +1 -1
- package/es/packages/components/table/src/recuve-table-column.mjs +69 -264
- package/es/packages/components/table/src/recuve-table-column.mjs.map +1 -1
- package/es/packages/components/table/src/table-column-control.mjs +60 -0
- package/es/packages/components/table/src/table-column-control.mjs.map +1 -0
- package/es/packages/components/table/src/table-column-operations.mjs +126 -0
- package/es/packages/components/table/src/table-column-operations.mjs.map +1 -0
- package/es/packages/components/table/src/table-header.mjs +128 -0
- package/es/packages/components/table/src/table-header.mjs.map +1 -0
- package/es/packages/components/table/src/table-setting-control.mjs +49 -0
- package/es/packages/components/table/src/table-setting-control.mjs.map +1 -0
- package/es/packages/components/table-page/src/index.mjs +10 -10
- package/es/packages/components/table-page/src/index.mjs.map +1 -1
- package/es/packages/hooks/TablePage/index.mjs +11 -10
- package/es/packages/hooks/TablePage/index.mjs.map +1 -1
- package/es/packages/index.mjs +8 -8
- package/es/packages/utils/tools.mjs +12 -13
- package/es/packages/utils/tools.mjs.map +1 -1
- package/es/src/components/drawer/index.d.ts +4 -0
- package/es/src/components/drawer/src/index.d.ts +3 -0
- package/es/src/components/drawer/types/index.d.ts +10 -0
- package/es/src/components/form/index.d.ts +62 -6
- package/es/src/components/form/src/cascader.d.ts +5 -2
- package/es/src/components/form/src/checkbox.d.ts +5 -2
- package/es/src/components/form/src/date.d.ts +5 -2
- package/es/src/components/form/src/form-item.d.ts +32 -0
- package/es/src/components/form/src/index.d.ts +63 -8
- package/es/src/components/form/src/input-autocomplete.d.ts +5 -2
- package/es/src/components/form/src/input-number.d.ts +5 -2
- package/es/src/components/form/src/input.d.ts +3 -1
- package/es/src/components/form/src/radio.d.ts +5 -2
- package/es/src/components/form/src/rate.d.ts +5 -2
- package/es/src/components/form/src/select-v2.d.ts +5 -2
- package/es/src/components/form/src/select.d.ts +5 -2
- package/es/src/components/form/src/slider.d.ts +5 -2
- package/es/src/components/form/src/switch.d.ts +5 -2
- package/es/src/components/form/src/time-picker.d.ts +5 -2
- package/es/src/components/form/src/time-select.d.ts +5 -2
- package/es/src/components/form/src/tree-select.d.ts +5 -2
- package/es/src/components/form/types/components.d.ts +1 -2
- package/es/src/components/form/types/index.d.ts +77 -18
- package/es/src/components/form/utils/index.d.ts +2 -1
- package/es/src/components/index.d.ts +2 -2
- package/es/src/components/table/index.d.ts +8 -13
- package/es/src/components/table/src/index.d.ts +8 -13
- package/es/src/components/table/src/recuve-table-column.d.ts +3 -4
- package/es/src/components/table/src/table-column-control.d.ts +20 -0
- package/es/src/components/table/src/table-column-operations.d.ts +41 -0
- package/es/src/components/table/src/table-header.d.ts +88 -0
- package/es/src/components/table/src/table-setting-control.d.ts +55 -0
- package/es/src/components/table/types/index.d.ts +15 -14
- package/es/src/components/table-page/index.d.ts +143 -41
- package/es/src/components/table-page/src/index.d.ts +143 -41
- package/es/src/hooks/TablePage/index.d.ts +1 -1
- package/es/src/views/test-tsx-table/index.d.ts +6 -0
- package/es/style.css +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/src/components/drawer/index.d.ts +4 -0
- package/lib/src/components/drawer/src/index.d.ts +3 -0
- package/lib/src/components/drawer/types/index.d.ts +10 -0
- package/lib/src/components/form/index.d.ts +62 -6
- package/lib/src/components/form/src/cascader.d.ts +5 -2
- package/lib/src/components/form/src/checkbox.d.ts +5 -2
- package/lib/src/components/form/src/date.d.ts +5 -2
- package/lib/src/components/form/src/form-item.d.ts +32 -0
- package/lib/src/components/form/src/index.d.ts +63 -8
- package/lib/src/components/form/src/input-autocomplete.d.ts +5 -2
- package/lib/src/components/form/src/input-number.d.ts +5 -2
- package/lib/src/components/form/src/input.d.ts +3 -1
- package/lib/src/components/form/src/radio.d.ts +5 -2
- package/lib/src/components/form/src/rate.d.ts +5 -2
- package/lib/src/components/form/src/select-v2.d.ts +5 -2
- package/lib/src/components/form/src/select.d.ts +5 -2
- package/lib/src/components/form/src/slider.d.ts +5 -2
- package/lib/src/components/form/src/switch.d.ts +5 -2
- package/lib/src/components/form/src/time-picker.d.ts +5 -2
- package/lib/src/components/form/src/time-select.d.ts +5 -2
- package/lib/src/components/form/src/tree-select.d.ts +5 -2
- package/lib/src/components/form/types/components.d.ts +1 -2
- package/lib/src/components/form/types/index.d.ts +77 -18
- package/lib/src/components/form/utils/index.d.ts +2 -1
- package/lib/src/components/index.d.ts +2 -2
- package/lib/src/components/table/index.d.ts +8 -13
- package/lib/src/components/table/src/index.d.ts +8 -13
- package/lib/src/components/table/src/recuve-table-column.d.ts +3 -4
- package/lib/src/components/table/src/table-column-control.d.ts +20 -0
- package/lib/src/components/table/src/table-column-operations.d.ts +41 -0
- package/lib/src/components/table/src/table-header.d.ts +88 -0
- package/lib/src/components/table/src/table-setting-control.d.ts +55 -0
- package/lib/src/components/table/types/index.d.ts +15 -14
- package/lib/src/components/table-page/index.d.ts +143 -41
- package/lib/src/components/table-page/src/index.d.ts +143 -41
- package/lib/src/hooks/TablePage/index.d.ts +1 -1
- package/lib/src/views/test-tsx-table/index.d.ts +6 -0
- package/lib/style.css +1 -1
- package/package.json +2 -1
- package/es/packages/assets/scss/dinert-tooltip.scss.mjs +0 -2
- package/es/packages/assets/scss/dinert-tooltip.scss.mjs.map +0 -1
- package/es/packages/components/tooltip/index.mjs +0 -10
- package/es/packages/components/tooltip/index.mjs.map +0 -1
- package/es/packages/components/tooltip/src/index.mjs +0 -54
- package/es/packages/components/tooltip/src/index.mjs.map +0 -1
- package/es/src/components/tooltip/index.d.ts +0 -51
- package/es/src/components/tooltip/src/index.d.ts +0 -50
- package/es/src/components/tooltip/types/index.d.ts +0 -10
- package/lib/src/components/tooltip/index.d.ts +0 -51
- package/lib/src/components/tooltip/src/index.d.ts +0 -50
- package/lib/src/components/tooltip/types/index.d.ts +0 -10
|
@@ -1,22 +1,9 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { getPropByPath as
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
function O(i) {
|
|
8
|
-
return typeof i == "function" || Object.prototype.toString.call(i) === "[object Object]" && !M(i);
|
|
9
|
-
}
|
|
10
|
-
const ee = (i) => {
|
|
11
|
-
const f = {};
|
|
12
|
-
for (const s in i)
|
|
13
|
-
s !== "children" && (f[s] = i[s]);
|
|
14
|
-
return f;
|
|
15
|
-
}, te = {
|
|
16
|
-
index: 60,
|
|
17
|
-
selection: 40,
|
|
18
|
-
expand: 40
|
|
19
|
-
}, ne = L({}), ce = /* @__PURE__ */ H({
|
|
1
|
+
import { defineComponent as O, createVNode as t, Fragment as C, resolveComponent as g, mergeProps as $, withDirectives as k, resolveDirective as H } from "vue";
|
|
2
|
+
import { getPropByPath as N, dataTransformRod as D } from "../../../utils/tools.mjs";
|
|
3
|
+
import { buildVueDompurifyHTMLDirective as P } from "../../../../node_modules/vue-dompurify-html/dist/vue-dompurify-html.mjs";
|
|
4
|
+
import A from "./table-setting-control.mjs";
|
|
5
|
+
import B from "./table-column-operations.mjs";
|
|
6
|
+
const R = P({}), q = /* @__PURE__ */ O({
|
|
20
7
|
name: "dinert-recuve-table-column",
|
|
21
8
|
props: {
|
|
22
9
|
onlyClass: {
|
|
@@ -40,262 +27,80 @@ const ee = (i) => {
|
|
|
40
27
|
}
|
|
41
28
|
},
|
|
42
29
|
directives: {
|
|
43
|
-
DompurifyHtml:
|
|
30
|
+
DompurifyHtml: R
|
|
44
31
|
},
|
|
45
32
|
emits: ["CheckedChange"],
|
|
46
|
-
setup(
|
|
47
|
-
emit:
|
|
33
|
+
setup(a, {
|
|
34
|
+
emit: p
|
|
48
35
|
}) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
var o;
|
|
52
|
-
return (o = i.table) == null ? void 0 : o.key;
|
|
53
|
-
}, () => {
|
|
54
|
-
S(() => {
|
|
55
|
-
var o;
|
|
56
|
-
s.value && z(s.value, (o = i.table) == null ? void 0 : o.tableColumns);
|
|
57
|
-
});
|
|
58
|
-
}, {
|
|
59
|
-
immediate: !0
|
|
60
|
-
}), {
|
|
61
|
-
settingRender: (o) => n(u("el-popover"), {
|
|
62
|
-
value: o.popoverValue
|
|
63
|
-
}, {
|
|
64
|
-
default: () => {
|
|
65
|
-
var x;
|
|
66
|
-
return n("ul", {
|
|
67
|
-
class: "dinert-popover-classify"
|
|
68
|
-
}, [n("li", null, [n(u("el-button"), {
|
|
69
|
-
class: "allSelect",
|
|
70
|
-
link: !0,
|
|
71
|
-
type: "primary",
|
|
72
|
-
onClick: async () => {
|
|
73
|
-
var a;
|
|
74
|
-
return G(s.value, ((a = o.table) == null ? void 0 : a.tableColumns) || []);
|
|
75
|
-
}
|
|
76
|
-
}, {
|
|
77
|
-
default: () => [$("全选")]
|
|
78
|
-
})]), n(u("el-tree"), {
|
|
79
|
-
ref: s,
|
|
80
|
-
draggable: !0,
|
|
81
|
-
data: (x = o.table) == null ? void 0 : x.tableColumns,
|
|
82
|
-
"default-expand-all": !0,
|
|
83
|
-
defaultCheckedKeys: o.defaultCheckedKeys,
|
|
84
|
-
"show-checkbox": !0,
|
|
85
|
-
"node-key": "prop",
|
|
86
|
-
props: J,
|
|
87
|
-
allowDrop: Q,
|
|
88
|
-
onCheckChange: async (a, d, k) => {
|
|
89
|
-
await U(a, d, k), f("CheckedChange", a, d, k);
|
|
90
|
-
},
|
|
91
|
-
onNodeDragEnd: (a, d) => X(a, d, s.value)
|
|
92
|
-
}, {
|
|
93
|
-
default: ({
|
|
94
|
-
data: a
|
|
95
|
-
}) => n("div", {
|
|
96
|
-
class: "text-dot tree-item"
|
|
97
|
-
}, [n(u("el-tooltip"), {
|
|
98
|
-
content: a.label,
|
|
99
|
-
placement: "top",
|
|
100
|
-
disabled: a.label && a.label.length < 8
|
|
101
|
-
}, {
|
|
102
|
-
default: () => n("span", null, [a.label])
|
|
103
|
-
})])
|
|
104
|
-
})]);
|
|
105
|
-
},
|
|
106
|
-
reference: () => n(u("el-icon"), {
|
|
107
|
-
class: "setting-icon"
|
|
108
|
-
}, {
|
|
109
|
-
default: () => [n(Y, null, null)]
|
|
110
|
-
})
|
|
111
|
-
}),
|
|
112
|
-
moreRender: (o, x, {
|
|
113
|
-
value: a,
|
|
114
|
-
scope: d,
|
|
115
|
-
isSlotValue: k,
|
|
116
|
-
slotValue: D
|
|
117
|
-
}) => {
|
|
118
|
-
const h = o.operations || {}, y = N(() => {
|
|
119
|
-
const e = [];
|
|
120
|
-
return Object.keys(h).forEach((l) => {
|
|
121
|
-
const r = h[l];
|
|
122
|
-
(typeof r.show != "function" && [!0, void 0].includes(r.show) || typeof r.show == "function" && [!0, void 0].includes(r.show(d, o, r))) && e.push({
|
|
123
|
-
key: l,
|
|
124
|
-
...r
|
|
125
|
-
});
|
|
126
|
-
}), e.sort((l, r) => (l.sort || 1 / 0) - (r.sort || 1 / 0)), e;
|
|
127
|
-
});
|
|
128
|
-
let g = o.maxOperations || 3;
|
|
129
|
-
g = y.value.length > g ? g - 1 : g;
|
|
130
|
-
const V = N(() => y.value.slice(0, g)), c = N(() => y.value.slice(g, y.value.length));
|
|
131
|
-
return y.value && y.value.length ? n(w, null, [V.value.map((e) => {
|
|
132
|
-
const l = typeof e.message == "function" ? e.message(d, o, e) : e.message, r = n(u("el-button"), C({
|
|
133
|
-
...e,
|
|
134
|
-
type: e.key === "delete" ? "danger" : e.type || "primary",
|
|
135
|
-
link: e.link === void 0 ? !0 : e.link
|
|
136
|
-
}, {
|
|
137
|
-
onClick: () => e.second === "messageBox" || e.key === "delete" ? P({
|
|
138
|
-
title: "警告",
|
|
139
|
-
message: `是否${l}该条数据?`,
|
|
140
|
-
type: "warning",
|
|
141
|
-
showCancelButton: !0,
|
|
142
|
-
cancelButtonText: "取消",
|
|
143
|
-
beforeClose(b, R, T) {
|
|
144
|
-
T();
|
|
145
|
-
},
|
|
146
|
-
...e.messageBox
|
|
147
|
-
}).then(() => e.click && e.click(d, o, e)).catch(() => null) : e.click && e.click(d, o, e),
|
|
148
|
-
key: e.key
|
|
149
|
-
}), O(l) ? l : {
|
|
150
|
-
default: () => [l]
|
|
151
|
-
});
|
|
152
|
-
return e.second === "messageBox" ? r : e.key === "delete" || e.second ? n(u("el-popconfirm"), C({
|
|
153
|
-
title: `是否${l}该数据?`
|
|
154
|
-
}, {
|
|
155
|
-
...e.confirm
|
|
156
|
-
}, {
|
|
157
|
-
onConfirm: () => e.click && e.click(d, o, e)
|
|
158
|
-
}), {
|
|
159
|
-
reference: () => n(u("el-button"), C({
|
|
160
|
-
...e,
|
|
161
|
-
type: e.key === "delete" ? "danger" : e.type || "primary",
|
|
162
|
-
link: e.link === void 0 ? !0 : e.link
|
|
163
|
-
}, {
|
|
164
|
-
key: e.key
|
|
165
|
-
}), O(l) ? l : {
|
|
166
|
-
default: () => [l]
|
|
167
|
-
})
|
|
168
|
-
}) : r;
|
|
169
|
-
}), c.value.length && y.value.length > g && n(u("el-dropdown"), {
|
|
170
|
-
teleported: !0,
|
|
171
|
-
onCommand: (e) => e.key === "delete" || e.second ? P({
|
|
172
|
-
title: "警告",
|
|
173
|
-
message: `是否${e.message}该条数据?`,
|
|
174
|
-
type: "warning",
|
|
175
|
-
showCancelButton: !0,
|
|
176
|
-
cancelButtonText: "取消",
|
|
177
|
-
beforeClose(l, r, b) {
|
|
178
|
-
b();
|
|
179
|
-
},
|
|
180
|
-
...e.messageBox
|
|
181
|
-
}).then(() => e.click && e.click(d, o, e)).catch(() => null) : e.click && e.click(d, o, e)
|
|
182
|
-
}, {
|
|
183
|
-
default: () => n(u("el-button"), {
|
|
184
|
-
type: "primary",
|
|
185
|
-
link: !0,
|
|
186
|
-
text: !0
|
|
187
|
-
}, {
|
|
188
|
-
default: () => [$("更多"), n(u("el-icon"), null, {
|
|
189
|
-
default: () => [n(Z, null, null)]
|
|
190
|
-
})]
|
|
191
|
-
}),
|
|
192
|
-
dropdown: () => {
|
|
193
|
-
let e;
|
|
194
|
-
return n(u("el-dropdown-menu"), null, O(e = c.value.map((l) => {
|
|
195
|
-
const r = typeof l.message == "function" ? l.message(d, o, l) : l.message;
|
|
196
|
-
return n(u("el-dropdown-item"), {
|
|
197
|
-
command: l
|
|
198
|
-
}, O(r) ? r : {
|
|
199
|
-
default: () => [r]
|
|
200
|
-
});
|
|
201
|
-
})) ? e : {
|
|
202
|
-
default: () => [e]
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
}) || null]) : n("div", {
|
|
206
|
-
class: ["cell-item-text"]
|
|
207
|
-
}, [k && D || a]);
|
|
208
|
-
}
|
|
36
|
+
return {
|
|
37
|
+
cellItemClass: (e, c) => ["cell-item", e === c ? "empty-value" : ""]
|
|
209
38
|
};
|
|
210
39
|
},
|
|
211
40
|
render() {
|
|
212
|
-
const
|
|
213
|
-
return
|
|
41
|
+
const a = this.$slots, p = a.default, i = a.header;
|
|
42
|
+
return t(C, null, [
|
|
214
43
|
// eslint-disable-next-line array-callback-return, consistent-return
|
|
215
|
-
this.tableColumns && this.tableColumns.map((
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
header: (c) => {
|
|
271
|
-
var r, b;
|
|
272
|
-
const e = s == null ? void 0 : s({
|
|
273
|
-
...c,
|
|
274
|
-
data: t,
|
|
275
|
-
prop: t.prop
|
|
276
|
-
}), l = e && e[0] && e[0].children;
|
|
277
|
-
return s ? n(w, null, [$(" "), n("span", null, [l ? s == null ? void 0 : s({
|
|
278
|
-
...c,
|
|
279
|
-
data: t,
|
|
280
|
-
prop: t.prop
|
|
281
|
-
}) : c.column.label]), t.setting && ((r = this.table) == null ? void 0 : r.setting) !== !1 && this.settingRender(this)]) : n(w, null, [n("span", null, [c.column.label]), t.setting && ((b = this.table) == null ? void 0 : b.setting) !== !1 && this.settingRender(this)]);
|
|
282
|
-
}
|
|
283
|
-
});
|
|
284
|
-
if (v && o) {
|
|
285
|
-
const c = t.align === void 0 ? "center" : "left", e = t.width === void 0 ? te[t.type || ""] || 60 : t.width;
|
|
286
|
-
return n(u("el-table-column"), C(t, {
|
|
287
|
-
key: t.prop,
|
|
288
|
-
fixed: a,
|
|
289
|
-
align: c,
|
|
290
|
-
"reserve-selection": t.reserveSelection,
|
|
291
|
-
width: e
|
|
292
|
-
}), this.$slots);
|
|
293
|
-
}
|
|
44
|
+
this.tableColumns && this.tableColumns.map((e) => {
|
|
45
|
+
const c = e.prop === "operations" && e.align === void 0 ? "center" : e.align, {
|
|
46
|
+
children: S,
|
|
47
|
+
...w
|
|
48
|
+
} = e, V = e.showOverflowTooltip === void 0 && e.prop !== "operations" ? !0 : e.showOverflowTooltip, x = e.prop === "operations" && e.fixed === void 0 ? "right" : e.fixed, T = e.prop === "operations" && e.width === void 0 ? 200 : e.width;
|
|
49
|
+
return t(g("el-table-column"), $({
|
|
50
|
+
...w,
|
|
51
|
+
fixed: x,
|
|
52
|
+
showOverflowTooltip: V,
|
|
53
|
+
width: T,
|
|
54
|
+
className: `${e.prop || ""} ${e.className || ""} ${e.setting ? "setting" : ""}`,
|
|
55
|
+
align: c
|
|
56
|
+
}, {
|
|
57
|
+
key: e.prop
|
|
58
|
+
}), {
|
|
59
|
+
default: (r) => {
|
|
60
|
+
var f, h, b, v, y, m;
|
|
61
|
+
let l = [];
|
|
62
|
+
const n = N(r.row, e.prop || "");
|
|
63
|
+
let o = D(n, (f = this.table) == null ? void 0 : f.errData);
|
|
64
|
+
const s = p == null ? void 0 : p({
|
|
65
|
+
...r,
|
|
66
|
+
prop: e.prop
|
|
67
|
+
}), u = s && s[0] && s[0].children, I = e.formatter && typeof e.formatter == "function";
|
|
68
|
+
let d = "";
|
|
69
|
+
return u ? (o = s, l = [t("div", {
|
|
70
|
+
class: this.cellItemClass(o, (h = this.table) == null ? void 0 : h.errData)
|
|
71
|
+
}, [o])]) : I ? (d = e.formatter && e.formatter(r, e, n, r.$index, (b = this.table) == null ? void 0 : b.errData), o = D(d, (v = this.table) == null ? void 0 : v.errData), l = [k(t("div", {
|
|
72
|
+
class: this.cellItemClass(o, (y = this.table) == null ? void 0 : y.errData)
|
|
73
|
+
}, null), [[H("dompurify-html"), o]])]) : (l = [t("div", {
|
|
74
|
+
class: this.cellItemClass(o, (m = this.table) == null ? void 0 : m.errData)
|
|
75
|
+
}, [o])], e.prop === "operations" && (l = t(B, {
|
|
76
|
+
operations: e.operations,
|
|
77
|
+
column: e,
|
|
78
|
+
scope: r
|
|
79
|
+
}, null)), ["selection", "index", "expand"].includes(e.type || "") && (l = null)), e.children && e.children.length && l.push(t(C, null, [t(g("dinert-recuve-table-column"), {
|
|
80
|
+
table: this.table,
|
|
81
|
+
key: e.prop,
|
|
82
|
+
tableColumns: e.children,
|
|
83
|
+
"popover-value": this.popoverValue,
|
|
84
|
+
"only-class": this.onlyClass
|
|
85
|
+
}, a)])), l;
|
|
86
|
+
},
|
|
87
|
+
header: (r) => {
|
|
88
|
+
var u;
|
|
89
|
+
const l = i == null ? void 0 : i({
|
|
90
|
+
...r,
|
|
91
|
+
data: e,
|
|
92
|
+
prop: e.prop
|
|
93
|
+
}), n = l && l[0] && l[0].children, o = e.setting && ((u = this.table) == null ? void 0 : u.setting) !== !1, s = [];
|
|
94
|
+
return n ? s.push(t("span", null, [n ? l : r.column.label])) : s.push(t("span", null, [r.column.label])), o && s.push(t(A, {
|
|
95
|
+
table: this.table
|
|
96
|
+
}, null)), s;
|
|
97
|
+
}
|
|
98
|
+
});
|
|
294
99
|
})
|
|
295
100
|
]);
|
|
296
101
|
}
|
|
297
102
|
});
|
|
298
103
|
export {
|
|
299
|
-
|
|
104
|
+
q as default
|
|
300
105
|
};
|
|
301
106
|
//# sourceMappingURL=recuve-table-column.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recuve-table-column.mjs","sources":["../../../../../packages/components/table/src/recuve-table-column.tsx"],"sourcesContent":["import {defineComponent, watch, ref, nextTick, computed} from 'vue'\n\nimport {getPropByPath, dataTransformRod} from '@packages/utils/tools'\nimport {treeNode, allowDrop, checkTree, nodeDragEnd, allShow, treeProps} from '@packages/components/table/hooks'\nimport {Setting, ArrowDown} from '@element-plus/icons-vue'\nimport {ElMessageBox, type TableColumnCtx} from 'element-plus'\nimport {buildVueDompurifyHTMLDirective} from 'vue-dompurify-html'\n\n\nimport type Node from 'element-plus/es/components/tree/src/model/node'\nimport type {\n RecuveTableColumnProps,\n RewriteTableProps,\n RewriteTableColumnCtx,\n OperationsProps\n} from '@packages/components/table/types/index'\n\nimport type {PropType} from 'vue'\n\nimport type {ElSelect} from 'element-plus'\n\n\nconst filterColumn = (column: any) => {\n const obj: any = {}\n for (const prop in column) {\n if (prop !== 'children') {\n obj[prop] = column[prop]\n }\n }\n return obj\n}\n\nconst mapWidth: Record<string, any> = {\n index: 60,\n selection: 40,\n expand: 40\n}\n\nconst DompurifyHtml = buildVueDompurifyHTMLDirective({})\n\n\nexport default defineComponent({\n name: 'dinert-recuve-table-column',\n props: {\n onlyClass: {\n type: String,\n default: ''\n },\n popoverValue: {\n type: Boolean,\n default: false\n },\n table: {\n type: Object as PropType<RewriteTableProps>,\n },\n tableColumns: {\n type: Array as PropType<RewriteTableColumnCtx[]>,\n default: () => ([])\n },\n defaultCheckedKeys: {\n type: Array,\n default: () => ([])\n }\n },\n directives: {\n DompurifyHtml: DompurifyHtml\n },\n emits: ['CheckedChange'],\n setup(props, {emit}) {\n const selectTable = ref<InstanceType<typeof ElSelect>>()\n\n watch(() => props.table?.key, () => {\n nextTick(() => {\n selectTable.value && treeNode(selectTable.value, props.table?.tableColumns)\n })\n }, {\n immediate: true\n })\n const settingRender = (props: RecuveTableColumnProps) => {\n return (\n <el-popover\n value={props.popoverValue}\n v-slots={\n {\n default: () => (\n <ul class=\"dinert-popover-classify\">\n <li>\n <el-button class=\"allSelect\" link\n type={'primary'} onClick={async () => allShow(selectTable.value, props.table?.tableColumns || [])}\n >全选</el-button>\n </li>\n <el-tree\n ref={selectTable}\n draggable\n data={props.table?.tableColumns}\n default-expand-all\n defaultCheckedKeys={props.defaultCheckedKeys}\n show-checkbox\n node-key={'prop'}\n props={treeProps}\n allowDrop={allowDrop}\n onCheckChange={async (data: Node, checked: boolean, childChecked: boolean) => {\n // eslint-disable-next-line @typescript-eslint/await-thenable\n await checkTree(data, checked, childChecked)\n emit('CheckedChange', data, checked, childChecked)\n }}\n onNodeDragEnd={(currentNode: Node, targetNode: Node) => nodeDragEnd(currentNode, targetNode, (selectTable.value as any))}\n v-slots={\n {\n default: ({data}: {data: Node}) => (\n <div class=\"text-dot tree-item\">\n <el-tooltip content={data.label}\n placement={'top'}\n disabled={data.label && data.label.length < 8}\n v-slots={\n {\n default: () => (<span>{ data.label }</span>)\n }\n }\n >\n </el-tooltip>\n </div>\n )\n }\n }\n >\n\n </el-tree>\n </ul>\n ),\n reference: () => (\n <el-icon class=\"setting-icon\">\n <Setting/>\n </el-icon>\n )\n\n }\n }\n >\n </el-popover>)\n }\n\n const moreRender = (column: RewriteTableColumnCtx, _this: any, {\n value,\n scope,\n isSlotValue,\n slotValue\n }: any) => {\n const itemOperations = column.operations || {}\n const operations = computed<OperationsProps[]>(() => {\n const result: any = []\n Object.keys((itemOperations)).forEach(key => {\n const tempObj = itemOperations[key]\n if ((typeof tempObj.show !== 'function' && [true, undefined].includes(tempObj.show))\n || (typeof tempObj.show === 'function' && [true, undefined].includes(tempObj.show(scope, column, tempObj)))\n ) {\n result.push({\n key: key,\n ...tempObj,\n })\n }\n })\n\n result.sort((a: any, b: any) => {\n return (a.sort || Infinity) - (b.sort || Infinity)\n })\n return result\n })\n let maxOperations = column.maxOperations || 3\n const operationsLen = operations.value.length\n maxOperations = operationsLen > maxOperations ? maxOperations - 1 : maxOperations\n\n const defaultFunctions = computed(() => {\n const list = operations.value.slice(0, maxOperations)\n return list\n })\n\n const seniorFunctions = computed(() => {\n const list = operations.value.slice(maxOperations, operations.value.length)\n return list\n })\n\n\n if (operations.value && operations.value.length) {\n return (\n <>\n {defaultFunctions.value.map(item2 => {\n const message = typeof item2.message === 'function' ? item2.message(scope, column, item2) : item2.message\n\n const buttonCom = (<el-button {...{\n ...item2,\n type: item2.key === 'delete' ? 'danger' : item2.type || 'primary',\n link: item2.link === undefined ? true : item2.link\n }}\n\n onClick={() => {\n if (item2.second === 'messageBox' || item2.key === 'delete') {\n return ElMessageBox({\n title: '警告',\n message: `是否${message}该条数据?`,\n type: 'warning',\n showCancelButton: true,\n cancelButtonText: '取消',\n beforeClose(action, instance, done) {\n done()\n },\n ...item2.messageBox\n }).then(() => {\n return item2.click && item2.click(scope, column, item2)\n }).catch(() => null)\n }\n return item2.click && item2.click(scope, column, item2)\n }}\n key={(item2 as any).key}>\n {message}\n </el-button>)\n\n if (item2.second === 'messageBox') {\n return buttonCom\n }\n\n if (item2.key === 'delete' || item2.second) {\n return (\n <el-popconfirm title={`是否${message}该数据?`} {...{...item2.confirm}}\n onConfirm={() => item2.click && item2.click(scope, column, item2)}>\n {{\n reference: () => {\n return (<el-button {...{\n ...item2,\n type: item2.key === 'delete' ? 'danger' : item2.type || 'primary',\n link: item2.link === undefined ? true : item2.link\n }}\n key={(item2 as any).key}>\n {message}\n </el-button>)\n }\n }}\n </el-popconfirm>\n\n )\n }\n return buttonCom\n\n })}\n\n {(seniorFunctions.value.length && operations.value.length > maxOperations\n && <el-dropdown teleported={true}\n onCommand={item => {\n if (item.key === 'delete' || item.second) {\n return ElMessageBox({\n title: '警告',\n message: `是否${item.message}该条数据?`,\n type: 'warning',\n showCancelButton: true,\n cancelButtonText: '取消',\n beforeClose(action, instance, done) {\n done()\n },\n ...item.messageBox\n }).then(() => {\n return item.click && item.click(scope, column, item)\n }).catch(() => null)\n }\n return item.click && item.click(scope, column, item)\n }}\n v-slots= {{\n default: () => {\n return (\n <el-button type=\"primary\" link text>\n 更多<el-icon><ArrowDown /></el-icon>\n </el-button>\n )\n },\n dropdown: () => {\n\n return (\n <el-dropdown-menu>\n {\n seniorFunctions.value.map(item => {\n const message = typeof item.message === 'function' ? item.message(scope, column, item) : item.message\n return (\n <el-dropdown-item command={item}>{message}</el-dropdown-item>\n )\n })\n }\n </el-dropdown-menu>\n )\n }\n }}>\n\n </el-dropdown>) || null\n\n }\n </>\n )\n }\n return <div class={['cell-item-text']}>{ (isSlotValue && slotValue) || value}</div>\n }\n\n return {\n settingRender,\n moreRender\n }\n },\n render() {\n const solts = this.$slots\n const defaultSlot = solts.default\n const headerSlot = solts.header\n return (\n <>\n {\n // eslint-disable-next-line array-callback-return, consistent-return\n this.tableColumns && this.tableColumns.map(item => {\n let show = typeof item.show === 'function' ? item.show(item) : item.show\n show = show === undefined || show === true\n const checked = item.checked === undefined || item.checked === true\n const custom = !['index', 'selection', 'expand'].includes((item.type as string))\n const fixed = item.prop === 'operations' && item.fixed === undefined ? 'right' : item.fixed\n const showOverflowTooltip = item.showOverflowTooltip === undefined && item.prop !== 'operations' ? true : item.showOverflowTooltip\n const className = `${item.prop || ''} ${item.className || ''} ${item.setting ? 'setting' : ''}`\n let align = item.prop === 'operations' && item.align === undefined ? 'center' : item.align\n let width = item.prop === 'operations' && item.width === undefined ? 200 : item.width\n const formatter = item.formatter && typeof item.formatter === 'function'\n const noChildItem = filterColumn(item)\n const propLowerCase = item.prop?.toLocaleLowerCase()\n if (propLowerCase?.includes('time') || propLowerCase?.includes('date')) {\n width = width ? width : 170\n } else if (propLowerCase?.includes('status') || propLowerCase?.includes('state')) {\n width = width ? width : 100\n align = item.align || 'center'\n }\n\n if (show && checked && custom) {\n return (\n <el-table-column\n {...noChildItem}\n key={item.prop}\n fixed={fixed}\n show-overflow-tooltip={showOverflowTooltip}\n className={className}\n width={width}\n minWidth={item.minWidth}\n align={align}\n v-slots= {{\n default: (scope: any) => {\n const deepValue = getPropByPath(scope.row, item.prop || '')\n const value = dataTransformRod(deepValue, this.table?.errData)\n\n const slotValue = defaultSlot?.({...scope, prop: item.prop})\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\n if (formatter) {\n\n let htmlValue = item.formatter && item.formatter(scope, (item as TableColumnCtx<any>), deepValue, scope.$index, this.table?.errData)\n htmlValue = dataTransformRod(htmlValue, this.table?.errData)\n return (\n <>\n {isSlotValue\n ? <div class={['cell-item']}>{ defaultSlot?.({...scope, prop: item.prop})}</div>\n : <div class={['cell-item', htmlValue === this.table?.errData ? 'empty-value' : '']} v-dompurify-html={htmlValue}></div>}\n\n <dinert-recuve-table-column table={this.table}\n key={item.prop}\n tableColumns={item.children}\n popover-value={this.popoverValue}\n only-class={this.onlyClass}\n v-slots={solts}\n >\n </dinert-recuve-table-column>\n </>\n )\n } else {\n\n return (\n <>\n <div class={['cell-item', value === this.table?.errData || isSlotValue === this.table?.errData ? 'empty-value' : '']}>\n {this.moreRender(item, this, {\n value,\n scope,\n isSlotValue,\n slotValue\n })}\n </div>\n <dinert-recuve-table-column table={this.table}\n key={item.prop}\n tableColumns={item.children}\n popover-value={this.popoverValue}\n only-class={this.onlyClass}\n v-slots={solts}\n >\n </dinert-recuve-table-column>\n </>\n )\n }\n },\n header: (scope: any) => {\n const slotValue = headerSlot?.({...scope, data: item, prop: item.prop})\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\n if (headerSlot) {\n return (\n <> {<span>{isSlotValue ? headerSlot?.({...scope, data: item, prop: item.prop}) : scope.column.label}</span>}\n {item.setting && this.table?.setting !== false && this.settingRender((this as RecuveTableColumnProps))}\n </>\n )\n } else {\n return (\n <>\n <span>{scope.column.label}</span>\n {item.setting && this.table?.setting !== false && this.settingRender(this as RecuveTableColumnProps)}\n </>\n )\n }\n }\n }}\n >\n\n\n </el-table-column>\n )\n } else if (show && checked) {\n const align = item.align === undefined ? 'center' : 'left'\n const width = item.width === undefined ? mapWidth[item.type || ''] || 60 : item.width\n\n return (<el-table-column\n {...item}\n key={item.prop}\n fixed={fixed}\n align={align}\n reserve-selection={item.reserveSelection}\n width={width}\n v-slots={this.$slots}\n >\n </el-table-column>)\n }\n\n })\n }\n\n </>\n )\n }\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","filterColumn","column","obj","prop","mapWidth","index","selection","expand","DompurifyHtml","buildVueDompurifyHTMLDirective","defineComponent","name","props","onlyClass","type","String","default","popoverValue","Boolean","table","tableColumns","Array","defaultCheckedKeys","directives","emits","setup","emit","selectTable","ref","watch","key","nextTick","value","treeNode","immediate","settingRender","_createVNode","_resolveComponent","allShow","_createTextVNode","treeProps","allowDrop","data","checked","childChecked","checkTree","onNodeDragEnd","currentNode","targetNode","nodeDragEnd","label","length","reference","Setting","moreRender","_this","scope","isSlotValue","slotValue","itemOperations","operations","computed","result","keys","forEach","tempObj","show","undefined","includes","push","sort","a","b","Infinity","maxOperations","defaultFunctions","slice","seniorFunctions","_Fragment","map","item2","message","buttonCom","_mergeProps","link","onClick","second","ElMessageBox","title","showCancelButton","cancelButtonText","beforeClose","action","instance","done","messageBox","then","click","catch","confirm","onConfirm","item","ArrowDown","dropdown","_slot","render","solts","$slots","defaultSlot","headerSlot","header","custom","fixed","showOverflowTooltip","className","setting","align","width","formatter","noChildItem","propLowerCase","toLocaleLowerCase","minWidth","deepValue","getPropByPath","row","dataTransformRod","_a","errData","children","htmlValue","$index","_b","_c","_withDirectives","_d","_resolveDirective","_e","_f","reserveSelection"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"recuve-table-column.mjs","sources":["../../../../../packages/components/table/src/recuve-table-column.tsx"],"sourcesContent":["import {defineComponent, ref, PropType} from 'vue'\n\nimport {getPropByPath, dataTransformRod} from '@packages/utils/tools'\n\n\nimport {type TableColumnCtx, type ElSelect} from 'element-plus'\nimport {buildVueDompurifyHTMLDirective} from 'vue-dompurify-html'\nimport DinertSettingControl from './table-setting-control'\nimport DinertTableColumnOperations from './table-column-operations'\n\nimport type {\n\n RewriteTableProps,\n RewriteTableColumnCtx,\n\n} from '@packages/components/table/types/index'\n\n\nconst DompurifyHtml = buildVueDompurifyHTMLDirective({})\n\n\nexport default defineComponent({\n name: 'dinert-recuve-table-column',\n props: {\n onlyClass: {\n type: String,\n default: ''\n },\n popoverValue: {\n type: Boolean,\n default: false\n },\n table: {\n type: Object as PropType<RewriteTableProps>,\n },\n tableColumns: {\n type: Array as PropType<RewriteTableColumnCtx[]>,\n default: () => ([])\n },\n defaultCheckedKeys: {\n type: Array,\n default: () => ([])\n }\n },\n directives: {\n DompurifyHtml: DompurifyHtml\n },\n emits: ['CheckedChange'],\n setup(props, {emit}) {\n\n // watch(() => props.table?.key, () => {\n // nextTick(() => {\n // selectTable.value && treeNode(selectTable.value, props.table?.tableColumns)\n // })\n // }, {\n // immediate: true\n // })\n\n const cellItemClass = (value: any, errData: any) => {\n return ['cell-item', value === errData ? 'empty-value' : '']\n }\n return {\n cellItemClass,\n }\n },\n render() {\n const solts = this.$slots\n const defaultSlot = solts.default\n const headerSlot = solts.header\n\n return (\n <>\n {\n // eslint-disable-next-line array-callback-return, consistent-return\n this.tableColumns && this.tableColumns.map(item => {\n\n // 处理对齐方式\n const align = item.prop === 'operations' && item.align === undefined ? 'center' : item.align\n\n // 处理item\n const {children, ...noChildItem} = item\n\n // 处理打点展示\n const showOverflowTooltip = item.showOverflowTooltip === undefined && item.prop !== 'operations' ? true : item.showOverflowTooltip\n\n // 固定操作列在右侧\n const fixed = item.prop === 'operations' && item.fixed === undefined ? 'right' : item.fixed\n\n // 固定宽度\n const width = item.prop === 'operations' && item.width === undefined ? 200 : item.width\n\n return (\n <el-table-column\n {...{\n ...noChildItem,\n fixed,\n showOverflowTooltip,\n width,\n className: `${item.prop || ''} ${item.className || ''} ${item.setting ? 'setting' : ''}`,\n align\n }}\n key={item.prop}\n v-slots= {{\n default: (scope: any) => {\n\n\n let result: any = []\n\n const deepValue = getPropByPath(scope.row, item.prop || '')\n\n let value = dataTransformRod(deepValue, this.table?.errData)\n\n const slotValue = defaultSlot?.({...scope, prop: item.prop})\n\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\n\n // 处理formatter\n const formatter = item.formatter && typeof item.formatter === 'function'\n let htmlValue = ''\n\n\n if (isSlotValue) {\n value = slotValue\n result = [(\n (<div class={this.cellItemClass(value, this.table?.errData)}>\n {value}\n </div>\n )\n )]\n } else if (formatter) {\n htmlValue = item.formatter && item.formatter(scope, (item as TableColumnCtx<any>), deepValue, scope.$index, this.table?.errData)\n value = dataTransformRod(htmlValue, this.table?.errData)\n\n result = [(\n (<div class={this.cellItemClass(value, this.table?.errData)} v-dompurify-html={value}></div>\n )\n )]\n } else {\n\n\n result = [(\n (<div class={this.cellItemClass(value, this.table?.errData)}>\n {value}\n </div>\n )\n )]\n\n if (item.prop === 'operations') {\n result = (\n <DinertTableColumnOperations\n operations={item.operations}\n column={item}\n scope={scope}\n >\n </DinertTableColumnOperations>\n )\n }\n\n\n if (['selection', 'index', 'expand'].includes(item.type || '')) {\n result = null\n }\n\n }\n\n\n if (item.children && item.children.length) {\n result.push(\n (<><dinert-recuve-table-column\n table={this.table}\n key={item.prop}\n tableColumns={item.children}\n popover-value={this.popoverValue}\n only-class={this.onlyClass}\n v-slots={solts}\n >\n </dinert-recuve-table-column></>)\n )\n }\n\n return result\n },\n header: (scope: any) => {\n const slotValue = headerSlot?.({...scope, data: item, prop: item.prop})\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\n const setting = item.setting && this.table?.setting !== false\n const result: any = []\n if (isSlotValue) {\n result.push(<span>{isSlotValue ? slotValue : scope.column.label}</span>)\n } else {\n result.push(<span>{scope.column.label}</span>)\n }\n if (setting) {\n result.push(<DinertSettingControl table={this.table} />)\n }\n return result\n }\n }}\n >\n </el-table-column>\n )\n })\n }\n\n </>\n )\n }\n})\n"],"names":["DompurifyHtml","buildVueDompurifyHTMLDirective","defineComponent","name","props","onlyClass","type","String","default","popoverValue","Boolean","table","Object","tableColumns","Array","defaultCheckedKeys","directives","emits","setup","emit","cellItemClass","value","errData","render","solts","$slots","defaultSlot","headerSlot","header","_createVNode","_Fragment","map","item","align","prop","undefined","children","noChildItem","showOverflowTooltip","fixed","width","_resolveComponent","_mergeProps","className","setting","scope","result","deepValue","getPropByPath","row","dataTransformRod","_a","slotValue","isSlotValue","formatter","htmlValue","_b","$index","_c","_d","_withDirectives","_e","_resolveDirective","_f","DinertTableColumnOperations","operations","includes","length","push","data","column","label","DinertSettingControl"],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { defineComponent as d, ref as u, computed as h, createVNode as a, resolveComponent as i } from "vue";
|
|
2
|
+
import { getTreeNode as p } from "../../../utils/tools.mjs";
|
|
3
|
+
import { treeProps as f, allowDrop as m, nodeDragEnd as b } from "../hooks/index.mjs";
|
|
4
|
+
const M = /* @__PURE__ */ d({
|
|
5
|
+
name: "dinert-table-column-control",
|
|
6
|
+
props: {
|
|
7
|
+
table: {
|
|
8
|
+
type: Object
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
emits: ["CheckedChange", "TooltipMouseEnter", "TooltipMouseLeave"],
|
|
12
|
+
setup(n, e) {
|
|
13
|
+
const t = u(null), r = h(() => {
|
|
14
|
+
var o;
|
|
15
|
+
return p(((o = n.table) == null ? void 0 : o.tableColumns) || [], "checked", [!0, void 0], "prop");
|
|
16
|
+
}), s = (o) => {
|
|
17
|
+
!o.children || o.children.length === 0 || o.children.forEach((l) => {
|
|
18
|
+
l.checked = !1, s(l);
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
return {
|
|
22
|
+
selectTableRef: t,
|
|
23
|
+
defaultCheckedKeys: r,
|
|
24
|
+
checkTree: (o, l, c) => {
|
|
25
|
+
o.checked = c || l, o.checked || s(o), e.emit("CheckedChange", o, l, c);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
},
|
|
29
|
+
render() {
|
|
30
|
+
var n;
|
|
31
|
+
return a(i("el-tree"), {
|
|
32
|
+
ref: (e) => this.selectTableRef = e,
|
|
33
|
+
draggable: !0,
|
|
34
|
+
data: (n = this.table) == null ? void 0 : n.tableColumns,
|
|
35
|
+
"default-expand-all": !0,
|
|
36
|
+
"default-checked-keys": this.defaultCheckedKeys,
|
|
37
|
+
"show-checkbox": !0,
|
|
38
|
+
"node-key": "prop",
|
|
39
|
+
props: f,
|
|
40
|
+
"allow-drop": m,
|
|
41
|
+
onCheckChange: (e, t, r) => this.checkTree(e, t, r),
|
|
42
|
+
onNodeDragEnd: (e, t) => {
|
|
43
|
+
const r = e.data.sort, s = t.data.sort;
|
|
44
|
+
e.data.sort = s, t.data.sort = r, b(e, t, this.selectTableRef);
|
|
45
|
+
}
|
|
46
|
+
}, {
|
|
47
|
+
default: ({
|
|
48
|
+
data: e
|
|
49
|
+
}) => a("div", {
|
|
50
|
+
class: "text-dot tree-item",
|
|
51
|
+
onMouseenter: (t) => this.$emit("TooltipMouseEnter", t, e.label),
|
|
52
|
+
onMouseleave: (t) => this.$emit("TooltipMouseLeave", t, "")
|
|
53
|
+
}, [a("span", null, [e.label])])
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
export {
|
|
58
|
+
M as default
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=table-column-control.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-column-control.mjs","sources":["../../../../../packages/components/table/src/table-column-control.tsx"],"sourcesContent":["import {PropType, computed, defineComponent, ref} from 'vue'\n\nimport type {RewriteTableProps} from '@packages/components/table/types/index'\nimport {getTreeNode} from '@packages/utils/tools'\nimport {allowDrop, nodeDragEnd, treeProps} from '@packages/components/table/hooks'\nimport type Node from 'element-plus/es/components/tree/src/model/node'\n\n\nexport default defineComponent({\n name: 'dinert-table-column-control',\n props: {\n table: {\n type: Object as PropType<RewriteTableProps>,\n }\n },\n emits: ['CheckedChange', 'TooltipMouseEnter', 'TooltipMouseLeave'],\n setup(props, ctx) {\n const selectTableRef = ref(null)\n\n const defaultCheckedKeys = computed(() => {\n return getTreeNode(props.table?.tableColumns || [], 'checked', [true, undefined], 'prop')\n })\n\n const uncheckChildren = (node: any) => {\n if (!node.children || node.children.length === 0) {\n return\n }\n\n node.children.forEach(child => {\n child.checked = false\n uncheckChildren(child) // 递归处理更深层的 children\n })\n }\n\n const checkTree = (data: any, checked: boolean, childChecked: boolean) => {\n data.checked = childChecked || checked\n if (!data.checked) {\n uncheckChildren(data)\n }\n ctx.emit('CheckedChange', data, checked, childChecked)\n }\n\n return {\n selectTableRef,\n defaultCheckedKeys,\n checkTree\n }\n },\n render() {\n\n return (\n <el-tree\n ref={el => (this.selectTableRef = el)}\n draggable\n data={this.table?.tableColumns}\n default-expand-all\n default-checked-keys={this.defaultCheckedKeys}\n show-checkbox\n node-key={'prop'}\n props={treeProps}\n allow-drop={allowDrop}\n onCheckChange={(data: Node, checked: boolean, childChecked: boolean) => this.checkTree(data, checked, childChecked)}\n onNodeDragEnd={(currentNode: Node, targetNode: Node) => {\n const currentNodeSort = currentNode.data.sort\n const targetNodeSort = targetNode.data.sort\n currentNode.data.sort = targetNodeSort\n targetNode.data.sort = currentNodeSort\n nodeDragEnd(currentNode, targetNode, this.selectTableRef)\n }\n }\n v-slots={\n {\n default: ({data}: {data: Node}) => (\n <div class=\"text-dot tree-item\"\n onMouseenter={e => this.$emit('TooltipMouseEnter', e, data.label)}\n onMouseleave={e => this.$emit('TooltipMouseLeave', e, '')}\n >\n <span>{ data.label }</span>\n </div>\n )\n }\n }\n >\n </el-tree>\n )\n }\n})\n"],"names":["defineComponent","name","props","table","type","Object","emits","setup","ctx","selectTableRef","ref","defaultCheckedKeys","computed","getTreeNode","tableColumns","undefined","uncheckChildren","node","children","length","forEach","child","checked","checkTree","data","childChecked","emit","render","_createVNode","_resolveComponent","el","_a","treeProps","allowDrop","onCheckChange","onNodeDragEnd","currentNode","targetNode","currentNodeSort","sort","targetNodeSort","nodeDragEnd","default","e","$emit","label"],"mappings":";;;AAQA,MAAeA,sBAAgB;AAAA,EAC3BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACHC,OAAO;AAAA,MACHC,MAAMC;AAAAA,IACV;AAAA,EACH;AAAA,EACDC,OAAO,CAAC,iBAAiB,qBAAqB,mBAAmB;AAAA,EACjEC,MAAML,GAAOM,GAAK;AACd,UAAMC,IAAiBC,EAAI,IAAI,GAEzBC,IAAqBC,EAAS,MAAM;;AACtC,aAAOC,IAAYX,IAAAA,EAAMC,UAAND,gBAAAA,EAAaY,iBAAgB,CAAA,GAAI,WAAW,CAAC,IAAMC,MAAS,GAAG,MAAM;AAAA,IAC5F,CAAC,GAEKC,IAAmBC,CAAAA,MAAc;AACnC,MAAI,CAACA,EAAKC,YAAYD,EAAKC,SAASC,WAAW,KAI/CF,EAAKC,SAASE,QAAQC,CAAAA,MAAS;AAC3BA,QAAAA,EAAMC,UAAU,IAChBN,EAAgBK,CAAK;AAAA,MACzB,CAAC;AAAA;AAWL,WAAO;AAAA,MACHZ,gBAAAA;AAAAA,MACAE,oBAAAA;AAAAA,MACAY,WAXcA,CAACC,GAAWF,GAAkBG,MAA0B;AACtED,QAAAA,EAAKF,UAAUG,KAAgBH,GAC1BE,EAAKF,WACNN,EAAgBQ,CAAI,GAExBhB,EAAIkB,KAAK,iBAAiBF,GAAMF,GAASG,CAAY;AAAA;;EAQ5D;AAAA,EACDE,SAAS;;AAEL,WAAAC,EAAAC,EAAA,SAAA,GAAA;AAAA,MAAA,KAEaC,CAAAA,MAAO,KAAKrB,iBAAiBqB;AAAAA,MAAG,WAAA;AAAA,MAAA,OAE/BC,IAAA,KAAK5B,UAAL,gBAAA4B,EAAYjB;AAAAA,MAAY,sBAAA;AAAA,MAAA,wBAER,KAAKH;AAAAA,MAAkB,iBAAA;AAAA,MAAA,YAEnC;AAAA,MAAM,OACTqB;AAAAA,MAAS,cACJC;AAAAA,MAAS,eACNC,CAACV,GAAYF,GAAkBG,MAA0B,KAAKF,UAAUC,GAAMF,GAASG,CAAY;AAAA,MAAC,eACpGU,CAACC,GAAmBC,MAAqB;AACpD,cAAMC,IAAkBF,EAAYZ,KAAKe,MACnCC,IAAiBH,EAAWb,KAAKe;AACvCH,QAAAA,EAAYZ,KAAKe,OAAOC,GACxBH,EAAWb,KAAKe,OAAOD,GACvBG,EAAYL,GAAaC,GAAY,KAAK5B,cAAc;AAAA,MAC5D;AAAA,OAGI;AAAA,MACIiC,SAASA,CAAC;AAAA,QAAClB,MAAAA;AAAAA,MAAkB,MAACI,EAAA,OAAA;AAAA,QAAA,OAAA;AAAA,QAAA,cAERe,CAAAA,MAAK,KAAKC,MAAM,qBAAqBD,GAAGnB,EAAKqB,KAAK;AAAA,QAAC,cACnDF,CAAAA,MAAK,KAAKC,MAAM,qBAAqBD,GAAG,EAAE;AAAA,MAAC,GAAA,CAAAf,EAAA,QAAA,MAAA,CAEjDJ,EAAKqB,KAAK,CAAA,CAAA,CAAA;AAAA,KAG7B;AAAA,EAKjB;AACJ,CAAC;"}
|