workflow-editor 0.0.91-up → 0.0.92-up

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.
@@ -0,0 +1,1260 @@
1
+ import { _ as w, p as ie, i as K, g as V, m as J, b as $, E as W, c as L, d as z, e as se, f as ae, s as I, h as oe } from "./index-a7606ec3.js";
2
+ import { resolveComponent as m, openBlock as c, createBlock as p, normalizeProps as re, guardReactiveProps as le, withCtx as g, renderSlot as B, createElementBlock as _, createVNode as v, normalizeClass as x, createCommentVNode as M, Fragment as T, renderList as R, createElementVNode as k, defineComponent as j, ref as G, computed as ue, resolveDynamicComponent as ce, h as b, createTextVNode as de, toDisplayString as F, TransitionGroup as fe } from "vue";
3
+ function X(e) {
4
+ return /^(https?:|mailto:|tel:)/.test(e);
5
+ }
6
+ function me(e, t) {
7
+ const n = {
8
+ ...t,
9
+ props: e,
10
+ data: t.attr,
11
+ children: t.slots
12
+ }, { icon: a, title: s, hasChildren: i } = n.props, o = [];
13
+ let l = [h("i", { class: "amb-iconfont amb-icon-meun_post" })];
14
+ return a && (l = [h(SuperIcon, { iconValue: a })]), o.push(/* @__PURE__ */ React.createElement("div", { class: "smb-sidebar-menu-item-icon" }, l)), s && o.push(
15
+ /* @__PURE__ */ React.createElement("template", { slot: "title" }, /* @__PURE__ */ React.createElement(
16
+ "div",
17
+ {
18
+ title: s,
19
+ class: "smb-sidebar-menu-item-title"
20
+ },
21
+ s
22
+ ))
23
+ ), o;
24
+ }
25
+ const he = {
26
+ props: {
27
+ to: {
28
+ type: String,
29
+ required: !0
30
+ }
31
+ },
32
+ methods: {
33
+ isExternalLink(e) {
34
+ return X(e);
35
+ },
36
+ linkProps(e) {
37
+ return this.isExternalLink(e) ? {
38
+ is: "a",
39
+ href: e,
40
+ target: "_blank",
41
+ rel: "noopener"
42
+ } : {
43
+ is: "router-link",
44
+ to: e
45
+ };
46
+ }
47
+ }
48
+ };
49
+ function pe(e, t, n, a, s, i) {
50
+ const o = m("component");
51
+ return c(), p(o, re(le(i.linkProps(n.to))), {
52
+ default: g(() => [
53
+ B(e.$slots, "default")
54
+ ]),
55
+ _: 3
56
+ }, 16);
57
+ }
58
+ const _e = /* @__PURE__ */ w(he, [["render", pe]]);
59
+ const ge = {
60
+ name: "SidebarItem",
61
+ components: { Item: me, AppLink: _e },
62
+ props: {
63
+ // route object
64
+ item: {
65
+ type: Object,
66
+ required: !0
67
+ },
68
+ isNest: {
69
+ type: Boolean,
70
+ default: !1
71
+ },
72
+ basePath: {
73
+ type: String,
74
+ default: ""
75
+ }
76
+ },
77
+ data() {
78
+ return {
79
+ onlyOneChild: null
80
+ };
81
+ },
82
+ computed: {
83
+ visibleChildren() {
84
+ return this.item.children.filter((e) => !e.hidden);
85
+ }
86
+ },
87
+ methods: {
88
+ hasOneShowingChild(e, t) {
89
+ const n = e.filter((a) => a.hidden ? !1 : (this.onlyOneChild = a, !0));
90
+ return n.length === 1 ? !0 : n.length === 0 ? (this.onlyOneChild = { ...t, path: "", noShowingChildren: !0 }, !0) : !1;
91
+ },
92
+ resolvePath(e) {
93
+ return this.isExternalLink(e) ? e : ie.resolve(this.basePath, e);
94
+ },
95
+ isExternalLink(e) {
96
+ return X(e);
97
+ }
98
+ }
99
+ }, be = {
100
+ key: 0,
101
+ class: "menu-wrapper"
102
+ };
103
+ function ye(e, t, n, a, s, i) {
104
+ const o = m("item"), l = m("el-menu-item"), u = m("app-link"), d = m("sidebar-item", !0), f = m("el-sub-menu");
105
+ return !n.item.hidden && n.item.children ? (c(), _("div", be, [
106
+ i.hasOneShowingChild(n.item.children, n.item) && (!s.onlyOneChild.children || s.onlyOneChild.noShowingChildren) && !n.item.alwaysShow ? (c(), p(u, {
107
+ key: 0,
108
+ to: i.resolvePath(s.onlyOneChild.path)
109
+ }, {
110
+ default: g(() => [
111
+ v(l, {
112
+ index: i.resolvePath(s.onlyOneChild.path) + "~~" + s.onlyOneChild.meta.title,
113
+ class: x(["smb-sidebar-menu-item", { "submenu-title-noDropdown": !n.isNest }])
114
+ }, {
115
+ default: g(() => [
116
+ s.onlyOneChild.meta ? (c(), p(o, {
117
+ key: 0,
118
+ icon: s.onlyOneChild.meta.icon || n.item.meta.icon,
119
+ title: e.$t(s.onlyOneChild.meta.title)
120
+ }, null, 8, ["icon", "title"])) : M("", !0)
121
+ ]),
122
+ _: 1
123
+ }, 8, ["index", "class"])
124
+ ]),
125
+ _: 1
126
+ }, 8, ["to"])) : (c(), p(f, {
127
+ key: 1,
128
+ index: i.resolvePath(n.item.path) + "~~" + n.item.meta.title,
129
+ class: "smb-sidebar-menu-item"
130
+ }, {
131
+ title: g(() => [
132
+ n.item.meta ? (c(), p(o, {
133
+ key: 0,
134
+ icon: n.item.meta.icon,
135
+ title: e.$t(n.item.meta.title),
136
+ "has-children": n.item.children.length > 0
137
+ }, null, 8, ["icon", "title", "has-children"])) : M("", !0)
138
+ ]),
139
+ default: g(() => [
140
+ (c(!0), _(T, null, R(i.visibleChildren, (r) => (c(), _(T, null, [
141
+ r.children && r.children.length > 0 ? (c(), p(d, {
142
+ key: 0,
143
+ "is-nest": !0,
144
+ item: r,
145
+ "base-path": i.resolvePath(r.path),
146
+ class: "nest-menu smb-sidebar-menu-item"
147
+ }, null, 8, ["item", "base-path"])) : (c(), p(u, {
148
+ key: 1,
149
+ to: i.resolvePath(r.path)
150
+ }, {
151
+ default: g(() => [
152
+ v(l, {
153
+ index: i.resolvePath(r.path) + "~~" + r.meta.title,
154
+ class: "smb-sidebar-menu-item"
155
+ }, {
156
+ default: g(() => [
157
+ r.meta ? (c(), p(o, {
158
+ key: 0,
159
+ icon: r.meta.icon,
160
+ title: e.$t(r.meta.title)
161
+ }, null, 8, ["icon", "title"])) : M("", !0)
162
+ ]),
163
+ _: 2
164
+ }, 1032, ["index"])
165
+ ]),
166
+ _: 2
167
+ }, 1032, ["to"]))
168
+ ], 64))), 256))
169
+ ]),
170
+ _: 1
171
+ }, 8, ["index"]))
172
+ ])) : M("", !0);
173
+ }
174
+ const ve = /* @__PURE__ */ w(ge, [["render", ye], ["__scopeId", "data-v-11a5e054"]]);
175
+ ({
176
+ ...J(["sidebar", "protectedRouters"])
177
+ });
178
+ const Ce = {
179
+ name: "SvgIcon",
180
+ props: {
181
+ iconClass: {
182
+ type: String,
183
+ required: !0
184
+ },
185
+ className: {
186
+ type: String,
187
+ default: ""
188
+ }
189
+ },
190
+ computed: {
191
+ iconName() {
192
+ return `#icon-${this.iconClass}`;
193
+ },
194
+ svgClass() {
195
+ return this.className ? "svg-icon " + this.className : "svg-icon";
196
+ }
197
+ }
198
+ }, we = ["xlink:href"];
199
+ function xe(e, t, n, a, s, i) {
200
+ return c(), _("svg", {
201
+ class: x(i.svgClass),
202
+ "aria-hidden": "true"
203
+ }, [
204
+ k("use", { "xlink:href": i.iconName }, null, 8, we)
205
+ ], 2);
206
+ }
207
+ const Me = /* @__PURE__ */ w(Ce, [["render", xe], ["__scopeId", "data-v-4497e2cb"]]), Se = ["src"], ke = ["src"], Te = {
208
+ key: 8,
209
+ class: "amb-iconfont amb-icon-question"
210
+ }, Ae = {
211
+ name: "SuperIcon"
212
+ }, Ne = /* @__PURE__ */ j({
213
+ ...Ae,
214
+ props: {
215
+ // 值为:ElementUI、custom
216
+ iconType: {
217
+ type: String,
218
+ default: "custom"
219
+ },
220
+ iconValue: {
221
+ type: String,
222
+ required: !0,
223
+ default: ""
224
+ }
225
+ },
226
+ setup(e) {
227
+ const t = e;
228
+ G(
229
+ window.$vueApp.config.globalProperties.baseAPI + "/component/super-form/show-image?serverPath="
230
+ );
231
+ const n = G(
232
+ window.$vueApp.config.globalProperties.baseAPI + "/component/super-form/show-svg?svgName="
233
+ ), a = ue(() => typeof t.iconValue != "string" ? !1 : m(t.iconValue) !== t.iconValue);
234
+ return (s, i) => {
235
+ const o = m("el-icon");
236
+ return e.iconValue.indexOf("amb-icon-") === 0 ? (c(), _("i", {
237
+ key: 0,
238
+ class: x(["amb-iconfont", e.iconValue])
239
+ }, null, 2)) : e.iconValue.indexOf("amb-color-icon-") === 0 ? (c(), _("i", {
240
+ key: 1,
241
+ class: x(["amb-color-iconfont super-icon", e.iconValue])
242
+ }, null, 2)) : e.iconValue.indexOf("fa-") === 0 ? (c(), _("i", {
243
+ key: 2,
244
+ class: x("fa " + e.iconValue)
245
+ }, null, 2)) : e.iconValue.indexOf("fa ") === 0 ? (c(), _("i", {
246
+ key: 3,
247
+ class: x(e.iconValue)
248
+ }, null, 2)) : e.iconValue.indexOf("svg-img-") === 0 ? (c(), _("img", {
249
+ key: 4,
250
+ src: n.value + e.iconValue,
251
+ style: { width: "1em", height: "1em" }
252
+ }, null, 8, Se)) : e.iconValue.indexOf("svg-") === 0 ? (c(), p(Me, {
253
+ key: 5,
254
+ "icon-class": e.iconValue.substring(4)
255
+ }, null, 8, ["icon-class"])) : e.iconValue.indexOf("http") === 0 || e.iconValue.indexOf("//") === 0 || e.iconValue.indexOf("data:") === 0 ? (c(), _("img", {
256
+ key: 6,
257
+ src: e.iconValue,
258
+ style: { width: "1em", height: "1em" }
259
+ }, null, 8, ke)) : a.value ? (c(), p(o, { key: 7 }, {
260
+ default: g(() => [
261
+ (c(), p(ce(e.iconValue)))
262
+ ]),
263
+ _: 1
264
+ })) : (c(), _("i", Te));
265
+ };
266
+ }
267
+ });
268
+ const U = /* @__PURE__ */ w(Ne, [["__scopeId", "data-v-3e0c2f4b"]]);
269
+ U.install = function(e) {
270
+ e.component("SuperIcon", U);
271
+ };
272
+ const Ee = j({
273
+ name: "MenuItem",
274
+ functional: !0,
275
+ props: {
276
+ icon: {
277
+ type: String,
278
+ default: ""
279
+ },
280
+ title: {
281
+ type: String,
282
+ default: ""
283
+ },
284
+ hasChildren: {
285
+ type: Boolean,
286
+ default: !1
287
+ },
288
+ isRoot: {
289
+ type: Boolean,
290
+ default: !1
291
+ },
292
+ code: {
293
+ type: Boolean,
294
+ default: !1
295
+ },
296
+ undoneTaskCount: {
297
+ type: Number,
298
+ default: 0
299
+ },
300
+ unreadTaskCount: {
301
+ type: Number,
302
+ default: 0
303
+ },
304
+ undoneDeptTaskCount: {
305
+ type: Number,
306
+ default: 0
307
+ },
308
+ menuLayer: {
309
+ type: Number,
310
+ default: null
311
+ }
312
+ },
313
+ render(e) {
314
+ const { title: t, hasChildren: n, isRoot: a, code: s } = e, i = e.icon, o = e.menuLayer, l = [];
315
+ let u = [b("i", { class: "amb-iconfont amb-icon-meun_post" })];
316
+ i && (u = [b(U, { iconValue: i })]);
317
+ let d = ["smb-sidebar-menu-item-title"];
318
+ return !o || o <= 2 ? l.push(b("div", { class: ["smb-sidebar-menu-item-icon"] }, u)) : (l.push(b("div", { class: ["smb-sidebar-menu-item-no-icon"] })), d.push("smb-sidebar-menu-item-no-icon-title")), t && (a ? l.push(
319
+ b("div", { class: d }, [
320
+ b(
321
+ "div",
322
+ {
323
+ title: t
324
+ },
325
+ t
326
+ )
327
+ ])
328
+ ) : s === "undoneTask" ? l.push(
329
+ b("div", { class: d }, [
330
+ b(
331
+ "div",
332
+ {
333
+ title: t
334
+ },
335
+ [b(W, { value: this.undoneTaskCount, style: { display: "inline" } }, t)]
336
+ )
337
+ ])
338
+ ) : s === "unreadTask" ? l.push(
339
+ b("div", { class: d }, [
340
+ b(
341
+ "div",
342
+ {
343
+ title: t
344
+ },
345
+ [b(W, { value: this.unreadTaskCount, style: { display: "inline" } }, t)]
346
+ )
347
+ ])
348
+ ) : s === "undoneDeptTask" ? l.push(
349
+ b("div", { class: d }, [
350
+ b(
351
+ "div",
352
+ {
353
+ title: t
354
+ },
355
+ [b(W, { value: this.undoneDeptTaskCount, style: { display: "inline" } }, t)]
356
+ )
357
+ ])
358
+ ) : l.push(
359
+ b("div", { class: d }, [
360
+ b(
361
+ "div",
362
+ {
363
+ title: t
364
+ },
365
+ t
366
+ )
367
+ ])
368
+ )), l;
369
+ }
370
+ });
371
+ const Oe = /* @__PURE__ */ w(Ee, [["__scopeId", "data-v-02a4ded7"]]), Ie = {
372
+ props: {
373
+ to: {
374
+ type: Object,
375
+ required: !0
376
+ }
377
+ },
378
+ data() {
379
+ const e = this.to.isExternal, t = this.to.openWay;
380
+ let n = !1;
381
+ return t && t === "NEW_PAGE_OPEN" && (n = !0), {
382
+ isExter: e,
383
+ isOpenNewTab: n
384
+ };
385
+ }
386
+ }, Le = { key: 1 };
387
+ function Pe(e, t, n, a, s, i) {
388
+ const o = m("router-link");
389
+ return c(), _("div", null, [
390
+ s.isOpenNewTab ? (c(), _("div", Le, [
391
+ B(e.$slots, "default")
392
+ ])) : (c(), p(o, {
393
+ key: 0,
394
+ to: n.to
395
+ }, {
396
+ default: g(() => [
397
+ B(e.$slots, "default")
398
+ ]),
399
+ _: 3
400
+ }, 8, ["to"]))
401
+ ]);
402
+ }
403
+ const $e = /* @__PURE__ */ w(Ie, [["render", Pe]]);
404
+ function P(e) {
405
+ if (e) {
406
+ if (e.i18Names) {
407
+ const t = V(), n = JSON.parse(e.i18Names);
408
+ if (n[t])
409
+ return n[t];
410
+ }
411
+ return e.i18nValue ? e.i18nValue : e.name;
412
+ }
413
+ }
414
+ const Y = {
415
+ addTabs(e, t, n, a) {
416
+ let s = !1, i, o;
417
+ if (e && (i = e._menuCode, o = e._menuName), t && i)
418
+ for (let l = 0; l < t.length; l++) {
419
+ const u = t[l];
420
+ if (console.log("item.name", u.name), i && u.code === i) {
421
+ console.log("to.path--menuCode1=", i), this.$store.commit("set_active_index", i), s = !0;
422
+ break;
423
+ }
424
+ }
425
+ !s && i && (console.log("to.path--menuCode2=", i), this.$store.commit("add_tabs", {
426
+ code: i,
427
+ name: o,
428
+ routePath: n,
429
+ routeQuery: e,
430
+ fullpath: a
431
+ }), this.$store.commit("set_active_index", i));
432
+ }
433
+ };
434
+ const Re = {
435
+ name: "SidebarItem",
436
+ components: { Item: Oe, AppLink: $e },
437
+ props: {
438
+ // route object
439
+ item: {
440
+ type: Object,
441
+ required: !0
442
+ },
443
+ isNest: {
444
+ type: Boolean,
445
+ default: !1
446
+ },
447
+ basePath: {
448
+ type: String,
449
+ default: ""
450
+ }
451
+ },
452
+ data() {
453
+ let e = "_PLAT_FORM_FRONTEND_URL", t = "_devpJWT", n = "_CURRENT_ROLE", a = L.isDevpSystem(), s, i, o;
454
+ return a && (s = L.getSessionCache(e), i = L.getSessionCache(t), o = L.getSessionCache(n)), {
455
+ onlyOneChild: null,
456
+ platFrontUrl: s,
457
+ devpJWT: i,
458
+ currentRole: o,
459
+ devpJWTKey: t,
460
+ currentRoleKey: n,
461
+ frontendUrlKey: e,
462
+ isDevp: a,
463
+ hasLoad: !1,
464
+ undoneTaskCount: 0,
465
+ unreadTaskCount: 0,
466
+ undoneDeptTaskCount: 0
467
+ };
468
+ },
469
+ created() {
470
+ this.item.code === "myTask" ? window.$vueApp.config.globalProperties.$http.get(window.$vueApp.config.globalProperties.baseAPI + "/task/tasks/to-do-task-nums").then((e) => {
471
+ this.undoneTaskCount = e.undoneTaskCount, this.unreadTaskCount = e.unreadCount, this.undoneDeptTaskCount = e.undoneDeptTaskCount, this.hasLoad = !0;
472
+ }).finally(() => {
473
+ this.hasLoad = !0;
474
+ }) : this.hasLoad = !0;
475
+ },
476
+ methods: {
477
+ ...Y,
478
+ hasOneShowingChild(e, t) {
479
+ return e && e.length > 0 && (this.onlyOneChild = e[0]), e.length === 1 ? !0 : !e || e.length === 0 ? (this.onlyOneChild = { ...t, path: "", noShowingChildren: !0 }, !0) : !1;
480
+ },
481
+ toPath(e) {
482
+ const t = {};
483
+ let n;
484
+ if (t.openWay = e.openWay, this.isExternalLink(e.pageType))
485
+ n = e.path, n || (n = ""), n.indexOf("http:") < 0 && n.indexOf("https:") < 0 && this.platFrontUrl ? (this.platFrontUrl.lastIndexOf("/") === this.platFrontUrl.length - 1 && (this.platFrontUrl = this.platFrontUrl.substring(0, this.platFrontUrl.length - 1)), n = this.platFrontUrl + n) : (n = e.fullPath, n || (n = "")), n = this.getRoutePath(n), t.path = "/tab-content-index", this.isDevp && (t.path = "/devp-project/setting"), t.tabPath = n, t.query = {}, t.isExternal = !0, t.query.customSystem = z(), t.query._menuCode = e.code, t.query._menuName = P(e);
486
+ else if (e.openWay && e.openWay === "NEW_PAGE_OPEN") {
487
+ if (n = e.fullPath, n.indexOf("http:") < 0 && n.indexOf("https:") < 0) {
488
+ let a = se(window.$vueApp.config.globalProperties.frontUrl);
489
+ a.lastIndexOf("/") < a.length - 1 && (a = a + "/"), n = a + "#" + n;
490
+ }
491
+ t.query = {}, t.query._menuCode = e.code, t.path = n;
492
+ } else
493
+ n = e.fullPath, n || (n = ""), n.indexOf("?") > 0 ? n += "&" : n += "?", n = n + "_isNeedMenu_=false", t.path = "/tab-content-index", this.isDevp && (t.path = "/devp-project/setting"), t.tabPath = n, t.query = {}, t.query.customSystem = z(), t.query._menuCode = e.code, t.query._menuName = P(e);
494
+ return t;
495
+ },
496
+ getRoutePath(e) {
497
+ return e.indexOf("?") > 0 ? e += "&" : e += "?", e = e + "_isNeedMenu_=false", this.devpJWT && (e.indexOf("?") > 0 ? e += "&" : e += "?", e = e + this.devpJWTKey + "=" + this.devpJWT), this.currentRole && (e.indexOf("?") > 0 ? e += "&" : e += "?", e = e + this.currentRoleKey + "=" + this.currentRole), e;
498
+ },
499
+ isExternalLink(e) {
500
+ return !!(e && e === "iframe");
501
+ },
502
+ clickMenu(e) {
503
+ if (e.openWay && e.openWay === "NEW_PAGE_OPEN")
504
+ if (e.query && e.query.src) {
505
+ let t = e.query.src;
506
+ t && t.indexOf("?") > 0 ? t += "&" : t += "?", e.query.customSystem && (t += "customSystem=" + e.query.customSystem), e.query._menuCode && (t += "_menuCode=" + e.query._menuCode), e.query._menuCode && (t += "_menuName=" + e.query._menuName), window.open(t, e.query._menuCode);
507
+ } else {
508
+ const t = e.path;
509
+ window.open(t, e.query._menuCode);
510
+ }
511
+ else
512
+ this.addTabs(e.query, this.$store.state.tabContent.openTab, e.tabPath);
513
+ },
514
+ getI18nName(e) {
515
+ return P(e);
516
+ }
517
+ }
518
+ }, De = { class: "menu-wrapper" };
519
+ function Fe(e, t, n, a, s, i) {
520
+ const o = m("item"), l = m("el-menu-item"), u = m("app-link"), d = m("sidebar-item", !0), f = m("el-sub-menu");
521
+ return c(), _("div", De, [
522
+ !n.item.children || n.item.children.length === 0 ? (c(), p(u, {
523
+ key: 0,
524
+ to: i.toPath(n.item),
525
+ onClick: t[0] || (t[0] = (r) => i.clickMenu(i.toPath(n.item)))
526
+ }, {
527
+ default: g(() => [
528
+ v(l, {
529
+ index: n.item.code + "~~" + n.item.i18nValue,
530
+ class: x(["smb-sidebar-menu-item", { "submenu-title-noDropdown": !n.isNest }])
531
+ }, {
532
+ default: g(() => [
533
+ v(o, {
534
+ "menu-layer": n.item.layer,
535
+ icon: n.item.iconName,
536
+ title: i.getI18nName(n.item),
537
+ "is-root": !0
538
+ }, null, 8, ["menu-layer", "icon", "title"])
539
+ ]),
540
+ _: 1
541
+ }, 8, ["index", "class"])
542
+ ]),
543
+ _: 1
544
+ }, 8, ["to"])) : (c(), p(f, {
545
+ key: 1,
546
+ index: n.item.code + "~~" + n.item.i18nValue,
547
+ class: "smb-sidebar-menu-item"
548
+ }, {
549
+ title: g(() => [
550
+ v(o, {
551
+ "menu-layer": n.item.layer,
552
+ icon: n.item.iconName,
553
+ title: i.getI18nName(n.item),
554
+ "has-children": n.item.children.length > 0
555
+ }, null, 8, ["menu-layer", "icon", "title", "has-children"])
556
+ ]),
557
+ default: g(() => [
558
+ (c(!0), _(T, null, R(n.item.children, (r) => (c(), _(T, null, [
559
+ r.children && r.children.length > 0 ? (c(), p(d, {
560
+ key: r.code,
561
+ "is-nest": !0,
562
+ item: r,
563
+ class: "nest-menu smb-sidebar-menu-item"
564
+ }, null, 8, ["item"])) : s.hasLoad ? (c(), p(u, {
565
+ key: r.code + "_",
566
+ to: i.toPath(r),
567
+ onClick: (C) => i.clickMenu(i.toPath(r))
568
+ }, {
569
+ default: g(() => [
570
+ v(l, {
571
+ index: r.code + "~~" + r.i18nValue,
572
+ class: "smb-sidebar-menu-item"
573
+ }, {
574
+ default: g(() => [
575
+ v(o, {
576
+ "menu-layer": r.layer,
577
+ "undone-task-count": s.undoneTaskCount,
578
+ "unread-task-count": s.unreadTaskCount,
579
+ "undone-dept-task-count": s.undoneDeptTaskCount,
580
+ code: r.code,
581
+ icon: r.iconName,
582
+ title: i.getI18nName(r)
583
+ }, null, 8, ["menu-layer", "undone-task-count", "unread-task-count", "undone-dept-task-count", "code", "icon", "title"])
584
+ ]),
585
+ _: 2
586
+ }, 1032, ["index"])
587
+ ]),
588
+ _: 2
589
+ }, 1032, ["to", "onClick"])) : M("", !0)
590
+ ], 64))), 256))
591
+ ]),
592
+ _: 1
593
+ }, 8, ["index"]))
594
+ ]);
595
+ }
596
+ const Ve = /* @__PURE__ */ w(Re, [["render", Fe], ["__scopeId", "data-v-51ba31a3"]]), qe = {
597
+ name: "Menubar",
598
+ components: {
599
+ SidebarItem: Ve
600
+ },
601
+ props: {
602
+ systemCode: {
603
+ type: String,
604
+ default: null
605
+ },
606
+ collapse: {
607
+ type: Boolean,
608
+ default: !1
609
+ }
610
+ },
611
+ data() {
612
+ let e;
613
+ if (K() === !0) {
614
+ const s = V(), i = window.$vueApp.config.globalProperties.systemNameObj;
615
+ i && (e = i[s]);
616
+ }
617
+ const t = window.$vueApp.config.globalProperties.showFirstMenu === void 0 || window.$vueApp.config.globalProperties.showFirstMenu === null ? !0 : window.$vueApp.config.globalProperties.showFirstMenu;
618
+ let n = L.isDevpSystem();
619
+ const a = ae();
620
+ return {
621
+ firstLeafMenu: null,
622
+ // 第一个有权限的叶子菜单,用于默认展开第一个父菜单
623
+ systemName: e,
624
+ defaultActive: "",
625
+ menus: a,
626
+ isSelectFirst: t,
627
+ isDevp: n
628
+ // backlogTotal: 0
629
+ };
630
+ },
631
+ computed: {
632
+ ...J(["sidebar"]),
633
+ isCollapse() {
634
+ return this.collapse === !1 ? !this.sidebar.opened : !0;
635
+ }
636
+ },
637
+ watch: {
638
+ $route() {
639
+ this.firstLeafMenu = this.getFirstMenu(this.menus), this.firstLeafMenu && (this.defaultActive = this.firstLeafMenu.code + "~~" + this.firstLeafMenu.i18nValue, window.$vueApp.config.globalProperties._selectMenu = this.defaultActive);
640
+ }
641
+ },
642
+ created() {
643
+ if (this.firstLeafMenu = this.getFirstMenu(this.menus), console.log("ffff", this.firstLeafMenu), this.firstLeafMenu && (this.defaultActive = this.firstLeafMenu.code + "~~" + this.firstLeafMenu.i18nValue, window.$vueApp.config.globalProperties._selectMenu = this.defaultActive), console.log("getFirstMenu=====firstLeafMenu333=", this.firstLeafMenu), this.firstLeafMenu && this.firstLeafMenu.fullPath)
644
+ if (this.firstLeafMenu.pageType && this.firstLeafMenu.pageType === "iframe") {
645
+ const t = {
646
+ src: this.firstLeafMenu.fullPath,
647
+ customSystem: this.systemCode,
648
+ _menuCode: this.firstLeafMenu.code,
649
+ _menuName: P(this.firstLeafMenu)
650
+ };
651
+ this.addTabs(
652
+ t,
653
+ this.$store.state.tabContent.openTab,
654
+ "/iframe-page/page",
655
+ "/iframe-page/page"
656
+ );
657
+ let n = "/tab-content-iframe-index";
658
+ this.isDevp && (n = "/devp-project/setting"), this.$router.push({ path: n, query: t });
659
+ } else {
660
+ const e = {
661
+ customSystem: this.systemCode,
662
+ _menuCode: this.firstLeafMenu.code,
663
+ _menuName: P(this.firstLeafMenu)
664
+ }, t = this.firstLeafMenu.fullPath;
665
+ this.addTabs(e, this.$store.state.tabContent.openTab, t, t);
666
+ let n = "/tab-content-index";
667
+ this.isDevp && (n = "/devp-project/setting"), this.$router.push({ path: n, query: e });
668
+ }
669
+ },
670
+ methods: {
671
+ ...Y,
672
+ toggleSideBar() {
673
+ this.$store.dispatch("toggleSidebar");
674
+ },
675
+ selectMenu(e, t) {
676
+ window.$vueApp.config.globalProperties._selectMenu = e, $.set("selectMenu", e);
677
+ },
678
+ getFirstMenu(e) {
679
+ const t = this.$route.query ? this.$route.query._menuCode : null;
680
+ let n;
681
+ if (t ? this.isSelectFirst = !0 : this.isDevp || (n = this.getFirstMenuWithCookie(e)), console.log("getFirstMenu=====shouldSelectMenu111=", n), this.isSelectFirst && !n && e && e.length > 0)
682
+ for (let a = 0; a < e.length; a++) {
683
+ const s = e[a];
684
+ if (n = this.getShouldSelectMenu(s, t), n)
685
+ break;
686
+ }
687
+ return console.log("getFirstMenu=====shouldSelectMenu222=", n), n;
688
+ },
689
+ getShouldSelectMenu(e, t) {
690
+ if (e) {
691
+ let n;
692
+ if (t) {
693
+ const a = e.children;
694
+ a && a.length > 0 ? n = this.getFirstMenu(a) : e.code && e.code === t && (n = e);
695
+ } else {
696
+ const a = e.children;
697
+ a && a.length > 0 ? n = this.getFirstMenu(a) : n = e;
698
+ }
699
+ return n;
700
+ }
701
+ },
702
+ getFirstMenuWithCookie(e) {
703
+ if (e && e.length > 0) {
704
+ const t = $.get("selectMenu");
705
+ if (t) {
706
+ const a = t.split("~~")[0];
707
+ let s;
708
+ for (let i = 0; i < e.length; i++) {
709
+ const o = e[i];
710
+ if (s = this.getShouldSelectMenuWithCookie(
711
+ o,
712
+ a
713
+ ), s)
714
+ break;
715
+ }
716
+ return s;
717
+ }
718
+ }
719
+ },
720
+ getShouldSelectMenuWithCookie(e, t) {
721
+ if (e) {
722
+ let n;
723
+ const a = e.children;
724
+ return a && a.length > 0 ? n = this.getFirstMenuWithCookie(a) : e.code && e.code === t && (n = e), n;
725
+ }
726
+ }
727
+ }
728
+ };
729
+ function We(e, t, n, a, s, i) {
730
+ const o = m("el-menu-item"), l = m("sidebar-item"), u = m("el-menu"), d = m("el-scrollbar"), f = m("hamburger");
731
+ return c(), _("div", null, [
732
+ v(d, { "wrap-class": "scrollbar-wrapper" }, {
733
+ default: g(() => [
734
+ v(u, {
735
+ collapse: i.isCollapse,
736
+ "default-active": s.defaultActive ? s.defaultActive : "",
737
+ "show-timeout": 200,
738
+ mode: "vertical",
739
+ onSelect: i.selectMenu
740
+ }, {
741
+ default: g(() => [
742
+ s.systemName ? (c(), p(o, {
743
+ key: 0,
744
+ title: s.systemName,
745
+ class: "system-item smb-sidebar-menu-item",
746
+ disabled: "",
747
+ index: "1",
748
+ style: { "padding-left": "10px" }
749
+ }, {
750
+ default: g(() => [
751
+ de(F(s.systemName), 1)
752
+ ]),
753
+ _: 1
754
+ }, 8, ["title"])) : M("", !0),
755
+ (c(!0), _(T, null, R(s.menus, (r) => (c(), p(l, {
756
+ key: r.code,
757
+ item: r
758
+ }, null, 8, ["item"]))), 128))
759
+ ]),
760
+ _: 1
761
+ }, 8, ["collapse", "default-active", "onSelect"])
762
+ ]),
763
+ _: 1
764
+ }),
765
+ v(f, {
766
+ "is-active": e.sidebar.opened,
767
+ class: "hamburger-container",
768
+ onToggleClick: i.toggleSideBar
769
+ }, null, 8, ["is-active", "onToggleClick"])
770
+ ]);
771
+ }
772
+ const Be = /* @__PURE__ */ w(qe, [["render", We]]);
773
+ function Ue(e) {
774
+ for (var t = [], n = 0; n < e.length; ) {
775
+ var a = e[n];
776
+ if (a === "*" || a === "+" || a === "?") {
777
+ t.push({ type: "MODIFIER", index: n, value: e[n++] });
778
+ continue;
779
+ }
780
+ if (a === "\\") {
781
+ t.push({ type: "ESCAPED_CHAR", index: n++, value: e[n++] });
782
+ continue;
783
+ }
784
+ if (a === "{") {
785
+ t.push({ type: "OPEN", index: n, value: e[n++] });
786
+ continue;
787
+ }
788
+ if (a === "}") {
789
+ t.push({ type: "CLOSE", index: n, value: e[n++] });
790
+ continue;
791
+ }
792
+ if (a === ":") {
793
+ for (var s = "", i = n + 1; i < e.length; ) {
794
+ var o = e.charCodeAt(i);
795
+ if (
796
+ // `0-9`
797
+ o >= 48 && o <= 57 || // `A-Z`
798
+ o >= 65 && o <= 90 || // `a-z`
799
+ o >= 97 && o <= 122 || // `_`
800
+ o === 95
801
+ ) {
802
+ s += e[i++];
803
+ continue;
804
+ }
805
+ break;
806
+ }
807
+ if (!s)
808
+ throw new TypeError("Missing parameter name at ".concat(n));
809
+ t.push({ type: "NAME", index: n, value: s }), n = i;
810
+ continue;
811
+ }
812
+ if (a === "(") {
813
+ var l = 1, u = "", i = n + 1;
814
+ if (e[i] === "?")
815
+ throw new TypeError('Pattern cannot start with "?" at '.concat(i));
816
+ for (; i < e.length; ) {
817
+ if (e[i] === "\\") {
818
+ u += e[i++] + e[i++];
819
+ continue;
820
+ }
821
+ if (e[i] === ")") {
822
+ if (l--, l === 0) {
823
+ i++;
824
+ break;
825
+ }
826
+ } else if (e[i] === "(" && (l++, e[i + 1] !== "?"))
827
+ throw new TypeError("Capturing groups are not allowed at ".concat(i));
828
+ u += e[i++];
829
+ }
830
+ if (l)
831
+ throw new TypeError("Unbalanced pattern at ".concat(n));
832
+ if (!u)
833
+ throw new TypeError("Missing pattern at ".concat(n));
834
+ t.push({ type: "PATTERN", index: n, value: u }), n = i;
835
+ continue;
836
+ }
837
+ t.push({ type: "CHAR", index: n, value: e[n++] });
838
+ }
839
+ return t.push({ type: "END", index: n, value: "" }), t;
840
+ }
841
+ function Je(e, t) {
842
+ t === void 0 && (t = {});
843
+ for (var n = Ue(e), a = t.prefixes, s = a === void 0 ? "./" : a, i = "[^".concat(ze(t.delimiter || "/#?"), "]+?"), o = [], l = 0, u = 0, d = "", f = function(S) {
844
+ if (u < n.length && n[u].type === S)
845
+ return n[u++].value;
846
+ }, r = function(S) {
847
+ var O = f(S);
848
+ if (O !== void 0)
849
+ return O;
850
+ var Q = n[u], te = Q.type, ne = Q.index;
851
+ throw new TypeError("Unexpected ".concat(te, " at ").concat(ne, ", expected ").concat(S));
852
+ }, C = function() {
853
+ for (var S = "", O; O = f("CHAR") || f("ESCAPED_CHAR"); )
854
+ S += O;
855
+ return S;
856
+ }; u < n.length; ) {
857
+ var N = f("CHAR"), E = f("NAME"), A = f("PATTERN");
858
+ if (E || A) {
859
+ var y = N || "";
860
+ s.indexOf(y) === -1 && (d += y, y = ""), d && (o.push(d), d = ""), o.push({
861
+ name: E || l++,
862
+ prefix: y,
863
+ suffix: "",
864
+ pattern: A || i,
865
+ modifier: f("MODIFIER") || ""
866
+ });
867
+ continue;
868
+ }
869
+ var D = N || f("ESCAPED_CHAR");
870
+ if (D) {
871
+ d += D;
872
+ continue;
873
+ }
874
+ d && (o.push(d), d = "");
875
+ var Z = f("OPEN");
876
+ if (Z) {
877
+ var y = C(), H = f("NAME") || "", q = f("PATTERN") || "", ee = C();
878
+ r("CLOSE"), o.push({
879
+ name: H || (q ? l++ : ""),
880
+ pattern: H && !q ? i : q,
881
+ prefix: y,
882
+ suffix: ee,
883
+ modifier: f("MODIFIER") || ""
884
+ });
885
+ continue;
886
+ }
887
+ r("END");
888
+ }
889
+ return o;
890
+ }
891
+ function He(e, t) {
892
+ return Qe(Je(e, t), t);
893
+ }
894
+ function Qe(e, t) {
895
+ t === void 0 && (t = {});
896
+ var n = Ge(t), a = t.encode, s = a === void 0 ? function(u) {
897
+ return u;
898
+ } : a, i = t.validate, o = i === void 0 ? !0 : i, l = e.map(function(u) {
899
+ if (typeof u == "object")
900
+ return new RegExp("^(?:".concat(u.pattern, ")$"), n);
901
+ });
902
+ return function(u) {
903
+ for (var d = "", f = 0; f < e.length; f++) {
904
+ var r = e[f];
905
+ if (typeof r == "string") {
906
+ d += r;
907
+ continue;
908
+ }
909
+ var C = u ? u[r.name] : void 0, N = r.modifier === "?" || r.modifier === "*", E = r.modifier === "*" || r.modifier === "+";
910
+ if (Array.isArray(C)) {
911
+ if (!E)
912
+ throw new TypeError('Expected "'.concat(r.name, '" to not repeat, but got an array'));
913
+ if (C.length === 0) {
914
+ if (N)
915
+ continue;
916
+ throw new TypeError('Expected "'.concat(r.name, '" to not be empty'));
917
+ }
918
+ for (var A = 0; A < C.length; A++) {
919
+ var y = s(C[A], r);
920
+ if (o && !l[f].test(y))
921
+ throw new TypeError('Expected all "'.concat(r.name, '" to match "').concat(r.pattern, '", but got "').concat(y, '"'));
922
+ d += r.prefix + y + r.suffix;
923
+ }
924
+ continue;
925
+ }
926
+ if (typeof C == "string" || typeof C == "number") {
927
+ var y = s(String(C), r);
928
+ if (o && !l[f].test(y))
929
+ throw new TypeError('Expected "'.concat(r.name, '" to match "').concat(r.pattern, '", but got "').concat(y, '"'));
930
+ d += r.prefix + y + r.suffix;
931
+ continue;
932
+ }
933
+ if (!N) {
934
+ var D = E ? "an array" : "a string";
935
+ throw new TypeError('Expected "'.concat(r.name, '" to be ').concat(D));
936
+ }
937
+ }
938
+ return d;
939
+ };
940
+ }
941
+ function ze(e) {
942
+ return e.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1");
943
+ }
944
+ function Ge(e) {
945
+ return e && e.sensitive ? "" : "i";
946
+ }
947
+ const Ke = {
948
+ name: "Breadcrumb",
949
+ data() {
950
+ return {
951
+ levelList: null
952
+ };
953
+ },
954
+ computed: {
955
+ levelListWithTitle() {
956
+ return this.levelList.filter(
957
+ (e) => e.meta.title !== void 0 && e.meta.title !== null
958
+ );
959
+ }
960
+ },
961
+ watch: {
962
+ $route() {
963
+ this.getBreadcrumb();
964
+ }
965
+ },
966
+ created() {
967
+ this.getBreadcrumb();
968
+ },
969
+ methods: {
970
+ getBreadcrumb() {
971
+ const { params: e } = this.$route;
972
+ console.log("this.$route.matched==", this.$route.matched);
973
+ let t = this.$route.matched.filter((n) => {
974
+ if (n.name) {
975
+ var a = He(n.path);
976
+ return n.path = a(e), !0;
977
+ }
978
+ });
979
+ if (t) {
980
+ let n;
981
+ const a = V(), s = window.$vueApp.config.globalProperties.systemNameObj;
982
+ s && (n = s[a]), t = [
983
+ { path: "/", redirect: "noredirect", meta: { title: n } }
984
+ ].concat(t);
985
+ const i = $.get("selectMenu"), o = window.$vueApp.config.globalProperties._selectMenu;
986
+ let l;
987
+ if (o ? l = o : i && (l = i), l) {
988
+ const u = l.substring(0, l.indexOf("~~")), d = l.substring(l.indexOf("~~") + 2);
989
+ if (t && t.length > 0) {
990
+ const f = t[t.length - 1];
991
+ this.isShouldConcatLastMenu(d, u, f) && t.push({ path: u, meta: { title: d } });
992
+ } else
993
+ t.push({ path: u, meta: { title: d } });
994
+ }
995
+ }
996
+ this.levelList = t;
997
+ },
998
+ // 新建页面时会把列表页面路由刷没,导致菜单路径缺少最后一层菜单问题
999
+ isShouldConcatLastMenu(e, t, n) {
1000
+ return !!(this.isTitleNotEqual(e, n) && this.isPathNotEqual(t, n));
1001
+ },
1002
+ /**
1003
+ * window.$vueApp.config.globalProperties._selectMenu的菜单标题是否与最后的路由页面标题一致
1004
+ * 返回true表示不一样,返回false表示一样
1005
+ */
1006
+ isTitleNotEqual(e, t) {
1007
+ return !!(e && t.meta && e !== t.meta.title && e !== this.$t(t.meta.title));
1008
+ },
1009
+ /**
1010
+ * window.$vueApp.config.globalProperties._selectMenu的菜单的访问路径是否与最后的路由页面的路径一致
1011
+ * 返回true表示不一样,返回false表示一样
1012
+ */
1013
+ isPathNotEqual(e, t) {
1014
+ return !!(e && t.path && e !== t.path);
1015
+ }
1016
+ }
1017
+ }, je = { class: "no-redirect" };
1018
+ function Xe(e, t, n, a, s, i) {
1019
+ const o = m("el-breadcrumb-item"), l = m("el-breadcrumb");
1020
+ return c(), p(l, {
1021
+ class: "app-breadcrumb",
1022
+ separator: ">"
1023
+ }, {
1024
+ default: g(() => [
1025
+ v(fe, {
1026
+ name: "breadcrumb",
1027
+ tag: "span"
1028
+ }, {
1029
+ default: g(() => [
1030
+ (c(!0), _(T, null, R(i.levelListWithTitle, (u, d) => (c(), p(o, {
1031
+ key: u.path + "-" + d
1032
+ }, {
1033
+ default: g(() => [
1034
+ k("span", je, F(e.$t(u.meta.title)), 1)
1035
+ ]),
1036
+ _: 2
1037
+ }, 1024))), 128))
1038
+ ]),
1039
+ _: 1
1040
+ })
1041
+ ]),
1042
+ _: 1
1043
+ });
1044
+ }
1045
+ const Ye = /* @__PURE__ */ w(Ke, [["render", Xe], ["__scopeId", "data-v-7ae796e7"]]), { body: Ze } = document, et = 1024, tt = 3, nt = {
1046
+ watch: {
1047
+ $route(e) {
1048
+ this.device === "mobile" && this.sidebar.opened && I.dispatch("closeSidebar", { withoutAnimation: !1 });
1049
+ }
1050
+ },
1051
+ beforeMount() {
1052
+ window.addEventListener("resize", this.resizeHandler);
1053
+ },
1054
+ mounted() {
1055
+ this.isMobile() && (I.dispatch("toggelDevice", "mobile"), I.dispatch("closeSidebar", { withoutAnimation: !0 }));
1056
+ },
1057
+ methods: {
1058
+ isMobile() {
1059
+ return Ze.getBoundingClientRect().width - tt < et;
1060
+ },
1061
+ resizeHandler() {
1062
+ if (!document.hidden) {
1063
+ const e = this.isMobile();
1064
+ I.dispatch("toggelDevice", e ? "mobile" : "desktop"), e && I.dispatch("closeSidebar", { withoutAnimation: !0 });
1065
+ }
1066
+ }
1067
+ }
1068
+ };
1069
+ const it = {
1070
+ name: "TabContent",
1071
+ data() {
1072
+ let e = window.$vueApp.config.globalProperties.defaultPageTip;
1073
+ e || (e = "欢迎访问Agile Builder/Welcome to Agile Builder");
1074
+ let t = e, n;
1075
+ return e && e.indexOf("/") > 0 && (t = e.substring(
1076
+ 0,
1077
+ e.lastIndexOf("/")
1078
+ ), n = e.substring(
1079
+ e.lastIndexOf("/") + 1
1080
+ )), {
1081
+ defaultPageTipCn: t,
1082
+ defaultPageTipEn: n
1083
+ };
1084
+ },
1085
+ computed: {
1086
+ ...J(["openTab"]),
1087
+ activeIndex: {
1088
+ get() {
1089
+ return this.$store.state.tabContent.activeIndex;
1090
+ },
1091
+ set(e) {
1092
+ this.$store.commit("set_active_index", e);
1093
+ }
1094
+ }
1095
+ },
1096
+ created() {
1097
+ window.addEventListener("message", this.recieveMessage);
1098
+ },
1099
+ mounted() {
1100
+ },
1101
+ unmounted() {
1102
+ window.removeEventListener("message", this.recieveMessage);
1103
+ },
1104
+ methods: {
1105
+ closeSelectedTag(e) {
1106
+ const t = this.$store.state.tabContent.openTab.findIndex(
1107
+ (a) => a.code === e
1108
+ ), n = this.$store.state.tabContent.openTab[t];
1109
+ this.$store.commit("delete_tabs", n), e === this.activeIndex && this.toLastView(
1110
+ this.$store.state.tabContent.openTab,
1111
+ t > 0 ? t - 1 : 0
1112
+ );
1113
+ },
1114
+ toLastView(e, t) {
1115
+ if (e && e.length > 0 && e.length > t) {
1116
+ const n = e[t];
1117
+ n && this.$store.commit("set_active_index", n.code);
1118
+ }
1119
+ },
1120
+ getFullPath(e) {
1121
+ let t = "";
1122
+ if (e.routePath === "/iframe-page/page") {
1123
+ let n, a = "";
1124
+ if (e.routeQuery)
1125
+ for (const s in e.routeQuery)
1126
+ s === "src" ? n = e.routeQuery[s] : a += s + "=" + e.routeQuery[s] + "&";
1127
+ n && (t = n), a && (t += "?" + a);
1128
+ } else if (e.routePath.indexOf("http:") < 0 && e.routePath.indexOf("https:") < 0 && (t = "#"), e.routePath.indexOf("?") >= 0 ? t = t + e.routePath + "&" : t = t + e.routePath + "?", e.routeQuery)
1129
+ for (const n in e.routeQuery)
1130
+ t += n + "=" + e.routeQuery[n] + "&";
1131
+ return t && t.length > 0 && t.lastIndexOf("&") === t.length - 1 && (t = t.substring(0, t.lastIndexOf("&"))), t;
1132
+ },
1133
+ recieveMessage(e) {
1134
+ if (e && typeof e.data == "string" && e.data === "refreshTabContent")
1135
+ window.location.reload();
1136
+ else if (e && typeof e.data == "string" && e.data.indexOf("loginTimeout") >= 0) {
1137
+ console.log(
1138
+ "tab-content-接收到登录超时的信息---event.data=",
1139
+ e.data
1140
+ );
1141
+ try {
1142
+ const t = JSON.parse(e.data);
1143
+ t.isInTab = "true", window.parent.postMessage(JSON.stringify(t), "*");
1144
+ } catch {
1145
+ console.error("平台 tab-content.vue中登录超时,json转换失败,event.data=", e.data);
1146
+ }
1147
+ } else if (e && typeof e.data == "string" && e.data === "return-to-system-list") {
1148
+ this.$store.commit("clear_tabs");
1149
+ let t = "_IS_APP_LIST";
1150
+ const n = window.sessionStorage.getItem(t);
1151
+ n !== void 0 && n === "true" ? this.$router.push({ path: "/mms/apps/list" }) : this.$router.push({ path: "/mms/systems/list" });
1152
+ }
1153
+ }
1154
+ }
1155
+ }, st = ["src"], at = {
1156
+ key: 1,
1157
+ class: "default-page-tip"
1158
+ }, ot = { class: "default-page-tip-msg" }, rt = { class: "default-page-tip-item" }, lt = { class: "default-page-tip-item" };
1159
+ function ut(e, t, n, a, s, i) {
1160
+ const o = m("el-tab-pane"), l = m("el-tabs");
1161
+ return e.openTab && e.openTab.length > 0 ? (c(), p(l, {
1162
+ key: 0,
1163
+ modelValue: i.activeIndex,
1164
+ "onUpdate:modelValue": t[0] || (t[0] = (u) => i.activeIndex = u),
1165
+ class: "nav-tab menu-tab-container",
1166
+ closable: "",
1167
+ onTabRemove: i.closeSelectedTag
1168
+ }, {
1169
+ default: g(() => [
1170
+ (c(!0), _(T, null, R(e.openTab, (u) => (c(), p(o, {
1171
+ key: u.code,
1172
+ label: u.name,
1173
+ name: u.code
1174
+ }, {
1175
+ default: g(() => [
1176
+ k("iframe", {
1177
+ ref_for: !0,
1178
+ ref: "tabMainContent",
1179
+ src: i.getFullPath(u),
1180
+ class: "tab-main-content",
1181
+ name: "tab-main-content",
1182
+ frameborder: "0"
1183
+ }, null, 8, st)
1184
+ ]),
1185
+ _: 2
1186
+ }, 1032, ["label", "name"]))), 128))
1187
+ ]),
1188
+ _: 1
1189
+ }, 8, ["modelValue", "onTabRemove"])) : (c(), _("div", at, [
1190
+ k("div", ot, [
1191
+ k("div", rt, F(s.defaultPageTipCn), 1),
1192
+ k("div", lt, F(s.defaultPageTipEn), 1)
1193
+ ])
1194
+ ]));
1195
+ }
1196
+ const ct = /* @__PURE__ */ w(it, [["render", ut], ["__scopeId", "data-v-f22ed8ae"]]);
1197
+ const dt = {
1198
+ name: "Layout",
1199
+ components: {
1200
+ Menubar: Be,
1201
+ Breadcrumb: Ye,
1202
+ TabContent: ct
1203
+ },
1204
+ mixins: [nt],
1205
+ data() {
1206
+ return {
1207
+ showMenuRoute: oe(),
1208
+ systemCode: null
1209
+ };
1210
+ },
1211
+ computed: {
1212
+ sidebar() {
1213
+ return this.$store.state.app.sidebar;
1214
+ },
1215
+ device() {
1216
+ return this.$store.state.app.device;
1217
+ },
1218
+ classObj() {
1219
+ return {
1220
+ hideSidebar: !this.sidebar.opened,
1221
+ openSidebar: this.sidebar.opened,
1222
+ withoutAnimation: this.sidebar.withoutAnimation,
1223
+ mobile: this.device === "mobile"
1224
+ };
1225
+ }
1226
+ },
1227
+ created() {
1228
+ this.systemCode = window.$vueApp.config.globalProperties.customSystem, console.log("新菜单组件-----systemCode====", this.systemCode);
1229
+ },
1230
+ methods: {
1231
+ handleClickOutside() {
1232
+ this.$store.dispatch("closeSidebar", { withoutAnimation: !1 });
1233
+ }
1234
+ }
1235
+ }, ft = { class: "main-container" };
1236
+ function mt(e, t, n, a, s, i) {
1237
+ const o = m("menubar"), l = m("breadcrumb"), u = m("tab-content");
1238
+ return c(), _("div", {
1239
+ class: x([i.classObj, "app-wrapper"])
1240
+ }, [
1241
+ i.device === "mobile" && i.sidebar.opened ? (c(), _("div", {
1242
+ key: 0,
1243
+ class: "drawer-bg",
1244
+ onClick: t[0] || (t[0] = (...d) => i.handleClickOutside && i.handleClickOutside(...d))
1245
+ })) : M("", !0),
1246
+ v(o, {
1247
+ "system-code": s.systemCode,
1248
+ collapse: !0,
1249
+ class: "sidebar-container"
1250
+ }, null, 8, ["system-code"]),
1251
+ k("div", ft, [
1252
+ s.showMenuRoute ? (c(), p(l, { key: 0 })) : M("", !0),
1253
+ v(u)
1254
+ ])
1255
+ ], 2);
1256
+ }
1257
+ const _t = /* @__PURE__ */ w(dt, [["render", mt], ["__scopeId", "data-v-11180c5c"]]);
1258
+ export {
1259
+ _t as default
1260
+ };