@yuku123/z-team-component 0.2.26 → 0.2.29
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/{InvitationManagementPage-CQeyYIFy.js → InvitationManagementPage-ByJuWwA_.js} +9 -9
- package/dist/{OnboardingPage-MFpxbJfG.js → OnboardingPage-D58h1JK_.js} +2 -2
- package/dist/ProjectApp-oUbzb0Io.js +3818 -0
- package/dist/SmartWorkbench.module-xRRmpTTw.js +85 -0
- package/dist/{SystemShell-BYTJWWuI.js → SystemShell-D4mGsT0X.js} +153 -151
- package/dist/{api-DenFi56H.js → api-3-Ykp2ll.js} +1 -1
- package/dist/index-B8mNsH88.js +1411 -0
- package/dist/{index-C7Wzkrlq.js → index-BwFEDHy3.js} +815 -767
- package/dist/{index-hPzswwk2.js → index-CDKg_qI5.js} +1 -1
- package/dist/index-CRac8IT2.js +914 -0
- package/dist/{index-BQJDuC7Q.js → index-D2S8FrNc.js} +1 -1
- package/dist/{index-EPyR_fx0.js → index-DOVOWiGU.js} +2448 -2468
- package/dist/{index-DZqp2pLG.js → index-DYDba1NC.js} +64 -55
- package/dist/index-Da3doGtf.js +1743 -0
- package/dist/{index-BjzLHR2n.js → index-Dky6GVc1.js} +1 -3
- package/dist/index.js +1 -1
- package/dist/pages.js +5 -4
- package/dist/z-team-component.css +2 -2
- package/package.json +2 -2
- package/dist/DebugPlayground-cxffrMgF.js +0 -15
- package/dist/ProjectApp-DQPIDWGP.js +0 -4591
- package/dist/SmartWorkbench.module-DzQskKT0.js +0 -85
- package/dist/index-Bsh58cwF.js +0 -975
- package/dist/index-CjtT4p5I.js +0 -1327
- package/dist/index-pfzY68PH.js +0 -1408
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import { jsxs as i, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { useNavigate as
|
|
3
|
-
import { useMemo as S, useState as P, Suspense as
|
|
4
|
-
import { DownOutlined as L, RightOutlined as z, AppstoreOutlined as
|
|
5
|
-
import { ProductApp as
|
|
6
|
-
const
|
|
7
|
-
container:
|
|
2
|
+
import { useNavigate as B, useLocation as G, Navigate as o } from "react-router-dom";
|
|
3
|
+
import { useMemo as S, useState as P, Suspense as X, lazy as m } from "react";
|
|
4
|
+
import { DownOutlined as L, RightOutlined as z, AppstoreOutlined as U, UserOutlined as ee, SafetyCertificateOutlined as C, CloudOutlined as f, DeploymentUnitOutlined as T, AuditOutlined as x, CodeOutlined as v, FolderOpenOutlined as te, DesktopOutlined as W, DashboardOutlined as y, ProfileOutlined as D, BookOutlined as ae, ApartmentOutlined as ne, FileImageOutlined as ce, FileTextOutlined as A, CalendarOutlined as b, ApiOutlined as le, ProjectOutlined as F, ClusterOutlined as oe, DatabaseOutlined as se, TeamOutlined as ie, BarChartOutlined as H } from "@ant-design/icons";
|
|
5
|
+
import { ProductApp as re } from "@yuku123/z-product-component";
|
|
6
|
+
const pe = "_container_wbul9_7", ue = "_sidebar_wbul9_17", me = "_menuList_wbul9_37", de = "_menuGroup_wbul9_44", he = "_menuGroupHeader_wbul9_48", be = "_menuGroupIcon_wbul9_66", _e = "_menuGroupLabel_wbul9_75", ge = "_menuGroupArrow_wbul9_80", ke = "_menuSubList_wbul9_87", ye = "_menuSubItem_wbul9_93", Se = "_menuSubItemActive_wbul9_110", Ae = "_menuSubItemIcon_wbul9_117", ve = "_menuSubGroup_wbul9_132", we = "_menuSubGroupHeader_wbul9_136", fe = "_menuSubGroupHeaderActive_wbul9_154", Ie = "_menuSubGroupLabel_wbul9_158", Ge = "_main_wbul9_169", Me = "_detailPanel_wbul9_179", Ne = "_detailHeader_wbul9_189", Oe = "_detailIcon_wbul9_196", Pe = "_detailTitle_wbul9_209", Le = "_detailDesc_wbul9_216", ze = "_detailAction_wbul9_223", Ce = "_goBtn_wbul9_228", Te = "_emptyState_wbul9_248", n = {
|
|
7
|
+
container: pe,
|
|
8
8
|
sidebar: ue,
|
|
9
|
-
menuList:
|
|
10
|
-
menuGroup:
|
|
11
|
-
menuGroupHeader:
|
|
12
|
-
menuGroupIcon:
|
|
13
|
-
menuGroupLabel:
|
|
14
|
-
menuGroupArrow:
|
|
15
|
-
menuSubList:
|
|
16
|
-
menuSubItem:
|
|
17
|
-
menuSubItemActive:
|
|
18
|
-
menuSubItemIcon:
|
|
19
|
-
menuSubGroup:
|
|
20
|
-
menuSubGroupHeader:
|
|
21
|
-
menuSubGroupHeaderActive:
|
|
22
|
-
menuSubGroupLabel:
|
|
23
|
-
main:
|
|
24
|
-
detailPanel:
|
|
25
|
-
detailHeader:
|
|
26
|
-
detailIcon:
|
|
27
|
-
detailTitle:
|
|
28
|
-
detailDesc:
|
|
29
|
-
detailAction:
|
|
9
|
+
menuList: me,
|
|
10
|
+
menuGroup: de,
|
|
11
|
+
menuGroupHeader: he,
|
|
12
|
+
menuGroupIcon: be,
|
|
13
|
+
menuGroupLabel: _e,
|
|
14
|
+
menuGroupArrow: ge,
|
|
15
|
+
menuSubList: ke,
|
|
16
|
+
menuSubItem: ye,
|
|
17
|
+
menuSubItemActive: Se,
|
|
18
|
+
menuSubItemIcon: Ae,
|
|
19
|
+
menuSubGroup: ve,
|
|
20
|
+
menuSubGroupHeader: we,
|
|
21
|
+
menuSubGroupHeaderActive: fe,
|
|
22
|
+
menuSubGroupLabel: Ie,
|
|
23
|
+
main: Ge,
|
|
24
|
+
detailPanel: Me,
|
|
25
|
+
detailHeader: Ne,
|
|
26
|
+
detailIcon: Oe,
|
|
27
|
+
detailTitle: Pe,
|
|
28
|
+
detailDesc: Le,
|
|
29
|
+
detailAction: ze,
|
|
30
30
|
goBtn: Ce,
|
|
31
|
-
emptyState:
|
|
31
|
+
emptyState: Te
|
|
32
32
|
};
|
|
33
33
|
function I(l) {
|
|
34
34
|
return l.flatMap((s) => [s, ...I(s.children ?? [])]);
|
|
35
35
|
}
|
|
36
|
-
const
|
|
36
|
+
const xe = {
|
|
37
37
|
title: "测试中心",
|
|
38
38
|
icon: /* @__PURE__ */ e(y, {}),
|
|
39
39
|
items: [
|
|
@@ -59,14 +59,14 @@ const De = {
|
|
|
59
59
|
{
|
|
60
60
|
key: "test-suite",
|
|
61
61
|
label: "测试套件",
|
|
62
|
-
icon: /* @__PURE__ */ e(
|
|
62
|
+
icon: /* @__PURE__ */ e(oe, {}),
|
|
63
63
|
path: "/test/qa/suites",
|
|
64
64
|
desc: "步骤编排与变量传递"
|
|
65
65
|
},
|
|
66
66
|
{
|
|
67
67
|
key: "test-plan",
|
|
68
68
|
label: "测试计划",
|
|
69
|
-
icon: /* @__PURE__ */ e(
|
|
69
|
+
icon: /* @__PURE__ */ e(F, {}),
|
|
70
70
|
path: "/test/qa/plans",
|
|
71
71
|
desc: "套件组合与环境绑定"
|
|
72
72
|
}
|
|
@@ -94,7 +94,7 @@ const De = {
|
|
|
94
94
|
{
|
|
95
95
|
key: "test-e2e",
|
|
96
96
|
label: "E2E 测试",
|
|
97
|
-
icon: /* @__PURE__ */ e(
|
|
97
|
+
icon: /* @__PURE__ */ e(W, {}),
|
|
98
98
|
path: "/test/qa/e2e",
|
|
99
99
|
desc: "浏览器自动化测试"
|
|
100
100
|
}
|
|
@@ -115,7 +115,7 @@ const De = {
|
|
|
115
115
|
{
|
|
116
116
|
key: "test-mock",
|
|
117
117
|
label: "Mock 平台",
|
|
118
|
-
icon: /* @__PURE__ */ e(
|
|
118
|
+
icon: /* @__PURE__ */ e(se, {}),
|
|
119
119
|
path: "/test/mock",
|
|
120
120
|
desc: "API Mock 服务管理"
|
|
121
121
|
}
|
|
@@ -143,7 +143,7 @@ const De = {
|
|
|
143
143
|
{
|
|
144
144
|
key: "test-eval-group",
|
|
145
145
|
label: "群聊评测",
|
|
146
|
-
icon: /* @__PURE__ */ e(
|
|
146
|
+
icon: /* @__PURE__ */ e(ie, {}),
|
|
147
147
|
path: "/test/evaluation/group",
|
|
148
148
|
desc: "群聊场景评测"
|
|
149
149
|
},
|
|
@@ -157,29 +157,29 @@ const De = {
|
|
|
157
157
|
]
|
|
158
158
|
}
|
|
159
159
|
]
|
|
160
|
-
},
|
|
160
|
+
}, K = [
|
|
161
161
|
{
|
|
162
162
|
title: "认证与权限",
|
|
163
|
-
icon: /* @__PURE__ */ e(
|
|
163
|
+
icon: /* @__PURE__ */ e(C, {}),
|
|
164
164
|
items: [
|
|
165
165
|
{
|
|
166
166
|
key: "4a-account",
|
|
167
167
|
label: "账号管理",
|
|
168
|
-
icon: /* @__PURE__ */ e(
|
|
168
|
+
icon: /* @__PURE__ */ e(ee, {}),
|
|
169
169
|
path: "/ctc/4a/account",
|
|
170
170
|
desc: "用户账号创建、编辑与状态管理"
|
|
171
171
|
},
|
|
172
172
|
{
|
|
173
173
|
key: "4a-role",
|
|
174
174
|
label: "角色管理",
|
|
175
|
-
icon: /* @__PURE__ */ e(
|
|
175
|
+
icon: /* @__PURE__ */ e(C, {}),
|
|
176
176
|
path: "/ctc/4a/role",
|
|
177
177
|
desc: "角色定义与权限分配"
|
|
178
178
|
},
|
|
179
179
|
{
|
|
180
180
|
key: "4a-app",
|
|
181
181
|
label: "应用管理",
|
|
182
|
-
icon: /* @__PURE__ */ e(
|
|
182
|
+
icon: /* @__PURE__ */ e(U, {}),
|
|
183
183
|
path: "/ctc/4a/application",
|
|
184
184
|
desc: "应用注册、资源与权限配置"
|
|
185
185
|
},
|
|
@@ -193,7 +193,7 @@ const De = {
|
|
|
193
193
|
{
|
|
194
194
|
key: "4a-org",
|
|
195
195
|
label: "组织管理",
|
|
196
|
-
icon: /* @__PURE__ */ e(
|
|
196
|
+
icon: /* @__PURE__ */ e(T, {}),
|
|
197
197
|
path: "/ctc/4a/org",
|
|
198
198
|
desc: "组织架构与部门管理"
|
|
199
199
|
},
|
|
@@ -221,14 +221,14 @@ const De = {
|
|
|
221
221
|
{
|
|
222
222
|
key: "tool-curl",
|
|
223
223
|
label: "短链管理",
|
|
224
|
-
icon: /* @__PURE__ */ e(
|
|
224
|
+
icon: /* @__PURE__ */ e(te, {}),
|
|
225
225
|
path: "/z-tool/curl",
|
|
226
226
|
desc: "短链接创建与管理"
|
|
227
227
|
},
|
|
228
228
|
{
|
|
229
229
|
key: "tool-webide",
|
|
230
230
|
label: "WebIDE 容器",
|
|
231
|
-
icon: /* @__PURE__ */ e(
|
|
231
|
+
icon: /* @__PURE__ */ e(W, {}),
|
|
232
232
|
path: "/z-tool/webide",
|
|
233
233
|
desc: "在线 IDE 代码编辑器"
|
|
234
234
|
}
|
|
@@ -255,28 +255,28 @@ const De = {
|
|
|
255
255
|
{
|
|
256
256
|
key: "product-glossary",
|
|
257
257
|
label: "统一语言",
|
|
258
|
-
icon: /* @__PURE__ */ e(
|
|
258
|
+
icon: /* @__PURE__ */ e(ae, {}),
|
|
259
259
|
path: "/z-product/glossary",
|
|
260
260
|
desc: "术语仲裁表:标准词/别名/适用范围/反例"
|
|
261
261
|
},
|
|
262
262
|
{
|
|
263
263
|
key: "product-concept",
|
|
264
264
|
label: "领域模型",
|
|
265
|
-
icon: /* @__PURE__ */ e(
|
|
265
|
+
icon: /* @__PURE__ */ e(ne, {}),
|
|
266
266
|
path: "/z-product/concept-model",
|
|
267
267
|
desc: "概念与关系画布(四种投影)"
|
|
268
268
|
},
|
|
269
269
|
{
|
|
270
270
|
key: "product-scenarios",
|
|
271
271
|
label: "用户链路",
|
|
272
|
-
icon: /* @__PURE__ */ e(
|
|
272
|
+
icon: /* @__PURE__ */ e(T, {}),
|
|
273
273
|
path: "/z-product/scenarios",
|
|
274
274
|
desc: "端到端场景:步骤引用领域概念"
|
|
275
275
|
},
|
|
276
276
|
{
|
|
277
277
|
key: "product-designs",
|
|
278
278
|
label: "设计稿 ⇄ 模型",
|
|
279
|
-
icon: /* @__PURE__ */ e(
|
|
279
|
+
icon: /* @__PURE__ */ e(ce, {}),
|
|
280
280
|
path: "/z-product/designs",
|
|
281
281
|
desc: "设计与认知的双向收敛回路"
|
|
282
282
|
}
|
|
@@ -310,80 +310,80 @@ const De = {
|
|
|
310
310
|
{
|
|
311
311
|
key: "subscribe",
|
|
312
312
|
label: "订阅中心",
|
|
313
|
-
icon: /* @__PURE__ */ e(
|
|
313
|
+
icon: /* @__PURE__ */ e(le, {}),
|
|
314
314
|
path: "/subscribe/list",
|
|
315
315
|
desc: "第三方数据订阅与拉取"
|
|
316
316
|
},
|
|
317
317
|
{
|
|
318
318
|
key: "project",
|
|
319
319
|
label: "项目中心",
|
|
320
|
-
icon: /* @__PURE__ */ e(
|
|
320
|
+
icon: /* @__PURE__ */ e(F, {}),
|
|
321
321
|
path: "/project/list",
|
|
322
322
|
desc: "项目创建与进度管理"
|
|
323
323
|
}
|
|
324
324
|
]
|
|
325
325
|
}
|
|
326
|
-
], w = [...
|
|
327
|
-
function
|
|
326
|
+
], w = [...K, xe];
|
|
327
|
+
function De({
|
|
328
328
|
activePathOverride: l,
|
|
329
329
|
menuOnly: s = !1,
|
|
330
330
|
visibleGroups: r
|
|
331
331
|
} = {}) {
|
|
332
|
-
const _ =
|
|
333
|
-
() => r ? w.filter((
|
|
332
|
+
const _ = B(), { pathname: M } = G(), g = S(
|
|
333
|
+
() => r ? w.filter((t) => r.includes(t.title)) : K,
|
|
334
334
|
[r]
|
|
335
|
-
), [
|
|
336
|
-
new Set(w.map((
|
|
337
|
-
), [N,
|
|
335
|
+
), [Z, Q] = P(
|
|
336
|
+
new Set(w.map((t) => t.title))
|
|
337
|
+
), [N, Y] = P(
|
|
338
338
|
() => new Set(
|
|
339
|
-
w.flatMap((
|
|
339
|
+
w.flatMap((t) => t.items).filter((t) => t.children).map((t) => t.key)
|
|
340
340
|
)
|
|
341
341
|
), k = S(() => {
|
|
342
342
|
var p;
|
|
343
|
-
const
|
|
343
|
+
const t = l ?? M;
|
|
344
344
|
return ((p = g.flatMap((c) => I(c.items)).find(
|
|
345
|
-
(c) => c.path ===
|
|
345
|
+
(c) => c.path === t
|
|
346
346
|
)) == null ? void 0 : p.key) ?? null;
|
|
347
|
-
}, [l, M, g]),
|
|
348
|
-
|
|
347
|
+
}, [l, M, g]), J = (t) => {
|
|
348
|
+
Q((p) => {
|
|
349
349
|
const c = new Set(p);
|
|
350
|
-
return c.has(
|
|
350
|
+
return c.has(t) ? c.delete(t) : c.add(t), c;
|
|
351
351
|
});
|
|
352
|
-
},
|
|
353
|
-
|
|
352
|
+
}, V = (t) => {
|
|
353
|
+
Y((p) => {
|
|
354
354
|
const c = new Set(p);
|
|
355
|
-
return c.has(
|
|
355
|
+
return c.has(t) ? c.delete(t) : c.add(t), c;
|
|
356
356
|
});
|
|
357
|
-
}, O = (
|
|
358
|
-
|
|
359
|
-
}, d = g.flatMap((
|
|
360
|
-
(
|
|
357
|
+
}, O = (t) => {
|
|
358
|
+
t.path && _(t.path);
|
|
359
|
+
}, d = g.flatMap((t) => I(t.items)).find(
|
|
360
|
+
(t) => t.key === k
|
|
361
361
|
);
|
|
362
362
|
return /* @__PURE__ */ i("div", { className: n.container, children: [
|
|
363
|
-
/* @__PURE__ */ e("aside", { className: n.sidebar, children: /* @__PURE__ */ e("nav", { className: n.menuList, children: g.map((
|
|
364
|
-
const p =
|
|
363
|
+
/* @__PURE__ */ e("aside", { className: n.sidebar, children: /* @__PURE__ */ e("nav", { className: n.menuList, children: g.map((t) => {
|
|
364
|
+
const p = Z.has(t.title);
|
|
365
365
|
return /* @__PURE__ */ i("div", { className: n.menuGroup, children: [
|
|
366
366
|
/* @__PURE__ */ i(
|
|
367
367
|
"div",
|
|
368
368
|
{
|
|
369
369
|
className: n.menuGroupHeader,
|
|
370
|
-
onClick: () =>
|
|
370
|
+
onClick: () => J(t.title),
|
|
371
371
|
children: [
|
|
372
|
-
/* @__PURE__ */ e("span", { className: n.menuGroupIcon, children:
|
|
373
|
-
/* @__PURE__ */ e("span", { className: n.menuGroupLabel, children:
|
|
372
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupIcon, children: t.icon }),
|
|
373
|
+
/* @__PURE__ */ e("span", { className: n.menuGroupLabel, children: t.title }),
|
|
374
374
|
/* @__PURE__ */ e("span", { className: n.menuGroupArrow, children: p ? /* @__PURE__ */ e(L, {}) : /* @__PURE__ */ e(z, {}) })
|
|
375
375
|
]
|
|
376
376
|
}
|
|
377
377
|
),
|
|
378
|
-
p && /* @__PURE__ */ e("ul", { className: n.menuSubList, children:
|
|
378
|
+
p && /* @__PURE__ */ e("ul", { className: n.menuSubList, children: t.items.map(
|
|
379
379
|
(c) => c.children ? (
|
|
380
380
|
/* 子菜单分组头 — 可折叠; active 项落在其中时高亮 */
|
|
381
381
|
/* @__PURE__ */ i("li", { className: n.menuSubGroup, children: [
|
|
382
382
|
/* @__PURE__ */ i(
|
|
383
383
|
"div",
|
|
384
384
|
{
|
|
385
|
-
className: `${n.menuSubGroupHeader} ${c.children.some((
|
|
386
|
-
onClick: () =>
|
|
385
|
+
className: `${n.menuSubGroupHeader} ${c.children.some((u) => u.key === k) ? n.menuSubGroupHeaderActive : ""}`,
|
|
386
|
+
onClick: () => V(c.key),
|
|
387
387
|
children: [
|
|
388
388
|
/* @__PURE__ */ e("span", { className: n.menuGroupIcon, children: c.icon }),
|
|
389
389
|
/* @__PURE__ */ e("span", { className: n.menuSubGroupLabel, children: c.label }),
|
|
@@ -391,23 +391,23 @@ function He({
|
|
|
391
391
|
]
|
|
392
392
|
}
|
|
393
393
|
),
|
|
394
|
-
N.has(c.key) && /* @__PURE__ */ e("ul", { className: n.menuSubList, children: c.children.map((
|
|
394
|
+
N.has(c.key) && /* @__PURE__ */ e("ul", { className: n.menuSubList, children: c.children.map((u) => /* @__PURE__ */ i(
|
|
395
395
|
"li",
|
|
396
396
|
{
|
|
397
|
-
className: `${n.menuSubItem} ${k ===
|
|
398
|
-
onClick: () => O(
|
|
397
|
+
className: `${n.menuSubItem} ${k === u.key ? n.menuSubItemActive : ""}`,
|
|
398
|
+
onClick: () => O(u),
|
|
399
399
|
children: [
|
|
400
400
|
/* @__PURE__ */ e(
|
|
401
401
|
"span",
|
|
402
402
|
{
|
|
403
403
|
className: n.menuSubItemIcon,
|
|
404
|
-
children:
|
|
404
|
+
children: u.icon
|
|
405
405
|
}
|
|
406
406
|
),
|
|
407
|
-
/* @__PURE__ */ e("span", { children:
|
|
407
|
+
/* @__PURE__ */ e("span", { children: u.label })
|
|
408
408
|
]
|
|
409
409
|
},
|
|
410
|
-
|
|
410
|
+
u.key
|
|
411
411
|
)) })
|
|
412
412
|
] }, c.key)
|
|
413
413
|
) : /* @__PURE__ */ i(
|
|
@@ -423,7 +423,7 @@ function He({
|
|
|
423
423
|
c.key
|
|
424
424
|
)
|
|
425
425
|
) })
|
|
426
|
-
] },
|
|
426
|
+
] }, t.title);
|
|
427
427
|
}) }) }),
|
|
428
428
|
s ? null : /* @__PURE__ */ e("main", { className: n.main, children: d ? /* @__PURE__ */ i("div", { className: n.detailPanel, children: [
|
|
429
429
|
/* @__PURE__ */ i("div", { className: n.detailHeader, children: [
|
|
@@ -445,112 +445,114 @@ function He({
|
|
|
445
445
|
}
|
|
446
446
|
) })
|
|
447
447
|
] }) : /* @__PURE__ */ i("div", { className: n.emptyState, children: [
|
|
448
|
-
/* @__PURE__ */ e(
|
|
448
|
+
/* @__PURE__ */ e(U, { style: { fontSize: 48, color: "#ccc" } }),
|
|
449
449
|
/* @__PURE__ */ e("p", { children: "点击左侧菜单进入对应功能模块" })
|
|
450
450
|
] }) })
|
|
451
451
|
] });
|
|
452
452
|
}
|
|
453
|
-
const
|
|
454
|
-
shell:
|
|
455
|
-
main:
|
|
456
|
-
empty:
|
|
457
|
-
emptyIcon:
|
|
458
|
-
emptyText:
|
|
459
|
-
},
|
|
460
|
-
function
|
|
453
|
+
const He = "_shell_10jrt_6", je = "_main_10jrt_21", Ee = "_empty_10jrt_31", qe = "_emptyIcon_10jrt_41", Re = "_emptyText_10jrt_46", h = {
|
|
454
|
+
shell: He,
|
|
455
|
+
main: je,
|
|
456
|
+
empty: Ee,
|
|
457
|
+
emptyIcon: qe,
|
|
458
|
+
emptyText: Re
|
|
459
|
+
}, a = (l, s) => m(() => l().then((r) => ({ default: r[s] }))), $e = a(() => import("@yuku123/z-ctc-component"), "AccountManagement"), Be = a(() => import("@yuku123/z-ctc-component"), "ApplicationManagement"), Ue = a(() => import("@yuku123/z-ctc-component"), "AuditPage"), We = a(() => import("@yuku123/z-ctc-component"), "CtcOverview"), Fe = a(() => import("@yuku123/z-ctc-component"), "DictPage"), Ke = a(() => import("@yuku123/z-ctc-component"), "OrgPage"), Ze = a(() => import("@yuku123/z-ctc-component"), "PermissionManagement"), Qe = a(() => import("@yuku123/z-ctc-component"), "RoleManagement"), j = a(() => import("@yuku123/z-ctc-component"), "SurlManagement"), Ye = a(() => import("@yuku123/z-ctc-component"), "TenantManagement"), Je = a(() => import("@yuku123/z-agent-component"), "AgentAppList"), Ve = a(() => import("@yuku123/z-agent-component"), "AgentDashboard"), Xe = a(() => import("@yuku123/z-agent-component"), "AkManage"), et = a(() => import("@yuku123/z-agent-component"), "BucketList"), tt = a(() => import("@yuku123/z-agent-component"), "LlmManage"), at = a(() => import("@yuku123/z-agent-component"), "McpPage"), nt = a(() => import("@yuku123/z-agent-component"), "ObjectBrowser"), ct = a(() => import("@yuku123/z-agent-component"), "ScriptCenterPage"), lt = a(() => import("@yuku123/z-agent-component"), "ScriptProductizationPage"), ot = a(() => import("@yuku123/z-agent-component"), "SkillMarket"), st = a(() => import("./index-DYDba1NC.js"), "AgentTeamIM"), E = a(() => import("./index-DYDba1NC.js"), "DebugPlayground"), it = a(() => import("./index-DYDba1NC.js"), "Overview"), q = a(() => import("./index-DYDba1NC.js"), "Webide"), rt = m(() => import("./OnboardingPage-D58h1JK_.js")), pt = m(() => import("./InvitationManagementPage-ByJuWwA_.js")), ut = a(() => import("@yuku123/z-config-component"), "ConfigApp"), mt = a(() => import("@yuku123/z-task-component"), "TaskApp"), dt = a(() => import("@yuku123/z-wf-component"), "WorkflowApp"), ht = a(() => import("@yuku123/z-schedule-component"), "ScheduleApp"), bt = a(() => import("@yuku123/z-mist-component"), "MistApp"), _t = a(() => import("@yuku123/z-meta-component"), "MetaApp"), gt = a(() => import("@yuku123/z-msg-component"), "MsgApp"), kt = a(() => import("@yuku123/z-rpc-component"), "RpcApp"), yt = m(() => import("./ProjectApp-oUbzb0Io.js").then((l) => l.j)), St = m(() => import("./ProjectApp-oUbzb0Io.js").then((l) => l.k)), At = m(() => import("./ProjectApp-oUbzb0Io.js").then((l) => l.h)), R = m(() => import("@yuku123/z-qa-component"));
|
|
460
|
+
function vt() {
|
|
461
461
|
return /* @__PURE__ */ i("div", { className: h.empty, children: [
|
|
462
462
|
/* @__PURE__ */ e("div", { className: h.emptyIcon, children: "📋" }),
|
|
463
463
|
/* @__PURE__ */ e("div", { className: h.emptyText, children: "请从左侧菜单选择模块" })
|
|
464
464
|
] });
|
|
465
465
|
}
|
|
466
|
-
function
|
|
466
|
+
function wt() {
|
|
467
467
|
const { pathname: l } = G();
|
|
468
468
|
return /* @__PURE__ */ e(o, { to: l.replace(/^\/product/, "/z-product"), replace: !0 });
|
|
469
469
|
}
|
|
470
|
-
const
|
|
470
|
+
const $ = [
|
|
471
471
|
// ─── 顶层 / 概览 ───
|
|
472
|
-
{ path: "/overview", element: /* @__PURE__ */ e(
|
|
472
|
+
{ path: "/overview", element: /* @__PURE__ */ e(it, {}) },
|
|
473
473
|
// ─── 4A 中心 (/ctc/*) ───
|
|
474
474
|
{ path: "/ctc", element: /* @__PURE__ */ e(o, { to: "/ctc/4a/account", replace: !0 }) },
|
|
475
|
-
{ path: "/ctc/4a/account", element: /* @__PURE__ */ e(
|
|
476
|
-
{ path: "/ctc/4a/role", element: /* @__PURE__ */ e(
|
|
477
|
-
{ path: "/ctc/4a/application", element: /* @__PURE__ */ e(
|
|
478
|
-
{ path: "/ctc/4a/tenant", element: /* @__PURE__ */ e(
|
|
479
|
-
{ path: "/ctc/4a/org", element: /* @__PURE__ */ e(
|
|
480
|
-
{ path: "/ctc/4a/permission", element: /* @__PURE__ */ e(
|
|
475
|
+
{ path: "/ctc/4a/account", element: /* @__PURE__ */ e($e, {}) },
|
|
476
|
+
{ path: "/ctc/4a/role", element: /* @__PURE__ */ e(Qe, {}) },
|
|
477
|
+
{ path: "/ctc/4a/application", element: /* @__PURE__ */ e(Be, {}) },
|
|
478
|
+
{ path: "/ctc/4a/tenant", element: /* @__PURE__ */ e(Ye, {}) },
|
|
479
|
+
{ path: "/ctc/4a/org", element: /* @__PURE__ */ e(Ke, {}) },
|
|
480
|
+
{ path: "/ctc/4a/permission", element: /* @__PURE__ */ e(Ze, {}) },
|
|
481
481
|
{ path: "/ctc/4a/surl", element: /* @__PURE__ */ e(j, {}) },
|
|
482
|
-
{ path: "/ctc/dict", element: /* @__PURE__ */ e(
|
|
483
|
-
{ path: "/ctc/overview", element: /* @__PURE__ */ e(
|
|
484
|
-
{ path: "/ctc/audit", element: /* @__PURE__ */ e(
|
|
485
|
-
{ path: "/ctc/webide", element: /* @__PURE__ */ e(
|
|
486
|
-
{ path: "/ctc/agent-team", element: /* @__PURE__ */ e(
|
|
487
|
-
{ path: "/ctc/invitation", element: /* @__PURE__ */ e(
|
|
488
|
-
{ path: "/onboarding", element: /* @__PURE__ */ e(
|
|
482
|
+
{ path: "/ctc/dict", element: /* @__PURE__ */ e(Fe, {}) },
|
|
483
|
+
{ path: "/ctc/overview", element: /* @__PURE__ */ e(We, {}) },
|
|
484
|
+
{ path: "/ctc/audit", element: /* @__PURE__ */ e(Ue, {}) },
|
|
485
|
+
{ path: "/ctc/webide", element: /* @__PURE__ */ e(q, {}) },
|
|
486
|
+
{ path: "/ctc/agent-team", element: /* @__PURE__ */ e(st, {}) },
|
|
487
|
+
{ path: "/ctc/invitation", element: /* @__PURE__ */ e(pt, {}) },
|
|
488
|
+
{ path: "/onboarding", element: /* @__PURE__ */ e(rt, {}) },
|
|
489
489
|
// ─── 智能中心 (/ai/*) ───
|
|
490
490
|
{ path: "/ai", element: /* @__PURE__ */ e(o, { to: "/ai/agent/app", replace: !0 }) },
|
|
491
491
|
{ path: "/ai/agent", element: /* @__PURE__ */ e(o, { to: "/ai/agent/app", replace: !0 }) },
|
|
492
|
-
{ path: "/ai/agent/app", element: /* @__PURE__ */ e(
|
|
493
|
-
{ path: "/ai/llm", element: /* @__PURE__ */ e(
|
|
492
|
+
{ path: "/ai/agent/app", element: /* @__PURE__ */ e(Je, {}) },
|
|
493
|
+
{ path: "/ai/llm", element: /* @__PURE__ */ e(tt, {}) },
|
|
494
494
|
{ path: "/ai/llm/provider", element: /* @__PURE__ */ e(o, { to: "/ai/llm", replace: !0 }) },
|
|
495
495
|
{ path: "/ai/llm/model", element: /* @__PURE__ */ e(o, { to: "/ai/llm", replace: !0 }) },
|
|
496
496
|
{ path: "/ai/usage", element: /* @__PURE__ */ e(o, { to: "/ai/llm", replace: !0 }) },
|
|
497
|
-
{ path: "/ai/ak", element: /* @__PURE__ */ e(
|
|
498
|
-
{ path: "/ai/mcp", element: /* @__PURE__ */ e(
|
|
499
|
-
{ path: "/ai/skill", element: /* @__PURE__ */ e(
|
|
497
|
+
{ path: "/ai/ak", element: /* @__PURE__ */ e(Xe, {}) },
|
|
498
|
+
{ path: "/ai/mcp", element: /* @__PURE__ */ e(at, {}) },
|
|
499
|
+
{ path: "/ai/skill", element: /* @__PURE__ */ e(ot, {}) },
|
|
500
500
|
{ path: "/ai/oss", element: /* @__PURE__ */ e(o, { to: "/ai/oss/bucket", replace: !0 }) },
|
|
501
|
-
{ path: "/ai/oss/bucket", element: /* @__PURE__ */ e(
|
|
502
|
-
{ path: "/ai/oss/bucket/:bucketName", element: /* @__PURE__ */ e(
|
|
503
|
-
{ path: "/ai/trace", element: /* @__PURE__ */ e(
|
|
504
|
-
{ path: "/ai/trace/debug", element: /* @__PURE__ */ e(
|
|
505
|
-
{ path: "/ai/dashboard", element: /* @__PURE__ */ e(
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
{ path: "/ai/
|
|
501
|
+
{ path: "/ai/oss/bucket", element: /* @__PURE__ */ e(et, {}) },
|
|
502
|
+
{ path: "/ai/oss/bucket/:bucketName", element: /* @__PURE__ */ e(nt, {}) },
|
|
503
|
+
{ path: "/ai/trace", element: /* @__PURE__ */ e(E, {}) },
|
|
504
|
+
{ path: "/ai/trace/debug", element: /* @__PURE__ */ e(E, {}) },
|
|
505
|
+
{ path: "/ai/dashboard", element: /* @__PURE__ */ e(Ve, {}) },
|
|
506
|
+
// 多 Agent 实例 / 模板市场已下线 (2026-10-22): 模板并入 Agent 应用页,
|
|
507
|
+
// 旧深链重定向, 别再回到独立菜单
|
|
508
|
+
{ path: "/ai/template", element: /* @__PURE__ */ e(o, { to: "/ai/agent/app", replace: !0 }) },
|
|
509
|
+
{ path: "/ai/agent-instance", element: /* @__PURE__ */ e(o, { to: "/ai/agent/app", replace: !0 }) },
|
|
510
|
+
{ path: "/ai/agent/instances", element: /* @__PURE__ */ e(o, { to: "/ai/agent/app", replace: !0 }) },
|
|
509
511
|
// ─── 配置中心 ───
|
|
510
|
-
{ path: "/config/*", element: /* @__PURE__ */ e(
|
|
512
|
+
{ path: "/config/*", element: /* @__PURE__ */ e(ut, {}) },
|
|
511
513
|
// ─── 任务中心 ───
|
|
512
|
-
{ path: "/task/*", element: /* @__PURE__ */ e(
|
|
514
|
+
{ path: "/task/*", element: /* @__PURE__ */ e(mt, {}) },
|
|
513
515
|
// ─── 流程中心 ───
|
|
514
|
-
{ path: "/workflow/*", element: /* @__PURE__ */ e(
|
|
516
|
+
{ path: "/workflow/*", element: /* @__PURE__ */ e(dt, {}) },
|
|
515
517
|
// ─── 调度中心 ───
|
|
516
|
-
{ path: "/schedule/*", element: /* @__PURE__ */ e(
|
|
518
|
+
{ path: "/schedule/*", element: /* @__PURE__ */ e(ht, {}) },
|
|
517
519
|
// ─── 密钥中心 ───
|
|
518
|
-
{ path: "/mist/*", element: /* @__PURE__ */ e(
|
|
520
|
+
{ path: "/mist/*", element: /* @__PURE__ */ e(bt, {}) },
|
|
519
521
|
// ─── 中间件孵化页 (大需求 004) — 主入口在运维工作台 (?mode=ops),此处兜住直链/刷新 ───
|
|
520
522
|
{ path: "/meta", element: /* @__PURE__ */ e(o, { to: "/meta/app", replace: !0 }) },
|
|
521
|
-
{ path: "/meta/*", element: /* @__PURE__ */ e(
|
|
523
|
+
{ path: "/meta/*", element: /* @__PURE__ */ e(_t, {}) },
|
|
522
524
|
{ path: "/msg", element: /* @__PURE__ */ e(o, { to: "/msg/inbox", replace: !0 }) },
|
|
523
|
-
{ path: "/msg/*", element: /* @__PURE__ */ e(
|
|
525
|
+
{ path: "/msg/*", element: /* @__PURE__ */ e(gt, {}) },
|
|
524
526
|
{ path: "/rpc", element: /* @__PURE__ */ e(o, { to: "/rpc/service", replace: !0 }) },
|
|
525
|
-
{ path: "/rpc/*", element: /* @__PURE__ */ e(
|
|
527
|
+
{ path: "/rpc/*", element: /* @__PURE__ */ e(kt, {}) },
|
|
526
528
|
// ─── 订阅中心 ───
|
|
527
|
-
{ path: "/subscribe/*", element: /* @__PURE__ */ e(
|
|
529
|
+
{ path: "/subscribe/*", element: /* @__PURE__ */ e(yt, {}) },
|
|
528
530
|
// ─── 产品工作台 z-product (2026-10-21 接入) ───
|
|
529
531
|
// /z-product/* 由 z-product 组件自己的 ProductApp 渲染(内部按 manifest 的绝对路径手工匹配,
|
|
530
532
|
// 不用嵌套 <Routes>:这里没有 Route 父上下文,绝对路径不会被再拼一次父前缀)。
|
|
531
533
|
// §14:z-product 的菜单 key / 路由 path 一律带产品名前缀(/z-product/xxx),
|
|
532
534
|
// 避免 /board、/products 这类短路径跟宿主自己的同名路由撞车。
|
|
533
535
|
{ path: "/z-product", element: /* @__PURE__ */ e(o, { to: "/z-product/board", replace: !0 }) },
|
|
534
|
-
{ path: "/z-product/*", element: /* @__PURE__ */ e(
|
|
536
|
+
{ path: "/z-product/*", element: /* @__PURE__ */ e(re, { basePath: "/z-product" }) },
|
|
535
537
|
// 旧前缀 /product/* → 新前缀 /z-product/*:§14 前缀化之前的老 URL 仍可达(书签 / 旧分享链接)。
|
|
536
538
|
{ path: "/product", element: /* @__PURE__ */ e(o, { to: "/z-product/board", replace: !0 }) },
|
|
537
|
-
{ path: "/product/*", element: /* @__PURE__ */ e(
|
|
539
|
+
{ path: "/product/*", element: /* @__PURE__ */ e(wt, {}) },
|
|
538
540
|
// ─── 项目中心 ───
|
|
539
|
-
{ path: "/project/*", element: /* @__PURE__ */ e(
|
|
541
|
+
{ path: "/project/*", element: /* @__PURE__ */ e(St, {}) },
|
|
540
542
|
// ─── 脚本中心 (/script/*) — FEATURE052 ───
|
|
541
543
|
{ path: "/script", element: /* @__PURE__ */ e(o, { to: "/script/manage", replace: !0 }) },
|
|
542
|
-
{ path: "/script/manage", element: /* @__PURE__ */ e(
|
|
543
|
-
{ path: "/script/productization", element: /* @__PURE__ */ e(
|
|
544
|
+
{ path: "/script/manage", element: /* @__PURE__ */ e(ct, {}) },
|
|
545
|
+
{ path: "/script/productization", element: /* @__PURE__ */ e(lt, {}) },
|
|
544
546
|
// ─── 工具中心 (/z-tool/*) — FEATURE054 ───
|
|
545
547
|
{ path: "/z-tool", element: /* @__PURE__ */ e(o, { to: "/z-tool/curl", replace: !0 }) },
|
|
546
548
|
{ path: "/z-tool/curl", element: /* @__PURE__ */ e(j, {}) },
|
|
547
|
-
{ path: "/z-tool/webide", element: /* @__PURE__ */ e(
|
|
549
|
+
{ path: "/z-tool/webide", element: /* @__PURE__ */ e(q, {}) },
|
|
548
550
|
// ─── 测试中心 (/test/*) — FEATURE061 ───
|
|
549
551
|
{ path: "/test", element: /* @__PURE__ */ e(o, { to: "/test/qa/dashboard", replace: !0 }) },
|
|
550
|
-
{ path: "/test/mock", element: /* @__PURE__ */ e(
|
|
552
|
+
{ path: "/test/mock", element: /* @__PURE__ */ e(At, {}) },
|
|
551
553
|
// QAApp 内部用 <Routes> 相对路由, 通配匹配后由 QAApp 自己接管子路径
|
|
552
|
-
{ path: "/test/qa", element: /* @__PURE__ */ e(
|
|
553
|
-
{ path: "/test/qa/*", element: /* @__PURE__ */ e(
|
|
554
|
+
{ path: "/test/qa", element: /* @__PURE__ */ e(R, {}) },
|
|
555
|
+
{ path: "/test/qa/*", element: /* @__PURE__ */ e(R, {}) },
|
|
554
556
|
// ─── 低代码 ───
|
|
555
557
|
// /lc/* 刻意不在这里注册。它早就迁到 src/lc/(TS 重写), 挂载点是
|
|
556
558
|
// main.jsx 的 <Route path="/lc/*" element={<ZTeamApp forcedMode="dev"/>}/>,
|
|
@@ -570,33 +572,33 @@ const B = [
|
|
|
570
572
|
// 故统一重定向到应用列表, 由用户自行进入对应应用。
|
|
571
573
|
{ path: "/form/:entity", element: /* @__PURE__ */ e(o, { to: "/lc/apps", replace: !0 }) }
|
|
572
574
|
];
|
|
573
|
-
function
|
|
574
|
-
for (const s of
|
|
575
|
+
function ft(l) {
|
|
576
|
+
for (const s of $)
|
|
575
577
|
if (s.path === l) return s.element;
|
|
576
|
-
for (const s of
|
|
577
|
-
if (
|
|
578
|
-
return /* @__PURE__ */ e(
|
|
578
|
+
for (const s of $)
|
|
579
|
+
if (It(s.path, l)) return s.element;
|
|
580
|
+
return /* @__PURE__ */ e(vt, {});
|
|
579
581
|
}
|
|
580
|
-
function
|
|
582
|
+
function It(l, s) {
|
|
581
583
|
if (!l.includes("*") && !l.includes(":")) return !1;
|
|
582
584
|
const r = "^" + l.replace(/[.+?^${}()|[\]\\]/g, "\\$&").replace(/\*/g, ".*").replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g, "[^/]+") + "$";
|
|
583
585
|
return new RegExp(r).test(s);
|
|
584
586
|
}
|
|
585
|
-
function
|
|
586
|
-
|
|
587
|
-
const { pathname: l } = G(), s = l.startsWith("/test/"), r = S(() => l, [l]), _ = S(() =>
|
|
587
|
+
function Lt() {
|
|
588
|
+
B();
|
|
589
|
+
const { pathname: l } = G(), s = l.startsWith("/test/"), r = S(() => l, [l]), _ = S(() => ft(l), [l]);
|
|
588
590
|
return /* @__PURE__ */ i("div", { className: h.shell, children: [
|
|
589
591
|
/* @__PURE__ */ e(
|
|
590
|
-
|
|
592
|
+
De,
|
|
591
593
|
{
|
|
592
594
|
activePathOverride: r,
|
|
593
595
|
menuOnly: !0,
|
|
594
596
|
visibleGroups: s ? ["测试中心"] : void 0
|
|
595
597
|
}
|
|
596
598
|
),
|
|
597
|
-
/* @__PURE__ */ e("main", { className: h.main, children: /* @__PURE__ */ e(
|
|
599
|
+
/* @__PURE__ */ e("main", { className: h.main, children: /* @__PURE__ */ e(X, { fallback: /* @__PURE__ */ e("div", { className: h.empty, children: "加载中…" }), children: _ }) })
|
|
598
600
|
] });
|
|
599
601
|
}
|
|
600
602
|
export {
|
|
601
|
-
|
|
603
|
+
Lt as default
|
|
602
604
|
};
|