@yuku123/z-team-component 0.2.73 → 0.2.75
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/{ComponentDoc-D6j0q6td.js → ComponentDoc-CMfr27b7.js} +1 -1
- package/dist/{InvitationManagementPage-CguvahDP.js → InvitationManagementPage-SMhrq5dN.js} +1 -1
- package/dist/{OnboardingPage-CMtXJdWG.js → OnboardingPage-CjLgp-jE.js} +2 -2
- package/dist/{ScheduledTasks-CboH2Vtb.js → ScheduledTasks-C2wsuoa9.js} +766 -766
- package/dist/{SystemShell-Bj3uLkb-.js → SystemShell-y3kvbENk.js} +215 -196
- package/dist/{api-DcV3bpwl.js → api-CVKSSNXw.js} +1 -1
- package/dist/{createWorkspaceWsHandler-BUDc2OuA.js → createWorkspaceWsHandler-25JfnMML.js} +1834 -1812
- package/dist/{index-CM81Z4Gw.js → index-3c6HvG__.js} +1 -1
- package/dist/{index--l2UiQAT.js → index-B_oOPFoQ.js} +30 -30
- package/dist/{index-nj-cjKsf.js → index-BohoJQPr.js} +1849 -1857
- package/dist/{index-BJqS68-M.js → index-CbTwXfER.js} +1 -1
- package/dist/{index-CWnbQ1Ho.js → index-CchpPnBl.js} +1 -1
- package/dist/{index-ewTV5yeN.js → index-Cd_xAvmO.js} +3873 -3761
- package/dist/{index-Cz45ypLD.js → index-CeCBja5s.js} +3 -3
- package/dist/{index-DjFfvrfB.js → index-CfW9kGYJ.js} +16 -15
- package/dist/{index-CRgnk_Ly.js → index-D54nAoGP.js} +3 -3
- package/dist/{index-DdEl0ec4.js → index-DWd0Y6qP.js} +1 -1
- package/dist/{index-D8WafKB8.js → index-Pq3n7-vE.js} +2 -2
- package/dist/{index-CfljuY26.js → index-_53KTMhL.js} +1 -1
- package/dist/{index-DQ6ZfUO0.js → index-e9H9wjYU.js} +447 -445
- package/dist/{index-DB0RIaB4.js → index-fW1JBhEB.js} +2 -2
- package/dist/index.js +1 -1
- package/dist/{menuPermission-B0HlWqWx.js → menuPermission-CtJddtOO.js} +1 -1
- package/dist/pages.js +11 -11
- package/dist/z-team-component.css +1 -1
- package/package.json +2 -2
- package/dist/index-DrDur76N.js +0 -1747
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
import { jsxs as p, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { useNavigate as
|
|
3
|
-
import { useMemo as g, useState as
|
|
4
|
-
import { DownOutlined as
|
|
5
|
-
import { f as
|
|
6
|
-
import { u as
|
|
7
|
-
import { ProductApp as
|
|
8
|
-
import { P as
|
|
9
|
-
import { b as
|
|
10
|
-
const
|
|
11
|
-
container:
|
|
12
|
-
sidebar:
|
|
13
|
-
menuList:
|
|
14
|
-
menuGroup:
|
|
15
|
-
menuGroupHeader:
|
|
16
|
-
menuGroupIcon:
|
|
17
|
-
menuGroupLabel:
|
|
18
|
-
menuGroupArrow:
|
|
19
|
-
menuSubList:
|
|
20
|
-
menuSubItem:
|
|
21
|
-
menuSubItemActive:
|
|
22
|
-
menuSubItemIcon:
|
|
23
|
-
menuSubGroup:
|
|
24
|
-
menuSubGroupHeader:
|
|
2
|
+
import { useNavigate as Q, useLocation as M, Navigate as l } from "react-router-dom";
|
|
3
|
+
import { useMemo as g, useState as z, Suspense as oe, lazy as u } from "react";
|
|
4
|
+
import { DownOutlined as L, RightOutlined as T, AppstoreOutlined as Y, UserOutlined as ce, SafetyCertificateOutlined as E, CloudOutlined as v, DeploymentUnitOutlined as x, AuditOutlined as j, CodeOutlined as f, FolderOpenOutlined as le, DesktopOutlined as Z, ThunderboltOutlined as se, BookOutlined as H, DashboardOutlined as S, ProfileOutlined as R, ApartmentOutlined as pe, FileImageOutlined as re, FileTextOutlined as A, CalendarOutlined as b, ApiOutlined as ie, ProjectOutlined as V, ClusterOutlined as me, DatabaseOutlined as ue, TeamOutlined as de, BarChartOutlined as q } from "@ant-design/icons";
|
|
5
|
+
import { f as he, M as be } from "./menuPermission-CtJddtOO.js";
|
|
6
|
+
import { u as B } from "./useAppStore-DQP0l22d.js";
|
|
7
|
+
import { ProductApp as ge } from "@yuku123/z-product-component";
|
|
8
|
+
import { P as ke, R as _e } from "./index-DWd0Y6qP.js";
|
|
9
|
+
import { b as ye } from "./ComponentDoc-CMfr27b7.js";
|
|
10
|
+
const Se = "_container_wbul9_7", Ae = "_sidebar_wbul9_17", we = "_menuList_wbul9_37", fe = "_menuGroup_wbul9_44", Pe = "_menuGroupHeader_wbul9_48", ve = "_menuGroupIcon_wbul9_66", De = "_menuGroupLabel_wbul9_75", Me = "_menuGroupArrow_wbul9_80", Ge = "_menuSubList_wbul9_87", Ie = "_menuSubItem_wbul9_93", Ce = "_menuSubItemActive_wbul9_110", Ne = "_menuSubItemIcon_wbul9_117", Oe = "_menuSubGroup_wbul9_132", ze = "_menuSubGroupHeader_wbul9_136", Le = "_menuSubGroupHeaderActive_wbul9_154", Te = "_menuSubGroupLabel_wbul9_158", Ee = "_main_wbul9_169", xe = "_detailPanel_wbul9_179", je = "_detailHeader_wbul9_189", He = "_detailIcon_wbul9_196", Re = "_detailTitle_wbul9_209", qe = "_detailDesc_wbul9_216", Be = "_detailAction_wbul9_223", $e = "_goBtn_wbul9_228", Ue = "_emptyState_wbul9_248", n = {
|
|
11
|
+
container: Se,
|
|
12
|
+
sidebar: Ae,
|
|
13
|
+
menuList: we,
|
|
14
|
+
menuGroup: fe,
|
|
15
|
+
menuGroupHeader: Pe,
|
|
16
|
+
menuGroupIcon: ve,
|
|
17
|
+
menuGroupLabel: De,
|
|
18
|
+
menuGroupArrow: Me,
|
|
19
|
+
menuSubList: Ge,
|
|
20
|
+
menuSubItem: Ie,
|
|
21
|
+
menuSubItemActive: Ce,
|
|
22
|
+
menuSubItemIcon: Ne,
|
|
23
|
+
menuSubGroup: Oe,
|
|
24
|
+
menuSubGroupHeader: ze,
|
|
25
25
|
menuSubGroupHeaderActive: Le,
|
|
26
|
-
menuSubGroupLabel:
|
|
27
|
-
main:
|
|
28
|
-
detailPanel:
|
|
29
|
-
detailHeader:
|
|
30
|
-
detailIcon:
|
|
31
|
-
detailTitle:
|
|
32
|
-
detailDesc:
|
|
33
|
-
detailAction:
|
|
34
|
-
goBtn:
|
|
35
|
-
emptyState:
|
|
26
|
+
menuSubGroupLabel: Te,
|
|
27
|
+
main: Ee,
|
|
28
|
+
detailPanel: xe,
|
|
29
|
+
detailHeader: je,
|
|
30
|
+
detailIcon: He,
|
|
31
|
+
detailTitle: Re,
|
|
32
|
+
detailDesc: qe,
|
|
33
|
+
detailAction: Be,
|
|
34
|
+
goBtn: $e,
|
|
35
|
+
emptyState: Ue
|
|
36
36
|
};
|
|
37
37
|
function D(o) {
|
|
38
38
|
return o.flatMap((s) => [s, ...D(s.children ?? [])]);
|
|
39
39
|
}
|
|
40
|
-
const
|
|
40
|
+
const We = {
|
|
41
41
|
title: "测试中心",
|
|
42
42
|
icon: /* @__PURE__ */ e(S, {}),
|
|
43
43
|
// 测试 Tab 的入口权限点 (顶栏 test mode 同码)。4A 普通用户角色 USER 持有 TEST_ENTRY
|
|
@@ -66,14 +66,14 @@ const Ue = {
|
|
|
66
66
|
{
|
|
67
67
|
key: "test-suite",
|
|
68
68
|
label: "测试套件",
|
|
69
|
-
icon: /* @__PURE__ */ e(
|
|
69
|
+
icon: /* @__PURE__ */ e(me, {}),
|
|
70
70
|
path: "/test/qa/suites",
|
|
71
71
|
desc: "步骤编排与变量传递"
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
74
|
key: "test-plan",
|
|
75
75
|
label: "测试计划",
|
|
76
|
-
icon: /* @__PURE__ */ e(
|
|
76
|
+
icon: /* @__PURE__ */ e(V, {}),
|
|
77
77
|
path: "/test/qa/plans",
|
|
78
78
|
desc: "套件组合与环境绑定"
|
|
79
79
|
}
|
|
@@ -101,7 +101,7 @@ const Ue = {
|
|
|
101
101
|
{
|
|
102
102
|
key: "test-e2e",
|
|
103
103
|
label: "E2E 测试",
|
|
104
|
-
icon: /* @__PURE__ */ e(
|
|
104
|
+
icon: /* @__PURE__ */ e(Z, {}),
|
|
105
105
|
path: "/test/qa/e2e",
|
|
106
106
|
desc: "浏览器自动化测试"
|
|
107
107
|
}
|
|
@@ -122,7 +122,7 @@ const Ue = {
|
|
|
122
122
|
{
|
|
123
123
|
key: "test-mock",
|
|
124
124
|
label: "Mock 平台",
|
|
125
|
-
icon: /* @__PURE__ */ e(
|
|
125
|
+
icon: /* @__PURE__ */ e(ue, {}),
|
|
126
126
|
path: "/test/mock",
|
|
127
127
|
desc: "API Mock 服务管理"
|
|
128
128
|
}
|
|
@@ -131,7 +131,7 @@ const Ue = {
|
|
|
131
131
|
{
|
|
132
132
|
key: "test-eval",
|
|
133
133
|
label: "智能测评",
|
|
134
|
-
icon: /* @__PURE__ */ e(
|
|
134
|
+
icon: /* @__PURE__ */ e(q, {}),
|
|
135
135
|
children: [
|
|
136
136
|
{
|
|
137
137
|
key: "test-eval-start",
|
|
@@ -150,21 +150,21 @@ const Ue = {
|
|
|
150
150
|
{
|
|
151
151
|
key: "test-eval-group",
|
|
152
152
|
label: "群聊评测",
|
|
153
|
-
icon: /* @__PURE__ */ e(
|
|
153
|
+
icon: /* @__PURE__ */ e(de, {}),
|
|
154
154
|
path: "/test/evaluation/group",
|
|
155
155
|
desc: "群聊场景评测"
|
|
156
156
|
},
|
|
157
157
|
{
|
|
158
158
|
key: "test-eval-report",
|
|
159
159
|
label: "分析报告",
|
|
160
|
-
icon: /* @__PURE__ */ e(
|
|
160
|
+
icon: /* @__PURE__ */ e(q, {}),
|
|
161
161
|
path: "/test/evaluation/report",
|
|
162
162
|
desc: "测评结果分析"
|
|
163
163
|
}
|
|
164
164
|
]
|
|
165
165
|
}
|
|
166
166
|
]
|
|
167
|
-
},
|
|
167
|
+
}, J = [
|
|
168
168
|
{
|
|
169
169
|
title: "认证与权限",
|
|
170
170
|
icon: /* @__PURE__ */ e(E, {}),
|
|
@@ -176,7 +176,7 @@ const Ue = {
|
|
|
176
176
|
{
|
|
177
177
|
key: "4a-account",
|
|
178
178
|
label: "账号管理",
|
|
179
|
-
icon: /* @__PURE__ */ e(
|
|
179
|
+
icon: /* @__PURE__ */ e(ce, {}),
|
|
180
180
|
path: "/ctc/4a/account",
|
|
181
181
|
desc: "用户账号创建、编辑与状态管理"
|
|
182
182
|
},
|
|
@@ -190,7 +190,7 @@ const Ue = {
|
|
|
190
190
|
{
|
|
191
191
|
key: "4a-app",
|
|
192
192
|
label: "应用管理",
|
|
193
|
-
icon: /* @__PURE__ */ e(
|
|
193
|
+
icon: /* @__PURE__ */ e(Y, {}),
|
|
194
194
|
path: "/ctc/4a/application",
|
|
195
195
|
desc: "应用注册、资源与权限配置"
|
|
196
196
|
},
|
|
@@ -232,14 +232,14 @@ const Ue = {
|
|
|
232
232
|
{
|
|
233
233
|
key: "tool-curl",
|
|
234
234
|
label: "短链管理",
|
|
235
|
-
icon: /* @__PURE__ */ e(
|
|
235
|
+
icon: /* @__PURE__ */ e(le, {}),
|
|
236
236
|
path: "/z-tool/curl",
|
|
237
237
|
desc: "短链接创建与管理"
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
key: "tool-webide",
|
|
241
241
|
label: "WebIDE 容器",
|
|
242
|
-
icon: /* @__PURE__ */ e(
|
|
242
|
+
icon: /* @__PURE__ */ e(Z, {}),
|
|
243
243
|
path: "/z-tool/webide",
|
|
244
244
|
desc: "在线 IDE 代码编辑器"
|
|
245
245
|
}
|
|
@@ -247,8 +247,25 @@ const Ue = {
|
|
|
247
247
|
},
|
|
248
248
|
{
|
|
249
249
|
title: "产品认知",
|
|
250
|
-
icon: /* @__PURE__ */ e(
|
|
250
|
+
icon: /* @__PURE__ */ e(R, {}),
|
|
251
251
|
items: [
|
|
252
|
+
{
|
|
253
|
+
// 工坊是「一个面板干完产品业务开发」的主入口:对话 + 小册子 + 产物 + 台账。
|
|
254
|
+
// 它和小册子库原先只注册在 z-product-component 的 menuItems 里,
|
|
255
|
+
// 而主壳导航用的是这份写死的清单 ⇒ 面板做好了却在界面上进不去。
|
|
256
|
+
key: "product-atelier",
|
|
257
|
+
label: "产品工坊",
|
|
258
|
+
icon: /* @__PURE__ */ e(se, {}),
|
|
259
|
+
path: "/z-product/atelier",
|
|
260
|
+
desc: "在一个面板里对话、沉淀产品稿与设计稿、渲染演示稿、建工程落地"
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
key: "product-booklets",
|
|
264
|
+
label: "小册子库",
|
|
265
|
+
icon: /* @__PURE__ */ e(H, {}),
|
|
266
|
+
path: "/z-product/booklets",
|
|
267
|
+
desc: "可被对话引用的方法、清单与规范"
|
|
268
|
+
},
|
|
252
269
|
{
|
|
253
270
|
key: "product-board",
|
|
254
271
|
label: "产品全景",
|
|
@@ -259,21 +276,21 @@ const Ue = {
|
|
|
259
276
|
{
|
|
260
277
|
key: "product-blueprint",
|
|
261
278
|
label: "产品蓝图",
|
|
262
|
-
icon: /* @__PURE__ */ e(
|
|
279
|
+
icon: /* @__PURE__ */ e(R, {}),
|
|
263
280
|
path: "/z-product/blueprint",
|
|
264
281
|
desc: "AI 的唯一入口:后端实时投影的全量认知快照"
|
|
265
282
|
},
|
|
266
283
|
{
|
|
267
284
|
key: "product-glossary",
|
|
268
285
|
label: "统一语言",
|
|
269
|
-
icon: /* @__PURE__ */ e(
|
|
286
|
+
icon: /* @__PURE__ */ e(H, {}),
|
|
270
287
|
path: "/z-product/glossary",
|
|
271
288
|
desc: "术语仲裁表:标准词/别名/适用范围/反例"
|
|
272
289
|
},
|
|
273
290
|
{
|
|
274
291
|
key: "product-concept",
|
|
275
292
|
label: "领域模型",
|
|
276
|
-
icon: /* @__PURE__ */ e(
|
|
293
|
+
icon: /* @__PURE__ */ e(pe, {}),
|
|
277
294
|
path: "/z-product/concept-model",
|
|
278
295
|
desc: "概念与关系画布(四种投影)"
|
|
279
296
|
},
|
|
@@ -287,7 +304,7 @@ const Ue = {
|
|
|
287
304
|
{
|
|
288
305
|
key: "product-designs",
|
|
289
306
|
label: "设计稿 ⇄ 模型",
|
|
290
|
-
icon: /* @__PURE__ */ e(
|
|
307
|
+
icon: /* @__PURE__ */ e(re, {}),
|
|
291
308
|
path: "/z-product/designs",
|
|
292
309
|
desc: "设计与认知的双向收敛回路"
|
|
293
310
|
}
|
|
@@ -324,102 +341,102 @@ const Ue = {
|
|
|
324
341
|
{
|
|
325
342
|
key: "subscribe",
|
|
326
343
|
label: "订阅中心",
|
|
327
|
-
icon: /* @__PURE__ */ e(
|
|
344
|
+
icon: /* @__PURE__ */ e(ie, {}),
|
|
328
345
|
path: "/subscribe/list",
|
|
329
346
|
desc: "第三方数据订阅与拉取"
|
|
330
347
|
},
|
|
331
348
|
{
|
|
332
349
|
key: "project",
|
|
333
350
|
label: "项目中心",
|
|
334
|
-
icon: /* @__PURE__ */ e(
|
|
351
|
+
icon: /* @__PURE__ */ e(V, {}),
|
|
335
352
|
path: "/project/list",
|
|
336
353
|
desc: "项目创建与进度管理"
|
|
337
354
|
}
|
|
338
355
|
]
|
|
339
356
|
}
|
|
340
|
-
], P = [...
|
|
341
|
-
function
|
|
357
|
+
], P = [...J, We];
|
|
358
|
+
function Ke({
|
|
342
359
|
activePathOverride: o,
|
|
343
360
|
menuOnly: s = !1,
|
|
344
361
|
visibleGroups: r
|
|
345
362
|
} = {}) {
|
|
346
|
-
const
|
|
347
|
-
() => r ? P.filter((
|
|
363
|
+
const k = Q(), { pathname: G } = M(), w = g(
|
|
364
|
+
() => r ? P.filter((a) => r.includes(a.title)) : J,
|
|
348
365
|
[r]
|
|
349
|
-
), I =
|
|
350
|
-
() => I === "failed" ? w :
|
|
366
|
+
), I = B((a) => a.permissionState), C = B((a) => a.currentUser), _ = g(
|
|
367
|
+
() => I === "failed" ? w : he(w, C),
|
|
351
368
|
[w, C, I]
|
|
352
|
-
), [
|
|
353
|
-
new Set(P.map((
|
|
354
|
-
), [N,
|
|
369
|
+
), [X, ee] = z(
|
|
370
|
+
new Set(P.map((a) => a.title))
|
|
371
|
+
), [N, te] = z(
|
|
355
372
|
() => new Set(
|
|
356
|
-
P.flatMap((
|
|
373
|
+
P.flatMap((a) => a.items).filter((a) => a.children).map((a) => a.key)
|
|
357
374
|
)
|
|
358
375
|
), y = g(() => {
|
|
359
376
|
var i;
|
|
360
|
-
const
|
|
361
|
-
return ((i =
|
|
362
|
-
(c) => c.path ===
|
|
377
|
+
const a = o ?? G;
|
|
378
|
+
return ((i = _.flatMap((c) => D(c.items)).find(
|
|
379
|
+
(c) => c.path === a
|
|
363
380
|
)) == null ? void 0 : i.key) ?? null;
|
|
364
|
-
}, [o, G,
|
|
365
|
-
|
|
381
|
+
}, [o, G, _]), ae = (a) => {
|
|
382
|
+
ee((i) => {
|
|
366
383
|
const c = new Set(i);
|
|
367
|
-
return c.has(
|
|
384
|
+
return c.has(a) ? c.delete(a) : c.add(a), c;
|
|
368
385
|
});
|
|
369
|
-
}, ne = (
|
|
370
|
-
|
|
386
|
+
}, ne = (a) => {
|
|
387
|
+
te((i) => {
|
|
371
388
|
const c = new Set(i);
|
|
372
|
-
return c.has(
|
|
389
|
+
return c.has(a) ? c.delete(a) : c.add(a), c;
|
|
373
390
|
});
|
|
374
|
-
}, O = (
|
|
375
|
-
|
|
376
|
-
}, d =
|
|
377
|
-
(
|
|
391
|
+
}, O = (a) => {
|
|
392
|
+
a.path && k(a.path);
|
|
393
|
+
}, d = _.flatMap((a) => D(a.items)).find(
|
|
394
|
+
(a) => a.key === y
|
|
378
395
|
);
|
|
379
|
-
return /* @__PURE__ */ p("div", { className:
|
|
380
|
-
/* @__PURE__ */ p("aside", { className:
|
|
381
|
-
/* @__PURE__ */ e(
|
|
382
|
-
/* @__PURE__ */ e("nav", { className:
|
|
383
|
-
const i =
|
|
384
|
-
return /* @__PURE__ */ p("div", { className:
|
|
396
|
+
return /* @__PURE__ */ p("div", { className: n.container, children: [
|
|
397
|
+
/* @__PURE__ */ p("aside", { className: n.sidebar, children: [
|
|
398
|
+
/* @__PURE__ */ e(be, {}),
|
|
399
|
+
/* @__PURE__ */ e("nav", { className: n.menuList, children: _.map((a) => {
|
|
400
|
+
const i = X.has(a.title);
|
|
401
|
+
return /* @__PURE__ */ p("div", { className: n.menuGroup, children: [
|
|
385
402
|
/* @__PURE__ */ p(
|
|
386
403
|
"div",
|
|
387
404
|
{
|
|
388
|
-
className:
|
|
389
|
-
onClick: () =>
|
|
405
|
+
className: n.menuGroupHeader,
|
|
406
|
+
onClick: () => ae(a.title),
|
|
390
407
|
children: [
|
|
391
|
-
/* @__PURE__ */ e("span", { className:
|
|
392
|
-
/* @__PURE__ */ e("span", { className:
|
|
393
|
-
/* @__PURE__ */ e("span", { className:
|
|
408
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupIcon, children: a.icon }),
|
|
409
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupLabel, children: a.title }),
|
|
410
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupArrow, children: i ? /* @__PURE__ */ e(L, {}) : /* @__PURE__ */ e(T, {}) })
|
|
394
411
|
]
|
|
395
412
|
}
|
|
396
413
|
),
|
|
397
|
-
i && /* @__PURE__ */ e("ul", { className:
|
|
414
|
+
i && /* @__PURE__ */ e("ul", { className: n.menuSubList, children: a.items.map(
|
|
398
415
|
(c) => c.children ? (
|
|
399
416
|
/* 子菜单分组头 — 可折叠; active 项落在其中时高亮 */
|
|
400
|
-
/* @__PURE__ */ p("li", { className:
|
|
417
|
+
/* @__PURE__ */ p("li", { className: n.menuSubGroup, children: [
|
|
401
418
|
/* @__PURE__ */ p(
|
|
402
419
|
"div",
|
|
403
420
|
{
|
|
404
|
-
className: `${
|
|
421
|
+
className: `${n.menuSubGroupHeader} ${c.children.some((m) => m.key === y) ? n.menuSubGroupHeaderActive : ""}`,
|
|
405
422
|
onClick: () => ne(c.key),
|
|
406
423
|
children: [
|
|
407
|
-
/* @__PURE__ */ e("span", { className:
|
|
408
|
-
/* @__PURE__ */ e("span", { className:
|
|
409
|
-
/* @__PURE__ */ e("span", { className:
|
|
424
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupIcon, children: c.icon }),
|
|
425
|
+
/* @__PURE__ */ e("span", { className: n.menuSubGroupLabel, children: c.label }),
|
|
426
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupArrow, children: N.has(c.key) ? /* @__PURE__ */ e(L, {}) : /* @__PURE__ */ e(T, {}) })
|
|
410
427
|
]
|
|
411
428
|
}
|
|
412
429
|
),
|
|
413
|
-
N.has(c.key) && /* @__PURE__ */ e("ul", { className:
|
|
430
|
+
N.has(c.key) && /* @__PURE__ */ e("ul", { className: n.menuSubList, children: c.children.map((m) => /* @__PURE__ */ p(
|
|
414
431
|
"li",
|
|
415
432
|
{
|
|
416
|
-
className: `${
|
|
433
|
+
className: `${n.menuSubItem} ${y === m.key ? n.menuSubItemActive : ""}`,
|
|
417
434
|
onClick: () => O(m),
|
|
418
435
|
children: [
|
|
419
436
|
/* @__PURE__ */ e(
|
|
420
437
|
"span",
|
|
421
438
|
{
|
|
422
|
-
className:
|
|
439
|
+
className: n.menuSubItemIcon,
|
|
423
440
|
children: m.icon
|
|
424
441
|
}
|
|
425
442
|
),
|
|
@@ -432,157 +449,159 @@ function We({
|
|
|
432
449
|
) : /* @__PURE__ */ p(
|
|
433
450
|
"li",
|
|
434
451
|
{
|
|
435
|
-
className: `${
|
|
452
|
+
className: `${n.menuSubItem} ${y === c.key ? n.menuSubItemActive : ""}`,
|
|
436
453
|
onClick: () => O(c),
|
|
437
454
|
children: [
|
|
438
|
-
/* @__PURE__ */ e("span", { className:
|
|
455
|
+
/* @__PURE__ */ e("span", { className: n.menuSubItemIcon, children: c.icon }),
|
|
439
456
|
/* @__PURE__ */ e("span", { children: c.label })
|
|
440
457
|
]
|
|
441
458
|
},
|
|
442
459
|
c.key
|
|
443
460
|
)
|
|
444
461
|
) })
|
|
445
|
-
] },
|
|
462
|
+
] }, a.title);
|
|
446
463
|
}) })
|
|
447
464
|
] }),
|
|
448
|
-
s ? null : /* @__PURE__ */ e("main", { className:
|
|
449
|
-
/* @__PURE__ */ p("div", { className:
|
|
450
|
-
/* @__PURE__ */ e("div", { className:
|
|
465
|
+
s ? null : /* @__PURE__ */ e("main", { className: n.main, children: d ? /* @__PURE__ */ p("div", { className: n.detailPanel, children: [
|
|
466
|
+
/* @__PURE__ */ p("div", { className: n.detailHeader, children: [
|
|
467
|
+
/* @__PURE__ */ e("div", { className: n.detailIcon, children: d.icon }),
|
|
451
468
|
/* @__PURE__ */ p("div", { children: [
|
|
452
|
-
/* @__PURE__ */ e("h2", { className:
|
|
453
|
-
/* @__PURE__ */ e("p", { className:
|
|
469
|
+
/* @__PURE__ */ e("h2", { className: n.detailTitle, children: d.label }),
|
|
470
|
+
/* @__PURE__ */ e("p", { className: n.detailDesc, children: d.desc })
|
|
454
471
|
] })
|
|
455
472
|
] }),
|
|
456
|
-
/* @__PURE__ */ e("div", { className:
|
|
473
|
+
/* @__PURE__ */ e("div", { className: n.detailAction, children: /* @__PURE__ */ p(
|
|
457
474
|
"button",
|
|
458
475
|
{
|
|
459
|
-
className:
|
|
460
|
-
onClick: () =>
|
|
476
|
+
className: n.goBtn,
|
|
477
|
+
onClick: () => k(d.path),
|
|
461
478
|
children: [
|
|
462
479
|
"进入 ",
|
|
463
480
|
d.label
|
|
464
481
|
]
|
|
465
482
|
}
|
|
466
483
|
) })
|
|
467
|
-
] }) : /* @__PURE__ */ p("div", { className:
|
|
468
|
-
/* @__PURE__ */ e(
|
|
484
|
+
] }) : /* @__PURE__ */ p("div", { className: n.emptyState, children: [
|
|
485
|
+
/* @__PURE__ */ e(Y, { style: { fontSize: 48, color: "#ccc" } }),
|
|
469
486
|
/* @__PURE__ */ e("p", { children: "点击左侧菜单进入对应功能模块" })
|
|
470
487
|
] }) })
|
|
471
488
|
] });
|
|
472
489
|
}
|
|
473
|
-
const
|
|
474
|
-
shell:
|
|
475
|
-
main:
|
|
476
|
-
empty:
|
|
477
|
-
emptyIcon:
|
|
478
|
-
emptyText:
|
|
490
|
+
const Fe = "_shell_10jrt_6", Qe = "_main_10jrt_21", Ye = "_empty_10jrt_31", Ze = "_emptyIcon_10jrt_41", Ve = "_emptyText_10jrt_46", h = {
|
|
491
|
+
shell: Fe,
|
|
492
|
+
main: Qe,
|
|
493
|
+
empty: Ye,
|
|
494
|
+
emptyIcon: Ze,
|
|
495
|
+
emptyText: Ve
|
|
479
496
|
};
|
|
480
|
-
|
|
481
|
-
const t = (o, s) => u(() => o().then((r) => ({ default: r[s] }))),
|
|
482
|
-
function
|
|
497
|
+
ye();
|
|
498
|
+
const t = (o, s) => u(() => o().then((r) => ({ default: r[s] }))), Je = t(() => import("@yuku123/z-ctc-component"), "AccountManagement"), Xe = t(() => import("@yuku123/z-ctc-component"), "ApplicationManagement"), et = t(() => import("@yuku123/z-ctc-component"), "AuditPage"), tt = t(() => import("@yuku123/z-ctc-component"), "CtcOverview"), at = t(() => import("@yuku123/z-ctc-component"), "DictPage"), nt = t(() => import("@yuku123/z-ctc-component"), "OrgPage"), ot = t(() => import("@yuku123/z-ctc-component"), "PermissionManagement"), ct = t(() => import("@yuku123/z-ctc-component"), "RoleManagement"), $ = t(() => import("@yuku123/z-ctc-component"), "SurlManagement"), lt = t(() => import("@yuku123/z-ctc-component"), "TenantManagement"), st = t(() => import("@yuku123/z-agent-component"), "AgentAppList"), pt = t(() => import("@yuku123/z-agent-component"), "AgentDashboard"), rt = t(() => import("@yuku123/z-agent-component"), "AkManage"), it = t(() => import("@yuku123/z-agent-component"), "BucketList"), mt = t(() => import("@yuku123/z-agent-component"), "LlmManage"), ut = t(() => import("@yuku123/z-agent-component"), "McpPage"), dt = t(() => import("@yuku123/z-agent-component"), "ObjectBrowser"), ht = t(() => import("@yuku123/z-agent-component"), "ScriptCenterPage"), bt = t(() => import("@yuku123/z-agent-component"), "ScriptProductizationPage"), gt = t(() => import("@yuku123/z-agent-component"), "SkillMarket"), kt = t(() => import("./index-fW1JBhEB.js"), "AgentTeamIM"), U = t(() => import("./index-fW1JBhEB.js"), "DebugPlayground"), _t = t(() => import("./index-fW1JBhEB.js"), "Overview"), W = t(() => import("./index-fW1JBhEB.js"), "Webide"), yt = u(() => import("./OnboardingPage-CjLgp-jE.js")), St = u(() => import("./InvitationManagementPage-SMhrq5dN.js")), At = t(() => import("@yuku123/z-config-component"), "ConfigApp"), wt = t(() => import("@yuku123/z-task-component"), "TaskApp"), ft = t(() => import("@yuku123/z-wf-component"), "WorkflowApp"), Pt = t(() => import("@yuku123/z-schedule-component"), "ScheduleApp"), vt = t(() => import("@yuku123/z-mist-component"), "MistApp"), Dt = t(() => import("@yuku123/z-meta-component"), "MetaApp"), Mt = t(() => import("@yuku123/z-msg-component"), "MsgApp"), Gt = t(() => import("@yuku123/z-rpc-component"), "RpcApp"), It = u(() => import("./ComponentDoc-CMfr27b7.js").then((o) => o.p)), Ct = u(() => import("./ComponentDoc-CMfr27b7.js").then((o) => o.q)), Nt = t(() => import("@yuku123/z-config-component"), "ComponentDocPage"), Ot = t(() => import("@yuku123/z-task-component"), "ComponentDocPage"), zt = t(() => import("@yuku123/z-wf-component"), "ComponentDocPage"), Lt = t(() => import("@yuku123/z-schedule-component"), "ComponentDocPage"), Tt = t(() => import("@yuku123/z-mist-component"), "ComponentDocPage"), Et = t(() => import("@yuku123/z-meta-component"), "ComponentDocPage"), xt = t(() => import("@yuku123/z-msg-component"), "ComponentDocPage"), jt = t(() => import("@yuku123/z-rpc-component"), "ComponentDocPage"), Ht = t(() => import("@yuku123/z-kb-component"), "ComponentDocPage"), Rt = t(() => import("@yuku123/z-product-component"), "ComponentDocPage"), qt = t(() => import("@yuku123/z-oss-component"), "ComponentDocPage"), Bt = t(() => import("@yuku123/z-vector-component"), "ComponentDocPage"), $t = t(() => import("@yuku123/z-graph-component"), "ComponentDocPage"), Ut = t(() => import("@yuku123/z-gw-component"), "ComponentDocPage"), Wt = t(() => import("@yuku123/z-cache-component"), "ComponentDocPage"), Kt = t(() => import("@yuku123/z-mq-component"), "ComponentDocPage"), Ft = t(() => import("@yuku123/z-ctc-component"), "ComponentDocPage"), Qt = t(() => import("@yuku123/z-agent-component"), "ComponentDocPage"), Yt = t(() => import("@yuku123/z-lc-component"), "ComponentDocPage"), Zt = t(() => import("@yuku123/z-qa-component"), "ComponentDocPage"), Vt = u(() => import("./ComponentDoc-CMfr27b7.js").then((o) => o.o)), K = u(() => import("@yuku123/z-qa-component"));
|
|
499
|
+
function Jt() {
|
|
483
500
|
return /* @__PURE__ */ p("div", { className: h.empty, children: [
|
|
484
501
|
/* @__PURE__ */ e("div", { className: h.emptyIcon, children: "📋" }),
|
|
485
502
|
/* @__PURE__ */ e("div", { className: h.emptyText, children: "请从左侧菜单选择模块" })
|
|
486
503
|
] });
|
|
487
504
|
}
|
|
488
|
-
function
|
|
505
|
+
function Xt() {
|
|
489
506
|
const { pathname: o } = M();
|
|
490
507
|
return /* @__PURE__ */ e(l, { to: o.replace(/^\/product/, "/z-product"), replace: !0 });
|
|
491
508
|
}
|
|
492
|
-
const
|
|
509
|
+
const F = [
|
|
493
510
|
// ─── 顶层 / 概览 ───
|
|
494
511
|
{ path: "/overview", element: /* @__PURE__ */ e(_t, {}) },
|
|
495
512
|
// ─── 4A 中心 (/ctc/*) ───
|
|
496
513
|
{ path: "/ctc", element: /* @__PURE__ */ e(l, { to: "/ctc/4a/account", replace: !0 }) },
|
|
497
|
-
{ path: "/ctc/4a/account", element: /* @__PURE__ */ e(
|
|
498
|
-
{ path: "/ctc/4a/role", element: /* @__PURE__ */ e(
|
|
499
|
-
{ path: "/ctc/4a/application", element: /* @__PURE__ */ e(
|
|
500
|
-
{ path: "/ctc/4a/tenant", element: /* @__PURE__ */ e(
|
|
514
|
+
{ path: "/ctc/4a/account", element: /* @__PURE__ */ e(Je, {}) },
|
|
515
|
+
{ path: "/ctc/4a/role", element: /* @__PURE__ */ e(ct, {}) },
|
|
516
|
+
{ path: "/ctc/4a/application", element: /* @__PURE__ */ e(Xe, {}) },
|
|
517
|
+
{ path: "/ctc/4a/tenant", element: /* @__PURE__ */ e(lt, {}) },
|
|
501
518
|
{ path: "/ctc/4a/org", element: /* @__PURE__ */ e(nt, {}) },
|
|
502
|
-
{ path: "/ctc/4a/permission", element: /* @__PURE__ */ e(
|
|
503
|
-
{ path: "/ctc/4a/surl", element: /* @__PURE__ */ e(
|
|
504
|
-
{ path: "/ctc/dict", element: /* @__PURE__ */ e(
|
|
505
|
-
{ path: "/ctc/overview", element: /* @__PURE__ */ e(
|
|
506
|
-
{ path: "/ctc/audit", element: /* @__PURE__ */ e(
|
|
507
|
-
{ path: "/ctc/webide", element: /* @__PURE__ */ e(
|
|
508
|
-
{ path: "/ctc/agent-team", element: /* @__PURE__ */ e(
|
|
509
|
-
{ path: "/ctc/invitation", element: /* @__PURE__ */ e(
|
|
510
|
-
{ path: "/onboarding", element: /* @__PURE__ */ e(
|
|
519
|
+
{ path: "/ctc/4a/permission", element: /* @__PURE__ */ e(ot, {}) },
|
|
520
|
+
{ path: "/ctc/4a/surl", element: /* @__PURE__ */ e($, {}) },
|
|
521
|
+
{ path: "/ctc/dict", element: /* @__PURE__ */ e(at, {}) },
|
|
522
|
+
{ path: "/ctc/overview", element: /* @__PURE__ */ e(tt, {}) },
|
|
523
|
+
{ path: "/ctc/audit", element: /* @__PURE__ */ e(et, {}) },
|
|
524
|
+
{ path: "/ctc/webide", element: /* @__PURE__ */ e(W, {}) },
|
|
525
|
+
{ path: "/ctc/agent-team", element: /* @__PURE__ */ e(kt, {}) },
|
|
526
|
+
{ path: "/ctc/invitation", element: /* @__PURE__ */ e(St, {}) },
|
|
527
|
+
{ path: "/onboarding", element: /* @__PURE__ */ e(yt, {}) },
|
|
511
528
|
// ─── 智能中心 (/ai/*) ───
|
|
512
529
|
{ path: "/ai", element: /* @__PURE__ */ e(l, { to: "/ai/agent/app", replace: !0 }) },
|
|
513
530
|
{ path: "/ai/agent", element: /* @__PURE__ */ e(l, { to: "/ai/agent/app", replace: !0 }) },
|
|
514
|
-
{ path: "/ai/agent/app", element: /* @__PURE__ */ e(
|
|
515
|
-
{ path: "/ai/llm", element: /* @__PURE__ */ e(
|
|
531
|
+
{ path: "/ai/agent/app", element: /* @__PURE__ */ e(st, {}) },
|
|
532
|
+
{ path: "/ai/llm", element: /* @__PURE__ */ e(mt, {}) },
|
|
516
533
|
{ path: "/ai/llm/provider", element: /* @__PURE__ */ e(l, { to: "/ai/llm", replace: !0 }) },
|
|
517
534
|
{ path: "/ai/llm/model", element: /* @__PURE__ */ e(l, { to: "/ai/llm", replace: !0 }) },
|
|
518
535
|
{ path: "/ai/usage", element: /* @__PURE__ */ e(l, { to: "/ai/llm", replace: !0 }) },
|
|
519
|
-
{ path: "/ai/ak", element: /* @__PURE__ */ e(
|
|
520
|
-
{ path: "/ai/mcp", element: /* @__PURE__ */ e(
|
|
521
|
-
{ path: "/ai/skill", element: /* @__PURE__ */ e(
|
|
536
|
+
{ path: "/ai/ak", element: /* @__PURE__ */ e(rt, {}) },
|
|
537
|
+
{ path: "/ai/mcp", element: /* @__PURE__ */ e(ut, {}) },
|
|
538
|
+
{ path: "/ai/skill", element: /* @__PURE__ */ e(gt, {}) },
|
|
522
539
|
{ path: "/ai/oss", element: /* @__PURE__ */ e(l, { to: "/ai/oss/bucket", replace: !0 }) },
|
|
523
|
-
{ path: "/ai/oss/bucket", element: /* @__PURE__ */ e(
|
|
524
|
-
{ path: "/ai/oss/bucket/:bucketName", element: /* @__PURE__ */ e(
|
|
525
|
-
{ path: "/ai/trace", element: /* @__PURE__ */ e(
|
|
526
|
-
{ path: "/ai/trace/debug", element: /* @__PURE__ */ e(
|
|
527
|
-
{ path: "/ai/dashboard", element: /* @__PURE__ */ e(
|
|
540
|
+
{ path: "/ai/oss/bucket", element: /* @__PURE__ */ e(it, {}) },
|
|
541
|
+
{ path: "/ai/oss/bucket/:bucketName", element: /* @__PURE__ */ e(dt, {}) },
|
|
542
|
+
{ path: "/ai/trace", element: /* @__PURE__ */ e(U, {}) },
|
|
543
|
+
{ path: "/ai/trace/debug", element: /* @__PURE__ */ e(U, {}) },
|
|
544
|
+
{ path: "/ai/dashboard", element: /* @__PURE__ */ e(pt, {}) },
|
|
528
545
|
// 多 Agent 实例 / 模板市场已下线 (2026-10-22): 模板并入 Agent 应用页,
|
|
529
546
|
// 旧深链重定向, 别再回到独立菜单
|
|
530
547
|
{ path: "/ai/template", element: /* @__PURE__ */ e(l, { to: "/ai/agent/app", replace: !0 }) },
|
|
531
548
|
{ path: "/ai/agent-instance", element: /* @__PURE__ */ e(l, { to: "/ai/agent/app", replace: !0 }) },
|
|
532
549
|
{ path: "/ai/agent/instances", element: /* @__PURE__ */ e(l, { to: "/ai/agent/app", replace: !0 }) },
|
|
533
550
|
// ─── 配置中心 ───
|
|
534
|
-
{ path: "/config/*", element: /* @__PURE__ */ e(
|
|
551
|
+
{ path: "/config/*", element: /* @__PURE__ */ e(At, {}) },
|
|
535
552
|
// ─── 任务中心 ───
|
|
536
553
|
// 模块根路径要重定向到默认页:通配 /task/* 匹配不到裸 /task(matchPattern 要求
|
|
537
554
|
// 前缀带斜杠),落到 SystemShellEmpty 就是一句"请从左侧菜单选择模块"的空壳。
|
|
538
555
|
{ path: "/task", element: /* @__PURE__ */ e(l, { to: "/task/dashboard", replace: !0 }) },
|
|
539
|
-
{ path: "/task/*", element: /* @__PURE__ */ e(
|
|
556
|
+
{ path: "/task/*", element: /* @__PURE__ */ e(wt, {}) },
|
|
540
557
|
// ─── 流程中心 ───
|
|
541
558
|
{ path: "/workflow", element: /* @__PURE__ */ e(l, { to: "/workflow/dashboard", replace: !0 }) },
|
|
542
|
-
{ path: "/workflow/*", element: /* @__PURE__ */ e(
|
|
559
|
+
{ path: "/workflow/*", element: /* @__PURE__ */ e(ft, {}) },
|
|
543
560
|
// ─── 调度中心 ───
|
|
544
561
|
// 默认页是 jobs:z-schedule-component 的路由只有 jobs / group / log,没有 dashboard。
|
|
545
562
|
{ path: "/schedule", element: /* @__PURE__ */ e(l, { to: "/schedule/jobs", replace: !0 }) },
|
|
546
|
-
{ path: "/schedule/*", element: /* @__PURE__ */ e(
|
|
563
|
+
{ path: "/schedule/*", element: /* @__PURE__ */ e(Pt, {}) },
|
|
547
564
|
// ─── 密钥中心 ───
|
|
548
|
-
{ path: "/mist/*", element: /* @__PURE__ */ e(
|
|
565
|
+
{ path: "/mist/*", element: /* @__PURE__ */ e(vt, {}) },
|
|
549
566
|
// ─── 中间件孵化页 (大需求 004) — 主入口在运维工作台 (?mode=ops),此处兜住直链/刷新 ───
|
|
550
567
|
{ path: "/meta", element: /* @__PURE__ */ e(l, { to: "/meta/app", replace: !0 }) },
|
|
551
|
-
{ path: "/meta/*", element: /* @__PURE__ */ e(
|
|
568
|
+
{ path: "/meta/*", element: /* @__PURE__ */ e(Dt, {}) },
|
|
552
569
|
{ path: "/msg", element: /* @__PURE__ */ e(l, { to: "/msg/inbox", replace: !0 }) },
|
|
553
|
-
{ path: "/msg/*", element: /* @__PURE__ */ e(
|
|
570
|
+
{ path: "/msg/*", element: /* @__PURE__ */ e(Mt, {}) },
|
|
554
571
|
{ path: "/rpc", element: /* @__PURE__ */ e(l, { to: "/rpc/service", replace: !0 }) },
|
|
555
|
-
{ path: "/rpc/*", element: /* @__PURE__ */ e(
|
|
572
|
+
{ path: "/rpc/*", element: /* @__PURE__ */ e(Gt, {}) },
|
|
556
573
|
// ─── 订阅中心 ───
|
|
557
574
|
{ path: "/subscribe", element: /* @__PURE__ */ e(l, { to: "/subscribe/list", replace: !0 }) },
|
|
558
|
-
{ path: "/subscribe/*", element: /* @__PURE__ */ e(
|
|
575
|
+
{ path: "/subscribe/*", element: /* @__PURE__ */ e(It, {}) },
|
|
559
576
|
// ─── 产品工作台 z-product (2026-10-21 接入) ───
|
|
560
577
|
// /z-product/* 由 z-product 组件自己的 ProductApp 渲染(内部按 manifest 的绝对路径手工匹配,
|
|
561
578
|
// 不用嵌套 <Routes>:这里没有 Route 父上下文,绝对路径不会被再拼一次父前缀)。
|
|
562
579
|
// §14:z-product 的菜单 key / 路由 path 一律带产品名前缀(/z-product/xxx),
|
|
563
580
|
// 避免 /board、/products 这类短路径跟宿主自己的同名路由撞车。
|
|
564
|
-
|
|
565
|
-
|
|
581
|
+
// 产品域的默认落地页是工坊:它是「一个面板干完产品业务开发」的入口,
|
|
582
|
+
// 全景/蓝图是看板,不是第一动作。
|
|
583
|
+
{ path: "/z-product", element: /* @__PURE__ */ e(l, { to: "/z-product/atelier", replace: !0 }) },
|
|
584
|
+
{ path: "/z-product/*", element: /* @__PURE__ */ e(ge, { basePath: "/z-product" }) },
|
|
566
585
|
// 旧前缀 /product/* → 新前缀 /z-product/*:§14 前缀化之前的老 URL 仍可达(书签 / 旧分享链接)。
|
|
567
|
-
{ path: "/product", element: /* @__PURE__ */ e(l, { to: "/z-product/
|
|
568
|
-
{ path: "/product/*", element: /* @__PURE__ */ e(
|
|
586
|
+
{ path: "/product", element: /* @__PURE__ */ e(l, { to: "/z-product/atelier", replace: !0 }) },
|
|
587
|
+
{ path: "/product/*", element: /* @__PURE__ */ e(Xt, {}) },
|
|
569
588
|
// ─── 项目中心 ───
|
|
570
589
|
{ path: "/project", element: /* @__PURE__ */ e(l, { to: "/project/list", replace: !0 }) },
|
|
571
|
-
{ path: "/project/*", element: /* @__PURE__ */ e(
|
|
590
|
+
{ path: "/project/*", element: /* @__PURE__ */ e(Ct, {}) },
|
|
572
591
|
// ─── 脚本中心 (/script/*) — FEATURE052 ───
|
|
573
592
|
{ path: "/script", element: /* @__PURE__ */ e(l, { to: "/script/manage", replace: !0 }) },
|
|
574
|
-
{ path: "/script/manage", element: /* @__PURE__ */ e(
|
|
575
|
-
{ path: "/script/productization", element: /* @__PURE__ */ e(
|
|
593
|
+
{ path: "/script/manage", element: /* @__PURE__ */ e(ht, {}) },
|
|
594
|
+
{ path: "/script/productization", element: /* @__PURE__ */ e(bt, {}) },
|
|
576
595
|
// ─── 工具中心 (/z-tool/*) — FEATURE054 ───
|
|
577
596
|
{ path: "/z-tool", element: /* @__PURE__ */ e(l, { to: "/z-tool/curl", replace: !0 }) },
|
|
578
|
-
{ path: "/z-tool/curl", element: /* @__PURE__ */ e(
|
|
579
|
-
{ path: "/z-tool/webide", element: /* @__PURE__ */ e(
|
|
597
|
+
{ path: "/z-tool/curl", element: /* @__PURE__ */ e($, {}) },
|
|
598
|
+
{ path: "/z-tool/webide", element: /* @__PURE__ */ e(W, {}) },
|
|
580
599
|
// ─── 测试中心 (/test/*) — FEATURE061 ───
|
|
581
600
|
{ path: "/test", element: /* @__PURE__ */ e(l, { to: "/test/qa/dashboard", replace: !0 }) },
|
|
582
|
-
{ path: "/test/mock", element: /* @__PURE__ */ e(
|
|
601
|
+
{ path: "/test/mock", element: /* @__PURE__ */ e(Vt, {}) },
|
|
583
602
|
// QAApp 内部用 <Routes> 相对路由, 通配匹配后由 QAApp 自己接管子路径
|
|
584
|
-
{ path: "/test/qa", element: /* @__PURE__ */ e(
|
|
585
|
-
{ path: "/test/qa/*", element: /* @__PURE__ */ e(
|
|
603
|
+
{ path: "/test/qa", element: /* @__PURE__ */ e(K, {}) },
|
|
604
|
+
{ path: "/test/qa/*", element: /* @__PURE__ */ e(K, {}) },
|
|
586
605
|
// ─── 低代码 ───
|
|
587
606
|
// /lc/* 刻意不在这里注册。它早就迁到 src/lc/(TS 重写), 挂载点是
|
|
588
607
|
// main.jsx 的 <Route path="/lc/*" element={<ZTeamApp forcedMode="dev"/>}/>,
|
|
@@ -614,45 +633,45 @@ const K = [
|
|
|
614
633
|
// §14 铁律(菜单 key 必须带产品名前缀)针对的是**同一宿主内多套件共存**的撞车问题;
|
|
615
634
|
// 这里每个域的宿主前缀本身就已经是产品名(/config / /task / /workflow …),
|
|
616
635
|
// 且各域之间前缀互不相同 ⇒ 不存在撞车,不需要再加 z- 前缀。
|
|
617
|
-
{ path: "/config/docs", element: /* @__PURE__ */ e(
|
|
618
|
-
{ path: "/task/docs", element: /* @__PURE__ */ e(
|
|
619
|
-
{ path: "/workflow/docs", element: /* @__PURE__ */ e(
|
|
636
|
+
{ path: "/config/docs", element: /* @__PURE__ */ e(Nt, {}) },
|
|
637
|
+
{ path: "/task/docs", element: /* @__PURE__ */ e(Ot, {}) },
|
|
638
|
+
{ path: "/workflow/docs", element: /* @__PURE__ */ e(zt, {}) },
|
|
620
639
|
{ path: "/schedule/docs", element: /* @__PURE__ */ e(Lt, {}) },
|
|
621
|
-
{ path: "/mist/docs", element: /* @__PURE__ */ e(
|
|
622
|
-
{ path: "/meta/docs", element: /* @__PURE__ */ e(
|
|
623
|
-
{ path: "/msg/docs", element: /* @__PURE__ */ e(
|
|
624
|
-
{ path: "/rpc/docs", element: /* @__PURE__ */ e(
|
|
625
|
-
{ path: "/kb/docs", element: /* @__PURE__ */ e(
|
|
626
|
-
{ path: "/z-product/docs", element: /* @__PURE__ */ e(
|
|
627
|
-
{ path: "/oss/docs", element: /* @__PURE__ */ e(
|
|
628
|
-
{ path: "/vector/docs", element: /* @__PURE__ */ e(
|
|
629
|
-
{ path: "/graph/docs", element: /* @__PURE__ */ e(
|
|
630
|
-
{ path: "/gw/docs", element: /* @__PURE__ */ e(
|
|
631
|
-
{ path: "/cache/docs", element: /* @__PURE__ */ e(
|
|
632
|
-
{ path: "/mq/docs", element: /* @__PURE__ */ e(
|
|
633
|
-
{ path: "/ctc/docs", element: /* @__PURE__ */ e(
|
|
634
|
-
{ path: "/ai/docs", element: /* @__PURE__ */ e(
|
|
635
|
-
{ path: "/lc/docs", element: /* @__PURE__ */ e(
|
|
636
|
-
{ path: "/test/qa/docs", element: /* @__PURE__ */ e(
|
|
640
|
+
{ path: "/mist/docs", element: /* @__PURE__ */ e(Tt, {}) },
|
|
641
|
+
{ path: "/meta/docs", element: /* @__PURE__ */ e(Et, {}) },
|
|
642
|
+
{ path: "/msg/docs", element: /* @__PURE__ */ e(xt, {}) },
|
|
643
|
+
{ path: "/rpc/docs", element: /* @__PURE__ */ e(jt, {}) },
|
|
644
|
+
{ path: "/kb/docs", element: /* @__PURE__ */ e(Ht, {}) },
|
|
645
|
+
{ path: "/z-product/docs", element: /* @__PURE__ */ e(Rt, {}) },
|
|
646
|
+
{ path: "/oss/docs", element: /* @__PURE__ */ e(qt, {}) },
|
|
647
|
+
{ path: "/vector/docs", element: /* @__PURE__ */ e(Bt, {}) },
|
|
648
|
+
{ path: "/graph/docs", element: /* @__PURE__ */ e($t, {}) },
|
|
649
|
+
{ path: "/gw/docs", element: /* @__PURE__ */ e(Ut, {}) },
|
|
650
|
+
{ path: "/cache/docs", element: /* @__PURE__ */ e(Wt, {}) },
|
|
651
|
+
{ path: "/mq/docs", element: /* @__PURE__ */ e(Kt, {}) },
|
|
652
|
+
{ path: "/ctc/docs", element: /* @__PURE__ */ e(Ft, {}) },
|
|
653
|
+
{ path: "/ai/docs", element: /* @__PURE__ */ e(Qt, {}) },
|
|
654
|
+
{ path: "/lc/docs", element: /* @__PURE__ */ e(Yt, {}) },
|
|
655
|
+
{ path: "/test/qa/docs", element: /* @__PURE__ */ e(Zt, {}) }
|
|
637
656
|
];
|
|
638
|
-
function
|
|
639
|
-
for (const s of
|
|
657
|
+
function ea(o) {
|
|
658
|
+
for (const s of F)
|
|
640
659
|
if (s.path === o) return s.element;
|
|
641
|
-
for (const s of
|
|
642
|
-
if (
|
|
643
|
-
return /* @__PURE__ */ e(
|
|
660
|
+
for (const s of F)
|
|
661
|
+
if (ta(s.path, o)) return s.element;
|
|
662
|
+
return /* @__PURE__ */ e(Jt, {});
|
|
644
663
|
}
|
|
645
|
-
function
|
|
664
|
+
function ta(o, s) {
|
|
646
665
|
if (!o.includes("*") && !o.includes(":")) return !1;
|
|
647
666
|
const r = "^" + o.replace(/[.+?^${}()|[\]\\]/g, "\\$&").replace(/\*/g, ".*").replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g, "[^/]+") + "$";
|
|
648
667
|
return new RegExp(r).test(s);
|
|
649
668
|
}
|
|
650
|
-
function
|
|
651
|
-
|
|
652
|
-
const { pathname: o } = M(), s = o.startsWith("/test/"), r = g(() => o, [o]),
|
|
669
|
+
function ma() {
|
|
670
|
+
Q();
|
|
671
|
+
const { pathname: o } = M(), s = o.startsWith("/test/"), r = g(() => o, [o]), k = g(() => ea(o), [o]);
|
|
653
672
|
return /* @__PURE__ */ p("div", { className: h.shell, children: [
|
|
654
673
|
/* @__PURE__ */ e(
|
|
655
|
-
|
|
674
|
+
Ke,
|
|
656
675
|
{
|
|
657
676
|
activePathOverride: r,
|
|
658
677
|
menuOnly: !0,
|
|
@@ -660,11 +679,11 @@ function mn() {
|
|
|
660
679
|
}
|
|
661
680
|
),
|
|
662
681
|
/* @__PURE__ */ p("main", { className: h.main, children: [
|
|
663
|
-
/* @__PURE__ */ e(
|
|
664
|
-
/* @__PURE__ */ e(_e, { resetKey: o, children: /* @__PURE__ */ e(
|
|
682
|
+
/* @__PURE__ */ e(ke, {}),
|
|
683
|
+
/* @__PURE__ */ e(_e, { resetKey: o, children: /* @__PURE__ */ e(oe, { fallback: /* @__PURE__ */ e("div", { className: h.empty, children: "加载中…" }), children: k }) })
|
|
665
684
|
] })
|
|
666
685
|
] });
|
|
667
686
|
}
|
|
668
687
|
export {
|
|
669
|
-
|
|
688
|
+
ma as default
|
|
670
689
|
};
|