@mtn-ui/components 1.0.7 → 1.0.8
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/dist/antd-wrapped/action-group/action-group.vue.js +2 -2
- package/dist/antd-wrapped/action-group/action-group.vue2.js +60 -57
- package/dist/antd-wrapped/table/table.js +6 -21
- package/dist/components.css +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +22 -17
- package/dist/index.mjs +269 -307
- package/package.json +1 -1
- package/dist/antd-wrapped/table/index.js +0 -7
- package/dist/antd-wrapped/table/props.js +0 -35
- package/dist/types/index.d.ts +0 -18
- package/dist/types/packages/components/src/_utils/__tests__/filterMenuByPermission.test.d.ts +0 -1
- package/dist/types/packages/components/src/_utils/__tests__/usePermission.test.d.ts +0 -1
- package/dist/types/packages/components/src/_utils/constants.d.ts +0 -7
- package/dist/types/packages/components/src/_utils/filterMenuByPermission.d.ts +0 -14
- package/dist/types/packages/components/src/_utils/index.d.ts +0 -7
- package/dist/types/packages/components/src/_utils/types.d.ts +0 -7
- package/dist/types/packages/components/src/_utils/usePermission.d.ts +0 -29
- package/dist/types/packages/components/src/antd-wrapped/action-group/__tests__/action-group.test.d.ts +0 -1
- package/dist/types/packages/components/src/antd-wrapped/action-group/index.d.ts +0 -4
- package/dist/types/packages/components/src/antd-wrapped/action-group/props.d.ts +0 -91
- package/dist/types/packages/components/src/antd-wrapped/action-group/types.d.ts +0 -110
- package/dist/types/packages/components/src/antd-wrapped/action-group/utils.d.ts +0 -17
- package/dist/types/packages/components/src/antd-wrapped/button/__tests__/button.test.d.ts +0 -1
- package/dist/types/packages/components/src/antd-wrapped/button/button.d.ts +0 -112
- package/dist/types/packages/components/src/antd-wrapped/button/index.d.ts +0 -5
- package/dist/types/packages/components/src/antd-wrapped/button/props.d.ts +0 -55
- package/dist/types/packages/components/src/antd-wrapped/button/types.d.ts +0 -38
- package/dist/types/packages/components/src/antd-wrapped/button-group/button-group.d.ts +0 -50
- package/dist/types/packages/components/src/antd-wrapped/button-group/index.d.ts +0 -5
- package/dist/types/packages/components/src/antd-wrapped/button-group/props.d.ts +0 -28
- package/dist/types/packages/components/src/antd-wrapped/delete-button/__tests__/delete-button.test.d.ts +0 -1
- package/dist/types/packages/components/src/antd-wrapped/delete-button/index.d.ts +0 -2
- package/dist/types/packages/components/src/antd-wrapped/delete-button/props.d.ts +0 -122
- package/dist/types/packages/components/src/antd-wrapped/dropdown-button/__tests__/dropdown-button.test.d.ts +0 -1
- package/dist/types/packages/components/src/antd-wrapped/dropdown-button/dropdown-button.d.ts +0 -106
- package/dist/types/packages/components/src/antd-wrapped/dropdown-button/index.d.ts +0 -5
- package/dist/types/packages/components/src/antd-wrapped/dropdown-button/props.d.ts +0 -49
- package/dist/types/packages/components/src/antd-wrapped/dropdown-button/types.d.ts +0 -36
- package/dist/types/packages/components/src/antd-wrapped/index.d.ts +0 -10
- package/dist/types/packages/components/src/antd-wrapped/table/index.d.ts +0 -68
- package/dist/types/packages/components/src/antd-wrapped/table/props.d.ts +0 -37
- package/dist/types/packages/components/src/antd-wrapped/table/table.d.ts +0 -67
- package/dist/types/packages/components/src/data-display/index.d.ts +0 -5
- package/dist/types/packages/components/src/data-display/tag/__tests__/tag.test.d.ts +0 -1
- package/dist/types/packages/components/src/data-display/tag/index.d.ts +0 -21
- package/dist/types/packages/components/src/data-display/tag/props.d.ts +0 -11
- package/dist/types/packages/components/src/data-display/tag/tag.d.ts +0 -20
- package/dist/types/packages/components/src/index.d.ts +0 -18
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./action-group.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const
|
|
4
|
+
const a = /* @__PURE__ */ t(o, [["__scopeId", "data-v-ccd228a1"]]);
|
|
5
5
|
export {
|
|
6
|
-
|
|
6
|
+
a as default
|
|
7
7
|
};
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { defineComponent as Ce, useSlots as be, ref as x, inject as Pe, computed as l, shallowRef as ze, watch as ne, createElementBlock as f, openBlock as
|
|
1
|
+
import { defineComponent as Ce, useSlots as be, ref as x, inject as Pe, computed as l, shallowRef as ze, watch as ne, createElementBlock as f, openBlock as r, createVNode as j, createElementVNode as re, unref as v, mergeProps as I, withCtx as a, createBlock as u, createCommentVNode as Ae, Fragment as g, renderList as _, resolveDynamicComponent as m, createSlots as O, createTextVNode as $, toDisplayString as K, cloneVNode as oe } from "vue";
|
|
2
2
|
import { useElementSize as Se, useDebounceFn as Me } from "@vueuse/core";
|
|
3
3
|
import { MoreOutlined as xe } from "@ant-design/icons-vue";
|
|
4
|
-
import { Menu as
|
|
4
|
+
import { Menu as w } from "ant-design-vue";
|
|
5
5
|
import Ie from "../button/button.js";
|
|
6
6
|
import Be from "../button-group/button-group.js";
|
|
7
7
|
import ie from "../dropdown-button/dropdown-button.js";
|
|
8
8
|
import { actionGroupProps as Ee } from "./props.js";
|
|
9
9
|
import { PERMISSION_CHECKER_KEY as Ne, defaultPermissionChecker as Te } from "@mtn-ui/shared";
|
|
10
10
|
import { filterValidChildren as Re, getButtonKey as se } from "./utils.js";
|
|
11
|
-
const
|
|
11
|
+
const G = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
12
12
|
name: "MActionGroup",
|
|
13
13
|
inheritAttrs: !1,
|
|
14
14
|
__name: "action-group",
|
|
15
15
|
props: Ee,
|
|
16
16
|
emits: ["action-click"],
|
|
17
17
|
setup(ue, { emit: ae }) {
|
|
18
|
-
const n = ue, ce = ae,
|
|
18
|
+
const n = ue, ce = ae, W = be(), Y = x(), C = x(), b = x(), { width: P } = Se(Y), me = Pe(Ne, x(Te));
|
|
19
19
|
function F(e) {
|
|
20
20
|
if (!e) return;
|
|
21
|
-
const
|
|
22
|
-
return
|
|
21
|
+
const o = e;
|
|
22
|
+
return o.name || o.__name || o.displayName;
|
|
23
23
|
}
|
|
24
24
|
const z = l(() => n.mode === "table"), A = l(
|
|
25
25
|
() => z.value ? "small" : n.size
|
|
@@ -31,7 +31,10 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
31
31
|
function E(e) {
|
|
32
32
|
return e ? me.value(e) : !0;
|
|
33
33
|
}
|
|
34
|
-
const N = l(() =>
|
|
34
|
+
const N = l(() => {
|
|
35
|
+
var e;
|
|
36
|
+
return Re((e = W.default) == null ? void 0 : e.call(W));
|
|
37
|
+
}), d = ze([]);
|
|
35
38
|
function q(e) {
|
|
36
39
|
var t, i, s;
|
|
37
40
|
return [
|
|
@@ -58,8 +61,8 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
58
61
|
d.value = e;
|
|
59
62
|
return;
|
|
60
63
|
}
|
|
61
|
-
const
|
|
62
|
-
|
|
64
|
+
const o = e.map(q).join("||"), t = d.value.map(q).join("||");
|
|
65
|
+
o !== t && (d.value = e);
|
|
63
66
|
},
|
|
64
67
|
{ immediate: !0, deep: !1 }
|
|
65
68
|
);
|
|
@@ -67,13 +70,13 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
67
70
|
function pe() {
|
|
68
71
|
if (!C.value || !b.value || !P.value)
|
|
69
72
|
return Math.min(n.maxItems, c.value);
|
|
70
|
-
const e = b.value.offsetWidth,
|
|
73
|
+
const e = b.value.offsetWidth, o = Array.from(
|
|
71
74
|
C.value.querySelectorAll(".measure-item")
|
|
72
75
|
);
|
|
73
|
-
if (
|
|
76
|
+
if (o.length === 0) return Math.min(n.maxItems, c.value);
|
|
74
77
|
let t = e, i = 0;
|
|
75
|
-
for (let s = 0; s <
|
|
76
|
-
const y =
|
|
78
|
+
for (let s = 0; s < o.length - 1; s++) {
|
|
79
|
+
const y = o[s].offsetWidth + n.gap;
|
|
77
80
|
if (t + y <= P.value)
|
|
78
81
|
t += y, i++;
|
|
79
82
|
else
|
|
@@ -108,18 +111,18 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
108
111
|
const e = N.value;
|
|
109
112
|
return k.value >= e.length ? [] : e.slice(k.value);
|
|
110
113
|
}), ye = l(() => n.actions ? [] : J.value.filter((e) => {
|
|
111
|
-
const
|
|
112
|
-
return
|
|
114
|
+
const o = e.props || {};
|
|
115
|
+
return o.permission && o.permissionAction === "hide" ? E(o.permission) : !0;
|
|
113
116
|
})), ke = l(() => n.disableCollapse ? !1 : (n.actions ? Z.value.length : J.value.length) > 0);
|
|
114
|
-
function
|
|
117
|
+
function D(e) {
|
|
115
118
|
return e.component || Ie;
|
|
116
119
|
}
|
|
117
|
-
function Q(e,
|
|
118
|
-
return e.key || e.label || `action-${
|
|
120
|
+
function Q(e, o) {
|
|
121
|
+
return e.key || e.label || `action-${o}`;
|
|
119
122
|
}
|
|
120
123
|
function X(e) {
|
|
121
124
|
const {
|
|
122
|
-
label:
|
|
125
|
+
label: o,
|
|
123
126
|
key: t,
|
|
124
127
|
onClick: i,
|
|
125
128
|
permission: s,
|
|
@@ -128,7 +131,7 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
128
131
|
component: h,
|
|
129
132
|
componentProps: M,
|
|
130
133
|
slot: R,
|
|
131
|
-
type:
|
|
134
|
+
type: U,
|
|
132
135
|
size: V,
|
|
133
136
|
disabled: ge,
|
|
134
137
|
..._e
|
|
@@ -136,7 +139,7 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
136
139
|
return {
|
|
137
140
|
component: h,
|
|
138
141
|
componentProps: M,
|
|
139
|
-
type:
|
|
142
|
+
type: U,
|
|
140
143
|
size: V,
|
|
141
144
|
rest: _e,
|
|
142
145
|
permission: s,
|
|
@@ -145,113 +148,113 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
145
148
|
};
|
|
146
149
|
}
|
|
147
150
|
function ee(e) {
|
|
148
|
-
const { component:
|
|
151
|
+
const { component: o, componentProps: t, type: i, rest: s, permission: p, permissionAction: y, disabled: h } = X(e), M = {
|
|
149
152
|
type: i || B.value,
|
|
150
153
|
size: A.value,
|
|
151
154
|
disabled: h || !E(p) && y === "disable",
|
|
152
155
|
...s
|
|
153
156
|
};
|
|
154
|
-
if (
|
|
157
|
+
if (o && t) {
|
|
155
158
|
const R = { ...M, ...t };
|
|
156
159
|
return z.value && (R.type = "link"), R;
|
|
157
160
|
}
|
|
158
161
|
return M;
|
|
159
162
|
}
|
|
160
163
|
function he(e) {
|
|
161
|
-
const { component:
|
|
162
|
-
type:
|
|
164
|
+
const { component: o, componentProps: t, rest: i, permission: s, permissionAction: p, disabled: y } = X(e), h = {
|
|
165
|
+
type: G,
|
|
163
166
|
size: le,
|
|
164
167
|
disabled: y || !E(s) && p === "disable",
|
|
165
168
|
...i
|
|
166
169
|
};
|
|
167
|
-
if (
|
|
168
|
-
const { type: M, size: R, ...
|
|
169
|
-
return V.type =
|
|
170
|
+
if (o && t) {
|
|
171
|
+
const { type: M, size: R, ...U } = t, V = { ...h, ...U };
|
|
172
|
+
return V.type = G, V;
|
|
170
173
|
}
|
|
171
174
|
return h;
|
|
172
175
|
}
|
|
173
176
|
function te(e) {
|
|
174
177
|
e.onClick && e.onClick(e), ce("action-click", e);
|
|
175
178
|
}
|
|
176
|
-
return (e,
|
|
179
|
+
return (e, o) => (r(), f("div", {
|
|
177
180
|
ref_key: "containerRef",
|
|
178
181
|
ref: Y,
|
|
179
182
|
class: "mtn-action-group"
|
|
180
183
|
}, [
|
|
181
|
-
|
|
184
|
+
j(v(Be), I({
|
|
182
185
|
size: A.value,
|
|
183
186
|
compact: e.compact,
|
|
184
187
|
vertical: e.vertical,
|
|
185
188
|
block: e.block
|
|
186
189
|
}, e.$attrs), {
|
|
187
190
|
default: a(() => [
|
|
188
|
-
n.actions ? (
|
|
191
|
+
n.actions ? (r(!0), f(g, { key: 0 }, _(ve.value, (t, i) => (r(), u(m(D(t)), I({
|
|
189
192
|
key: Q(t, i)
|
|
190
193
|
}, { ref_for: !0 }, ee(t), {
|
|
191
194
|
onClick: (s) => te(t)
|
|
192
|
-
}),
|
|
195
|
+
}), O({
|
|
193
196
|
default: a(() => [
|
|
194
|
-
|
|
197
|
+
$(" " + K(t.label), 1)
|
|
195
198
|
]),
|
|
196
199
|
_: 2
|
|
197
200
|
}, [
|
|
198
201
|
t.icon ? {
|
|
199
202
|
name: "icon",
|
|
200
203
|
fn: a(() => [
|
|
201
|
-
(
|
|
204
|
+
(r(), u(m(t.icon)))
|
|
202
205
|
]),
|
|
203
206
|
key: "0"
|
|
204
207
|
} : void 0
|
|
205
|
-
]), 1040, ["onClick"]))), 128)) : (
|
|
208
|
+
]), 1040, ["onClick"]))), 128)) : (r(!0), f(g, { key: 1 }, _(de.value, (t, i) => {
|
|
206
209
|
var s, p;
|
|
207
|
-
return
|
|
210
|
+
return r(), u(m(oe(t, {
|
|
208
211
|
type: ((s = t.props) == null ? void 0 : s.type) ?? (z.value ? B.value : void 0),
|
|
209
212
|
size: ((p = t.props) == null ? void 0 : p.size) ?? A.value
|
|
210
213
|
})), {
|
|
211
214
|
key: v(se)(t, i)
|
|
212
215
|
});
|
|
213
216
|
}), 128)),
|
|
214
|
-
ke.value ? (
|
|
217
|
+
ke.value ? (r(), u(v(ie), I({
|
|
215
218
|
key: 2,
|
|
216
219
|
text: H.value,
|
|
217
220
|
size: A.value,
|
|
218
221
|
type: B.value
|
|
219
222
|
}, n.moreProps), {
|
|
220
223
|
icon: a(() => [
|
|
221
|
-
(
|
|
224
|
+
(r(), u(m(L.value)))
|
|
222
225
|
]),
|
|
223
226
|
overlay: a(() => [
|
|
224
|
-
|
|
227
|
+
j(v(w), null, {
|
|
225
228
|
default: a(() => [
|
|
226
|
-
n.actions ? (
|
|
229
|
+
n.actions ? (r(!0), f(g, { key: 0 }, _(Z.value, (t, i) => (r(), u(v(w).Item, {
|
|
227
230
|
key: Q(t, i)
|
|
228
231
|
}, {
|
|
229
232
|
default: a(() => [
|
|
230
|
-
(
|
|
233
|
+
(r(), u(m(D(t)), I({ ref_for: !0 }, he(t), {
|
|
231
234
|
onClick: (s) => te(t)
|
|
232
|
-
}),
|
|
235
|
+
}), O({
|
|
233
236
|
default: a(() => [
|
|
234
|
-
|
|
237
|
+
$(" " + K(t.label), 1)
|
|
235
238
|
]),
|
|
236
239
|
_: 2
|
|
237
240
|
}, [
|
|
238
241
|
t.icon ? {
|
|
239
242
|
name: "icon",
|
|
240
243
|
fn: a(() => [
|
|
241
|
-
(
|
|
244
|
+
(r(), u(m(t.icon)))
|
|
242
245
|
]),
|
|
243
246
|
key: "0"
|
|
244
247
|
} : void 0
|
|
245
248
|
]), 1040, ["onClick"]))
|
|
246
249
|
]),
|
|
247
250
|
_: 2
|
|
248
|
-
}, 1024))), 128)) : (
|
|
251
|
+
}, 1024))), 128)) : (r(!0), f(g, { key: 1 }, _(ye.value, (t, i) => (r(), u(v(w).Item, {
|
|
249
252
|
key: v(se)(t, i)
|
|
250
253
|
}, {
|
|
251
254
|
default: a(() => [
|
|
252
|
-
(
|
|
255
|
+
(r(), u(m(oe(t, {
|
|
253
256
|
...t.props,
|
|
254
|
-
type:
|
|
257
|
+
type: G,
|
|
255
258
|
size: le
|
|
256
259
|
}))))
|
|
257
260
|
]),
|
|
@@ -266,47 +269,47 @@ const w = "link", le = "small", Ve = 150, Fe = /* @__PURE__ */ Ce({
|
|
|
266
269
|
]),
|
|
267
270
|
_: 1
|
|
268
271
|
}, 16, ["size", "compact", "vertical", "block"]),
|
|
269
|
-
|
|
272
|
+
re("div", {
|
|
270
273
|
ref_key: "measureRef",
|
|
271
274
|
ref: C,
|
|
272
275
|
class: "mtn-action-group-measure"
|
|
273
276
|
}, [
|
|
274
|
-
n.actions ? (
|
|
277
|
+
n.actions ? (r(!0), f(g, { key: 0 }, _(T.value, (t, i) => (r(), f("span", {
|
|
275
278
|
key: i,
|
|
276
279
|
class: "measure-item"
|
|
277
280
|
}, [
|
|
278
|
-
(
|
|
281
|
+
(r(), u(m(D(t)), I({ ref_for: !0 }, ee(t)), O({
|
|
279
282
|
default: a(() => [
|
|
280
|
-
|
|
283
|
+
$(" " + K(t.label), 1)
|
|
281
284
|
]),
|
|
282
285
|
_: 2
|
|
283
286
|
}, [
|
|
284
287
|
t.icon ? {
|
|
285
288
|
name: "icon",
|
|
286
289
|
fn: a(() => [
|
|
287
|
-
(
|
|
290
|
+
(r(), u(m(t.icon)))
|
|
288
291
|
]),
|
|
289
292
|
key: "0"
|
|
290
293
|
} : void 0
|
|
291
294
|
]), 1040))
|
|
292
|
-
]))), 128)) : (
|
|
295
|
+
]))), 128)) : (r(!0), f(g, { key: 1 }, _(N.value, (t, i) => (r(), f("span", {
|
|
293
296
|
key: i,
|
|
294
297
|
class: "measure-item"
|
|
295
298
|
}, [
|
|
296
|
-
(
|
|
299
|
+
(r(), u(m(t)))
|
|
297
300
|
]))), 128)),
|
|
298
|
-
|
|
301
|
+
re("span", {
|
|
299
302
|
ref_key: "moreTriggerRef",
|
|
300
303
|
ref: b,
|
|
301
304
|
class: "measure-item"
|
|
302
305
|
}, [
|
|
303
|
-
|
|
306
|
+
j(v(ie), {
|
|
304
307
|
text: H.value,
|
|
305
308
|
size: A.value,
|
|
306
309
|
type: B.value
|
|
307
310
|
}, {
|
|
308
311
|
icon: a(() => [
|
|
309
|
-
(
|
|
312
|
+
(r(), u(m(L.value)))
|
|
310
313
|
]),
|
|
311
314
|
_: 1
|
|
312
315
|
}, 8, ["text", "size", "type"])
|
|
@@ -1,23 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
import { Table as m } from "ant-design-vue";
|
|
3
|
-
import { tableProps as c } from "./props.js";
|
|
4
|
-
function f(e) {
|
|
5
|
-
return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !a(e);
|
|
6
|
-
}
|
|
7
|
-
const u = /* @__PURE__ */ r({
|
|
8
|
-
name: "MTable",
|
|
9
|
-
props: c,
|
|
10
|
-
setup(e, {
|
|
11
|
-
slots: t,
|
|
12
|
-
attrs: o
|
|
13
|
-
}) {
|
|
14
|
-
return () => n(m, p(e, o, {
|
|
15
|
-
class: "mtn-table"
|
|
16
|
-
}), f(t) ? t : {
|
|
17
|
-
default: () => [t]
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
});
|
|
1
|
+
var t = /* @__PURE__ */ ((r) => (r.TEXT = "text", r.TAG = "tag", r.DATE = "date", r.DATETIME = "dateTime", r.SELECT = "select", r.STATUS = "status", r.CUSTOM = "custom", r))(t || {}), L = /* @__PURE__ */ ((r) => (r.LEFT = "left", r.CENTER = "center", r.RIGHT = "right", r))(L || {}), d = /* @__PURE__ */ ((r) => (r.SMALL = "small", r.MIDDLE = "middle", r.LARGE = "large", r))(d || {}), v = /* @__PURE__ */ ((r) => (r.CHECKBOX = "checkbox", r.RADIO = "radio", r))(v || {}), A = /* @__PURE__ */ ((r) => (r.LEFT = "left", r.RIGHT = "right", r))(A || {});
|
|
21
2
|
export {
|
|
22
|
-
|
|
3
|
+
A as ButtonPositionEnum,
|
|
4
|
+
L as TableColumnAlignEnum,
|
|
5
|
+
t as TableColumnTypeEnum,
|
|
6
|
+
v as TableSelectionTypeEnum,
|
|
7
|
+
d as TableSizeEnum
|
|
23
8
|
};
|
package/dist/components.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.mtn-action-group[data-v-
|
|
1
|
+
.mtn-action-group[data-v-ccd228a1]{width:100%;container-type:inline-size}.mtn-action-group-measure[data-v-ccd228a1]{position:fixed;top:-9999px;left:-9999px;display:flex;visibility:hidden;align-items:center;overflow:hidden;pointer-events:none;white-space:nowrap;opacity:0;z-index:-9999;clip-path:inset(100%)}.measure-item[data-v-ccd228a1]{display:inline-flex}[data-v-a943bc19] .ant-btn-dangerous{transition:transform .1s ease}[data-v-a943bc19] .ant-btn-dangerous:active{transform:scale(.95)}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("@mtn-ui/shared"),e=require("vue"),he=require("class-variance-authority"),v=require("ant-design-vue"),G=require("@vueuse/core"),L=require("@ant-design/icons-vue"),ee={type:{type:String,default:"default"},color:{type:String}},be=he.cva("inline-flex items-center px-2 py-0.5 rounded text-xs font-medium border transition-colors",{variants:{type:{default:"bg-gray-100 text-gray-800 border-gray-200",success:"bg-green-100 text-green-800 border-green-200",processing:"bg-blue-100 text-blue-800 border-blue-200",error:"bg-red-100 text-red-800 border-red-200",warning:"bg-orange-100 text-orange-800 border-orange-200"}},defaultVariants:{type:"default"}}),Be=e.defineComponent({name:"MTag",props:ee,setup(t,{slots:r,attrs:n}){return()=>{var u;const{type:i}=t;return e.createVNode("span",{class:C.cn(be({type:i}),n.class)},[(u=r.default)==null?void 0:u.call(r)])}}}),te=C.withInstall(Be),ne={type:{type:String,default:"default"},size:{type:String,default:"middle"},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},block:{type:Boolean,default:!1},ghost:{type:Boolean,default:!1},shape:{type:String,default:"default"},htmlType:{type:String,default:"button"},icon:{type:Object},permission:{type:[String,Array],default:void 0},permissionAction:{type:String,default:"hide"}};function oe(t){const{permission:r,permissionAction:n="hide"}=t,i=e.inject(C.PERMISSION_CHECKER_KEY,e.ref(C.defaultPermissionChecker)),u=e.computed(()=>r?i.value(r):!0),m=e.computed(()=>!u.value&&n==="hide"),f=e.computed(()=>!u.value&&n==="disable");return{hasPermission:u,shouldHide:m,shouldDisable:f}}function Ce(t,r){return t.map(n=>{if(!n||n.type==="divider"||!n.permission)return n;if(!r(n.permission)){const u=n.permissionAction||"hide";if(u==="hide")return null;if(u==="disable")return{...n,disabled:!0}}return n}).filter(Boolean)}const A=e.defineComponent({name:"MButton",props:ne,emits:["click"],setup(t,{slots:r,attrs:n,emit:i}){const{shouldHide:u,shouldDisable:m}=oe({permission:t.permission,permissionAction:t.permissionAction}),f=p=>{i("click",p)};return()=>u.value?null:e.createVNode(v.Button,e.mergeProps({type:t.type,size:t.size,loading:t.loading,disabled:t.disabled||m.value,danger:t.danger,block:t.block,ghost:t.ghost,shape:t.shape,htmlType:t.htmlType,icon:t.icon},n,{class:["mtn-button",n.class],onClick:f}),{default:()=>{var p;return(p=r.default)==null?void 0:p.call(r)},icon:()=>{var p;return(p=r.icon)==null?void 0:p.call(r)}})}}),re={size:{type:String,default:"middle"},compact:{type:Boolean,default:!0},gap:{type:[Number,String],default:8},vertical:{type:Boolean,default:!1},block:{type:Boolean,default:!1}},K=e.defineComponent({name:"MButtonGroup",props:re,setup(t,{slots:r,attrs:n}){return()=>e.createVNode(e.Fragment,null,[t.compact?e.createVNode(v.Space.Compact,e.mergeProps({size:t.size,direction:t.vertical?"vertical":"horizontal",block:t.block},n,{class:["mtn-button-group","mtn-button-group--compact",n.class]}),{default:()=>{var i;return[(i=r.default)==null?void 0:i.call(r)]}}):e.createVNode(v.Space,e.mergeProps({size:typeof t.gap=="number"?t.gap:parseInt(t.gap)||8,direction:t.vertical?"vertical":"horizontal"},n,{class:["mtn-button-group","mtn-button-group--normal",n.class]}),{default:()=>{var i;return[(i=r.default)==null?void 0:i.call(r)]}})])}}),Se={text:{type:String,default:"Dropdown"},type:{type:String,default:"default"},size:{type:String,default:"middle"},menu:{type:Array,default:void 0},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},placement:{type:String,default:"bottomLeft"},trigger:{type:Array,default:()=>["click"]},permission:{type:[String,Array],default:void 0},permissionAction:{type:String,default:"hide"}},j=e.defineComponent({name:"MDropdownButton",props:Se,emits:["click"],setup(t,{slots:r,attrs:n,emit:i}){const{shouldHide:u,shouldDisable:m}=oe({permission:t.permission,permissionAction:t.permissionAction}),f=e.inject(C.PERMISSION_CHECKER_KEY,e.ref(C.defaultPermissionChecker)),p=y=>{i("click",y)};return()=>{if(u.value)return null;const y={};if(r.overlay)y.overlay=r.overlay;else if(t.menu&&t.menu.length>0){const k=Ce(t.menu,f.value);y.overlay=()=>e.h(v.Menu,{items:k})}return r.icon&&(y.icon=r.icon),!(r.default||t.text)?e.createVNode(v.Dropdown,e.mergeProps({placement:t.placement,trigger:t.trigger},n,{class:["mtn-dropdown-button",n.class]}),{default:()=>[e.createVNode(v.Button,{type:t.type,size:t.size==="middle"?void 0:t.size,disabled:t.disabled||m.value,loading:t.loading,danger:t.danger,onClick:p},{default:()=>{var k;return[(k=r.icon)==null?void 0:k.call(r)]}})],...y}):e.createVNode(v.Dropdown.Button,e.mergeProps({type:t.type,size:t.size==="middle"?void 0:t.size,disabled:t.disabled||m.value,loading:t.loading,danger:t.danger,placement:t.placement,trigger:t.trigger},n,{class:["mtn-dropdown-button",n.class],onClick:p}),{default:()=>{var k;return[((k=r.default)==null?void 0:k.call(r))||t.text]},...y})}}}),Pe={actions:{type:Array,default:void 0},mode:{type:String,default:"default"},maxItems:{type:Number,default:3},gap:{type:Number,default:8},moreText:{type:String,default:"更多"},moreIcon:{type:Object,default:void 0},moreProps:{type:Object,default:()=>({})},size:{type:String,default:"middle"},compact:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1},block:{type:Boolean,default:!1},disableCollapse:{type:Boolean,default:!1}};function xe(t){return t?t.filter(r=>r.type!==e.Comment&&r.type!==e.Text&&r.type!==Symbol.for("v-fgt")):[]}function Q(t,r){var n,i;if(t.key!==null&&t.key!==void 0)return typeof t.key=="symbol"?t.key.toString():t.key;if(((n=t.props)==null?void 0:n.key)!==null&&((i=t.props)==null?void 0:i.key)!==void 0){const u=t.props.key;return typeof u=="symbol"?u.toString():u}return`button-${r}`}const $="link",X="small",Te=150,we=e.defineComponent({name:"MActionGroup",inheritAttrs:!1,__name:"action-group",props:Pe,emits:["action-click"],setup(t,{emit:r}){const n=t,i=r,u=e.useSlots(),m=e.ref(),f=e.ref(),p=e.ref(),{width:y}=G.useElementSize(m),E=e.inject(C.PERMISSION_CHECKER_KEY,e.ref(C.defaultPermissionChecker));function k(o){if(!o)return;const s=o;return s.name||s.__name||s.displayName}const P=e.computed(()=>n.mode==="table"),l=e.computed(()=>P.value?"small":n.size),c=e.computed(()=>P.value?"link":"default"),b=e.computed(()=>P.value?"":n.moreText),S=e.computed(()=>n.moreIcon||L.MoreOutlined);function V(o){return o?E.value(o):!0}const M=e.computed(()=>xe(u.default?u.default():void 0)),x=e.shallowRef([]);function q(o){var a,d,g;return[o.key??"",o.label??"",k(o.icon)??"",k(o.component)??"",Array.isArray(o.permission)?o.permission.join(","):o.permission??"",o.permissionAction??"",String(o.disabled??!1),String(((a=o.componentProps)==null?void 0:a.confirm)??""),String(((d=o.componentProps)==null?void 0:d.showSuccess)??""),String(((g=o.componentProps)==null?void 0:g.danger)??"")].join("|")}e.watch(()=>n.actions,o=>{if(!o){x.value=[];return}if(x.value.length!==o.length){x.value=o;return}const s=o.map(q).join("||"),a=x.value.map(q).join("||");s!==a&&(x.value=o)},{immediate:!0,deep:!1});const _=e.computed(()=>x.value.length?x.value.filter(o=>V(o.permission)):[]),h=e.computed(()=>n.actions?_.value.length:M.value.length);function se(){if(!f.value||!p.value||!y.value)return Math.min(n.maxItems,h.value);const o=p.value.offsetWidth,s=Array.from(f.value.querySelectorAll(".measure-item"));if(s.length===0)return Math.min(n.maxItems,h.value);let a=o,d=0;for(let g=0;g<s.length-1;g++){const T=s[g].offsetWidth+n.gap;if(a+T<=y.value)a+=T,d++;else break}return Math.max(0,Math.min(d,n.maxItems,h.value))}const D=e.ref(n.maxItems),de=G.useDebounceFn(()=>{D.value=se()},Te);e.watch([y,h,()=>n.maxItems,()=>n.gap],()=>{if(n.disableCollapse){D.value=h.value;return}if(h.value<=1){D.value=h.value;return}f.value&&p.value&&y.value?de():D.value=Math.min(n.maxItems,h.value)},{immediate:!0});const w=e.computed(()=>n.disableCollapse||h.value<=1?h.value:f.value&&p.value&&y.value?D.value:Math.min(n.maxItems,h.value)),pe=e.computed(()=>n.actions?_.value.slice(0,w.value):[]),H=e.computed(()=>n.actions?_.value.slice(w.value):[]),fe=e.computed(()=>{if(n.actions)return[];const o=M.value;return w.value>=o.length?o:o.slice(0,w.value)}),U=e.computed(()=>{if(n.actions)return[];const o=M.value;return w.value>=o.length?[]:o.slice(w.value)}),me=e.computed(()=>n.actions?[]:U.value.filter(o=>{const s=o.props||{};return s.permission&&s.permissionAction==="hide"?V(s.permission):!0})),ye=e.computed(()=>n.disableCollapse?!1:(n.actions?H.value.length:U.value.length)>0);function R(o){return o.component||A}function W(o,s){return o.key||o.label||`action-${s}`}function Y(o){const{label:s,key:a,onClick:d,permission:g,permissionAction:B,icon:T,component:z,componentProps:N,slot:I,type:F,size:O,disabled:ve,...ke}=o;return{component:z,componentProps:N,type:F,size:O,rest:ke,permission:g,permissionAction:B,disabled:ve}}function Z(o){const{component:s,componentProps:a,type:d,rest:g,permission:B,permissionAction:T,disabled:z}=Y(o),N={type:d||c.value,size:l.value,disabled:z||!V(B)&&T==="disable",...g};if(s&&a){const I={...N,...a};return P.value&&(I.type="link"),I}return N}function ge(o){const{component:s,componentProps:a,rest:d,permission:g,permissionAction:B,disabled:T}=Y(o),z={type:$,size:X,disabled:T||!V(g)&&B==="disable",...d};if(s&&a){const{type:N,size:I,...F}=a,O={...z,...F};return O.type=$,O}return z}function J(o){o.onClick&&o.onClick(o),i("action-click",o)}return(o,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:m,class:"mtn-action-group"},[e.createVNode(e.unref(K),e.mergeProps({size:l.value,compact:o.compact,vertical:o.vertical,block:o.block},o.$attrs),{default:e.withCtx(()=>[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(pe.value,(a,d)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(R(a)),e.mergeProps({key:W(a,d)},{ref_for:!0},Z(a),{onClick:g=>J(a)}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040,["onClick"]))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(fe.value,(a,d)=>{var g,B;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode(a,{type:((g=a.props)==null?void 0:g.type)??(P.value?c.value:void 0),size:((B=a.props)==null?void 0:B.size)??l.value})),{key:e.unref(Q)(a,d)})}),128)),ye.value?(e.openBlock(),e.createBlock(e.unref(j),e.mergeProps({key:2,text:b.value,size:l.value,type:c.value},n.moreProps),{icon:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S.value)))]),overlay:e.withCtx(()=>[e.createVNode(e.unref(v.Menu),null,{default:e.withCtx(()=>[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(H.value,(a,d)=>(e.openBlock(),e.createBlock(e.unref(v.Menu).Item,{key:W(a,d)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(R(a)),e.mergeProps({ref_for:!0},ge(a),{onClick:g=>J(a)}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040,["onClick"]))]),_:2},1024))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(me.value,(a,d)=>(e.openBlock(),e.createBlock(e.unref(v.Menu).Item,{key:e.unref(Q)(a,d)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode(a,{...a.props,type:$,size:X}))))]),_:2},1024))),128))]),_:1})]),_:1},16,["text","size","type"])):e.createCommentVNode("",!0)]),_:1},16,["size","compact","vertical","block"]),e.createElementVNode("div",{ref_key:"measureRef",ref:f,class:"mtn-action-group-measure"},[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(_.value,(a,d)=>(e.openBlock(),e.createElementBlock("span",{key:d,class:"measure-item"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(R(a)),e.mergeProps({ref_for:!0},Z(a)),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040))]))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(M.value,(a,d)=>(e.openBlock(),e.createElementBlock("span",{key:d,class:"measure-item"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a)))]))),128)),e.createElementVNode("span",{ref_key:"moreTriggerRef",ref:p,class:"measure-item"},[e.createVNode(e.unref(j),{text:b.value,size:l.value,type:c.value},{icon:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S.value)))]),_:1},8,["text","size","type"])],512)],512)],512))}}),ie=(t,r)=>{const n=t.__vccOpts||t;for(const[i,u]of r)n[i]=u;return n},ae=ie(we,[["__scopeId","data-v-845c43ad"]]),ze={...ne,loading:{type:Boolean,default:void 0},confirm:{type:[String,Boolean,Function],default:"确定要删除吗?"},confirmType:{type:String,default:"modal"},confirmTitle:{type:String,default:"确认删除"},okText:{type:String,default:"确定"},cancelText:{type:String,default:"取消"},hideIcon:{type:Boolean,default:!1},autoLoading:{type:Boolean,default:!0},beforeDelete:{type:Function,default:void 0},count:{type:Number,default:1},showSuccess:{type:Boolean,default:!1},successText:{type:String,default:"删除成功"},showError:{type:Boolean,default:!0},debounce:{type:Number,default:300},onDelete:{type:Function,default:void 0}},De=e.defineComponent({name:"MDeleteButton",inheritAttrs:!1,__name:"delete-button",props:ze,emits:["delete","success","error"],setup(t,{emit:r}){const n=r,i=t,u=e.ref(!1),m=e.ref(null),f=e.computed(()=>i.loading!==void 0?i.loading:i.autoLoading?u.value:!1),p=e.computed(()=>typeof i.confirm=="function"?i.confirm(i.count):i.confirm);e.watch(f,l=>{m.value&&e.nextTick(()=>{var c;(c=m.value)==null||c.update({okButtonProps:{loading:l}})})},{flush:"post"}),e.onBeforeUnmount(()=>{m.value&&(m.value.destroy(),m.value=null)});const y=async()=>{try{if(i.beforeDelete&&await i.beforeDelete()===!1)return;i.autoLoading&&i.loading===void 0&&(u.value=!0);let l=!1;const c=()=>{l||(l=!0,i.autoLoading&&i.loading===void 0&&(u.value=!1))};if(i.onDelete){const b=i.onDelete(c);if(b&&typeof b.then=="function")try{const S=await b;l||c(),E(S)}catch(S){throw l||c(),S}}else n("delete",c),i.autoLoading&&i.loading===void 0&&setTimeout(()=>{l||c()},5e3)}catch(l){i.autoLoading&&i.loading===void 0&&(u.value=!1);const c=l instanceof Error?l:new Error(String(l));n("error",c),i.showError&&v.message.error(c.message||"删除失败,请重试")}},E=l=>{i.showSuccess&&v.message.success(i.successText||"删除成功"),n("success",l)},k=i.debounce>0?G.useDebounceFn(y,i.debounce):y,P=()=>{if(!p.value){k();return}if(i.confirmType==="popconfirm")return;const l=()=>{m.value=v.Modal.confirm({title:i.confirmTitle,content:p.value,okText:i.okText,cancelText:i.cancelText,okType:"danger",okButtonProps:{loading:f.value},onOk:async()=>{try{return await y(),new Promise(c=>{if(!f.value){c();return}const b=e.watch(f,S=>{S||(b(),c())})})}catch(c){throw c}},onCancel:()=>{m.value=null},afterClose:()=>{m.value=null}})};e.nextTick(l)};return(l,c)=>p.value&&l.confirmType==="popconfirm"?(e.openBlock(),e.createBlock(e.unref(v.Popconfirm),{key:0,title:p.value,"ok-text":l.okText,"cancel-text":l.cancelText,"ok-button-props":{loading:f.value,danger:!0},onConfirm:e.unref(k)},{icon:e.withCtx(()=>[e.renderSlot(l.$slots,"popconfirmIcon",{},()=>[e.createVNode(e.unref(L.ExclamationCircleOutlined),{class:"text-[--color-ant-error]"})],!0)]),default:e.withCtx(()=>[e.createVNode(e.unref(A),e.mergeProps(l.$attrs,{type:l.type,size:l.size,danger:!0,loading:f.value,disabled:l.disabled,permission:l.permission,"permission-action":l.permissionAction,class:"group"}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[c[0]||(c[0]=e.createTextVNode("删除",-1))],!0)]),_:2},[l.hideIcon?void 0:{name:"icon",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},()=>[e.createVNode(e.unref(L.DeleteOutlined))],!0)]),key:"0"}]),1040,["type","size","loading","disabled","permission","permission-action"])]),_:3},8,["title","ok-text","cancel-text","ok-button-props","onConfirm"])):(e.openBlock(),e.createBlock(e.unref(A),e.mergeProps({key:1},l.$attrs,{type:l.type,size:l.size,danger:!0,loading:f.value,disabled:l.disabled,permission:l.permission,"permission-action":l.permissionAction,onClick:P}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[c[1]||(c[1]=e.createTextVNode("删除",-1))],!0)]),_:2},[l.hideIcon?void 0:{name:"icon",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},()=>[e.createVNode(e.unref(L.DeleteOutlined))],!0)]),key:"0"}]),1040,["type","size","loading","disabled","permission","permission-action"]))}}),le=ie(De,[["__scopeId","data-v-a943bc19"]]),ue={columns:{type:Array,required:!0},dataSource:{type:Array,default:()=>[]},rowKey:{type:[String,Function],default:"id"},pagination:{type:[Object,Boolean],default:void 0},loading:{type:Boolean,default:!1},bordered:{type:Boolean,default:!1},size:{type:String,default:"middle"}};function Ne(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}const Ae=e.defineComponent({name:"MTable",props:ue,setup(t,{slots:r,attrs:n}){return()=>e.createVNode(v.Table,e.mergeProps(t,n,{class:"mtn-table"}),Ne(r)?r:{default:()=>[r]})}}),ce=C.withInstall(Ae),Ee=[A,K,j,ae,le,te,ce],Ve={install(t){Ee.forEach(r=>{t.component(r.name||"",r)})}};exports.ActionGroup=ae;exports.Button=A;exports.ButtonGroup=K;exports.DeleteButton=le;exports.DropdownButton=j;exports.Table=ce;exports.Tag=te;exports.buttonGroupProps=re;exports.default=Ve;exports.tableProps=ue;exports.tagProps=ee;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const S=require("@mtn-ui/shared"),e=require("vue"),Ce=require("class-variance-authority"),v=require("ant-design-vue"),j=require("@vueuse/core"),O=require("@ant-design/icons-vue"),ee={type:{type:String,default:"default"},color:{type:String}},Se=Ce.cva("inline-flex items-center px-2 py-0.5 rounded text-xs font-medium border transition-colors",{variants:{type:{default:"bg-gray-100 text-gray-800 border-gray-200",success:"bg-green-100 text-green-800 border-green-200",processing:"bg-blue-100 text-blue-800 border-blue-200",error:"bg-red-100 text-red-800 border-red-200",warning:"bg-orange-100 text-orange-800 border-orange-200"}},defaultVariants:{type:"default"}}),xe=e.defineComponent({name:"MTag",props:ee,setup(t,{slots:i,attrs:n}){return()=>{var u;const{type:r}=t;return e.createVNode("span",{class:S.cn(Se({type:r}),n.class)},[(u=i.default)==null?void 0:u.call(i)])}}}),te=S.withInstall(xe),ne={type:{type:String,default:"default"},size:{type:String,default:"middle"},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},block:{type:Boolean,default:!1},ghost:{type:Boolean,default:!1},shape:{type:String,default:"default"},htmlType:{type:String,default:"button"},icon:{type:Object},permission:{type:[String,Array],default:void 0},permissionAction:{type:String,default:"hide"}};function oe(t){const{permission:i,permissionAction:n="hide"}=t,r=e.inject(S.PERMISSION_CHECKER_KEY,e.ref(S.defaultPermissionChecker)),u=e.computed(()=>i?r.value(i):!0),m=e.computed(()=>!u.value&&n==="hide"),f=e.computed(()=>!u.value&&n==="disable");return{hasPermission:u,shouldHide:m,shouldDisable:f}}function Pe(t,i){return t.map(n=>{if(!n||n.type==="divider"||!n.permission)return n;if(!i(n.permission)){const u=n.permissionAction||"hide";if(u==="hide")return null;if(u==="disable")return{...n,disabled:!0}}return n}).filter(Boolean)}const E=e.defineComponent({name:"MButton",props:ne,emits:["click"],setup(t,{slots:i,attrs:n,emit:r}){const{shouldHide:u,shouldDisable:m}=oe({permission:t.permission,permissionAction:t.permissionAction}),f=p=>{r("click",p)};return()=>u.value?null:e.createVNode(v.Button,e.mergeProps({type:t.type,size:t.size,loading:t.loading,disabled:t.disabled||m.value,danger:t.danger,block:t.block,ghost:t.ghost,shape:t.shape,htmlType:t.htmlType,icon:t.icon},n,{class:["mtn-button",n.class],onClick:f}),{default:()=>{var p;return(p=i.default)==null?void 0:p.call(i)},icon:()=>{var p;return(p=i.icon)==null?void 0:p.call(i)}})}}),re={size:{type:String,default:"middle"},compact:{type:Boolean,default:!0},gap:{type:[Number,String],default:8},vertical:{type:Boolean,default:!1},block:{type:Boolean,default:!1}},H=e.defineComponent({name:"MButtonGroup",props:re,setup(t,{slots:i,attrs:n}){return()=>e.createVNode(e.Fragment,null,[t.compact?e.createVNode(v.Space.Compact,e.mergeProps({size:t.size,direction:t.vertical?"vertical":"horizontal",block:t.block},n,{class:["mtn-button-group","mtn-button-group--compact",n.class]}),{default:()=>{var r;return[(r=i.default)==null?void 0:r.call(i)]}}):e.createVNode(v.Space,e.mergeProps({size:typeof t.gap=="number"?t.gap:parseInt(t.gap)||8,direction:t.vertical?"vertical":"horizontal"},n,{class:["mtn-button-group","mtn-button-group--normal",n.class]}),{default:()=>{var r;return[(r=i.default)==null?void 0:r.call(i)]}})])}}),Te={text:{type:String,default:"Dropdown"},type:{type:String,default:"default"},size:{type:String,default:"middle"},menu:{type:Array,default:void 0},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},placement:{type:String,default:"bottomLeft"},trigger:{type:Array,default:()=>["click"]},permission:{type:[String,Array],default:void 0},permissionAction:{type:String,default:"hide"}},R=e.defineComponent({name:"MDropdownButton",props:Te,emits:["click"],setup(t,{slots:i,attrs:n,emit:r}){const{shouldHide:u,shouldDisable:m}=oe({permission:t.permission,permissionAction:t.permissionAction}),f=e.inject(S.PERMISSION_CHECKER_KEY,e.ref(S.defaultPermissionChecker)),p=y=>{r("click",y)};return()=>{if(u.value)return null;const y={};if(i.overlay)y.overlay=i.overlay;else if(t.menu&&t.menu.length>0){const k=Pe(t.menu,f.value);y.overlay=()=>e.h(v.Menu,{items:k})}return i.icon&&(y.icon=i.icon),!(i.default||t.text)?e.createVNode(v.Dropdown,e.mergeProps({placement:t.placement,trigger:t.trigger},n,{class:["mtn-dropdown-button",n.class]}),{default:()=>[e.createVNode(v.Button,{type:t.type,size:t.size==="middle"?void 0:t.size,disabled:t.disabled||m.value,loading:t.loading,danger:t.danger,onClick:p},{default:()=>{var k;return[(k=i.icon)==null?void 0:k.call(i)]}})],...y}):e.createVNode(v.Dropdown.Button,e.mergeProps({type:t.type,size:t.size==="middle"?void 0:t.size,disabled:t.disabled||m.value,loading:t.loading,danger:t.danger,placement:t.placement,trigger:t.trigger},n,{class:["mtn-dropdown-button",n.class],onClick:p}),{default:()=>{var k;return[((k=i.default)==null?void 0:k.call(i))||t.text]},...y})}}}),De={actions:{type:Array,default:void 0},mode:{type:String,default:"default"},maxItems:{type:Number,default:3},gap:{type:Number,default:8},moreText:{type:String,default:"更多"},moreIcon:{type:Object,default:void 0},moreProps:{type:Object,default:()=>({})},size:{type:String,default:"middle"},compact:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1},block:{type:Boolean,default:!1},disableCollapse:{type:Boolean,default:!1}};function we(t){return t?t.filter(i=>i.type!==e.Comment&&i.type!==e.Text&&i.type!==Symbol.for("v-fgt")):[]}function J(t,i){var n,r;if(t.key!==null&&t.key!==void 0)return typeof t.key=="symbol"?t.key.toString():t.key;if(((n=t.props)==null?void 0:n.key)!==null&&((r=t.props)==null?void 0:r.key)!==void 0){const u=t.props.key;return typeof u=="symbol"?u.toString():u}return`button-${i}`}const $="link",Q="small",Ae=150,ze=e.defineComponent({name:"MActionGroup",inheritAttrs:!1,__name:"action-group",props:De,emits:["action-click"],setup(t,{emit:i}){const n=t,r=i,u=e.useSlots(),m=e.ref(),f=e.ref(),p=e.ref(),{width:y}=j.useElementSize(m),N=e.inject(S.PERMISSION_CHECKER_KEY,e.ref(S.defaultPermissionChecker));function k(o){if(!o)return;const s=o;return s.name||s.__name||s.displayName}const x=e.computed(()=>n.mode==="table"),l=e.computed(()=>x.value?"small":n.size),c=e.computed(()=>x.value?"link":"default"),b=e.computed(()=>x.value?"":n.moreText),C=e.computed(()=>n.moreIcon||O.MoreOutlined);function M(o){return o?N.value(o):!0}const I=e.computed(()=>{var o;return we((o=u.default)==null?void 0:o.call(u))}),P=e.shallowRef([]);function K(o){var a,d,g;return[o.key??"",o.label??"",k(o.icon)??"",k(o.component)??"",Array.isArray(o.permission)?o.permission.join(","):o.permission??"",o.permissionAction??"",String(o.disabled??!1),String(((a=o.componentProps)==null?void 0:a.confirm)??""),String(((d=o.componentProps)==null?void 0:d.showSuccess)??""),String(((g=o.componentProps)==null?void 0:g.danger)??"")].join("|")}e.watch(()=>n.actions,o=>{if(!o){P.value=[];return}if(P.value.length!==o.length){P.value=o;return}const s=o.map(K).join("||"),a=P.value.map(K).join("||");s!==a&&(P.value=o)},{immediate:!0,deep:!1});const V=e.computed(()=>P.value.length?P.value.filter(o=>M(o.permission)):[]),h=e.computed(()=>n.actions?V.value.length:I.value.length);function fe(){if(!f.value||!p.value||!y.value)return Math.min(n.maxItems,h.value);const o=p.value.offsetWidth,s=Array.from(f.value.querySelectorAll(".measure-item"));if(s.length===0)return Math.min(n.maxItems,h.value);let a=o,d=0;for(let g=0;g<s.length-1;g++){const T=s[g].offsetWidth+n.gap;if(a+T<=y.value)a+=T,d++;else break}return Math.max(0,Math.min(d,n.maxItems,h.value))}const A=e.ref(n.maxItems),me=j.useDebounceFn(()=>{A.value=fe()},Ae);e.watch([y,h,()=>n.maxItems,()=>n.gap],()=>{if(n.disableCollapse){A.value=h.value;return}if(h.value<=1){A.value=h.value;return}f.value&&p.value&&y.value?me():A.value=Math.min(n.maxItems,h.value)},{immediate:!0});const D=e.computed(()=>n.disableCollapse||h.value<=1?h.value:f.value&&p.value&&y.value?A.value:Math.min(n.maxItems,h.value)),ye=e.computed(()=>n.actions?V.value.slice(0,D.value):[]),U=e.computed(()=>n.actions?V.value.slice(D.value):[]),ge=e.computed(()=>{if(n.actions)return[];const o=I.value;return D.value>=o.length?o:o.slice(0,D.value)}),q=e.computed(()=>{if(n.actions)return[];const o=I.value;return D.value>=o.length?[]:o.slice(D.value)}),ve=e.computed(()=>n.actions?[]:q.value.filter(o=>{const s=o.props||{};return s.permission&&s.permissionAction==="hide"?M(s.permission):!0})),ke=e.computed(()=>n.disableCollapse?!1:(n.actions?U.value.length:q.value.length)>0);function F(o){return o.component||E}function W(o,s){return o.key||o.label||`action-${s}`}function Y(o){const{label:s,key:a,onClick:d,permission:g,permissionAction:B,icon:T,component:w,componentProps:z,slot:_,type:G,size:L,disabled:be,...Be}=o;return{component:w,componentProps:z,type:G,size:L,rest:Be,permission:g,permissionAction:B,disabled:be}}function X(o){const{component:s,componentProps:a,type:d,rest:g,permission:B,permissionAction:T,disabled:w}=Y(o),z={type:d||c.value,size:l.value,disabled:w||!M(B)&&T==="disable",...g};if(s&&a){const _={...z,...a};return x.value&&(_.type="link"),_}return z}function he(o){const{component:s,componentProps:a,rest:d,permission:g,permissionAction:B,disabled:T}=Y(o),w={type:$,size:Q,disabled:T||!M(g)&&B==="disable",...d};if(s&&a){const{type:z,size:_,...G}=a,L={...w,...G};return L.type=$,L}return w}function Z(o){o.onClick&&o.onClick(o),r("action-click",o)}return(o,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:m,class:"mtn-action-group"},[e.createVNode(e.unref(H),e.mergeProps({size:l.value,compact:o.compact,vertical:o.vertical,block:o.block},o.$attrs),{default:e.withCtx(()=>[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(ye.value,(a,d)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(F(a)),e.mergeProps({key:W(a,d)},{ref_for:!0},X(a),{onClick:g=>Z(a)}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040,["onClick"]))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(ge.value,(a,d)=>{var g,B;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode(a,{type:((g=a.props)==null?void 0:g.type)??(x.value?c.value:void 0),size:((B=a.props)==null?void 0:B.size)??l.value})),{key:e.unref(J)(a,d)})}),128)),ke.value?(e.openBlock(),e.createBlock(e.unref(R),e.mergeProps({key:2,text:b.value,size:l.value,type:c.value},n.moreProps),{icon:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.value)))]),overlay:e.withCtx(()=>[e.createVNode(e.unref(v.Menu),null,{default:e.withCtx(()=>[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(U.value,(a,d)=>(e.openBlock(),e.createBlock(e.unref(v.Menu).Item,{key:W(a,d)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(F(a)),e.mergeProps({ref_for:!0},he(a),{onClick:g=>Z(a)}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040,["onClick"]))]),_:2},1024))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(ve.value,(a,d)=>(e.openBlock(),e.createBlock(e.unref(v.Menu).Item,{key:e.unref(J)(a,d)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.cloneVNode(a,{...a.props,type:$,size:Q}))))]),_:2},1024))),128))]),_:1})]),_:1},16,["text","size","type"])):e.createCommentVNode("",!0)]),_:1},16,["size","compact","vertical","block"]),e.createElementVNode("div",{ref_key:"measureRef",ref:f,class:"mtn-action-group-measure"},[n.actions?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(V.value,(a,d)=>(e.openBlock(),e.createElementBlock("span",{key:d,class:"measure-item"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(F(a)),e.mergeProps({ref_for:!0},X(a)),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(a.label),1)]),_:2},[a.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.icon)))]),key:"0"}:void 0]),1040))]))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(I.value,(a,d)=>(e.openBlock(),e.createElementBlock("span",{key:d,class:"measure-item"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a)))]))),128)),e.createElementVNode("span",{ref_key:"moreTriggerRef",ref:p,class:"measure-item"},[e.createVNode(e.unref(R),{text:b.value,size:l.value,type:c.value},{icon:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.value)))]),_:1},8,["text","size","type"])],512)],512)],512))}}),ie=(t,i)=>{const n=t.__vccOpts||t;for(const[r,u]of i)n[r]=u;return n},ae=ie(ze,[["__scopeId","data-v-ccd228a1"]]),Ee={...ne,loading:{type:Boolean,default:void 0},confirm:{type:[String,Boolean,Function],default:"确定要删除吗?"},confirmType:{type:String,default:"modal"},confirmTitle:{type:String,default:"确认删除"},okText:{type:String,default:"确定"},cancelText:{type:String,default:"取消"},hideIcon:{type:Boolean,default:!1},autoLoading:{type:Boolean,default:!0},beforeDelete:{type:Function,default:void 0},count:{type:Number,default:1},showSuccess:{type:Boolean,default:!1},successText:{type:String,default:"删除成功"},showError:{type:Boolean,default:!0},debounce:{type:Number,default:300},onDelete:{type:Function,default:void 0}},Ne=e.defineComponent({name:"MDeleteButton",inheritAttrs:!1,__name:"delete-button",props:Ee,emits:["delete","success","error"],setup(t,{emit:i}){const n=i,r=t,u=e.ref(!1),m=e.ref(null),f=e.computed(()=>r.loading!==void 0?r.loading:r.autoLoading?u.value:!1),p=e.computed(()=>typeof r.confirm=="function"?r.confirm(r.count):r.confirm);e.watch(f,l=>{m.value&&e.nextTick(()=>{var c;(c=m.value)==null||c.update({okButtonProps:{loading:l}})})},{flush:"post"}),e.onBeforeUnmount(()=>{m.value&&(m.value.destroy(),m.value=null)});const y=async()=>{try{if(r.beforeDelete&&await r.beforeDelete()===!1)return;r.autoLoading&&r.loading===void 0&&(u.value=!0);let l=!1;const c=()=>{l||(l=!0,r.autoLoading&&r.loading===void 0&&(u.value=!1))};if(r.onDelete){const b=r.onDelete(c);if(b&&typeof b.then=="function")try{const C=await b;l||c(),N(C)}catch(C){throw l||c(),C}}else n("delete",c),r.autoLoading&&r.loading===void 0&&setTimeout(()=>{l||c()},5e3)}catch(l){r.autoLoading&&r.loading===void 0&&(u.value=!1);const c=l instanceof Error?l:new Error(String(l));n("error",c),r.showError&&v.message.error(c.message||"删除失败,请重试")}},N=l=>{r.showSuccess&&v.message.success(r.successText||"删除成功"),n("success",l)},k=r.debounce>0?j.useDebounceFn(y,r.debounce):y,x=()=>{if(!p.value){k();return}if(r.confirmType==="popconfirm")return;const l=()=>{m.value=v.Modal.confirm({title:r.confirmTitle,content:p.value,okText:r.okText,cancelText:r.cancelText,okType:"danger",okButtonProps:{loading:f.value},onOk:async()=>{try{return await y(),new Promise(c=>{if(!f.value){c();return}const b=e.watch(f,C=>{C||(b(),c())})})}catch(c){throw c}},onCancel:()=>{m.value=null},afterClose:()=>{m.value=null}})};e.nextTick(l)};return(l,c)=>p.value&&l.confirmType==="popconfirm"?(e.openBlock(),e.createBlock(e.unref(v.Popconfirm),{key:0,title:p.value,"ok-text":l.okText,"cancel-text":l.cancelText,"ok-button-props":{loading:f.value,danger:!0},onConfirm:e.unref(k)},{icon:e.withCtx(()=>[e.renderSlot(l.$slots,"popconfirmIcon",{},()=>[e.createVNode(e.unref(O.ExclamationCircleOutlined),{class:"text-[--color-ant-error]"})],!0)]),default:e.withCtx(()=>[e.createVNode(e.unref(E),e.mergeProps(l.$attrs,{type:l.type,size:l.size,danger:!0,loading:f.value,disabled:l.disabled,permission:l.permission,"permission-action":l.permissionAction,class:"group"}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[c[0]||(c[0]=e.createTextVNode("删除",-1))],!0)]),_:2},[l.hideIcon?void 0:{name:"icon",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},()=>[e.createVNode(e.unref(O.DeleteOutlined))],!0)]),key:"0"}]),1040,["type","size","loading","disabled","permission","permission-action"])]),_:3},8,["title","ok-text","cancel-text","ok-button-props","onConfirm"])):(e.openBlock(),e.createBlock(e.unref(E),e.mergeProps({key:1},l.$attrs,{type:l.type,size:l.size,danger:!0,loading:f.value,disabled:l.disabled,permission:l.permission,"permission-action":l.permissionAction,onClick:x}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[c[1]||(c[1]=e.createTextVNode("删除",-1))],!0)]),_:2},[l.hideIcon?void 0:{name:"icon",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},()=>[e.createVNode(e.unref(O.DeleteOutlined))],!0)]),key:"0"}]),1040,["type","size","loading","disabled","permission","permission-action"]))}}),le=ie(Ne,[["__scopeId","data-v-a943bc19"]]);var ue=(t=>(t.TEXT="text",t.TAG="tag",t.DATE="date",t.DATETIME="dateTime",t.SELECT="select",t.STATUS="status",t.CUSTOM="custom",t))(ue||{}),ce=(t=>(t.LEFT="left",t.CENTER="center",t.RIGHT="right",t))(ce||{}),se=(t=>(t.SMALL="small",t.MIDDLE="middle",t.LARGE="large",t))(se||{}),de=(t=>(t.CHECKBOX="checkbox",t.RADIO="radio",t))(de||{}),pe=(t=>(t.LEFT="left",t.RIGHT="right",t))(pe||{});const Me=[E,H,R,ae,le,te,v.Table],Ie={install(t){Me.forEach(i=>{t.component(i.name||"",i)})}};Object.defineProperty(exports,"Table",{enumerable:!0,get:()=>v.Table});exports.ActionGroup=ae;exports.Button=E;exports.ButtonGroup=H;exports.ButtonPositionEnum=pe;exports.DeleteButton=le;exports.DropdownButton=R;exports.TableColumnAlignEnum=ce;exports.TableColumnTypeEnum=ue;exports.TableSelectionTypeEnum=de;exports.TableSizeEnum=se;exports.Tag=te;exports.buttonGroupProps=re;exports.default=Ie;exports.tagProps=ee;
|
package/dist/index.js
CHANGED
|
@@ -1,30 +1,35 @@
|
|
|
1
1
|
import { Tag as r } from "./data-display/tag/index.js";
|
|
2
2
|
import m from "./antd-wrapped/button/button.js";
|
|
3
|
-
import
|
|
3
|
+
import n from "./antd-wrapped/button-group/button-group.js";
|
|
4
4
|
import { buttonGroupProps as g } from "./antd-wrapped/button-group/props.js";
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import { Table as i } from "
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
5
|
+
import e from "./antd-wrapped/dropdown-button/dropdown-button.js";
|
|
6
|
+
import p from "./antd-wrapped/action-group/action-group.vue.js";
|
|
7
|
+
import u from "./antd-wrapped/delete-button/delete-button.vue.js";
|
|
8
|
+
import { Table as i } from "ant-design-vue";
|
|
9
|
+
import { Table as P } from "ant-design-vue";
|
|
10
|
+
import { ButtonPositionEnum as A, TableColumnAlignEnum as C, TableColumnTypeEnum as D, TableSelectionTypeEnum as S, TableSizeEnum as h } from "./antd-wrapped/table/table.js";
|
|
11
|
+
import { tagProps as z } from "./data-display/tag/props.js";
|
|
12
|
+
const l = [m, n, e, p, u, r, i], E = {
|
|
12
13
|
install(t) {
|
|
13
|
-
|
|
14
|
+
l.forEach((o) => {
|
|
14
15
|
t.component(o.name || "", o);
|
|
15
16
|
});
|
|
16
17
|
}
|
|
17
18
|
};
|
|
18
19
|
export {
|
|
19
|
-
|
|
20
|
+
p as ActionGroup,
|
|
20
21
|
m as Button,
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
n as ButtonGroup,
|
|
23
|
+
A as ButtonPositionEnum,
|
|
24
|
+
u as DeleteButton,
|
|
25
|
+
e as DropdownButton,
|
|
26
|
+
P as Table,
|
|
27
|
+
C as TableColumnAlignEnum,
|
|
28
|
+
D as TableColumnTypeEnum,
|
|
29
|
+
S as TableSelectionTypeEnum,
|
|
30
|
+
h as TableSizeEnum,
|
|
25
31
|
r as Tag,
|
|
26
32
|
g as buttonGroupProps,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
T as tagProps
|
|
33
|
+
E as default,
|
|
34
|
+
z as tagProps
|
|
30
35
|
};
|