@ximatai/muyun-web-app 0.26.21 → 0.26.23
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/{BusinessActivityLogView-6L75GZVc.js → BusinessActivityLogView-IWGZiPLo.js} +2 -2
- package/dist/{BusinessLogListDrawer-C4iFnkE7.js → BusinessLogListDrawer-UCsg6psI.js} +85 -85
- package/dist/{CodeConfigurationView-D7sqbNCg.js → CodeConfigurationView-Calkazua.js} +532 -532
- package/dist/{ConfigurationTranslationView-ta82REbn.js → ConfigurationTranslationView-fZrlRAMy.js} +24 -24
- package/dist/{LoginAuditLogView-B_RQ9JIX.js → LoginAuditLogView-B6J7t__0.js} +2 -2
- package/dist/ModuleActionManagementView-BZ89Woex.js +755 -0
- package/dist/{ModuleGovernanceView-Cl6tkZ6M.js → ModuleGovernanceView-D8ONs78K.js} +1892 -1892
- package/dist/{RequestErrorLogView-BJDO3Scn.js → RequestErrorLogView-poMgx4_6.js} +2 -2
- package/dist/RoleDetailWorkspaceView-6Bs1eKbm.js +1435 -0
- package/dist/{RuntimeLogView-jP9ceuJD.js → RuntimeLogView-Co-Z86bt.js} +41 -41
- package/dist/WorkflowAdministrationView-D7QpRHDp.js +650 -0
- package/dist/{WorkflowConfigurationView-Dh6BKQm5.js → WorkflowConfigurationView-mSyL_-We.js} +32 -32
- package/dist/{WorkflowWorkbenchView-BvPNKbuV.js → WorkflowWorkbenchView-DBMh3ycN.js} +224 -224
- package/dist/{codeConfiguration-DhCBKbkc.js → codeConfiguration-D1zrxzoW.js} +44 -44
- package/dist/index.css +1 -1
- package/dist/index.js +524 -550
- package/dist/moduleMenuWorkspace-lIVrTaOB.js +626 -0
- package/dist/{platform-components-i2ONyZ8r.js → platform-components-D0T03KGl.js} +2815 -2913
- package/dist/{platform-workbench-DhaREttd.js → platform-workbench-CobObbuz.js} +2770 -2745
- package/dist/record-read.js +2 -0
- package/dist/recordReadEntry-CxDHM44F.js +152 -0
- package/dist/types/consumer/recordRead.d.ts +6 -0
- package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +4 -0
- package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +8 -0
- package/dist/types/dynamic-page-runtime/ModulePageRecordContent.vue.d.ts +2 -0
- package/dist/types/dynamic-page-runtime/ModuleRecordDetailActions.vue.d.ts +2 -0
- package/dist/types/dynamic-page-runtime/RecordFormSurface.vue.d.ts +2 -0
- package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +2 -0
- package/dist/types/platform-components/RecordFormFields.vue.d.ts +10 -8
- package/dist/types/platform-components/useBusinessCodeForm.d.ts +1 -0
- package/dist/types/platform-workbench/useAssistantConversation.d.ts +3 -0
- package/dist/types/web-contracts/operation.d.ts +2 -0
- package/dist/{useWorkflowConfigurationContext-B_NxZFyz.js → useWorkflowConfigurationContext-BkcNPU2H.js} +8 -8
- package/dist/{workspaceViews-MTwNg_aQ.js → workspaceViews-BtqO8rU0.js} +355 -355
- package/package.json +5 -1
- package/dist/ModuleActionManagementView-DtGF3NC_.js +0 -755
- package/dist/RoleDetailWorkspaceView-C0Ab3PEp.js +0 -1435
- package/dist/WorkflowAdministrationView-BmNJQYtq.js +0 -650
- package/dist/moduleMenuWorkspace-BbVmNKZn.js +0 -626
|
@@ -0,0 +1,626 @@
|
|
|
1
|
+
import { ht as e, m as t, vt as n, xt as r } from "./platform-workbench-CobObbuz.js";
|
|
2
|
+
import { $a as i, Ca as a, Ea as o, Ka as s, Pa as c, Qn as l, Zr as u, ba as d, da as f, fa as p, fr as m, or as h, pi as g, rr as _, sa as v, ua as y, ur as b } from "./platform-components-D0T03KGl.js";
|
|
3
|
+
import { Fragment as x, computed as S, createBlock as C, createCommentVNode as w, createElementBlock as T, createElementVNode as E, createTextVNode as D, createVNode as O, defineComponent as k, inject as A, nextTick as j, openBlock as M, ref as N, shallowRef as P, toDisplayString as F, unref as I, watch as L, withCtx as R } from "vue";
|
|
4
|
+
//#region src/platform-admin-runtime/module-menu/moduleMenuClient.ts
|
|
5
|
+
function z(e) {
|
|
6
|
+
let t = u(e, { moduleAlias: "platform.menu_scheme" });
|
|
7
|
+
return {
|
|
8
|
+
async schemes() {
|
|
9
|
+
let e = [];
|
|
10
|
+
for (let n = 1;; n++) {
|
|
11
|
+
let r = await t.query({ page: {
|
|
12
|
+
pageNum: n,
|
|
13
|
+
pageSize: 100
|
|
14
|
+
} });
|
|
15
|
+
if (e.push(...r.records), e.length >= r.total || r.records.length === 0) return e;
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
async tree(t) {
|
|
19
|
+
return (await e.request({
|
|
20
|
+
method: "POST",
|
|
21
|
+
path: "/platform.menu/tree/query",
|
|
22
|
+
headers: { "X-MuYun-Page-Context": JSON.stringify({ scheme: t }) },
|
|
23
|
+
body: { externalQueryValues: { schemeId: t } }
|
|
24
|
+
})).records;
|
|
25
|
+
},
|
|
26
|
+
context(t) {
|
|
27
|
+
return e.request({ path: `/platform.module/${encodeURIComponent(t)}/context` });
|
|
28
|
+
},
|
|
29
|
+
insert(t, n, r) {
|
|
30
|
+
return u(i(e, { "X-MuYun-Page-Context": JSON.stringify({ scheme: t }) }), { moduleAlias: "platform.menu" }).insert(n, { requestId: r });
|
|
31
|
+
},
|
|
32
|
+
view(t, n) {
|
|
33
|
+
return u(i(e, { "X-MuYun-Page-Context": JSON.stringify({ scheme: t }) }), { moduleAlias: "platform.menu" }).view(n);
|
|
34
|
+
},
|
|
35
|
+
receipt(t, n) {
|
|
36
|
+
return u(i(e, { "X-MuYun-Page-Context": JSON.stringify({ scheme: t }) }), { moduleAlias: "platform.menu" }).saveReceipt(n);
|
|
37
|
+
},
|
|
38
|
+
visible: () => r(e).mine().then((e) => e.records)
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function B(e, t = s) {
|
|
42
|
+
return e ? e.scopeType === "system" ? t.t("platform.screen.moduleMenuClient.system-configuration-users", "系统配置用户") : e.organizationId ? t.t("platform.screen.moduleMenuClient.users-in-organization-value", "机构 {value1} 的用户", { value1: e.organizationId }) : e.tenantId ? t.t("platform.screen.moduleMenuClient.users-in-tenant-value", "租户 {value1} 的用户", { value1: e.tenantId }) : t.t("platform.screen.moduleMenuClient.audience-not-declared", "尚未声明适用范围") : t.t("platform.screen.moduleMenuClient.not-yet-determined", "尚未确定");
|
|
43
|
+
}
|
|
44
|
+
function V(e, t = "", n = s) {
|
|
45
|
+
return e.flatMap(({ record: e, children: r }) => {
|
|
46
|
+
let i = c(e, "title", n) ?? e.title, a = t ? `${t} / ${i}` : i;
|
|
47
|
+
return [{
|
|
48
|
+
menu: e,
|
|
49
|
+
path: a
|
|
50
|
+
}, ...V(r, a, n)];
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function ee(e, t = !1, n = s) {
|
|
54
|
+
return e.map(({ record: e, children: r }) => {
|
|
55
|
+
let i = t || e.enabled === !1;
|
|
56
|
+
return {
|
|
57
|
+
value: e.id,
|
|
58
|
+
title: c(e, "title", n) ?? e.title,
|
|
59
|
+
disabled: i || !!e.moduleAlias,
|
|
60
|
+
children: ee(r, i, n)
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
//#endregion
|
|
65
|
+
//#region src/platform-admin-runtime/module-menu/ModuleMenuEditor.vue?vue&type=script&setup=true&lang.ts
|
|
66
|
+
var H = { class: "module-menu-form" }, U = { key: 0 }, W = {
|
|
67
|
+
key: 1,
|
|
68
|
+
class: "hint"
|
|
69
|
+
}, G = { class: "hint" }, K = {
|
|
70
|
+
key: 2,
|
|
71
|
+
role: "status"
|
|
72
|
+
}, te = { class: "hint" }, q = {
|
|
73
|
+
key: 1,
|
|
74
|
+
class: "hint"
|
|
75
|
+
}, J = {
|
|
76
|
+
key: 2,
|
|
77
|
+
role: "status"
|
|
78
|
+
}, Y = {
|
|
79
|
+
key: 3,
|
|
80
|
+
role: "status"
|
|
81
|
+
}, ne = {
|
|
82
|
+
key: 5,
|
|
83
|
+
role: "alert"
|
|
84
|
+
}, X = /*#__PURE__*/ m(/* @__PURE__ */ k({
|
|
85
|
+
__name: "ModuleMenuEditor",
|
|
86
|
+
props: {
|
|
87
|
+
session: {},
|
|
88
|
+
showSave: { type: Boolean }
|
|
89
|
+
},
|
|
90
|
+
emits: ["saved", "opened"],
|
|
91
|
+
setup(e, { expose: n, emit: r }) {
|
|
92
|
+
let i = e, a = r, o = i.session, s = o.language, u = t();
|
|
93
|
+
async function d() {
|
|
94
|
+
try {
|
|
95
|
+
await o.startAnother();
|
|
96
|
+
} catch (e) {
|
|
97
|
+
o.reportFailure(e instanceof Error ? e : f(s, "platform.screen.ModuleMenuEditor.cannot-start-a-new-entry-right-now", "暂时无法开始新入口"));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
let p = S(() => o.loading.value || o.saving.value || o.resultUnknown.value || !o.authorized.value), m = S(() => p.value || o.updating.value), g = S(() => o.options.value.map((e) => ({
|
|
101
|
+
value: e.id,
|
|
102
|
+
label: `${c(e, "title", s) ?? e.alias ?? e.id} · ${B(e, s)}`
|
|
103
|
+
}))), v = S(() => [{
|
|
104
|
+
value: "root",
|
|
105
|
+
title: s.t("platform.screen.moduleMenuWorkspace.top-level", "顶层"),
|
|
106
|
+
children: ee(o.tree.value, !1, s)
|
|
107
|
+
}]);
|
|
108
|
+
async function y() {
|
|
109
|
+
try {
|
|
110
|
+
await (await o.prepare()).execute(), a("saved");
|
|
111
|
+
} catch (e) {
|
|
112
|
+
o.resultUnknown.value || o.reportFailure(e instanceof Error ? e : f(s, "platform.screen.ModuleMenuEditor.cannot-add-the-entry-right-now", "暂时无法添加入口"));
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
async function k() {
|
|
116
|
+
try {
|
|
117
|
+
await o.lookupPending() && a("saved");
|
|
118
|
+
} catch {
|
|
119
|
+
o.reportFailure(f(s, "platform.screen.ModuleMenuEditor.the-result-cannot-be-verified-right-now-retry-the-lookup", "结果暂时无法核实,请重试查询,勿重复添加。"));
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
async function A() {
|
|
123
|
+
await o.refreshVisibility(), o.visibleMenu.value && u?.openMenu && (u.openMenu(o.visibleMenu.value), a("opened"));
|
|
124
|
+
}
|
|
125
|
+
return n({ save: y }), (t, n) => (M(), T("div", H, [
|
|
126
|
+
I(o).saved.value ? (M(), T(x, { key: 1 }, [
|
|
127
|
+
E("strong", null, F(I(s).t("platform.screen.ModuleMenuEditor.added-to-menu", "已添加到菜单")), 1),
|
|
128
|
+
E("p", null, F(I(o).savedPath.value), 1),
|
|
129
|
+
E("p", te, F(I(s).t("platform.screen.ModuleMenuEditor.audience", "适用范围:")) + F(I(o).savedAudience.value), 1),
|
|
130
|
+
I(o).visibleMenu.value && I(u)?.openMenu ? (M(), C(I(b), {
|
|
131
|
+
key: 0,
|
|
132
|
+
type: "primary",
|
|
133
|
+
onClick: A
|
|
134
|
+
}, {
|
|
135
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEntriesSection.open", "打开")), 1)]),
|
|
136
|
+
_: 1
|
|
137
|
+
})) : I(o).visibilityChecked.value ? (M(), T("p", q, F(I(s).t("platform.screen.ModuleMenuEditor.the-entry-was-saved-but-is-not-visible-in-navigation", "入口已保存,当前登录身份的导航暂不可见。请由适用范围内的使用者核实;若其也看不到,再检查上级菜单状态和业务访问权限。")), 1)) : w("v-if", !0),
|
|
138
|
+
O(I(b), {
|
|
139
|
+
disabled: I(o).saving.value,
|
|
140
|
+
onClick: d
|
|
141
|
+
}, {
|
|
142
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEditor.add-another-entry", "另加一个入口")), 1)]),
|
|
143
|
+
_: 1
|
|
144
|
+
}, 8, ["disabled"]),
|
|
145
|
+
I(o).error.value ? (M(), C(I(b), {
|
|
146
|
+
key: 2,
|
|
147
|
+
disabled: I(o).saving.value,
|
|
148
|
+
onClick: I(o).refreshVisibility
|
|
149
|
+
}, {
|
|
150
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEditor.refresh-navigation", "刷新导航")), 1)]),
|
|
151
|
+
_: 1
|
|
152
|
+
}, 8, ["disabled", "onClick"])) : w("v-if", !0)
|
|
153
|
+
], 64)) : (M(), T(x, { key: 0 }, [
|
|
154
|
+
E("label", null, [D(F(I(s).t("platform.screen.ModuleMenuEditor.menu-name", "菜单名称")), 1), O(I(_), {
|
|
155
|
+
value: I(o).title.value,
|
|
156
|
+
disabled: m.value,
|
|
157
|
+
"aria-label": I(s).t("platform.screen.ModuleMenuEditor.menu-name", "菜单名称"),
|
|
158
|
+
"onUpdate:value": n[0] ||= (e) => I(o).update({ title: String(e ?? "") })
|
|
159
|
+
}, null, 8, [
|
|
160
|
+
"value",
|
|
161
|
+
"disabled",
|
|
162
|
+
"aria-label"
|
|
163
|
+
])]),
|
|
164
|
+
g.value.length > 1 ? (M(), T("label", U, [D(F(I(s).t("platform.screen.ModuleMenuEditor.menu-scheme", "菜单方案")), 1), O(I(h), {
|
|
165
|
+
value: I(o).schemeId.value,
|
|
166
|
+
options: g.value,
|
|
167
|
+
"allow-clear": !1,
|
|
168
|
+
disabled: p.value,
|
|
169
|
+
"onUpdate:value": n[1] ||= (e) => I(o).update({ schemeId: String(e ?? "") })
|
|
170
|
+
}, null, 8, [
|
|
171
|
+
"value",
|
|
172
|
+
"options",
|
|
173
|
+
"disabled"
|
|
174
|
+
])])) : w("v-if", !0),
|
|
175
|
+
E("label", null, [D(F(I(s).t("platform.screen.ModuleMenuEditor.position", "放置位置")), 1), O(I(l), {
|
|
176
|
+
value: I(o).parentId.value,
|
|
177
|
+
"tree-data": v.value,
|
|
178
|
+
"allow-clear": !1,
|
|
179
|
+
disabled: m.value,
|
|
180
|
+
loading: I(o).loading.value || I(o).updating.value,
|
|
181
|
+
"onUpdate:value": n[2] ||= (e) => I(o).update({ parentId: String(e ?? "root") })
|
|
182
|
+
}, null, 8, [
|
|
183
|
+
"value",
|
|
184
|
+
"tree-data",
|
|
185
|
+
"disabled",
|
|
186
|
+
"loading"
|
|
187
|
+
])]),
|
|
188
|
+
E("label", null, [D(F(I(s).t("platform.screen.ModuleMenuEditor.open-mode", "打开方式")), 1), O(I(h), {
|
|
189
|
+
value: I(o).openMode.value,
|
|
190
|
+
"allow-clear": !1,
|
|
191
|
+
disabled: m.value,
|
|
192
|
+
options: [{
|
|
193
|
+
value: "tab",
|
|
194
|
+
label: I(s).t("platform.screen.ModuleMenuEditor.open-in-a-workbench-tab", "页签内打开")
|
|
195
|
+
}, {
|
|
196
|
+
value: "window",
|
|
197
|
+
label: I(s).t("platform.screen.ModuleMenuEditor.open-in-a-new-window", "新窗口打开")
|
|
198
|
+
}],
|
|
199
|
+
"onUpdate:value": n[3] ||= (e) => I(o).update({ openMode: e === "window" ? "window" : "tab" })
|
|
200
|
+
}, null, 8, [
|
|
201
|
+
"value",
|
|
202
|
+
"disabled",
|
|
203
|
+
"options"
|
|
204
|
+
])]),
|
|
205
|
+
I(o).duplicate.value ? (M(), T("p", W, F(I(s).t("platform.screen.ModuleMenuEditor.duplicate-position", "此位置已有「{title}」,仍可另加入口。", { title: I(c)(I(o).duplicate.value.menu, "title", I(s)) })), 1)) : w("v-if", !0),
|
|
206
|
+
E("p", G, F(I(s).t("platform.screen.ModuleMenuEditor.adds-an-access-entry-only-it-does-not-activate-applications", "只添加访问入口,不开通应用或授予业务权限。")), 1),
|
|
207
|
+
I(o).updating.value ? (M(), T("p", K, F(I(s).t("platform.screen.ModuleMenuEditor.loading-the-menu-scheme-wait-for-the-candidate-to-be", "正在读取菜单方案,请等待候选就绪。")), 1)) : w("v-if", !0),
|
|
208
|
+
e.showSave && !I(o).resultUnknown.value ? (M(), C(I(b), {
|
|
209
|
+
key: 3,
|
|
210
|
+
type: "primary",
|
|
211
|
+
disabled: !I(o).canSave.value,
|
|
212
|
+
loading: I(o).saving.value,
|
|
213
|
+
onClick: y
|
|
214
|
+
}, {
|
|
215
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEditor.add-entry", "添加入口")), 1)]),
|
|
216
|
+
_: 1
|
|
217
|
+
}, 8, ["disabled", "loading"])) : w("v-if", !0),
|
|
218
|
+
I(o).resultUnknown.value ? (M(), C(I(b), {
|
|
219
|
+
key: 4,
|
|
220
|
+
onClick: k
|
|
221
|
+
}, {
|
|
222
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEditor.check-save-result", "查询保存结果")), 1)]),
|
|
223
|
+
_: 1
|
|
224
|
+
})) : w("v-if", !0)
|
|
225
|
+
], 64)),
|
|
226
|
+
I(o).entryIssue.value ? (M(), T("p", J, F(I(o).entryIssue.value), 1)) : w("v-if", !0),
|
|
227
|
+
I(o).ready.value && !I(o).authorized.value ? (M(), T("p", Y, F(I(s).t("platform.screen.ModuleMenuEditor.you-do-not-have-permission-to-add-menu-entries", "当前没有添加菜单入口权限。")), 1)) : w("v-if", !0),
|
|
228
|
+
I(o).error.value && I(o).ready.value && !I(o).saved.value && !I(o).resultUnknown.value ? (M(), C(I(b), {
|
|
229
|
+
key: 4,
|
|
230
|
+
disabled: I(o).saving.value,
|
|
231
|
+
onClick: I(o).load
|
|
232
|
+
}, {
|
|
233
|
+
default: R(() => [D(F(I(s).t("platform.screen.ModuleMenuEditor.reload-candidate", "重新读取候选")), 1)]),
|
|
234
|
+
_: 1
|
|
235
|
+
}, 8, ["disabled", "onClick"])) : w("v-if", !0),
|
|
236
|
+
I(o).error.value ? (M(), T("p", ne, F(I(o).error.value), 1)) : w("v-if", !0),
|
|
237
|
+
I(o).error.value && !I(o).ready.value && !I(o).resultUnknown.value ? (M(), C(I(b), {
|
|
238
|
+
key: 6,
|
|
239
|
+
disabled: I(o).saving.value,
|
|
240
|
+
onClick: I(o).load
|
|
241
|
+
}, {
|
|
242
|
+
default: R(() => [D(F(I(s).t("platform.screen.WorkflowWorkbenchView.retry", "重试")), 1)]),
|
|
243
|
+
_: 1
|
|
244
|
+
}, 8, ["disabled", "onClick"])) : w("v-if", !0)
|
|
245
|
+
]));
|
|
246
|
+
}
|
|
247
|
+
}), [["__scopeId", "data-v-1081a9ba"]]);
|
|
248
|
+
//#endregion
|
|
249
|
+
//#region src/platform-admin-runtime/module-menu/moduleMenuReceiptStore.ts
|
|
250
|
+
function Z(e, t, n, r = g, i, a = s) {
|
|
251
|
+
let o = `muyun.menu-pending.${JSON.stringify([e, t])}`, c = { persistence: "backend" }, l;
|
|
252
|
+
function u() {
|
|
253
|
+
if (!n()) throw new y(f(a, "platform.screen.moduleMenuReceiptStore.the-menu-editing-identity-has-changed", "菜单编辑身份已变化"));
|
|
254
|
+
return i ?? window.sessionStorage;
|
|
255
|
+
}
|
|
256
|
+
function d(e) {
|
|
257
|
+
if (!/^[a-zA-Z0-9-]{16,80}$/.test(e)) throw new y(f(a, "platform.screen.moduleMenuReceiptStore.the-original-entry-lookup-reference-is-invalid", "原入口查询标识无效"));
|
|
258
|
+
return `menu.pending.r${e.toLowerCase().replaceAll("-", "")}`;
|
|
259
|
+
}
|
|
260
|
+
return {
|
|
261
|
+
async restore() {
|
|
262
|
+
if (l = u().getItem(o) ?? void 0, !l) return;
|
|
263
|
+
let e = await r.restore(d(l), void 0, c);
|
|
264
|
+
if (!e) throw new y(f(a, "platform.screen.moduleMenuReceiptStore.the-original-entry-lookup-reference-cannot-be-read-right-now", "原入口查询引用暂不可读取,请核实后重试"));
|
|
265
|
+
return e;
|
|
266
|
+
},
|
|
267
|
+
async save(e) {
|
|
268
|
+
if (e.kind !== "record-save") throw new y(f(a, "platform.screen.moduleMenuReceiptStore.the-original-entry-lookup-reference-is-invalid", "原入口查询标识无效"));
|
|
269
|
+
let t = u();
|
|
270
|
+
l = e.requestId, await r.set(d(l), e, c), u(), t.setItem(o, l);
|
|
271
|
+
},
|
|
272
|
+
async clear() {
|
|
273
|
+
let e = u(), t = l;
|
|
274
|
+
t && (await r.remove(d(t), c), u(), e.getItem(o) === t && e.removeItem(o), l === t && (l = void 0));
|
|
275
|
+
}
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
//#endregion
|
|
279
|
+
//#region src/platform-admin-runtime/module-menu/moduleMenuSession.ts
|
|
280
|
+
function re(t, r, i, l, u = t.visible, m = s) {
|
|
281
|
+
let h = N(0), g = N(!1), _ = N(!1), b = N(!1), x = P(), C = S(() => x.value ? x.value instanceof y || x.value instanceof v ? p(x.value, m) : o(a(x.value), m) : "");
|
|
282
|
+
function w(e) {
|
|
283
|
+
x.value = e instanceof Error ? e : new y(e);
|
|
284
|
+
}
|
|
285
|
+
function T(e) {
|
|
286
|
+
w(e instanceof Error ? e : f(m, "platform.screen.moduleMenuSession.the-operation-is-temporarily-unavailable-retry", "操作暂不可用,请重试。"));
|
|
287
|
+
}
|
|
288
|
+
let E = P(), D = S(() => E.value ? oe(E.value, m) : ""), O = N(""), k = N(""), A = N("root"), j = N("tab"), M = P([]), F = P([]), I = P(), L = N(""), R = P(), z = N(""), ee = S(() => R.value ? B(R.value, m) : z.value), H = P(), U = N(!1), W = N(!1), G = N(!1), K = N(!1), te = !1, q = 0, J = 0, Y, ne = !1, X = () => !te && i.valid(), Z = S(() => M.value.filter((e) => e.enabled !== !1 && e.id)), re = S(() => ae(F.value, m)), le = S(() => X() && G.value && W.value && !g.value && !_.value && !b.value && !Y && !I.value && !D.value && !!O.value.trim()), ue = S(() => V(F.value, "", m).find(({ menu: e }) => e.moduleAlias === r && e.parentId === A.value));
|
|
289
|
+
function Q() {
|
|
290
|
+
if (!X()) throw new y(f(m, "platform.screen.moduleMenuSession.the-menu-editing-scope-has-changed-reopen-the-editor", "菜单编辑范围已变化,请重新打开"));
|
|
291
|
+
}
|
|
292
|
+
function $(e = !1) {
|
|
293
|
+
if (Q(), !G.value || !W.value || g.value || b.value || Y || I.value || !e && _.value) throw new y(f(m, "platform.screen.moduleMenuSession.wait-for-the-menu-candidate-to-be-ready-or-check", "请先等待菜单候选就绪,或查询未确定的保存结果"));
|
|
294
|
+
}
|
|
295
|
+
async function de() {
|
|
296
|
+
if (Q(), I.value || Y && G.value) return;
|
|
297
|
+
J++, _.value = !1;
|
|
298
|
+
let e = ++q;
|
|
299
|
+
g.value = !0, G.value = !1, x.value = void 0;
|
|
300
|
+
try {
|
|
301
|
+
if (!ne) {
|
|
302
|
+
let t = await l.restore();
|
|
303
|
+
if (!X() || e !== q) return;
|
|
304
|
+
if (t) {
|
|
305
|
+
let e = n(t);
|
|
306
|
+
if (e.kind !== "record-save" || e.moduleAlias !== "platform.menu" || !e.pageContext?.scheme) throw new y(f(m, "platform.screen.moduleMenuSession.the-original-entry-lookup-scope-is-invalid-verify-the-save", "原入口查询范围无效,请核实保存结果后继续"));
|
|
307
|
+
Y = {
|
|
308
|
+
requestId: e.requestId,
|
|
309
|
+
schemeId: e.pageContext.scheme
|
|
310
|
+
}, K.value = !0;
|
|
311
|
+
}
|
|
312
|
+
ne = !0;
|
|
313
|
+
}
|
|
314
|
+
let [i, a, o, s] = await Promise.all([
|
|
315
|
+
t.schemes(),
|
|
316
|
+
t.context(r),
|
|
317
|
+
t.context("platform.menu"),
|
|
318
|
+
t.visible()
|
|
319
|
+
]);
|
|
320
|
+
if (!X() || e !== q) return;
|
|
321
|
+
W.value = o.actions.some((e) => e.actionCode === "create" && e.authorized), E.value = a, M.value = i, O.value ||= a.title ?? r, j.value = a.entryType === "link" ? "window" : "tab";
|
|
322
|
+
let c = s[0]?.record.schemeId, u = Z.value.find((e) => e.id === (Y?.schemeId ?? k.value)) ?? Z.value.find((e) => e.id === c) ?? Z.value[0];
|
|
323
|
+
if (!u?.id) throw new y(f(m, "platform.screen.moduleMenuSession.no-menu-schemes-are-available-configure-an-applicable-scheme-first", "暂无可用菜单方案,请先配置适用的菜单方案"));
|
|
324
|
+
let d = await t.tree(u.id);
|
|
325
|
+
if (!X() || e !== q) return;
|
|
326
|
+
k.value = u.id, F.value = d, A.value = "root", G.value = !0, h.value++;
|
|
327
|
+
} catch (t) {
|
|
328
|
+
X() && e === q && T(t);
|
|
329
|
+
} finally {
|
|
330
|
+
X() && e === q && (g.value = !1);
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
function fe(e) {
|
|
334
|
+
let n = e.schemeId ?? k.value;
|
|
335
|
+
if (!Z.value.some((e) => e.id === n)) throw new y(f(m, "platform.screen.moduleMenuSession.select-an-available-menu-scheme", "请选择当前可用的菜单方案"));
|
|
336
|
+
let r = e.title ?? O.value;
|
|
337
|
+
if ([...r].length > 120) throw new y(f(m, "platform.screen.moduleMenuSession.the-menu-name-must-not-exceed-120-characters", "菜单名称不能超过120个字符"));
|
|
338
|
+
let i = e.parentId ?? (n === k.value ? A.value : "root"), a = e.openMode ?? j.value, o = (e) => {
|
|
339
|
+
if (i !== "root" && !ae(e).some((e) => e.menu.id === i)) throw new y(f(m, "platform.screen.moduleMenuSession.select-an-enabled-directory-in-the-current-scheme", "请选择当前方案中的启用目录"));
|
|
340
|
+
return {
|
|
341
|
+
schemeId: n,
|
|
342
|
+
nodes: e,
|
|
343
|
+
parentId: i,
|
|
344
|
+
title: r,
|
|
345
|
+
openMode: a
|
|
346
|
+
};
|
|
347
|
+
};
|
|
348
|
+
return n === k.value ? o(F.value) : t.tree(n).then(o);
|
|
349
|
+
}
|
|
350
|
+
function pe(e) {
|
|
351
|
+
k.value = e.schemeId, F.value = e.nodes, A.value = e.parentId, O.value = e.title, j.value = e.openMode, h.value++;
|
|
352
|
+
}
|
|
353
|
+
async function me(e) {
|
|
354
|
+
$();
|
|
355
|
+
let t = h.value, n = await fe(e);
|
|
356
|
+
return () => {
|
|
357
|
+
if ($(), t !== h.value) throw new y(f(m, "platform.screen.moduleMenuSession.the-menu-candidate-has-changed-reload-it", "菜单候选已变化,请重新读取"));
|
|
358
|
+
pe(n);
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
async function he(e) {
|
|
362
|
+
let t;
|
|
363
|
+
try {
|
|
364
|
+
$(!0), t = ++J, _.value = !0;
|
|
365
|
+
let n = ++h.value;
|
|
366
|
+
x.value = void 0;
|
|
367
|
+
let r = fe(e), i = "then" in r ? await r : r;
|
|
368
|
+
if (!X() || t !== J) return;
|
|
369
|
+
if ($(!0), n !== h.value) throw new y(f(m, "platform.screen.moduleMenuSession.the-menu-candidate-has-changed-reload-it", "菜单候选已变化,请重新读取"));
|
|
370
|
+
pe(i), x.value = void 0;
|
|
371
|
+
} catch (e) {
|
|
372
|
+
X() && (t === void 0 || t === J) && T(e);
|
|
373
|
+
} finally {
|
|
374
|
+
t === J && (_.value = !1);
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
async function ge() {
|
|
378
|
+
Q();
|
|
379
|
+
let e = I.value?.id;
|
|
380
|
+
if (e) {
|
|
381
|
+
U.value = !1, H.value = void 0;
|
|
382
|
+
try {
|
|
383
|
+
let t = await u();
|
|
384
|
+
if (!X() || I.value?.id !== e) return;
|
|
385
|
+
H.value = V(t).find(({ menu: t }) => t.id === e)?.menu, U.value = !0, x.value = void 0;
|
|
386
|
+
} catch {
|
|
387
|
+
X() && w(f(m, "platform.screen.moduleMenuSession.the-menu-was-added-but-navigation-could-not-be-refreshed", "菜单已添加,导航刷新失败。请查询或刷新导航,无需重复添加。"));
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
async function _e(e, n) {
|
|
392
|
+
if (X()) {
|
|
393
|
+
let r = Y, i = n ?? (r.record ? {
|
|
394
|
+
...r.record,
|
|
395
|
+
id: e
|
|
396
|
+
} : await t.view(r.schemeId, e));
|
|
397
|
+
Q(), I.value = i;
|
|
398
|
+
let a = r.audienceScheme ?? Z.value.find((e) => e.id === i.schemeId);
|
|
399
|
+
R.value = a ? { ...a } : void 0, z.value = r.audience ?? "", L.value = r.path ?? [
|
|
400
|
+
(() => {
|
|
401
|
+
let e = Z.value.find((e) => e.id === i.schemeId);
|
|
402
|
+
return e && c(e, "title", m);
|
|
403
|
+
})(),
|
|
404
|
+
V(F.value, "", m).find(({ menu: e }) => e.id === i.parentId)?.path,
|
|
405
|
+
i.title
|
|
406
|
+
].filter(Boolean).join(" / "), Y = void 0, K.value = !1, h.value++, await l.clear().catch(() => {}), X() && await ge();
|
|
407
|
+
}
|
|
408
|
+
return {
|
|
409
|
+
title: m.t("platform.screen.moduleMenuSession.menu-entry-saved", "菜单入口已保存"),
|
|
410
|
+
lines: X() ? [L.value, U.value ? H.value ? m.t("platform.screen.moduleMenuSession.visible-to-the-current-user-the-business-page-can-be", "当前用户可见,可打开业务页面。") : m.t("platform.screen.moduleMenuSession.the-entry-was-saved-but-is-not-visible-to-the", "入口已保存;当前登录身份暂不可见,请由适用范围内的使用者核实导航。") : m.t("platform.screen.moduleMenuSession.navigation-visibility-has-not-been-verified-do-not-add-the", "导航可见性尚未核实;不要重复添加。")] : [m.t("platform.screen.moduleMenuSession.the-save-completed-verify-the-entry-in-its-original-scope", "保存已完成,请在原范围核实入口。")]
|
|
411
|
+
};
|
|
412
|
+
}
|
|
413
|
+
async function ve(e, n) {
|
|
414
|
+
let [i, a, o, s] = await Promise.all([
|
|
415
|
+
t.context(r),
|
|
416
|
+
t.context("platform.menu"),
|
|
417
|
+
t.schemes(),
|
|
418
|
+
t.tree(e.schemeId)
|
|
419
|
+
]);
|
|
420
|
+
if (Q(), !a.actions.some((e) => e.actionCode === "create" && e.authorized)) throw new v(f(m, "platform.screen.moduleMenuSession.you-do-not-have-permission-to-add-menu-entries", "当前没有添加菜单入口权限"));
|
|
421
|
+
let l = se(i, m);
|
|
422
|
+
if (l) throw new v(l);
|
|
423
|
+
let u = o.find((t) => t.id === e.schemeId && t.enabled !== !1);
|
|
424
|
+
if (!u) throw new v(f(m, "platform.screen.moduleMenuSession.the-menu-scheme-is-no-longer-available", "菜单方案已不可用"));
|
|
425
|
+
if (e.parentId !== "root" && !ae(s).some((t) => t.menu.id === e.parentId)) throw new v(f(m, "platform.screen.moduleMenuSession.the-target-directory-is-no-longer-available-review-the-entry", "放置目录已不可用,请重新审阅"));
|
|
426
|
+
let d = e.parentId === "root" ? [] : ie(s, e.parentId), p = JSON.stringify([
|
|
427
|
+
u.id,
|
|
428
|
+
u.alias ?? null,
|
|
429
|
+
u.title ?? null,
|
|
430
|
+
u.scopeType ?? null,
|
|
431
|
+
u.tenantId ?? null,
|
|
432
|
+
u.organizationId ?? null,
|
|
433
|
+
d.map((e) => [e.id, e.title])
|
|
434
|
+
]);
|
|
435
|
+
if (n && p !== n) throw new v(f(m, "platform.screen.moduleMenuSession.the-menu-scheme-audience-or-directory-has-changed-reload-and", "菜单方案适用范围或目录已变化,请重新读取候选并审阅"));
|
|
436
|
+
return {
|
|
437
|
+
scheme: u,
|
|
438
|
+
signature: p,
|
|
439
|
+
path: [
|
|
440
|
+
c(u, "title", m) ?? u.alias,
|
|
441
|
+
...d.map((e) => c(e, "title", m)),
|
|
442
|
+
e.title
|
|
443
|
+
].filter(Boolean).join(" / ")
|
|
444
|
+
};
|
|
445
|
+
}
|
|
446
|
+
async function ye() {
|
|
447
|
+
if ($(), !le.value) throw new y(f(m, "platform.screen.moduleMenuSession.provide-a-menu-name-and-an-available-business-page", "请补齐菜单名称及可用业务页面"));
|
|
448
|
+
let n = h.value, a = {
|
|
449
|
+
moduleAlias: r,
|
|
450
|
+
schemeId: k.value,
|
|
451
|
+
parentId: A.value,
|
|
452
|
+
title: O.value.trim(),
|
|
453
|
+
openMode: j.value,
|
|
454
|
+
enabled: !0
|
|
455
|
+
}, o = await ve(a);
|
|
456
|
+
if ($(), h.value !== n) throw new y(f(m, "platform.screen.moduleMenuSession.the-menu-candidate-has-changed-review-it-again", "菜单候选已变化,请重新审阅"));
|
|
457
|
+
let s = o.path, u = e(), p = () => X() && i.active() && G.value && W.value && !_.value && !Y && !I.value && h.value === n, g = {
|
|
458
|
+
kind: "record-save",
|
|
459
|
+
moduleAlias: "platform.menu",
|
|
460
|
+
requestId: u,
|
|
461
|
+
pageContext: { scheme: a.schemeId }
|
|
462
|
+
};
|
|
463
|
+
return {
|
|
464
|
+
receiptReference: g,
|
|
465
|
+
presentation: {
|
|
466
|
+
title: m.t("platform.screen.moduleMenuSession.add-a-business-entry", "添加业务入口"),
|
|
467
|
+
lines: [
|
|
468
|
+
s,
|
|
469
|
+
m.t("platform.screen.moduleMenuSession.audience-value", "适用范围:{value1}", { value1: B(o.scheme, m) }),
|
|
470
|
+
m.t("platform.screen.moduleMenuSession.open-mode-value", "打开方式:{value1}", { value1: a.openMode === "window" ? m.t("platform.screen.moduleMenuSession.new-window", "新窗口") : m.t("platform.screen.moduleMenuSession.workbench-tab", "页签内") }),
|
|
471
|
+
m.t("platform.screen.moduleMenuSession.adds-an-entry-only-it-does-not-activate-applications-or", "只添加入口,不开通应用或授予业务权限。"),
|
|
472
|
+
...ue.value ? [m.t("platform.screen.moduleMenuSession.this-position-already-contains-value-another-entry-will-be-added", "此位置已有「{value1}」,本次将另加一个入口。", { value1: c(ue.value.menu, "title", m) })] : []
|
|
473
|
+
],
|
|
474
|
+
details: {
|
|
475
|
+
title: m.t("platform.screen.moduleMenuSession.view-target-module", "查看目标模块"),
|
|
476
|
+
lines: [r]
|
|
477
|
+
}
|
|
478
|
+
},
|
|
479
|
+
confirmLabel: m.t("platform.screen.moduleMenuSession.confirm-entry-creation", "确认添加入口"),
|
|
480
|
+
expiresAt: Date.now() + 3e5,
|
|
481
|
+
isCurrent: p,
|
|
482
|
+
async execute() {
|
|
483
|
+
if (!p() || b.value) throw new v(f(m, "platform.screen.moduleMenuSession.the-menu-candidate-or-editing-scope-has-changed-review-it", "菜单候选或编辑范围已变化,请重新审阅"));
|
|
484
|
+
b.value = !0, x.value = void 0;
|
|
485
|
+
let e = !1;
|
|
486
|
+
try {
|
|
487
|
+
if (await ve(a, o.signature), !p() || (Y = {
|
|
488
|
+
requestId: u,
|
|
489
|
+
schemeId: a.schemeId,
|
|
490
|
+
record: a,
|
|
491
|
+
path: s,
|
|
492
|
+
audience: B(o.scheme, m),
|
|
493
|
+
audienceScheme: { ...o.scheme }
|
|
494
|
+
}, await l.save(g), !X() || !i.active() || h.value !== n)) throw new v(f(m, "platform.screen.moduleMenuSession.the-menu-candidate-or-editing-scope-has-changed-review-it", "菜单候选或编辑范围已变化,请重新审阅"));
|
|
495
|
+
e = !0;
|
|
496
|
+
let r = await t.insert(a.schemeId, a, u);
|
|
497
|
+
return await _e(r.record.id, r.record);
|
|
498
|
+
} catch (t) {
|
|
499
|
+
if (X()) {
|
|
500
|
+
if (!e || t instanceof v || t instanceof d && [
|
|
501
|
+
400,
|
|
502
|
+
401,
|
|
503
|
+
403,
|
|
504
|
+
404,
|
|
505
|
+
409,
|
|
506
|
+
422
|
|
507
|
+
].includes(t.status ?? 0)) {
|
|
508
|
+
try {
|
|
509
|
+
Y && await l.clear(), Y = void 0;
|
|
510
|
+
} catch {
|
|
511
|
+
Y && (Y.rejected = !0), K.value = !0, w(f(m, "platform.screen.moduleMenuSession.the-operation-was-not-submitted-but-the-original-request-reference", "操作未提交,但原请求标识尚未清除,请先查询结果。"));
|
|
512
|
+
}
|
|
513
|
+
throw new v(ce(t, m));
|
|
514
|
+
}
|
|
515
|
+
Y && (K.value = !0, h.value++), Y ? w(f(m, "platform.screen.moduleMenuSession.the-save-result-is-unresolved-check-the-original-request-result", "保存结果尚未确定,请查询原请求结果,勿重复添加。")) : T(t);
|
|
516
|
+
}
|
|
517
|
+
throw t;
|
|
518
|
+
} finally {
|
|
519
|
+
X() && (b.value = !1);
|
|
520
|
+
}
|
|
521
|
+
},
|
|
522
|
+
lookup: be
|
|
523
|
+
};
|
|
524
|
+
}
|
|
525
|
+
async function be() {
|
|
526
|
+
if (Q(), !Y || b.value) return;
|
|
527
|
+
let e = Y;
|
|
528
|
+
if (e.rejected) return await l.clear(), Q(), Y === e ? (Y = void 0, K.value = !1, x.value = void 0, h.value++, {
|
|
529
|
+
title: m.t("platform.operation.not-submitted", "操作未提交"),
|
|
530
|
+
lines: [m.t("platform.screen.moduleMenuSession.the-recovery-reference-was-cleared-you-can-review-and-add", "恢复标识已清除,可以重新审阅并添加入口。")]
|
|
531
|
+
}) : void 0;
|
|
532
|
+
let n = await t.receipt(e.schemeId, e.requestId);
|
|
533
|
+
if (Q(), Y === e && n.committed && n.recordId) return _e(n.recordId);
|
|
534
|
+
}
|
|
535
|
+
return {
|
|
536
|
+
moduleAlias: r,
|
|
537
|
+
language: m,
|
|
538
|
+
revision: h,
|
|
539
|
+
loading: g,
|
|
540
|
+
updating: _,
|
|
541
|
+
saving: b,
|
|
542
|
+
error: C,
|
|
543
|
+
reportFailure: w,
|
|
544
|
+
failureCause: () => x.value,
|
|
545
|
+
entryIssue: D,
|
|
546
|
+
title: O,
|
|
547
|
+
schemeId: k,
|
|
548
|
+
parentId: A,
|
|
549
|
+
openMode: j,
|
|
550
|
+
schemes: M,
|
|
551
|
+
tree: F,
|
|
552
|
+
options: Z,
|
|
553
|
+
directories: re,
|
|
554
|
+
saved: I,
|
|
555
|
+
savedPath: L,
|
|
556
|
+
savedAudience: ee,
|
|
557
|
+
visibleMenu: H,
|
|
558
|
+
visibilityChecked: U,
|
|
559
|
+
authorized: W,
|
|
560
|
+
ready: G,
|
|
561
|
+
resultUnknown: K,
|
|
562
|
+
canSave: le,
|
|
563
|
+
duplicate: ue,
|
|
564
|
+
load: de,
|
|
565
|
+
update: he,
|
|
566
|
+
planRevision: me,
|
|
567
|
+
prepare: ye,
|
|
568
|
+
lookupPending: be,
|
|
569
|
+
refreshVisibility: ge,
|
|
570
|
+
async startAnother() {
|
|
571
|
+
if (Q(), !I.value || b.value || Y) throw new y(f(m, "platform.screen.moduleMenuSession.verify-the-current-entry-save-result-first", "请先核实当前入口保存结果"));
|
|
572
|
+
await l.clear(), Q(), I.value = void 0, L.value = "", R.value = void 0, z.value = "", H.value = void 0, U.value = !1, G.value = !1, h.value++, await de();
|
|
573
|
+
},
|
|
574
|
+
dispose() {
|
|
575
|
+
te = !0, q++, J++, _.value = !1, h.value++;
|
|
576
|
+
},
|
|
577
|
+
invalidate() {
|
|
578
|
+
J++, _.value = !1, h.value++;
|
|
579
|
+
}
|
|
580
|
+
};
|
|
581
|
+
}
|
|
582
|
+
function ie(e, t, n = []) {
|
|
583
|
+
for (let r of e) {
|
|
584
|
+
let e = [...n, r.record];
|
|
585
|
+
if (r.record.id === t) return e;
|
|
586
|
+
let i = ie(r.children, t, e);
|
|
587
|
+
if (i.length) return i;
|
|
588
|
+
}
|
|
589
|
+
return [];
|
|
590
|
+
}
|
|
591
|
+
function ae(e, t = s) {
|
|
592
|
+
let n = (e) => e.filter(({ record: e }) => e.enabled !== !1).map((e) => ({
|
|
593
|
+
...e,
|
|
594
|
+
children: n(e.children)
|
|
595
|
+
}));
|
|
596
|
+
return V(n(e), "", t).filter(({ menu: e }) => !e.moduleAlias);
|
|
597
|
+
}
|
|
598
|
+
function oe(e, t = s) {
|
|
599
|
+
return se(e, t)?.message ?? "";
|
|
600
|
+
}
|
|
601
|
+
function se(e, t) {
|
|
602
|
+
return e.entryType === "route" ? e.entryRoute ? void 0 : f(t, "platform.screen.moduleMenuSession.this-module-has-no-page-address-return-to-its-configuration", "该模块尚未配置页面地址,请返回模块补充。") : e.entryType === "link" ? e.entryExternalUrl ? void 0 : f(t, "platform.screen.moduleMenuSession.this-module-has-no-link-address-return-to-its-configuration", "该模块尚未配置链接地址,请返回模块补充。") : e.uiDescriptor?.page ? void 0 : f(t, "platform.screen.moduleMenuSession.this-module-has-no-available-business-page-publish-its-page", "该模块尚无可用业务页面,请先发布页面配置。");
|
|
603
|
+
}
|
|
604
|
+
function ce(e, t = s) {
|
|
605
|
+
return e instanceof y || e instanceof v ? e.textMessage ?? e.message : e instanceof Error ? e.message : f(t, "platform.screen.moduleMenuSession.the-operation-is-temporarily-unavailable-retry", "操作暂不可用,请重试。");
|
|
606
|
+
}
|
|
607
|
+
//#endregion
|
|
608
|
+
//#region src/views/configurationEditorNavigation.ts
|
|
609
|
+
async function le(e, t, n = s) {
|
|
610
|
+
if (t?.aborted || (e() || await new Promise((r, i) => {
|
|
611
|
+
let a = (e) => {
|
|
612
|
+
s(), clearTimeout(c), t?.removeEventListener("abort", o), e ? i(e) : r();
|
|
613
|
+
}, o = () => a(new DOMException("Navigation cancelled", "AbortError")), s = L(e, (e) => {
|
|
614
|
+
e && a();
|
|
615
|
+
}, { flush: "post" }), c = setTimeout(() => a(new y(f(n, "platform.screen.configurationEditorNavigation.the-configuration-page-is-not-ready-reopen-it-before-continuing", "配置页面尚未就绪,请重新打开后继续。"))), 15e3);
|
|
616
|
+
t?.addEventListener("abort", o, { once: !0 });
|
|
617
|
+
}), await j(), t?.aborted)) throw new DOMException("Navigation cancelled", "AbortError");
|
|
618
|
+
}
|
|
619
|
+
//#endregion
|
|
620
|
+
//#region src/platform-admin-runtime/module-menu/moduleMenuWorkspace.ts
|
|
621
|
+
var ue = Symbol("module-menu-workspace");
|
|
622
|
+
function Q() {
|
|
623
|
+
return A(ue, void 0);
|
|
624
|
+
}
|
|
625
|
+
//#endregion
|
|
626
|
+
export { X as a, Z as i, le as n, z as o, re as r, V as s, Q as t };
|