@me-framework/me-ui-antdv-next 0.0.37 → 0.0.39
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/data/server-menu.json +2742 -0
- package/dist/me-ui-antdv-next.js +514 -544
- package/dist/me-ui-antdv-next.umd.cjs +3 -3
- package/dist/menu/index.css +1 -1
- package/dist/menu/index.js +213 -243
- package/dist/menu/index.vue.d.ts +2 -2
- package/dist/menu/types.d.ts +1 -1
- package/dist/menu/useMenu.d.ts +56 -0
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/menu/index.js
CHANGED
|
@@ -1,8 +1,33 @@
|
|
|
1
1
|
import e from "../icon/index.js";
|
|
2
|
-
import { Fragment as t, Transition as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createVNode as c, defineComponent as l, inject as u, normalizeClass as d, normalizeStyle as f, onMounted as p, onUnmounted as m, openBlock as h, provide as g, reactive as _, ref as v, renderList as y, renderSlot as b, resolveComponent as
|
|
3
|
-
import { ChevronDown as
|
|
4
|
-
//#region src/components/menu/
|
|
5
|
-
var
|
|
2
|
+
import { Fragment as t, Transition as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createVNode as c, defineComponent as l, inject as u, normalizeClass as d, normalizeStyle as f, onMounted as p, onUnmounted as m, openBlock as h, provide as g, reactive as _, ref as v, renderList as y, renderSlot as b, resolveComponent as x, toDisplayString as S, unref as C, vShow as w, watch as T, withCtx as ee, withDirectives as E } from "vue";
|
|
3
|
+
import { ChevronDown as te, ChevronLeft as D, ChevronRight as ne } from "@lucide/vue";
|
|
4
|
+
//#region src/components/menu/useMenu.ts
|
|
5
|
+
var O = (e) => {
|
|
6
|
+
if (e) return {
|
|
7
|
+
danger: "error",
|
|
8
|
+
info: "default",
|
|
9
|
+
primary: "blue",
|
|
10
|
+
success: "success",
|
|
11
|
+
warning: "warning"
|
|
12
|
+
}[e] || e;
|
|
13
|
+
}, re = Symbol("meMenuCtx"), ie = (e, t) => e[t], ae = (e, t) => e && e[t] || [], oe = (e, t) => !(!t.showHidden && e.hideFlag || e.meta?.hideMenu || t.hideDisabled && !e.enableFlag), k = (e, t) => {
|
|
14
|
+
let n = ae(e, t.childrenField);
|
|
15
|
+
return !n.length || e.meta?.hideChildrenMenu ? [] : n.filter((e) => oe(e, t)).sort((e, t) => e.sort - t.sort);
|
|
16
|
+
}, se = (e, t, n) => {
|
|
17
|
+
for (let r of e) {
|
|
18
|
+
if (ie(r, n.keyField) === t) return r;
|
|
19
|
+
let e = k(r, n);
|
|
20
|
+
if (e.length > 0) {
|
|
21
|
+
let r = se(e, t, n);
|
|
22
|
+
if (r) return r;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
26
|
+
}, ce = (e, t) => e.meta?.type !== "group" && k(e, t).length === 0, le = (e, t) => {
|
|
27
|
+
if (ce(e, t)) return e;
|
|
28
|
+
let n = k(e, t);
|
|
29
|
+
return n.length === 0 ? null : le(n[0], t);
|
|
30
|
+
}, ue = { class: "me-menu__tree-text" }, de = { class: "me-menu__tree-children" }, A = { class: "me-menu__tree-text" }, fe = /* @__PURE__ */ l({
|
|
6
31
|
name: "MenuTreeItem",
|
|
7
32
|
__name: "MenuTreeItem",
|
|
8
33
|
props: {
|
|
@@ -11,87 +36,76 @@ var ne = { class: "me-menu__tree-text" }, re = { class: "me-menu__tree-children"
|
|
|
11
36
|
},
|
|
12
37
|
emits: ["click", "toggle"],
|
|
13
38
|
setup(l, { emit: p }) {
|
|
14
|
-
let m = u(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}), te = r(() => w.value.length > 0), O = r(() => m.selectedId === v(g.item)), A = r(() => m.expandedSections.has(v(g.item))), ie = () => {
|
|
18
|
-
g.item.enableFlag && _("toggle", v(g.item));
|
|
19
|
-
}, ae = () => {
|
|
39
|
+
let m = u(re), g = l, _ = p, v = r(() => m.getVisibleChildren(g.item)), b = r(() => v.value.length > 0), T = r(() => m.selectedId === m.getItemKey(g.item)), D = r(() => m.expandedSections.has(m.getItemKey(g.item))), ne = () => {
|
|
40
|
+
g.item.enableFlag && _("toggle", m.getItemKey(g.item));
|
|
41
|
+
}, O = () => {
|
|
20
42
|
g.item.enableFlag && _("click", g.item);
|
|
21
|
-
}, j = (e) => {
|
|
22
|
-
if (e) return {
|
|
23
|
-
danger: "error",
|
|
24
|
-
info: "default",
|
|
25
|
-
primary: "blue",
|
|
26
|
-
success: "success",
|
|
27
|
-
warning: "warning"
|
|
28
|
-
}[e] || e;
|
|
29
43
|
};
|
|
30
44
|
return (r, u) => {
|
|
31
|
-
let p =
|
|
32
|
-
return
|
|
45
|
+
let p = x("a-badge"), g = x("MenuTreeItem", !0);
|
|
46
|
+
return b.value ? (h(), o(t, { key: 0 }, [s("div", {
|
|
33
47
|
class: d(["me-menu__tree-item me-menu__tree-item--expandable", {
|
|
34
|
-
"is-active":
|
|
48
|
+
"is-active": T.value,
|
|
35
49
|
"is-disabled": !l.item.enableFlag,
|
|
36
|
-
"is-expanded":
|
|
50
|
+
"is-expanded": D.value
|
|
37
51
|
}]),
|
|
38
52
|
style: f({ paddingLeft: `${l.level * 16 + 16}px` }),
|
|
39
|
-
onClick:
|
|
53
|
+
onClick: ne
|
|
40
54
|
}, [
|
|
41
55
|
u[2] ||= s("span", { class: "me-menu__tree-indent" }, null, -1),
|
|
42
|
-
l.item.icon ? (h(), i(
|
|
56
|
+
l.item.icon ? (h(), i(C(e), {
|
|
43
57
|
key: 0,
|
|
44
58
|
name: l.item.icon,
|
|
45
59
|
size: 16,
|
|
46
60
|
class: "me-menu__tree-icon"
|
|
47
61
|
}, null, 8, ["name"])) : a("", !0),
|
|
48
|
-
s("span",
|
|
62
|
+
s("span", ue, S(l.item.title), 1),
|
|
49
63
|
l.item.meta?.badge || l.item.meta?.dot ? (h(), i(p, {
|
|
50
64
|
key: 1,
|
|
51
65
|
count: l.item.meta?.dot ? void 0 : l.item.meta?.badge,
|
|
52
66
|
dot: !!l.item.meta?.dot,
|
|
53
|
-
color:
|
|
67
|
+
color: C(m).resolveBadgeColor(l.item.meta?.badgeColor),
|
|
54
68
|
class: "me-menu__tree-badge"
|
|
55
69
|
}, null, 8, [
|
|
56
70
|
"count",
|
|
57
71
|
"dot",
|
|
58
72
|
"color"
|
|
59
73
|
])) : a("", !0),
|
|
60
|
-
c(
|
|
74
|
+
c(C(te), {
|
|
61
75
|
class: "me-menu__tree-arrow",
|
|
62
76
|
size: 12
|
|
63
77
|
})
|
|
64
78
|
], 6), c(n, { name: "me-menu-tree" }, {
|
|
65
|
-
default:
|
|
66
|
-
key:
|
|
79
|
+
default: ee(() => [E(s("div", de, [(h(!0), o(t, null, y(v.value, (e) => (h(), i(g, {
|
|
80
|
+
key: C(m).getItemKey(e),
|
|
67
81
|
item: e,
|
|
68
82
|
level: l.level + 1,
|
|
69
83
|
onClick: u[0] ||= (e) => _("click", e),
|
|
70
84
|
onToggle: u[1] ||= (e) => _("toggle", e)
|
|
71
|
-
}, null, 8, ["item", "level"]))), 128))], 512), [[
|
|
85
|
+
}, null, 8, ["item", "level"]))), 128))], 512), [[w, D.value]])]),
|
|
72
86
|
_: 1
|
|
73
87
|
})], 64)) : (h(), o("div", {
|
|
74
88
|
key: 1,
|
|
75
89
|
class: d(["me-menu__tree-item", {
|
|
76
|
-
"is-active":
|
|
90
|
+
"is-active": T.value,
|
|
77
91
|
"is-disabled": !l.item.enableFlag
|
|
78
92
|
}]),
|
|
79
93
|
style: f({ paddingLeft: `${l.level * 16 + 16}px` }),
|
|
80
|
-
onClick:
|
|
94
|
+
onClick: O
|
|
81
95
|
}, [
|
|
82
96
|
u[3] ||= s("span", { class: "me-menu__tree-indent" }, null, -1),
|
|
83
|
-
l.item.icon ? (h(), i(
|
|
97
|
+
l.item.icon ? (h(), i(C(e), {
|
|
84
98
|
key: 0,
|
|
85
99
|
name: l.item.icon,
|
|
86
100
|
size: 16,
|
|
87
101
|
class: "me-menu__tree-icon"
|
|
88
102
|
}, null, 8, ["name"])) : a("", !0),
|
|
89
|
-
s("span",
|
|
103
|
+
s("span", A, S(l.item.title), 1),
|
|
90
104
|
l.item.meta?.badge || l.item.meta?.dot ? (h(), i(p, {
|
|
91
105
|
key: 1,
|
|
92
106
|
count: l.item.meta?.dot ? void 0 : l.item.meta?.badge,
|
|
93
107
|
dot: !!l.item.meta?.dot,
|
|
94
|
-
color:
|
|
108
|
+
color: C(m).resolveBadgeColor(l.item.meta?.badgeColor),
|
|
95
109
|
class: "me-menu__tree-badge"
|
|
96
110
|
}, null, 8, [
|
|
97
111
|
"count",
|
|
@@ -101,10 +115,10 @@ var ne = { class: "me-menu__tree-text" }, re = { class: "me-menu__tree-children"
|
|
|
101
115
|
], 6));
|
|
102
116
|
};
|
|
103
117
|
}
|
|
104
|
-
}),
|
|
118
|
+
}), pe = { class: "me-menu__logo" }, me = { class: "me-menu__left-list" }, he = {
|
|
105
119
|
key: 0,
|
|
106
120
|
class: "me-menu__divider"
|
|
107
|
-
},
|
|
121
|
+
}, ge = ["onClick"], _e = { class: "me-menu__left-title" }, ve = { class: "me-menu__footer" }, ye = { class: "me-menu__right-inner" }, be = { class: "me-menu__section" }, xe = ["onClick"], Se = { class: "me-menu__section-title" }, Ce = { class: "me-menu__section-body" }, we = ["onClick"], Te = { class: "me-menu__item-text" }, j = /* @__PURE__ */ l({
|
|
108
122
|
name: "MeMenu",
|
|
109
123
|
__name: "index",
|
|
110
124
|
props: {
|
|
@@ -147,322 +161,278 @@ var ne = { class: "me-menu__tree-text" }, re = { class: "me-menu__tree-children"
|
|
|
147
161
|
"change",
|
|
148
162
|
"update:rightCollapsed"
|
|
149
163
|
],
|
|
150
|
-
setup(l, { expose:
|
|
151
|
-
let
|
|
152
|
-
|
|
164
|
+
setup(l, { expose: ue, emit: de }) {
|
|
165
|
+
let A = l, j = de, M = u("router", null), N = v(A.defaultActiveId || A.activeId), P = v(A.defaultSelectedId || A.selectedId), F = v(/* @__PURE__ */ new Set()), I = v(A.rightCollapsed);
|
|
166
|
+
T(() => A.activeId, (e) => {
|
|
167
|
+
e && (N.value = e);
|
|
168
|
+
}), T(() => A.selectedId, (e) => {
|
|
169
|
+
e && (P.value = e);
|
|
170
|
+
}), T(() => A.rightCollapsed, (e) => {
|
|
171
|
+
I.value = e;
|
|
172
|
+
});
|
|
173
|
+
let Ee = v(!1), De = () => {
|
|
174
|
+
typeof document < "u" && (Ee.value = document.documentElement.classList.contains("dark"));
|
|
175
|
+
}, L = null;
|
|
176
|
+
p(() => {
|
|
177
|
+
De(), typeof document < "u" && (L = new MutationObserver(() => {
|
|
178
|
+
De();
|
|
179
|
+
}), L.observe(document.documentElement, {
|
|
180
|
+
attributes: !0,
|
|
181
|
+
attributeFilter: ["class"]
|
|
182
|
+
}));
|
|
183
|
+
}), m(() => {
|
|
184
|
+
L?.disconnect(), L = null;
|
|
185
|
+
});
|
|
186
|
+
let R = r(() => ({
|
|
187
|
+
keyField: A.keyField,
|
|
188
|
+
childrenField: A.childrenField,
|
|
189
|
+
hideDisabled: A.hideDisabled,
|
|
190
|
+
showHidden: A.showHidden
|
|
191
|
+
})), z = (e) => ie(e, A.keyField), Oe = (e) => ae(e, A.childrenField), ke = (e) => oe(e, R.value), B = (e) => k(e, R.value), V = (e, t) => se(e, t, R.value), H = (e) => ce(e, R.value), U = (e) => le(e, R.value), Ae = (e) => e.meta?.type === "group" || B(e).length > 0;
|
|
192
|
+
g(re, _({
|
|
153
193
|
get keyField() {
|
|
154
|
-
return
|
|
194
|
+
return A.keyField;
|
|
155
195
|
},
|
|
156
196
|
get childrenField() {
|
|
157
|
-
return
|
|
197
|
+
return A.childrenField;
|
|
158
198
|
},
|
|
159
199
|
get hideDisabled() {
|
|
160
|
-
return
|
|
200
|
+
return A.hideDisabled;
|
|
161
201
|
},
|
|
162
202
|
get showHidden() {
|
|
163
|
-
return
|
|
203
|
+
return A.showHidden;
|
|
164
204
|
},
|
|
165
205
|
get selectedId() {
|
|
166
|
-
return
|
|
206
|
+
return X.value;
|
|
167
207
|
},
|
|
168
208
|
get expandedSections() {
|
|
169
|
-
return
|
|
170
|
-
}
|
|
209
|
+
return F.value;
|
|
210
|
+
},
|
|
211
|
+
getItemKey: z,
|
|
212
|
+
getVisibleChildren: B,
|
|
213
|
+
resolveBadgeColor: O
|
|
171
214
|
}));
|
|
172
|
-
let
|
|
173
|
-
|
|
174
|
-
e
|
|
175
|
-
}), w(() => k.selectedId, (e) => {
|
|
176
|
-
e && (F.value = e);
|
|
177
|
-
}), w(() => k.rightCollapsed, (e) => {
|
|
178
|
-
L.value = e;
|
|
179
|
-
});
|
|
180
|
-
let be = v(!1), xe = () => {
|
|
181
|
-
typeof document < "u" && (be.value = document.documentElement.classList.contains("dark"));
|
|
182
|
-
}, R = null;
|
|
183
|
-
p(() => {
|
|
184
|
-
xe(), typeof document < "u" && (R = new MutationObserver(() => {
|
|
185
|
-
xe();
|
|
186
|
-
}), R.observe(document.documentElement, {
|
|
187
|
-
attributes: !0,
|
|
188
|
-
attributeFilter: ["class"]
|
|
189
|
-
}));
|
|
190
|
-
}), m(() => {
|
|
191
|
-
R?.disconnect(), R = null;
|
|
192
|
-
});
|
|
193
|
-
let Se = r(() => typeof k.height == "number" ? `${k.height}px` : k.height), Ce = r(() => {
|
|
194
|
-
if (!k.background) return {};
|
|
195
|
-
let e = k.background.trim();
|
|
215
|
+
let je = r(() => typeof A.height == "number" ? `${A.height}px` : A.height), Me = r(() => {
|
|
216
|
+
if (!A.background) return {};
|
|
217
|
+
let e = A.background.trim();
|
|
196
218
|
return e.startsWith("http://") || e.startsWith("https://") || e.startsWith("data:") ? {
|
|
197
|
-
backgroundImage:
|
|
219
|
+
backgroundImage: Ee.value ? `linear-gradient(rgb(0 0 0 / 70%), rgb(0 0 0 / 80%)), url(${e})` : `url(${e})`,
|
|
198
220
|
backgroundSize: "cover"
|
|
199
221
|
} : { background: e };
|
|
200
|
-
}),
|
|
222
|
+
}), W = r(() => I.value), G = r(() => Y.value.length > 0), Ne = r(() => typeof A.leftWidth == "number" ? `${A.leftWidth}px` : A.leftWidth), Pe = r(() => typeof A.rightWidth == "number" ? `${A.rightWidth}px` : A.rightWidth), Fe = r(() => {
|
|
201
223
|
let e = {};
|
|
202
|
-
if (
|
|
203
|
-
let t =
|
|
224
|
+
if (A.collapseDuration !== void 0) {
|
|
225
|
+
let t = A.collapseDuration;
|
|
204
226
|
e["--me-menu-transition-duration"] = typeof t == "number" || /^\d+(\.\d+)?$/.test(t) ? `${t}ms` : t;
|
|
205
227
|
}
|
|
206
|
-
return
|
|
207
|
-
}),
|
|
208
|
-
let e = Number.parseFloat(String(
|
|
228
|
+
return A.collapseAnimation !== void 0 && (e["--me-menu-transition-timing"] = A.collapseAnimation), e;
|
|
229
|
+
}), Ie = v(0), Le = r(() => {
|
|
230
|
+
let e = Number.parseFloat(String(A.leftWidth)) || 0, t = Number.parseFloat(String(A.rightWidth)) || 0;
|
|
209
231
|
return {
|
|
210
|
-
left: `${(
|
|
211
|
-
top: `${
|
|
232
|
+
left: `${(G.value && !I.value ? e + t : e) - 8}px`,
|
|
233
|
+
top: `${Ie.value}px`
|
|
212
234
|
};
|
|
213
|
-
}),
|
|
214
|
-
if (!
|
|
235
|
+
}), K = v(!1), Re = (e) => {
|
|
236
|
+
if (!A.showRightToggle || !G.value) return;
|
|
215
237
|
let t = e.currentTarget, n = t.querySelector(".me-menu__right"), r = n && n.offsetParent !== null ? n : t.querySelector(".me-menu__left");
|
|
216
238
|
if (!r) return;
|
|
217
239
|
let i = r.getBoundingClientRect(), a = Math.abs(e.clientX - i.right) <= 16;
|
|
218
|
-
if (a && !
|
|
240
|
+
if (a && !K.value) {
|
|
219
241
|
let n = t.getBoundingClientRect();
|
|
220
|
-
|
|
242
|
+
Ie.value = Math.max(36, Math.min(e.clientY - n.top, n.height - 8 - 28));
|
|
221
243
|
}
|
|
222
|
-
|
|
223
|
-
},
|
|
224
|
-
|
|
225
|
-
},
|
|
226
|
-
let e =
|
|
227
|
-
return e.length ? e.filter((e) =>
|
|
228
|
-
}),
|
|
229
|
-
|
|
244
|
+
K.value = a;
|
|
245
|
+
}, ze = () => {
|
|
246
|
+
K.value = !1;
|
|
247
|
+
}, q = r(() => A.data.filter((e) => e[A.parentField] === "0" && ke(e)).sort((e, t) => e.sort - t.sort)), J = r(() => N.value ? N.value : A.activeId ? A.activeId : A.defaultActiveId ? A.defaultActiveId : q.value[0] ? z(q.value[0]) : ""), Be = r(() => J.value && q.value.find((e) => z(e) === J.value) || null), Y = r(() => {
|
|
248
|
+
let e = Oe(Be.value);
|
|
249
|
+
return e.length ? e.filter((e) => ke(e)).sort((e, t) => e.sort - t.sort) : [];
|
|
250
|
+
}), X = r(() => P.value ? P.value : A.selectedId ? A.selectedId : A.defaultSelectedId ? A.defaultSelectedId : ""), Ve = r(() => X.value ? V(A.data, X.value) : null);
|
|
251
|
+
T(() => X.value, (e) => {
|
|
230
252
|
if (!e) return;
|
|
231
|
-
|
|
232
|
-
let t =
|
|
233
|
-
if (t && !
|
|
234
|
-
let e =
|
|
253
|
+
Q(e);
|
|
254
|
+
let t = V(Y.value, e);
|
|
255
|
+
if (t && !H(t)) {
|
|
256
|
+
let e = U(t);
|
|
235
257
|
if (e) {
|
|
236
|
-
let t =
|
|
237
|
-
|
|
258
|
+
let t = z(e);
|
|
259
|
+
P.value = t, j("update:selectedId", t), j("select", e), $(e);
|
|
238
260
|
}
|
|
239
261
|
}
|
|
240
262
|
});
|
|
241
|
-
let
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
info: "default",
|
|
245
|
-
primary: "blue",
|
|
246
|
-
success: "success",
|
|
247
|
-
warning: "warning"
|
|
248
|
-
}[e] || e;
|
|
249
|
-
}, J = (e, t) => {
|
|
250
|
-
for (let n of e) {
|
|
251
|
-
if (H(n) === t) return n;
|
|
252
|
-
let e = U(n);
|
|
253
|
-
if (e.length > 0) {
|
|
254
|
-
let n = J(e, t);
|
|
255
|
-
if (n) return n;
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
return null;
|
|
259
|
-
}, Y = (e) => {
|
|
260
|
-
let t = U(e);
|
|
261
|
-
return !t.length || e.meta?.hideChildrenMenu ? [] : t.filter((e) => je(e)).sort((e, t) => e.sort - t.sort);
|
|
262
|
-
}, X = (e) => {
|
|
263
|
-
I.value.has(e) ? I.value.delete(e) : I.value.add(e);
|
|
264
|
-
}, Z = (e) => I.value.has(e), Fe = (e, t = K.value) => {
|
|
263
|
+
let He = (e) => {
|
|
264
|
+
F.value.has(e) ? F.value.delete(e) : F.value.add(e);
|
|
265
|
+
}, Z = (e) => F.value.has(e), Ue = (e, t = Y.value) => {
|
|
265
266
|
for (let n of t) {
|
|
266
|
-
let t =
|
|
267
|
-
if (t.some((t) =>
|
|
267
|
+
let t = B(n);
|
|
268
|
+
if (t.some((t) => z(t) === e)) return [z(n)];
|
|
268
269
|
if (t.length > 0) {
|
|
269
|
-
let r =
|
|
270
|
-
if (r.length > 0) return [
|
|
270
|
+
let r = Ue(e, t);
|
|
271
|
+
if (r.length > 0) return [z(n), ...r];
|
|
271
272
|
}
|
|
272
273
|
}
|
|
273
274
|
return [];
|
|
274
|
-
}, Ie = (e) => {
|
|
275
|
-
Fe(e).forEach((e) => {
|
|
276
|
-
I.value.add(e);
|
|
277
|
-
});
|
|
278
|
-
}, Le = (e) => {
|
|
279
|
-
if (!e || !K.value) return null;
|
|
280
|
-
for (let t of K.value) {
|
|
281
|
-
if (H(t) === e) return t;
|
|
282
|
-
let n = Y(t);
|
|
283
|
-
if (n.length > 0) {
|
|
284
|
-
let t = J(n, e);
|
|
285
|
-
if (t) return t;
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
return null;
|
|
289
|
-
}, Re = (e) => {
|
|
290
|
-
if (e.length === 0) return null;
|
|
291
|
-
let t = e[0], n = Y(t);
|
|
292
|
-
return n.length > 0 ? (I.value.add(H(t)), Re(n)) : t;
|
|
293
275
|
}, Q = (e) => {
|
|
294
|
-
|
|
276
|
+
Ue(e).forEach((e) => {
|
|
277
|
+
F.value.add(e);
|
|
278
|
+
});
|
|
279
|
+
}, $ = (e) => {
|
|
280
|
+
if (!A.router || !M) return;
|
|
295
281
|
let t = e.meta?.path;
|
|
296
|
-
t &&
|
|
297
|
-
}, ze = (e) => e.meta?.type !== "group" && Y(e).length === 0, Be = (e) => {
|
|
298
|
-
if (ze(e)) return e;
|
|
299
|
-
let t = Y(e);
|
|
300
|
-
return t.length === 0 ? null : Re(t);
|
|
282
|
+
t && M.push(t);
|
|
301
283
|
};
|
|
302
|
-
|
|
303
|
-
let e =
|
|
304
|
-
if (t &&
|
|
305
|
-
if (
|
|
306
|
-
|
|
284
|
+
T(() => J.value, () => {
|
|
285
|
+
let e = A.selectedId || P.value || A.defaultSelectedId, t = V(Y.value, e);
|
|
286
|
+
if (t && Y.value.length > 0) {
|
|
287
|
+
if (Q(e), H(t)) {
|
|
288
|
+
P.value !== e && (P.value = e);
|
|
307
289
|
return;
|
|
308
290
|
}
|
|
309
|
-
let n =
|
|
291
|
+
let n = U(t);
|
|
310
292
|
if (n) {
|
|
311
|
-
let e =
|
|
312
|
-
|
|
293
|
+
let e = z(n);
|
|
294
|
+
P.value = e, Q(e), j("update:selectedId", e), j("select", n), $(n);
|
|
313
295
|
return;
|
|
314
296
|
}
|
|
315
297
|
}
|
|
316
|
-
let n =
|
|
317
|
-
if (n) {
|
|
318
|
-
let e =
|
|
319
|
-
|
|
320
|
-
} else F.value = "", M("update:selectedId", "");
|
|
321
|
-
}, { immediate: !0 });
|
|
322
|
-
let Ve = () => {
|
|
323
|
-
L.value = !L.value, M("update:rightCollapsed", L.value);
|
|
324
|
-
}, He = (e) => {
|
|
325
|
-
if (!e.enableFlag) return;
|
|
326
|
-
let t = H(e);
|
|
327
|
-
if (P.value === t) {
|
|
328
|
-
Ve();
|
|
298
|
+
let n = Be.value;
|
|
299
|
+
if (n && H(n)) {
|
|
300
|
+
let e = z(n);
|
|
301
|
+
P.value !== e && (P.value = e, j("update:selectedId", e), j("select", n), $(n));
|
|
329
302
|
return;
|
|
330
303
|
}
|
|
331
|
-
|
|
332
|
-
|
|
304
|
+
let r = Y.value[0] ? U(Y.value[0]) : null;
|
|
305
|
+
if (r) {
|
|
306
|
+
let e = z(r);
|
|
307
|
+
P.value = e, Q(e), j("update:selectedId", e), j("select", r), $(r);
|
|
308
|
+
} else P.value = "", j("update:selectedId", "");
|
|
309
|
+
}, { immediate: !0 });
|
|
310
|
+
let We = () => {
|
|
311
|
+
I.value = !I.value, j("update:rightCollapsed", I.value);
|
|
312
|
+
}, Ge = (e) => {
|
|
313
|
+
if (!e.enableFlag) return;
|
|
314
|
+
let t = z(e);
|
|
315
|
+
N.value !== t && (N.value = t, P.value = "", I.value = !1, j("update:rightCollapsed", !1), j("update:activeId", t), j("change", e));
|
|
316
|
+
}, Ke = (e) => {
|
|
333
317
|
if (!e.enableFlag) return;
|
|
334
|
-
let t =
|
|
335
|
-
|
|
318
|
+
let t = z(e);
|
|
319
|
+
P.value = t, j("update:selectedId", t), j("select", e), $(e);
|
|
336
320
|
};
|
|
337
|
-
return
|
|
321
|
+
return ue({
|
|
338
322
|
setBadge: (e, t, n) => {
|
|
339
|
-
let r =
|
|
323
|
+
let r = V(A.data, e);
|
|
340
324
|
r && (r.meta ||= {}, t === !0 ? (r.meta.dot = !0, r.meta.badge = "") : (r.meta.badge = String(t), r.meta.dot = !1), n && (r.meta.badgeColor = n));
|
|
341
325
|
},
|
|
342
326
|
removeBadge: (e) => {
|
|
343
|
-
let t =
|
|
327
|
+
let t = V(A.data, e);
|
|
344
328
|
!t || !t.meta || (t.meta.badge = "", t.meta.dot = !1);
|
|
345
329
|
},
|
|
346
|
-
selectedItem:
|
|
347
|
-
toggleRightCollapse:
|
|
348
|
-
rightCollapsed:
|
|
330
|
+
selectedItem: Ve,
|
|
331
|
+
toggleRightCollapse: We,
|
|
332
|
+
rightCollapsed: W
|
|
349
333
|
}), (r, u) => {
|
|
350
|
-
let p =
|
|
334
|
+
let p = x("a-badge");
|
|
351
335
|
return h(), o("div", {
|
|
352
336
|
class: "me-menu",
|
|
353
337
|
style: f({
|
|
354
|
-
height:
|
|
355
|
-
...
|
|
338
|
+
height: je.value,
|
|
339
|
+
...Fe.value
|
|
356
340
|
}),
|
|
357
|
-
onMousemove:
|
|
358
|
-
onMouseleave:
|
|
341
|
+
onMousemove: Re,
|
|
342
|
+
onMouseleave: ze
|
|
359
343
|
}, [
|
|
360
344
|
s("div", {
|
|
361
345
|
class: "me-menu__left",
|
|
362
346
|
style: f({
|
|
363
|
-
width:
|
|
364
|
-
...
|
|
347
|
+
width: Ne.value,
|
|
348
|
+
...Me.value
|
|
365
349
|
})
|
|
366
350
|
}, [
|
|
367
|
-
s("div",
|
|
368
|
-
s("div",
|
|
351
|
+
s("div", pe, [b(r.$slots, "logo", {}, () => [u[0] ||= s("span", { class: "me-menu__logo-text" }, "MeMenu", -1)])]),
|
|
352
|
+
s("div", me, [(h(!0), o(t, null, y(q.value, (n) => (h(), o(t, { key: z(n) }, [n.meta?.divider ? (h(), o("div", he)) : a("", !0), s("div", {
|
|
369
353
|
class: d(["me-menu__left-item", {
|
|
370
|
-
"is-active":
|
|
371
|
-
"is-disabled": !n.enableFlag
|
|
354
|
+
"is-active": J.value === z(n),
|
|
355
|
+
"is-disabled": !n.enableFlag,
|
|
356
|
+
"is-static": J.value === z(n)
|
|
372
357
|
}]),
|
|
373
|
-
onClick: (e) =>
|
|
358
|
+
onClick: (e) => Ge(n)
|
|
374
359
|
}, [
|
|
375
|
-
n.icon ? (h(), i(
|
|
360
|
+
n.icon ? (h(), i(C(e), {
|
|
376
361
|
key: 0,
|
|
377
362
|
name: n.icon,
|
|
378
363
|
size: 16,
|
|
379
364
|
class: "me-menu__left-icon"
|
|
380
365
|
}, null, 8, ["name"])) : a("", !0),
|
|
381
|
-
s("span",
|
|
366
|
+
s("span", _e, S(n.title), 1),
|
|
382
367
|
n.meta?.badge || n.meta?.dot ? (h(), i(p, {
|
|
383
368
|
key: 1,
|
|
384
369
|
count: n.meta?.dot ? void 0 : n.meta?.badge,
|
|
385
370
|
dot: !!n.meta?.dot,
|
|
386
|
-
color:
|
|
371
|
+
color: C(O)(n.meta?.badgeColor),
|
|
387
372
|
class: "me-menu__left-badge"
|
|
388
373
|
}, null, 8, [
|
|
389
374
|
"count",
|
|
390
375
|
"dot",
|
|
391
376
|
"color"
|
|
392
377
|
])) : a("", !0)
|
|
393
|
-
], 10,
|
|
394
|
-
s("div",
|
|
378
|
+
], 10, ge)], 64))), 128))]),
|
|
379
|
+
s("div", ve, [b(r.$slots, "footer")]),
|
|
395
380
|
u[1] ||= s("div", { class: "me-menu__decoration" }, null, -1)
|
|
396
381
|
], 4),
|
|
397
382
|
E(s("div", {
|
|
398
|
-
class: d(["me-menu__right", { "is-collapsed":
|
|
399
|
-
style: f({ "--me-menu-right-width":
|
|
400
|
-
}, [s("div",
|
|
383
|
+
class: d(["me-menu__right", { "is-collapsed": I.value }]),
|
|
384
|
+
style: f({ "--me-menu-right-width": Pe.value })
|
|
385
|
+
}, [s("div", ye, [(h(!0), o(t, null, y(Y.value, (r) => (h(), o(t, { key: z(r) }, [Ae(r) ? (h(), o(t, { key: 0 }, [s("div", be, [s("div", {
|
|
401
386
|
class: "me-menu__section-header",
|
|
402
|
-
onClick: (e) =>
|
|
403
|
-
}, [c(
|
|
404
|
-
class: d(["me-menu__section-arrow", { "is-expanded": Z(
|
|
387
|
+
onClick: (e) => He(z(r))
|
|
388
|
+
}, [c(C(te), {
|
|
389
|
+
class: d(["me-menu__section-arrow", { "is-expanded": Z(z(r)) }]),
|
|
405
390
|
size: 12
|
|
406
|
-
}, null, 8, ["class"]), s("span",
|
|
407
|
-
default:
|
|
408
|
-
key:
|
|
391
|
+
}, null, 8, ["class"]), s("span", Se, S(r.title), 1)], 8, xe), c(n, { name: "me-menu-section" }, {
|
|
392
|
+
default: ee(() => [E(s("div", Ce, [(h(!0), o(t, null, y(B(r), (e) => (h(), i(fe, {
|
|
393
|
+
key: z(e),
|
|
409
394
|
item: e,
|
|
410
395
|
level: 0,
|
|
411
|
-
onClick:
|
|
412
|
-
onToggle:
|
|
413
|
-
}, null, 8, ["item"]))), 128))], 512), [[
|
|
396
|
+
onClick: Ke,
|
|
397
|
+
onToggle: He
|
|
398
|
+
}, null, 8, ["item"]))), 128))], 512), [[w, Z(z(r))]])]),
|
|
414
399
|
_: 2
|
|
415
|
-
}, 1024)]), u[2] ||= s("div", { class: "me-menu__section-divider" }, null, -1)], 64)) :
|
|
416
|
-
|
|
417
|
-
onClick: (e) => X(H(r))
|
|
418
|
-
}, [c(S(D), {
|
|
419
|
-
class: d(["me-menu__section-arrow", { "is-expanded": Z(H(r)) }]),
|
|
420
|
-
size: 12
|
|
421
|
-
}, null, 8, ["class"]), s("span", ge, x(r.title), 1)], 8, he), c(n, { name: "me-menu-section" }, {
|
|
422
|
-
default: T(() => [E(s("div", _e, [(h(!0), o(t, null, y(Y(r), (e) => (h(), i(A, {
|
|
423
|
-
key: H(e),
|
|
424
|
-
item: e,
|
|
425
|
-
level: 0,
|
|
426
|
-
onClick: $,
|
|
427
|
-
onToggle: X
|
|
428
|
-
}, null, 8, ["item"]))), 128))], 512), [[C, Z(H(r))]])]),
|
|
429
|
-
_: 2
|
|
430
|
-
}, 1024)]), u[3] ||= s("div", { class: "me-menu__section-divider" }, null, -1)], 64)) : (h(), o("div", {
|
|
431
|
-
key: 2,
|
|
400
|
+
}, 1024)]), u[2] ||= s("div", { class: "me-menu__section-divider" }, null, -1)], 64)) : (h(), o("div", {
|
|
401
|
+
key: 1,
|
|
432
402
|
class: d(["me-menu__item me-menu__item--standalone", {
|
|
433
|
-
"is-active":
|
|
403
|
+
"is-active": X.value === z(r),
|
|
434
404
|
"is-disabled": !r.enableFlag
|
|
435
405
|
}]),
|
|
436
|
-
onClick: (e) =>
|
|
406
|
+
onClick: (e) => Ke(r)
|
|
437
407
|
}, [
|
|
438
|
-
r.icon ? (h(), i(
|
|
408
|
+
r.icon ? (h(), i(C(e), {
|
|
439
409
|
key: 0,
|
|
440
410
|
name: r.icon,
|
|
441
411
|
size: 16,
|
|
442
412
|
class: "me-menu__item-icon"
|
|
443
413
|
}, null, 8, ["name"])) : a("", !0),
|
|
444
|
-
s("span",
|
|
414
|
+
s("span", Te, S(r.title), 1),
|
|
445
415
|
r.meta?.badge || r.meta?.dot ? (h(), i(p, {
|
|
446
416
|
key: 1,
|
|
447
417
|
count: r.meta?.dot ? void 0 : r.meta?.badge,
|
|
448
418
|
dot: !!r.meta?.dot,
|
|
449
|
-
color:
|
|
419
|
+
color: C(O)(r.meta?.badgeColor),
|
|
450
420
|
class: "me-menu__item-badge"
|
|
451
421
|
}, null, 8, [
|
|
452
422
|
"count",
|
|
453
423
|
"dot",
|
|
454
424
|
"color"
|
|
455
425
|
])) : a("", !0)
|
|
456
|
-
], 10,
|
|
426
|
+
], 10, we))], 64))), 128))])], 6), [[w, G.value]]),
|
|
457
427
|
l.showRightToggle ? (h(), o("div", {
|
|
458
428
|
key: 0,
|
|
459
|
-
class: d(["me-menu__right-toggle", { "is-visible":
|
|
460
|
-
style: f(
|
|
461
|
-
onClick:
|
|
462
|
-
}, [b(r.$slots, "right-toggle", { collapsed:
|
|
429
|
+
class: d(["me-menu__right-toggle", { "is-visible": K.value }]),
|
|
430
|
+
style: f(Le.value),
|
|
431
|
+
onClick: We
|
|
432
|
+
}, [b(r.$slots, "right-toggle", { collapsed: W.value }, () => [W.value ? (h(), i(C(ne), {
|
|
463
433
|
key: 0,
|
|
464
434
|
size: 14
|
|
465
|
-
})) : (h(), i(
|
|
435
|
+
})) : (h(), i(C(D), {
|
|
466
436
|
key: 1,
|
|
467
437
|
size: 14
|
|
468
438
|
}))])], 6)) : a("", !0)
|
|
@@ -472,9 +442,9 @@ var ne = { class: "me-menu__tree-text" }, re = { class: "me-menu__tree-children"
|
|
|
472
442
|
});
|
|
473
443
|
//#endregion
|
|
474
444
|
//#region src/components/menu/index.ts
|
|
475
|
-
|
|
476
|
-
e.component("MeMenu",
|
|
445
|
+
j.install = (e) => {
|
|
446
|
+
e.component("MeMenu", j);
|
|
477
447
|
};
|
|
478
|
-
var
|
|
448
|
+
var M = j;
|
|
479
449
|
//#endregion
|
|
480
|
-
export {
|
|
450
|
+
export { j as MeMenu, M as default };
|