@yuku123/z-team-component 0.2.39 → 0.2.40

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.
@@ -1,7 +1,7 @@
1
1
  import { jsxs as a, jsx as e, Fragment as bt } from "react/jsx-runtime";
2
- import { a as Se, v as Qe, f as Re, B as Oe, u as ln, T as Ht, ai as xo, K as kn, t as Mt, aj as Xt, ak as Ao, al as Po, c as $o, ag as Eo, am as oo, k as Lt, an as Mo, y as Do, H as Fo, i as ao, ao as Ro, o as Oo, l as Bo, n as jo, m as Wo, e as Ho, ap as Uo } from "./api-C78tCfne.js";
2
+ import { a as Se, v as Qe, f as Re, B as Be, u as ln, T as Ht, ai as xo, K as kn, t as Mt, aj as Xt, ak as Ao, al as Po, c as $o, ag as Eo, am as oo, k as Lt, an as Mo, y as Do, H as Fo, i as ao, ao as Ro, o as Bo, l as Oo, n as jo, m as Wo, e as Ho, ap as Uo } from "./api-C78tCfne.js";
3
3
  import { s as zo, r as en, f as Go } from "./ctc-sso-DtJHC-2M.js";
4
- import { i as qo } from "./ComponentDoc-DZqGPFBm.js";
4
+ import { i as qo } from "./ComponentDoc-D2R0AgNC.js";
5
5
  import { r as Ko, h as Ln, s as xn } from "./sso-user-Bi9_l9yi.js";
6
6
  import { Input as zt, Tooltip as Gt, Spin as at, Tabs as wn, Popconfirm as fn, Button as gt, Empty as tn, Modal as qt, Form as jt, Checkbox as Vo, Tag as Yo, Select as Jo, Popover as Qo, Dropdown as Zo, Avatar as Xo, message as An } from "antd";
7
7
  import Ut from "query-string";
@@ -11,16 +11,17 @@ import { h as it } from "./history-BlrA1eaW.js";
11
11
  import { s as fe, p as oa, B as so, S as io, o as aa, q as $n, t as En, v as ra, w as sa, x as d, y as dn, C as ia, c as ca } from "./createWorkspaceWsHandler-mq-UTF2O.js";
12
12
  import { SearchOutlined as sn, CloseOutlined as Dt, ProfileOutlined as la, FileTextOutlined as co, CustomerServiceOutlined as lo, ThunderboltOutlined as Mn, MessageOutlined as da, ReloadOutlined as ma, UndoOutlined as ua, DeleteOutlined as pa, FolderOpenOutlined as ha, LinkOutlined as fa, BugOutlined as Sn, SolutionOutlined as ga, BellOutlined as _a, CheckOutlined as ya, FilterOutlined as va, DashboardOutlined as ka, HeartOutlined as ba, ReadOutlined as Na, BookOutlined as wa, BulbOutlined as Sa, TeamOutlined as Ca, ProductOutlined as Ta, CodeOutlined as Ia, CloudServerOutlined as La, SettingOutlined as xa, AppstoreOutlined as Aa, RobotOutlined as Pa, UserOutlined as $a, NotificationOutlined as Ea, LogoutOutlined as Ma } from "@ant-design/icons";
13
13
  import { u as M, s as xe, i as Da, p as nn, T as Fa } from "./useAppStore-ibJyVIAX.js";
14
- import { h as Ra, f as Oa, m as Ba, a as ja, E as Wa } from "./schedule-C-4ksDPw.js";
14
+ import { h as Ra, f as Ba, m as Oa, a as ja, E as Wa } from "./schedule-C-4ksDPw.js";
15
15
  import { s as Ha } from "./admin-logs-D6HtRcK6.js";
16
16
  import { a as Ua, l as za, j as Ga } from "./instance-D5dhjbgg.js";
17
17
  import Dn from "react-markdown";
18
18
  import Fn from "rehype-highlight";
19
19
  import Rn from "remark-gfm";
20
20
  import { ListTable as qa } from "@yuku123/z-frontend-common/ui";
21
+ import { configureMeta as Ka } from "@yuku123/z-meta-component";
21
22
  /* empty css */
22
- import { s as Ka, i as Va } from "./mobile-client-O3yr9h6t.js";
23
- function Ya(t, o, r, s) {
23
+ import { s as Va, i as Ya } from "./mobile-client-O3yr9h6t.js";
24
+ function Ja(t, o, r, s) {
24
25
  const [m, g] = c(t), w = le(null), L = le(!1), S = le(0), F = le(t), K = le(o), E = le(r);
25
26
  K.current = o, E.current = r;
26
27
  const v = q(
@@ -50,25 +51,25 @@ function Ya(t, o, r, s) {
50
51
  };
51
52
  }, [s]), { width: m, onMouseDown: v, ref: w };
52
53
  }
53
- async function Sm(t = {}, o = "") {
54
+ async function Im(t = {}, o = "") {
54
55
  const r = new URLSearchParams();
55
56
  o && r.set("token", o), t.page && r.set("page", String(t.page)), t.size && r.set("size", String(t.size)), t.tag && r.set("tag", t.tag), t.sort && r.set("sort", t.sort);
56
57
  const s = r.toString(), m = await Se(
57
- `${Oe}/community/posts${s ? `?${s}` : ""}`,
58
+ `${Be}/community/posts${s ? `?${s}` : ""}`,
58
59
  Re
59
60
  );
60
61
  return Qe(m, "获取帖子列表失败");
61
62
  }
62
- async function Cm(t, o = "") {
63
+ async function Lm(t, o = "") {
63
64
  const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(
64
- `${Oe}/community/posts/${t}${r}`,
65
+ `${Be}/community/posts/${t}${r}`,
65
66
  Re
66
67
  );
67
68
  return Qe(s, "获取帖子详情失败");
68
69
  }
69
- async function Tm(t, o = "") {
70
+ async function xm(t, o = "") {
70
71
  const r = await Se(
71
- `${Oe}/community/posts${o ? `?token=${encodeURIComponent(o)}` : ""}`,
72
+ `${Be}/community/posts${o ? `?token=${encodeURIComponent(o)}` : ""}`,
72
73
  {
73
74
  ...Re,
74
75
  method: "POST",
@@ -78,9 +79,9 @@ async function Tm(t, o = "") {
78
79
  );
79
80
  return Qe(r, "发帖失败");
80
81
  }
81
- async function Im(t, o, r = "") {
82
+ async function Am(t, o, r = "") {
82
83
  const s = await Se(
83
- `${Oe}/community/posts/${t}${r ? `?token=${encodeURIComponent(r)}` : ""}`,
84
+ `${Be}/community/posts/${t}${r ? `?token=${encodeURIComponent(r)}` : ""}`,
84
85
  {
85
86
  ...Re,
86
87
  method: "PUT",
@@ -90,30 +91,30 @@ async function Im(t, o, r = "") {
90
91
  );
91
92
  return Qe(s, "编辑帖子失败");
92
93
  }
93
- async function Lm(t, o = "") {
94
- const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Oe}/community/posts/${t}${r}`, {
94
+ async function Pm(t, o = "") {
95
+ const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Be}/community/posts/${t}${r}`, {
95
96
  ...Re,
96
97
  method: "DELETE"
97
98
  });
98
99
  return Qe(s, "删帖失败");
99
100
  }
100
- async function xm(t, o = "") {
101
- const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Oe}/community/posts/${t}/pin${r}`, {
101
+ async function $m(t, o = "") {
102
+ const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Be}/community/posts/${t}/pin${r}`, {
102
103
  ...Re,
103
104
  method: "POST"
104
105
  });
105
106
  return Qe(s, "置顶操作失败");
106
107
  }
107
- async function Am(t, o = "") {
108
- const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Oe}/community/posts/${t}/feature${r}`, {
108
+ async function Em(t, o = "") {
109
+ const r = o ? `?token=${encodeURIComponent(o)}` : "", s = await Se(`${Be}/community/posts/${t}/feature${r}`, {
109
110
  ...Re,
110
111
  method: "POST"
111
112
  });
112
113
  return Qe(s, "精华操作失败");
113
114
  }
114
- async function Pm(t, o, r = "") {
115
+ async function Mm(t, o, r = "") {
115
116
  const s = await Se(
116
- `${Oe}/community/posts/${t}/comments${r ? `?token=${encodeURIComponent(r)}` : ""}`,
117
+ `${Be}/community/posts/${t}/comments${r ? `?token=${encodeURIComponent(r)}` : ""}`,
117
118
  {
118
119
  ...Re,
119
120
  method: "POST",
@@ -123,9 +124,9 @@ async function Pm(t, o, r = "") {
123
124
  );
124
125
  return Qe(s, "发评论失败");
125
126
  }
126
- async function $m(t, o = "") {
127
+ async function Dm(t, o = "") {
127
128
  const r = await Se(
128
- `${Oe}/community/likes${o ? `?token=${encodeURIComponent(o)}` : ""}`,
129
+ `${Be}/community/likes${o ? `?token=${encodeURIComponent(o)}` : ""}`,
129
130
  {
130
131
  ...Re,
131
132
  method: "POST",
@@ -135,9 +136,9 @@ async function $m(t, o = "") {
135
136
  );
136
137
  return Qe(r, "点赞操作失败");
137
138
  }
138
- async function Em(t, o = "") {
139
+ async function Fm(t, o = "") {
139
140
  const r = await Se(
140
- `${Oe}/community/favorites${o ? `?token=${encodeURIComponent(o)}` : ""}`,
141
+ `${Be}/community/favorites${o ? `?token=${encodeURIComponent(o)}` : ""}`,
141
142
  {
142
143
  ...Re,
143
144
  method: "POST",
@@ -147,9 +148,9 @@ async function Em(t, o = "") {
147
148
  );
148
149
  return Qe(r, "收藏操作失败");
149
150
  }
150
- async function Mm(t, o = "") {
151
+ async function Rm(t, o = "") {
151
152
  const r = await Se(
152
- `${Oe}/community/follows${o ? `?token=${encodeURIComponent(o)}` : ""}`,
153
+ `${Be}/community/follows${o ? `?token=${encodeURIComponent(o)}` : ""}`,
153
154
  {
154
155
  ...Re,
155
156
  method: "POST",
@@ -159,20 +160,20 @@ async function Mm(t, o = "") {
159
160
  );
160
161
  return Qe(r, "关注操作失败");
161
162
  }
162
- async function Dm(t = "") {
163
- const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Oe}/community/tags${o}`, Re);
163
+ async function Bm(t = "") {
164
+ const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Be}/community/tags${o}`, Re);
164
165
  return Qe(r, "获取标签列表失败");
165
166
  }
166
- async function Fm(t = "") {
167
- const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Oe}/community/my/posts${o}`, Re);
167
+ async function Om(t = "") {
168
+ const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Be}/community/my/posts${o}`, Re);
168
169
  return Qe(r, "获取我的帖子失败");
169
170
  }
170
- async function Rm(t = "") {
171
- const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Oe}/community/my/drafts${o}`, Re);
171
+ async function jm(t = "") {
172
+ const o = t ? `?token=${encodeURIComponent(t)}` : "", r = await Se(`${Be}/community/my/drafts${o}`, Re);
172
173
  return Qe(r, "获取我的草稿失败");
173
174
  }
174
- async function On() {
175
- const t = await Se(`${Oe}/common/portal/header-tips`, Re);
175
+ async function Bn() {
176
+ const t = await Se(`${Be}/common/portal/header-tips`, Re);
176
177
  return Qe(t, "获取顶部提示失败");
177
178
  }
178
179
  const rt = "http://127.0.0.1:28080";
@@ -186,13 +187,13 @@ function Kt(t) {
186
187
  updatedAt: Number(t.updatedAt ?? t.updated_at ?? 0)
187
188
  };
188
189
  }
189
- async function Om(t) {
190
+ async function Wm(t) {
190
191
  const o = t ? `${rt}/v1/sessions?agentId=${encodeURIComponent(t)}` : `${rt}/v1/sessions`, r = await fetch(o);
191
192
  if (!r.ok) throw new Error("获取本地会话列表失败");
192
193
  const s = await r.json();
193
194
  return (Array.isArray(s) ? s : (s == null ? void 0 : s.sessions) ?? []).map(Kt);
194
195
  }
195
- async function Bm(t, o) {
196
+ async function Hm(t, o) {
196
197
  const r = { title: t };
197
198
  o && (r.agentId = o);
198
199
  const s = await fetch(`${rt}/v1/sessions`, {
@@ -203,12 +204,12 @@ async function Bm(t, o) {
203
204
  if (!s.ok) throw new Error("创建本地会话失败");
204
205
  return Kt(await s.json());
205
206
  }
206
- async function jm(t) {
207
+ async function Um(t) {
207
208
  const o = await fetch(`${rt}/v1/sessions/${t}`);
208
209
  if (!o.ok) throw new Error("获取本地会话详情失败");
209
210
  return Kt(await o.json());
210
211
  }
211
- async function Wm(t, o) {
212
+ async function zm(t, o) {
212
213
  const r = await fetch(
213
214
  `${rt}/v1/sessions/${t}/truncate`,
214
215
  {
@@ -221,7 +222,7 @@ async function Wm(t, o) {
221
222
  const s = await r.json();
222
223
  return { previousId: s.previousId, session: Kt(s.session) };
223
224
  }
224
- async function Hm(t, o) {
225
+ async function Gm(t, o) {
225
226
  const r = await fetch(`${rt}/v1/sessions/${t}`, {
226
227
  method: "PATCH",
227
228
  headers: { "Content-Type": "application/json" },
@@ -230,7 +231,7 @@ async function Hm(t, o) {
230
231
  if (!r.ok) throw new Error("重命名会话失败");
231
232
  return Kt(await r.json());
232
233
  }
233
- async function Um(t) {
234
+ async function qm(t) {
234
235
  const o = await fetch(`${rt}/v1/chat/cancel`, {
235
236
  method: "POST",
236
237
  headers: { "Content-Type": "application/json" },
@@ -239,7 +240,7 @@ async function Um(t) {
239
240
  if (!o.ok) throw new Error("终止生成失败");
240
241
  return o.json();
241
242
  }
242
- async function zm(t, o, r, s) {
243
+ async function Km(t, o, r, s) {
243
244
  var K, E;
244
245
  const { onToken: m, onReasoning: g, onEvent: w, onFinal: L, onError: S, onComplete: F } = r;
245
246
  try {
@@ -312,19 +313,19 @@ async function zm(t, o, r, s) {
312
313
  S(v instanceof Error ? v : new Error(String(v)));
313
314
  }
314
315
  }
315
- async function Gm() {
316
+ async function Vm() {
316
317
  try {
317
318
  return (await fetch(`${rt}/health`)).ok;
318
319
  } catch {
319
320
  return !1;
320
321
  }
321
322
  }
322
- async function qm() {
323
+ async function Ym() {
323
324
  const t = await fetch(`${rt}/v1/agents`);
324
325
  if (!t.ok) throw new Error("获取本地 Agent 列表失败");
325
326
  return (await t.json()).agents || [];
326
327
  }
327
- async function Km(t, o, r, s) {
328
+ async function Jm(t, o, r, s) {
328
329
  const m = { name: t, type: o }, g = await fetch(`${rt}/v1/agents`, {
329
330
  method: "POST",
330
331
  headers: { "Content-Type": "application/json" },
@@ -336,41 +337,41 @@ async function Km(t, o, r, s) {
336
337
  }
337
338
  return g.json();
338
339
  }
339
- async function Vm(t) {
340
+ async function Qm(t) {
340
341
  if (!(await fetch(`${rt}/v1/agents/${t}`, {
341
342
  method: "DELETE"
342
343
  })).ok) throw new Error("删除 Agent 失败");
343
344
  }
344
- async function Ym(t, o = "", r = "") {
345
+ async function Zm(t, o = "", r = "") {
345
346
  const s = new URLSearchParams();
346
347
  o && s.set("subdir", o), r && s.set("token", r);
347
348
  const m = s.toString(), g = await Se(
348
- `${Oe}/personal-agents/${t}/files/tree${m ? "?" + m : ""}`,
349
+ `${Be}/personal-agents/${t}/files/tree${m ? "?" + m : ""}`,
349
350
  Re
350
351
  );
351
352
  return ln(g, "获取文件列表失败");
352
353
  }
353
- async function Jm(t, o = "", r = "") {
354
+ async function Xm(t, o = "", r = "") {
354
355
  const s = new URLSearchParams();
355
356
  o && s.set("path", o), r && s.set("token", r);
356
357
  const m = s.toString(), g = await Se(
357
- `${Oe}/personal-agents/${t}/files/content${m ? "?" + m : ""}`,
358
+ `${Be}/personal-agents/${t}/files/content${m ? "?" + m : ""}`,
358
359
  Re
359
360
  );
360
361
  return ln(g, "读取文件内容失败");
361
362
  }
362
- async function Qm(t, o = 1, r = 20, s = "") {
363
+ async function eu(t, o = 1, r = 20, s = "") {
363
364
  const m = new URLSearchParams();
364
365
  m.set("page", String(o)), m.set("size", String(r)), s && m.set("token", s);
365
366
  const g = await Se(
366
- `${Oe}/personal-agents/${t}/skills?${m.toString()}`,
367
+ `${Be}/personal-agents/${t}/skills?${m.toString()}`,
367
368
  Re
368
369
  );
369
370
  return ln(g, "获取 Skill 列表失败");
370
371
  }
371
- async function Zm(t, o, r, s = "") {
372
+ async function tu(t, o, r, s = "") {
372
373
  const m = s ? `?token=${encodeURIComponent(s)}` : "", g = await Se(
373
- `${Oe}/personal-agents/${t}/skills/${encodeURIComponent(
374
+ `${Be}/personal-agents/${t}/skills/${encodeURIComponent(
374
375
  o
375
376
  )}/toggle${m}`,
376
377
  {
@@ -382,19 +383,19 @@ async function Zm(t, o, r, s = "") {
382
383
  );
383
384
  return ln(g, "切换 Skill 失败");
384
385
  }
385
- const xt = "lifeTab", Ja = "market", Qa = "browser-plugin";
386
- function Za(t) {
386
+ const xt = "lifeTab", Qa = "market", Za = "browser-plugin";
387
+ function Xa(t) {
387
388
  return t === "browser-plugin" || t === "ztools-plugin" || t === "software" || t === "coming";
388
389
  }
389
- function Xm() {
390
+ function nu() {
390
391
  try {
391
392
  const o = new URL(window.location.href).searchParams.get(xt);
392
- return o && (o === "learning" || o === "community" || Za(o)) ? o : null;
393
+ return o && (o === "learning" || o === "community" || Xa(o)) ? o : null;
393
394
  } catch {
394
395
  return null;
395
396
  }
396
397
  }
397
- function eu(t) {
398
+ function ou(t) {
398
399
  try {
399
400
  const o = new URL(window.location.href);
400
401
  t ? o.searchParams.set(xt, t) : o.searchParams.delete(xt), window.history.replaceState(window.history.state, "", o.toString());
@@ -419,12 +420,12 @@ const rn = [
419
420
  function on() {
420
421
  try {
421
422
  const t = new URL(window.location.href);
422
- return t.searchParams.get("mode") !== Ja ? !1 : (t.searchParams.set("mode", "life"), t.searchParams.get(xt) || t.searchParams.set(xt, Qa), window.history.replaceState(window.history.state, "", t.toString()), !0);
423
+ return t.searchParams.get("mode") !== Qa ? !1 : (t.searchParams.set("mode", "life"), t.searchParams.get(xt) || t.searchParams.set(xt, Za), window.history.replaceState(window.history.state, "", t.toString()), !0);
423
424
  } catch {
424
425
  return !1;
425
426
  }
426
427
  }
427
- function Xa() {
428
+ function er() {
428
429
  try {
429
430
  const t = new URL(window.location.href), o = t.searchParams.get("mode");
430
431
  if (o && rn.includes(o))
@@ -436,14 +437,14 @@ function Xa() {
436
437
  }
437
438
  return "collaboration";
438
439
  }
439
- function er(t) {
440
+ function tr(t) {
440
441
  try {
441
442
  const o = new URL(window.location.href);
442
443
  t === "collaboration" ? o.searchParams.delete("mode") : o.searchParams.set("mode", t), window.history.replaceState(window.history.state, "", o.toString());
443
444
  } catch {
444
445
  }
445
446
  }
446
- const Bn = {
447
+ const On = {
447
448
  personal: "PERSONAL_ENTRY",
448
449
  collaboration: "COLLABORATION_ENTRY",
449
450
  life: "BRAVE_LIFE",
@@ -454,7 +455,7 @@ const Bn = {
454
455
  smart: "SMART_WORKBENCH",
455
456
  dev: "DEV_ENTRY",
456
457
  test: "TEST_ENTRY"
457
- }, tr = ["personal", "collaboration"], nr = [
458
+ }, nr = ["personal", "collaboration"], or = [
458
459
  "PERSONAL_ENTRY",
459
460
  "COLLABORATION_ENTRY",
460
461
  "BRAVE_LIFE",
@@ -463,17 +464,17 @@ const Bn = {
463
464
  "DEV_ENTRY",
464
465
  "TEST_ENTRY"
465
466
  ];
466
- function or(t) {
467
+ function ar(t) {
467
468
  return !t.is_global_admin && !(t.permissions && t.permissions.length > 0);
468
469
  }
469
470
  function ot(t, o) {
470
471
  if (!t)
471
- return Bn[o] ? tr.includes(o) : !0;
472
- const r = Bn[o];
473
- return !r || Ra(t, r) ? !0 : or(t) && nr.includes(r);
472
+ return On[o] ? nr.includes(o) : !0;
473
+ const r = On[o];
474
+ return !r || Ra(t, r) ? !0 : ar(t) && or.includes(r);
474
475
  }
475
476
  const mo = 15;
476
- function ar(t) {
477
+ function rr(t) {
477
478
  const o = (r) => r == null ? null : String(r);
478
479
  return {
479
480
  id: String(t.id ?? ""),
@@ -494,7 +495,7 @@ function ar(t) {
494
495
  function jn(t) {
495
496
  return {
496
497
  records: (Array.isArray(t.records) ? t.records : []).map(
497
- (r) => ar(r)
498
+ (r) => rr(r)
498
499
  ),
499
500
  total: Number(t.total ?? 0),
500
501
  current: Number(t.current ?? 1),
@@ -514,12 +515,12 @@ const Hn = {
514
515
  3: { label: "已完成", cls: fe.todoStatusDone },
515
516
  4: { label: "失败", cls: fe.todoStatusFailed },
516
517
  5: { label: "已取消", cls: fe.todoStatusCancelled }
517
- }, rr = /* @__PURE__ */ new Set(["JUDGE_CONTINUE", "SUSPEND_FOR_TEAM"]);
518
- function sr(t) {
518
+ }, sr = /* @__PURE__ */ new Set(["JUDGE_CONTINUE", "SUSPEND_FOR_TEAM"]);
519
+ function ir(t) {
519
520
  const o = Hn[t.status] || Hn[0];
520
- return t.status === 2 && t.waitReason && rr.has(t.waitReason) ? { label: "等待输入", cls: o.cls } : o;
521
+ return t.status === 2 && t.waitReason && sr.has(t.waitReason) ? { label: "等待输入", cls: o.cls } : o;
521
522
  }
522
- function ir(t) {
523
+ function cr(t) {
523
524
  if (!t) return "";
524
525
  try {
525
526
  const o = new Date(t), r = String(o.getMonth() + 1).padStart(2, "0"), s = String(o.getDate()).padStart(2, "0"), m = String(o.getHours()).padStart(2, "0"), g = String(o.getMinutes()).padStart(2, "0");
@@ -535,7 +536,7 @@ const Un = {
535
536
  minLoadedPage: 1,
536
537
  maxLoadedPage: 0
537
538
  };
538
- function cr({
539
+ function lr({
539
540
  onCountChange: t
540
541
  }) {
541
542
  const o = M((A) => A.projects), r = M((A) => A.openTaskFromTodo), [s, m] = c(Un), [g, w] = c(!1), [L, S] = c(!1), [F, K] = c(!1), [E, v] = c(null), [I, x] = c(""), [U, z] = c(""), V = le(null), Z = le(null), ne = le(null), re = le(!1), D = le(s), f = le(null), y = le(null), C = le(U);
@@ -546,8 +547,8 @@ function cr({
546
547
  size: String(mo)
547
548
  }), se = C.current;
548
549
  se && ee.set("keyword", se);
549
- const O = typeof window < "u" && (window.localStorage.getItem("token") || window.localStorage.getItem("z_ctc_token") || window.localStorage.getItem("z_team_token")) || "", _e = {};
550
- O && (_e.Authorization = `Bearer ${O}`);
550
+ const B = typeof window < "u" && (window.localStorage.getItem("token") || window.localStorage.getItem("z_ctc_token") || window.localStorage.getItem("z_team_token")) || "", _e = {};
551
+ B && (_e.Authorization = `Bearer ${B}`);
551
552
  const Ne = await fetch(`${Ht}/tasks/my?${ee}`, {
552
553
  credentials: "include",
553
554
  headers: {
@@ -584,9 +585,9 @@ function cr({
584
585
  re.current = !0, S(!0);
585
586
  try {
586
587
  const se = await T(ee);
587
- m((O) => ({
588
- ...O,
589
- tasks: Wn(O.tasks, se.records, "append"),
588
+ m((B) => ({
589
+ ...B,
590
+ tasks: Wn(B.tasks, se.records, "append"),
590
591
  total: se.total,
591
592
  pages: se.pages,
592
593
  maxLoadedPage: ee
@@ -601,12 +602,12 @@ function cr({
601
602
  const ee = A.minLoadedPage - 1, se = V.current;
602
603
  se && (f.current = se.scrollHeight), re.current = !0, K(!0);
603
604
  try {
604
- const O = await T(ee);
605
+ const B = await T(ee);
605
606
  m((_e) => ({
606
607
  ..._e,
607
- tasks: Wn(_e.tasks, O.records, "prepend"),
608
- total: O.total,
609
- pages: O.pages,
608
+ tasks: Wn(_e.tasks, B.records, "prepend"),
609
+ total: B.total,
610
+ pages: B.pages,
610
611
  minLoadedPage: ee
611
612
  }));
612
613
  } catch {
@@ -638,14 +639,14 @@ function cr({
638
639
  }, [i]), H(() => {
639
640
  const A = V.current, ee = Z.current, se = ne.current;
640
641
  if (!A || !ee || !se) return;
641
- const O = new IntersectionObserver(
642
+ const B = new IntersectionObserver(
642
643
  (_e) => {
643
644
  for (const Ne of _e)
644
645
  Ne.isIntersecting && (Ne.target === ee ? k() : Ne.target === se && b());
645
646
  },
646
647
  { root: A, rootMargin: "64px", threshold: 0 }
647
648
  );
648
- return O.observe(ee), O.observe(se), () => O.disconnect();
649
+ return B.observe(ee), B.observe(se), () => B.disconnect();
649
650
  }, [k, b, s.tasks.length]);
650
651
  const Y = Fe(() => {
651
652
  const A = {};
@@ -656,8 +657,8 @@ function cr({
656
657
  }, [o]), pe = Fe(() => {
657
658
  const A = [];
658
659
  for (const ee of s.tasks) {
659
- const se = ee.projectId || "unknown", O = A[A.length - 1];
660
- O && O.projectId === se ? O.tasks.push(ee) : A.push({ projectId: se, tasks: [ee] });
660
+ const se = ee.projectId || "unknown", B = A[A.length - 1];
661
+ B && B.projectId === se ? B.tasks.push(ee) : A.push({ projectId: se, tasks: [ee] });
661
662
  }
662
663
  return A;
663
664
  }, [s.tasks]), p = q(
@@ -706,14 +707,14 @@ function cr({
706
707
  )
707
708
  ] }) : R.length === 0 ? /* @__PURE__ */ e("div", { className: fe.todoEmpty, children: U ? "未找到匹配的待办" : "暂无待办" }) : pe.map(
708
709
  ({ projectId: A, tasks: ee }, se) => {
709
- const O = Y[A] || `项目 ${A}`;
710
+ const B = Y[A] || `项目 ${A}`;
710
711
  return /* @__PURE__ */ a("div", { className: fe.todoGroup, children: [
711
712
  /* @__PURE__ */ a("div", { className: fe.todoGroupHeader, children: [
712
- /* @__PURE__ */ e(Gt, { title: O, placement: "topLeft", children: /* @__PURE__ */ e("span", { className: fe.todoGroupTitle, children: O }) }),
713
+ /* @__PURE__ */ e(Gt, { title: B, placement: "topLeft", children: /* @__PURE__ */ e("span", { className: fe.todoGroupTitle, children: B }) }),
713
714
  /* @__PURE__ */ e("span", { className: fe.todoGroupCount, children: ee.length })
714
715
  ] }),
715
716
  ee.map((_e) => {
716
- const Ne = sr(_e), Ue = oa(_e);
717
+ const Ne = ir(_e), Ue = oa(_e);
717
718
  return /* @__PURE__ */ a(
718
719
  "div",
719
720
  {
@@ -735,7 +736,7 @@ function cr({
735
736
  "@",
736
737
  Ue.label
737
738
  ] }) : null,
738
- /* @__PURE__ */ e("span", { className: fe.todoTime, children: ir(_e.createTime) })
739
+ /* @__PURE__ */ e("span", { className: fe.todoTime, children: cr(_e.createTime) })
739
740
  ] })
740
741
  ]
741
742
  },
@@ -760,43 +761,43 @@ function cr({
760
761
  ] })
761
762
  ] });
762
763
  }
763
- const lr = "_fabWrap_1dlon_1", dr = "_menuWrap_1dlon_11", mr = "_menuItem_1dlon_31", ur = "_fab_1dlon_1", pr = "_catSvg_1dlon_91", hr = "_catTail_1dlon_100", fr = "_catEyesNormal_1dlon_116", gr = "_catEyesPlead_1dlon_134", _r = "_catTearLeft_1dlon_147", yr = "_catTearRight_1dlon_151", vr = "_catEarLeft_1dlon_186", kr = "_catEarRight_1dlon_191", br = "_pleadCard_1dlon_197", Nr = "_pleadArrow_1dlon_221", wr = "_pleadClose_1dlon_233", Sr = "_pleadTitle_1dlon_254", Cr = "_pleadFace_1dlon_264", Tr = "_pleadList_1dlon_269", Ir = "_pleadItem_1dlon_281", Lr = "_pleadItemName_1dlon_302", xr = "_pleadItemAge_1dlon_310", Ar = "_pleadEmpty_1dlon_316", Pr = "_pleadFooter_1dlon_323", Pe = {
764
- fabWrap: lr,
765
- menuWrap: dr,
766
- menuItem: mr,
767
- fab: ur,
768
- catSvg: pr,
769
- catTail: hr,
770
- catEyesNormal: fr,
771
- catEyesPlead: gr,
772
- catTearLeft: _r,
773
- catTearRight: yr,
774
- catEarLeft: vr,
775
- catEarRight: kr,
776
- pleadCard: br,
777
- pleadArrow: Nr,
778
- pleadClose: wr,
779
- pleadTitle: Sr,
780
- pleadFace: Cr,
781
- pleadList: Tr,
782
- pleadItem: Ir,
783
- pleadItemName: Lr,
784
- pleadItemAge: xr,
785
- pleadEmpty: Ar,
786
- pleadFooter: Pr
787
- }, zn = "ft_floating_dock_top", bn = "ft_cat_pet_last_plead", uo = 40, po = 80, $r = 8, Er = 4, Mr = 45 * 1e3, Dr = 25 * 1e3, Fr = 5 * 1e3, ho = 600 * 1e3, Rr = 8;
764
+ const dr = "_fabWrap_1dlon_1", mr = "_menuWrap_1dlon_11", ur = "_menuItem_1dlon_31", pr = "_fab_1dlon_1", hr = "_catSvg_1dlon_91", fr = "_catTail_1dlon_100", gr = "_catEyesNormal_1dlon_116", _r = "_catEyesPlead_1dlon_134", yr = "_catTearLeft_1dlon_147", vr = "_catTearRight_1dlon_151", kr = "_catEarLeft_1dlon_186", br = "_catEarRight_1dlon_191", Nr = "_pleadCard_1dlon_197", wr = "_pleadArrow_1dlon_221", Sr = "_pleadClose_1dlon_233", Cr = "_pleadTitle_1dlon_254", Tr = "_pleadFace_1dlon_264", Ir = "_pleadList_1dlon_269", Lr = "_pleadItem_1dlon_281", xr = "_pleadItemName_1dlon_302", Ar = "_pleadItemAge_1dlon_310", Pr = "_pleadEmpty_1dlon_316", $r = "_pleadFooter_1dlon_323", Pe = {
765
+ fabWrap: dr,
766
+ menuWrap: mr,
767
+ menuItem: ur,
768
+ fab: pr,
769
+ catSvg: hr,
770
+ catTail: fr,
771
+ catEyesNormal: gr,
772
+ catEyesPlead: _r,
773
+ catTearLeft: yr,
774
+ catTearRight: vr,
775
+ catEarLeft: kr,
776
+ catEarRight: br,
777
+ pleadCard: Nr,
778
+ pleadArrow: wr,
779
+ pleadClose: Sr,
780
+ pleadTitle: Cr,
781
+ pleadFace: Tr,
782
+ pleadList: Ir,
783
+ pleadItem: Lr,
784
+ pleadItemName: xr,
785
+ pleadItemAge: Ar,
786
+ pleadEmpty: Pr,
787
+ pleadFooter: $r
788
+ }, zn = "ft_floating_dock_top", bn = "ft_cat_pet_last_plead", uo = 40, po = 80, Er = 8, Mr = 4, Dr = 45 * 1e3, Fr = 25 * 1e3, Rr = 5 * 1e3, ho = 600 * 1e3, Br = 8;
788
789
  function Or() {
789
790
  return Math.max(po, window.innerHeight - uo - 100);
790
791
  }
791
792
  function gn(t) {
792
- const o = window.innerHeight - uo - $r;
793
+ const o = window.innerHeight - uo - Er;
793
794
  return Math.max(po, Math.min(t, o));
794
795
  }
795
796
  function Gn() {
796
797
  const t = Number(sessionStorage.getItem(bn));
797
798
  return Number.isFinite(t) && t > 0 && Date.now() - t < ho;
798
799
  }
799
- function Br(t) {
800
+ function jr(t) {
800
801
  const o = Date.parse(t);
801
802
  if (!Number.isFinite(o)) return "";
802
803
  const r = Math.floor((Date.now() - o) / 864e5);
@@ -804,7 +805,7 @@ function Br(t) {
804
805
  const s = Math.floor((Date.now() - o) / 36e5);
805
806
  return s >= 1 ? `${s}小时前` : "刚刚";
806
807
  }
807
- function jr() {
808
+ function Wr() {
808
809
  const [t, o] = c(!1), [r, s] = c(!1), [m, g] = c(() => {
809
810
  const p = Number(localStorage.getItem(zn));
810
811
  return Number.isFinite(p) && p > 0 ? gn(p) : Or();
@@ -824,11 +825,11 @@ function jr() {
824
825
  async (p = !1) => {
825
826
  if (!(!p && (document.hidden || Gn() || t)))
826
827
  try {
827
- const R = await Ua(Z, Rr);
828
+ const R = await Ua(Z, Br);
828
829
  if (!p && (!R.length || Gn())) return;
829
830
  E(R), I(!0), R.length && sessionStorage.setItem(bn, String(Date.now())), f(), x.current = setTimeout(
830
831
  () => y(!1),
831
- R.length ? Dr : Fr
832
+ R.length ? Fr : Rr
832
833
  );
833
834
  } catch {
834
835
  }
@@ -836,7 +837,7 @@ function jr() {
836
837
  [Z, t, f, y]
837
838
  );
838
839
  H(() => {
839
- const p = setTimeout(() => void C(), Mr), R = setInterval(() => void C(), ho);
840
+ const p = setTimeout(() => void C(), Dr), R = setInterval(() => void C(), ho);
840
841
  return () => {
841
842
  clearTimeout(p), clearInterval(R), f();
842
843
  };
@@ -855,7 +856,7 @@ function jr() {
855
856
  (p) => {
856
857
  if (!S.current.active) return;
857
858
  const R = p.clientY - S.current.startY;
858
- Math.abs(R) > Er && (S.current.moved = !0, L(!0)), g(gn(S.current.startTop + R));
859
+ Math.abs(R) > Mr && (S.current.moved = !0, L(!0)), g(gn(S.current.startTop + R));
859
860
  },
860
861
  []
861
862
  ), b = q(
@@ -941,7 +942,7 @@ function jr() {
941
942
  onClick: () => Y(p.id),
942
943
  children: [
943
944
  /* @__PURE__ */ e("span", { className: Pe.pleadItemName, children: p.name }),
944
- /* @__PURE__ */ e("span", { className: Pe.pleadItemAge, children: Br(p.created_at) })
945
+ /* @__PURE__ */ e("span", { className: Pe.pleadItemAge, children: jr(p.created_at) })
945
946
  ]
946
947
  }
947
948
  ) }, p.id)) }),
@@ -1147,88 +1148,88 @@ function jr() {
1147
1148
  )
1148
1149
  ] });
1149
1150
  }
1150
- const Wr = "_resumeModal_1ytri_3", Hr = "_modalHeader_1ytri_10", Ur = "_closeBtn_1ytri_19", zr = "_resumeBody_1ytri_38", Gr = "_leftPanel_1ytri_46", qr = "_avatarWrap_1ytri_57", Kr = "_avatarSvg_1ytri_70", Vr = "_avatarFallback_1ytri_83", Yr = "_profileName_1ytri_87", Jr = "_profileCreator_1ytri_98", Qr = "_profileType_1ytri_105", Zr = "_profileDesc_1ytri_112", Xr = "_profileCapabilities_1ytri_121", es = "_capabilityTag_1ytri_128", ts = "_leftFooter_1ytri_136", ns = "_rightPanel_1ytri_143", os = "_tabs_1ytri_151", as = "_infoTab_1ytri_183", rs = "_infoRow_1ytri_189", ss = "_infoLabel_1ytri_197", is = "_infoValue_1ytri_206", cs = "_infoTags_1ytri_213", ls = "_infoTag_1ytri_213", ds = "_memoryTab_1ytri_230", ms = "_memoryToolbar_1ytri_236", us = "_memoryHint_1ytri_244", ps = "_memoryList_1ytri_254", hs = "_memoryItemInfo_1ytri_285", fs = "_memoryItemTitle_1ytri_290", gs = "_memoryItemDesc_1ytri_297", _s = "_memoryItemKeywords_1ytri_307", ys = "_memoryItemActions_1ytri_312", vs = "_memoryItemFileName_1ytri_319", ks = "_skillsTab_1ytri_354", bs = "_skillList_1ytri_359", Ns = "_skillIcon_1ytri_379", ws = "_skillInfo_1ytri_384", Ss = "_skillName_1ytri_389", Cs = "_skillBadge_1ytri_398", Ts = "_skillDesc_1ytri_406", Is = "_skillPath_1ytri_416", Ls = "_loadingWrap_1ytri_425", xs = "_memoryDetailOverlay_1ytri_435", As = "_memoryDetailModal_1ytri_448", Ps = "_memoryDetailHeader_1ytri_460", $s = "_memoryDetailTitle_1ytri_469", Es = "_memoryDetailBody_1ytri_475", Ms = "_memoryDetailMeta_1ytri_481", Ds = "_memoryDetailMetaTag_1ytri_488", Fs = "_memoryDetailContent_1ytri_496", Rs = "_skillDetailOverlay_1ytri_517", Os = "_skillDetailModal_1ytri_530", Bs = "_skillDetailHeader_1ytri_543", js = "_skillDetailTitle_1ytri_552", Ws = "_skillDetailBody_1ytri_561", Hs = "_skillFileTree_1ytri_567", Us = "_skillFileTreeNode_1ytri_575", zs = "_skillFileTreeNodeActive_1ytri_593", Gs = "_skillFileTreeIcon_1ytri_599", qs = "_skillFileTreeName_1ytri_604", Ks = "_skillFileTreeEmpty_1ytri_609", Vs = "_skillFileContent_1ytri_616", Ys = "_skillFileContentPath_1ytri_622", Js = "_skillFileContentMarkdown_1ytri_631", Qs = "_skillFileContentEmpty_1ytri_723", Zs = "_skillItemClickable_1ytri_734", Xs = "_memoryItemClickable_1ytri_752", _ = {
1151
- resumeModal: Wr,
1152
- modalHeader: Hr,
1153
- closeBtn: Ur,
1154
- resumeBody: zr,
1155
- leftPanel: Gr,
1156
- avatarWrap: qr,
1157
- avatarSvg: Kr,
1158
- avatarFallback: Vr,
1159
- profileName: Yr,
1160
- profileCreator: Jr,
1161
- profileType: Qr,
1162
- profileDesc: Zr,
1163
- profileCapabilities: Xr,
1164
- capabilityTag: es,
1165
- leftFooter: ts,
1166
- rightPanel: ns,
1167
- tabs: os,
1168
- infoTab: as,
1169
- infoRow: rs,
1170
- infoLabel: ss,
1171
- infoValue: is,
1172
- infoTags: cs,
1173
- infoTag: ls,
1174
- memoryTab: ds,
1175
- memoryToolbar: ms,
1176
- memoryHint: us,
1177
- memoryList: ps,
1178
- memoryItemInfo: hs,
1179
- memoryItemTitle: fs,
1180
- memoryItemDesc: gs,
1181
- memoryItemKeywords: _s,
1182
- memoryItemActions: ys,
1183
- memoryItemFileName: vs,
1184
- skillsTab: ks,
1185
- skillList: bs,
1186
- skillIcon: Ns,
1187
- skillInfo: ws,
1188
- skillName: Ss,
1189
- skillBadge: Cs,
1190
- skillDesc: Ts,
1191
- skillPath: Is,
1192
- loadingWrap: Ls,
1193
- memoryDetailOverlay: xs,
1194
- memoryDetailModal: As,
1195
- memoryDetailHeader: Ps,
1196
- memoryDetailTitle: $s,
1197
- memoryDetailBody: Es,
1198
- memoryDetailMeta: Ms,
1199
- memoryDetailMetaTag: Ds,
1200
- memoryDetailContent: Fs,
1201
- skillDetailOverlay: Rs,
1151
+ const Hr = "_resumeModal_1ytri_3", Ur = "_modalHeader_1ytri_10", zr = "_closeBtn_1ytri_19", Gr = "_resumeBody_1ytri_38", qr = "_leftPanel_1ytri_46", Kr = "_avatarWrap_1ytri_57", Vr = "_avatarSvg_1ytri_70", Yr = "_avatarFallback_1ytri_83", Jr = "_profileName_1ytri_87", Qr = "_profileCreator_1ytri_98", Zr = "_profileType_1ytri_105", Xr = "_profileDesc_1ytri_112", es = "_profileCapabilities_1ytri_121", ts = "_capabilityTag_1ytri_128", ns = "_leftFooter_1ytri_136", os = "_rightPanel_1ytri_143", as = "_tabs_1ytri_151", rs = "_infoTab_1ytri_183", ss = "_infoRow_1ytri_189", is = "_infoLabel_1ytri_197", cs = "_infoValue_1ytri_206", ls = "_infoTags_1ytri_213", ds = "_infoTag_1ytri_213", ms = "_memoryTab_1ytri_230", us = "_memoryToolbar_1ytri_236", ps = "_memoryHint_1ytri_244", hs = "_memoryList_1ytri_254", fs = "_memoryItemInfo_1ytri_285", gs = "_memoryItemTitle_1ytri_290", _s = "_memoryItemDesc_1ytri_297", ys = "_memoryItemKeywords_1ytri_307", vs = "_memoryItemActions_1ytri_312", ks = "_memoryItemFileName_1ytri_319", bs = "_skillsTab_1ytri_354", Ns = "_skillList_1ytri_359", ws = "_skillIcon_1ytri_379", Ss = "_skillInfo_1ytri_384", Cs = "_skillName_1ytri_389", Ts = "_skillBadge_1ytri_398", Is = "_skillDesc_1ytri_406", Ls = "_skillPath_1ytri_416", xs = "_loadingWrap_1ytri_425", As = "_memoryDetailOverlay_1ytri_435", Ps = "_memoryDetailModal_1ytri_448", $s = "_memoryDetailHeader_1ytri_460", Es = "_memoryDetailTitle_1ytri_469", Ms = "_memoryDetailBody_1ytri_475", Ds = "_memoryDetailMeta_1ytri_481", Fs = "_memoryDetailMetaTag_1ytri_488", Rs = "_memoryDetailContent_1ytri_496", Bs = "_skillDetailOverlay_1ytri_517", Os = "_skillDetailModal_1ytri_530", js = "_skillDetailHeader_1ytri_543", Ws = "_skillDetailTitle_1ytri_552", Hs = "_skillDetailBody_1ytri_561", Us = "_skillFileTree_1ytri_567", zs = "_skillFileTreeNode_1ytri_575", Gs = "_skillFileTreeNodeActive_1ytri_593", qs = "_skillFileTreeIcon_1ytri_599", Ks = "_skillFileTreeName_1ytri_604", Vs = "_skillFileTreeEmpty_1ytri_609", Ys = "_skillFileContent_1ytri_616", Js = "_skillFileContentPath_1ytri_622", Qs = "_skillFileContentMarkdown_1ytri_631", Zs = "_skillFileContentEmpty_1ytri_723", Xs = "_skillItemClickable_1ytri_734", ei = "_memoryItemClickable_1ytri_752", _ = {
1152
+ resumeModal: Hr,
1153
+ modalHeader: Ur,
1154
+ closeBtn: zr,
1155
+ resumeBody: Gr,
1156
+ leftPanel: qr,
1157
+ avatarWrap: Kr,
1158
+ avatarSvg: Vr,
1159
+ avatarFallback: Yr,
1160
+ profileName: Jr,
1161
+ profileCreator: Qr,
1162
+ profileType: Zr,
1163
+ profileDesc: Xr,
1164
+ profileCapabilities: es,
1165
+ capabilityTag: ts,
1166
+ leftFooter: ns,
1167
+ rightPanel: os,
1168
+ tabs: as,
1169
+ infoTab: rs,
1170
+ infoRow: ss,
1171
+ infoLabel: is,
1172
+ infoValue: cs,
1173
+ infoTags: ls,
1174
+ infoTag: ds,
1175
+ memoryTab: ms,
1176
+ memoryToolbar: us,
1177
+ memoryHint: ps,
1178
+ memoryList: hs,
1179
+ memoryItemInfo: fs,
1180
+ memoryItemTitle: gs,
1181
+ memoryItemDesc: _s,
1182
+ memoryItemKeywords: ys,
1183
+ memoryItemActions: vs,
1184
+ memoryItemFileName: ks,
1185
+ skillsTab: bs,
1186
+ skillList: Ns,
1187
+ skillIcon: ws,
1188
+ skillInfo: Ss,
1189
+ skillName: Cs,
1190
+ skillBadge: Ts,
1191
+ skillDesc: Is,
1192
+ skillPath: Ls,
1193
+ loadingWrap: xs,
1194
+ memoryDetailOverlay: As,
1195
+ memoryDetailModal: Ps,
1196
+ memoryDetailHeader: $s,
1197
+ memoryDetailTitle: Es,
1198
+ memoryDetailBody: Ms,
1199
+ memoryDetailMeta: Ds,
1200
+ memoryDetailMetaTag: Fs,
1201
+ memoryDetailContent: Rs,
1202
+ skillDetailOverlay: Bs,
1202
1203
  skillDetailModal: Os,
1203
- skillDetailHeader: Bs,
1204
- skillDetailTitle: js,
1205
- skillDetailBody: Ws,
1206
- skillFileTree: Hs,
1207
- skillFileTreeNode: Us,
1208
- skillFileTreeNodeActive: zs,
1209
- skillFileTreeIcon: Gs,
1210
- skillFileTreeName: qs,
1211
- skillFileTreeEmpty: Ks,
1212
- skillFileContent: Vs,
1213
- skillFileContentPath: Ys,
1214
- skillFileContentMarkdown: Js,
1215
- skillFileContentEmpty: Qs,
1216
- skillItemClickable: Zs,
1217
- memoryItemClickable: Xs
1218
- }, ei = "_overlay_m9czp_11", ti = "_modal_m9czp_22", ni = "_modalHeader_m9czp_35", oi = "_title_m9czp_45", ai = "_modalContent_m9czp_52", ri = "_modalFooter_m9czp_59", si = "_btnPrimary_m9czp_70", ii = "_btnCancel_m9czp_94", ci = "_label_m9czp_110", Xe = {
1219
- overlay: ei,
1220
- modal: ti,
1221
- modalHeader: ni,
1222
- title: oi,
1223
- modalContent: ai,
1224
- modalFooter: ri,
1225
- btnPrimary: si,
1226
- btnCancel: ii,
1227
- label: ci
1204
+ skillDetailHeader: js,
1205
+ skillDetailTitle: Ws,
1206
+ skillDetailBody: Hs,
1207
+ skillFileTree: Us,
1208
+ skillFileTreeNode: zs,
1209
+ skillFileTreeNodeActive: Gs,
1210
+ skillFileTreeIcon: qs,
1211
+ skillFileTreeName: Ks,
1212
+ skillFileTreeEmpty: Vs,
1213
+ skillFileContent: Ys,
1214
+ skillFileContentPath: Js,
1215
+ skillFileContentMarkdown: Qs,
1216
+ skillFileContentEmpty: Zs,
1217
+ skillItemClickable: Xs,
1218
+ memoryItemClickable: ei
1219
+ }, ti = "_overlay_m9czp_11", ni = "_modal_m9czp_22", oi = "_modalHeader_m9czp_35", ai = "_title_m9czp_45", ri = "_modalContent_m9czp_52", si = "_modalFooter_m9czp_59", ii = "_btnPrimary_m9czp_70", ci = "_btnCancel_m9czp_94", li = "_label_m9czp_110", Xe = {
1220
+ overlay: ti,
1221
+ modal: ni,
1222
+ modalHeader: oi,
1223
+ title: ai,
1224
+ modalContent: ri,
1225
+ modalFooter: si,
1226
+ btnPrimary: ii,
1227
+ btnCancel: ci,
1228
+ label: li
1228
1229
  }, { TabPane: _n } = wn;
1229
- function li() {
1230
+ function di() {
1230
1231
  var me, lt;
1231
- const { agentProfileState: t, closeAgentProfile: o, navigateToPersonalChat: r } = M(), s = M((B) => B.token), [m, g] = c(!1), [w, L] = c(
1232
+ const { agentProfileState: t, closeAgentProfile: o, navigateToPersonalChat: r } = M(), s = M((O) => O.token), [m, g] = c(!1), [w, L] = c(
1232
1233
  null
1233
1234
  ), [S, F] = c(!1), [K, E] = c(null), [v, I] = c(!1), [x, U] = c("info"), [z, V] = c(
1234
1235
  null
@@ -1236,17 +1237,17 @@ function li() {
1236
1237
  null
1237
1238
  ), [C, T] = c(""), [i, b] = c(!1), [k, W] = c(!1), [Y, pe] = c([]), [p, R] = c(!1), h = t.agent, j = (h == null ? void 0 : h.agent_code) || ((me = h == null ? void 0 : h._agenthub_raw) == null ? void 0 : me.agentCode) || "", Ce = Mt(
1238
1239
  ((lt = h == null ? void 0 : h._agenthub_raw) == null ? void 0 : lt.agentHubAgentId) ?? null
1239
- ) || null, Te = M((B) => B.currentProject), ge = Te == null ? void 0 : Te.id, oe = q(async () => {
1240
+ ) || null, Te = M((O) => O.currentProject), ge = Te == null ? void 0 : Te.id, oe = q(async () => {
1240
1241
  if (j) {
1241
1242
  F(!0);
1242
1243
  try {
1243
- const B = await Se(
1244
+ const O = await Se(
1244
1245
  `${Xt}/evolution/agents/${encodeURIComponent(
1245
1246
  j
1246
1247
  )}`
1247
1248
  );
1248
- if (B.ok) {
1249
- const ie = await B.json();
1249
+ if (O.ok) {
1250
+ const ie = await O.json();
1250
1251
  L(ie);
1251
1252
  } else
1252
1253
  L(null);
@@ -1260,9 +1261,9 @@ function li() {
1260
1261
  if (!(!ge || !h)) {
1261
1262
  R(!0);
1262
1263
  try {
1263
- const B = `${Ht}/scenario-instances/${ge}/team/agents/${encodeURIComponent(
1264
+ const O = `${Ht}/scenario-instances/${ge}/team/agents/${encodeURIComponent(
1264
1265
  h.name
1265
- )}/skills`, ie = await Se(B);
1266
+ )}/skills`, ie = await Se(O);
1266
1267
  if (ie.ok) {
1267
1268
  const Q = await ie.json(), Ae = (Array.isArray(Q == null ? void 0 : Q.data) ? Q.data : Array.isArray(Q) ? Q : []).map((te) => ({
1268
1269
  skillName: te.skillName,
@@ -1288,31 +1289,31 @@ function li() {
1288
1289
  oe,
1289
1290
  A
1290
1291
  ]);
1291
- const ee = async (B) => {
1292
+ const ee = async (O) => {
1292
1293
  if (j) {
1293
1294
  I(!0);
1294
1295
  try {
1295
1296
  const Q = await (await Se(
1296
1297
  `${Xt}/evolution/agents/${encodeURIComponent(
1297
1298
  j
1298
- )}/memory/${encodeURIComponent(B)}`,
1299
+ )}/memory/${encodeURIComponent(O)}`,
1299
1300
  { method: "DELETE" }
1300
1301
  )).json();
1301
- Q.ok ? (xe("记忆已删除"), await oe(), K === B && E(null)) : xe(Q.error || "删除失败", "error");
1302
+ Q.ok ? (xe("记忆已删除"), await oe(), K === O && E(null)) : xe(Q.error || "删除失败", "error");
1302
1303
  } catch {
1303
1304
  xe("删除失败", "error");
1304
1305
  } finally {
1305
1306
  I(!1);
1306
1307
  }
1307
1308
  }
1308
- }, se = async (B) => {
1309
+ }, se = async (O) => {
1309
1310
  if (j) {
1310
1311
  I(!0);
1311
1312
  try {
1312
1313
  const Q = await (await Se(
1313
1314
  `${Xt}/evolution/agents/${encodeURIComponent(
1314
1315
  j
1315
- )}/memory/${encodeURIComponent(B)}/reset`,
1316
+ )}/memory/${encodeURIComponent(O)}/reset`,
1316
1317
  { method: "POST" }
1317
1318
  )).json();
1318
1319
  Q.ok ? (xe("记忆已重置为种子内容"), await oe()) : xe(Q.error || "重置失败", "error");
@@ -1322,7 +1323,7 @@ function li() {
1322
1323
  I(!1);
1323
1324
  }
1324
1325
  }
1325
- }, O = async () => {
1326
+ }, B = async () => {
1326
1327
  if (j) {
1327
1328
  I(!0);
1328
1329
  try {
@@ -1345,33 +1346,33 @@ function li() {
1345
1346
  }
1346
1347
  g(!0);
1347
1348
  try {
1348
- const B = await Ao(
1349
+ const O = await Ao(
1349
1350
  Ce,
1350
1351
  j,
1351
1352
  (h == null ? void 0 : h.name) || j,
1352
1353
  h == null ? void 0 : h.avatar,
1353
1354
  s
1354
1355
  );
1355
- if (!B || typeof B != "object" || !B.id) {
1356
+ if (!O || typeof O != "object" || !O.id) {
1356
1357
  xe("ensure 接口返回数据异常,缺少 id 字段", "error");
1357
1358
  return;
1358
1359
  }
1359
- o(), r(B, "shared");
1360
- } catch (B) {
1361
- const ie = B && typeof B == "object" && "userMessage" in B ? String(B.userMessage) : B instanceof Error ? B.message : "打开聊天失败";
1360
+ o(), r(O, "shared");
1361
+ } catch (O) {
1362
+ const ie = O && typeof O == "object" && "userMessage" in O ? String(O.userMessage) : O instanceof Error ? O.message : "打开聊天失败";
1362
1363
  xe(ie, "error");
1363
1364
  } finally {
1364
1365
  g(!1);
1365
1366
  }
1366
- }, Ne = async (B) => {
1367
+ }, Ne = async (O) => {
1367
1368
  var ie;
1368
1369
  if (!(!ge || !h)) {
1369
- ne(B), D([]), y(null), T(""), b(!0), W(!0);
1370
+ ne(O), D([]), y(null), T(""), b(!0), W(!0);
1370
1371
  try {
1371
1372
  const Q = await Se(
1372
1373
  `${Ht}/scenario-instances/${ge}/team/agents/${encodeURIComponent(
1373
1374
  h.name
1374
- )}/skills/${encodeURIComponent(B.skillName)}/files`
1375
+ )}/skills/${encodeURIComponent(O.skillName)}/files`
1375
1376
  );
1376
1377
  if (Q.ok) {
1377
1378
  const $e = await Q.json(), Ae = ($e == null ? void 0 : $e.data) || $e || [];
@@ -1385,7 +1386,7 @@ function li() {
1385
1386
  `${Ht}/scenario-instances/${ge}/team/agents/${encodeURIComponent(
1386
1387
  h.name
1387
1388
  )}/skills/${encodeURIComponent(
1388
- B.skillName
1389
+ O.skillName
1389
1390
  )}/files/content?path=${encodeURIComponent(Ee)}`
1390
1391
  );
1391
1392
  if (qe.ok) {
@@ -1399,16 +1400,16 @@ function li() {
1399
1400
  b(!1), W(!1);
1400
1401
  }
1401
1402
  }
1402
- }, Ue = async (B) => {
1403
- if (!(!Z || B === f) && !(!ge || !h)) {
1404
- y(B), W(!0);
1403
+ }, Ue = async (O) => {
1404
+ if (!(!Z || O === f) && !(!ge || !h)) {
1405
+ y(O), W(!0);
1405
1406
  try {
1406
1407
  const ie = await Se(
1407
1408
  `${Ht}/scenario-instances/${ge}/team/agents/${encodeURIComponent(
1408
1409
  h.name
1409
1410
  )}/skills/${encodeURIComponent(
1410
1411
  Z.skillName
1411
- )}/files/content?path=${encodeURIComponent(B)}`
1412
+ )}/files/content?path=${encodeURIComponent(O)}`
1412
1413
  );
1413
1414
  if (ie.ok) {
1414
1415
  const Q = await ie.json(), $e = (Q == null ? void 0 : Q.data) || Q;
@@ -1421,9 +1422,9 @@ function li() {
1421
1422
  W(!1);
1422
1423
  }
1423
1424
  }
1424
- }, et = (B) => {
1425
+ }, et = (O) => {
1425
1426
  const ie = { children: [] };
1426
- for (const $e of B) {
1427
+ for (const $e of O) {
1427
1428
  const Ae = $e.path.split("/");
1428
1429
  let te = ie;
1429
1430
  for (let Ee = 0; Ee < Ae.length; Ee++) {
@@ -1445,7 +1446,7 @@ function li() {
1445
1446
  };
1446
1447
  if (!t.visible || !h) return null;
1447
1448
  const $ = (w == null ? void 0 : w.memoryEntries) || [], ce = Y, ye = () => {
1448
- var B, ie;
1449
+ var O, ie;
1449
1450
  return /* @__PURE__ */ a("div", { className: _.leftPanel, children: [
1450
1451
  /* @__PURE__ */ e("div", { className: _.avatarWrap, children: h.avatar && h.avatar.includes("<svg") ? /* @__PURE__ */ e(
1451
1452
  "span",
@@ -1455,7 +1456,7 @@ function li() {
1455
1456
  }
1456
1457
  ) : /* @__PURE__ */ e("div", { className: _.avatarFallback, children: h.avatar || "🤖" }) }),
1457
1458
  /* @__PURE__ */ e("div", { className: _.profileName, children: h.name || j }),
1458
- ((B = h._agenthub_raw) == null ? void 0 : B.createByName) && /* @__PURE__ */ a("div", { className: _.profileCreator, children: [
1459
+ ((O = h._agenthub_raw) == null ? void 0 : O.createByName) && /* @__PURE__ */ a("div", { className: _.profileCreator, children: [
1459
1460
  "创建者: ",
1460
1461
  h._agenthub_raw.createByName
1461
1462
  ] }),
@@ -1481,7 +1482,7 @@ function li() {
1481
1482
  ) })
1482
1483
  ] });
1483
1484
  }, de = () => {
1484
- var B, ie, Q, $e, Ae;
1485
+ var O, ie, Q, $e, Ae;
1485
1486
  return /* @__PURE__ */ e("div", { className: _.rightPanel, children: /* @__PURE__ */ a(
1486
1487
  wn,
1487
1488
  {
@@ -1499,7 +1500,7 @@ function li() {
1499
1500
  /* @__PURE__ */ e("span", { className: _.infoLabel, children: "名称" }),
1500
1501
  /* @__PURE__ */ e("span", { className: _.infoValue, children: h.name || "-" })
1501
1502
  ] }),
1502
- ((B = h._agenthub_raw) == null ? void 0 : B.agentName) && /* @__PURE__ */ a("div", { className: _.infoRow, children: [
1503
+ ((O = h._agenthub_raw) == null ? void 0 : O.agentName) && /* @__PURE__ */ a("div", { className: _.infoRow, children: [
1503
1504
  /* @__PURE__ */ e("span", { className: _.infoLabel, children: "Agent名称" }),
1504
1505
  /* @__PURE__ */ e("span", { className: _.infoValue, children: h._agenthub_raw.agentName })
1505
1506
  ] }),
@@ -1543,7 +1544,7 @@ function li() {
1543
1544
  fn,
1544
1545
  {
1545
1546
  title: "重置全部记忆:将从 /agents/{agentKey}/ 目录完整拷贝记忆,覆盖当前所有记忆文件。确定继续?",
1546
- onConfirm: () => void O(),
1547
+ onConfirm: () => void B(),
1547
1548
  okText: "确定重置",
1548
1549
  cancelText: "取消",
1549
1550
  disabled: v,
@@ -1668,11 +1669,11 @@ function li() {
1668
1669
  ]
1669
1670
  }
1670
1671
  ) });
1671
- }, Ge = (B) => {
1672
+ }, Ge = (O) => {
1672
1673
  var Q;
1673
- const ie = ((Q = B.split(".").pop()) == null ? void 0 : Q.toLowerCase()) || "";
1674
+ const ie = ((Q = O.split(".").pop()) == null ? void 0 : Q.toLowerCase()) || "";
1674
1675
  return ie === "md" || ie === "markdown";
1675
- }, Ie = (B, ie) => B.map((Q) => /* @__PURE__ */ a("div", { children: [
1676
+ }, Ie = (O, ie) => O.map((Q) => /* @__PURE__ */ a("div", { children: [
1676
1677
  /* @__PURE__ */ a(
1677
1678
  "div",
1678
1679
  {
@@ -1700,7 +1701,7 @@ function li() {
1700
1701
  "div",
1701
1702
  {
1702
1703
  className: `${Xe.modal} ${_.resumeModal}`,
1703
- onClick: (B) => B.stopPropagation(),
1704
+ onClick: (O) => O.stopPropagation(),
1704
1705
  children: [
1705
1706
  /* @__PURE__ */ a("div", { className: _.modalHeader, children: [
1706
1707
  /* @__PURE__ */ e("div", { className: Xe.title, children: "Agent 详情" }),
@@ -1725,14 +1726,14 @@ function li() {
1725
1726
  "div",
1726
1727
  {
1727
1728
  className: _.memoryDetailOverlay,
1728
- onClick: (B) => {
1729
- B.stopPropagation(), V(null);
1729
+ onClick: (O) => {
1730
+ O.stopPropagation(), V(null);
1730
1731
  },
1731
1732
  children: /* @__PURE__ */ a(
1732
1733
  "div",
1733
1734
  {
1734
1735
  className: _.memoryDetailModal,
1735
- onClick: (B) => B.stopPropagation(),
1736
+ onClick: (O) => O.stopPropagation(),
1736
1737
  children: [
1737
1738
  /* @__PURE__ */ a("div", { className: _.memoryDetailHeader, children: [
1738
1739
  /* @__PURE__ */ e("div", { className: _.memoryDetailTitle, children: z.title || z.name }),
@@ -1780,14 +1781,14 @@ function li() {
1780
1781
  "div",
1781
1782
  {
1782
1783
  className: _.skillDetailOverlay,
1783
- onClick: (B) => {
1784
- B.stopPropagation(), ne(null);
1784
+ onClick: (O) => {
1785
+ O.stopPropagation(), ne(null);
1785
1786
  },
1786
1787
  children: /* @__PURE__ */ a(
1787
1788
  "div",
1788
1789
  {
1789
1790
  className: _.skillDetailModal,
1790
- onClick: (B) => B.stopPropagation(),
1791
+ onClick: (O) => O.stopPropagation(),
1791
1792
  children: [
1792
1793
  /* @__PURE__ */ a("div", { className: _.skillDetailHeader, children: [
1793
1794
  /* @__PURE__ */ a("div", { className: _.skillDetailTitle, children: [
@@ -1847,7 +1848,7 @@ function li() {
1847
1848
  }
1848
1849
  );
1849
1850
  }
1850
- const di = [
1851
+ const mi = [
1851
1852
  "门急诊",
1852
1853
  "住院",
1853
1854
  "药房",
@@ -1855,12 +1856,12 @@ const di = [
1855
1856
  "电子病历",
1856
1857
  "小程序"
1857
1858
  ];
1858
- function mi({
1859
+ function ui({
1859
1860
  scenario: t,
1860
1861
  onClose: o,
1861
1862
  onCreated: r
1862
1863
  }) {
1863
- const [s, m] = c(""), [g, w] = c([]), [L, S] = c(di), [F, K] = c([]), [E, v] = c(!1), [I, x] = c(null), [U, z] = c(""), [V, Z] = c(!1), [ne, re] = c("");
1864
+ const [s, m] = c(""), [g, w] = c([]), [L, S] = c(mi), [F, K] = c([]), [E, v] = c(!1), [I, x] = c(null), [U, z] = c(""), [V, Z] = c(!1), [ne, re] = c("");
1864
1865
  H(() => {
1865
1866
  let C = !1;
1866
1867
  return Po().then((T) => {
@@ -2116,7 +2117,7 @@ function qn(t) {
2116
2117
  const o = t.match(/(?:^|[\s"'])\S*\/t\/([A-Za-z0-9]{4,})/i);
2117
2118
  return o ? o[1] : null;
2118
2119
  }
2119
- function ui(t) {
2120
+ function pi(t) {
2120
2121
  const o = t.match(/https?:\/\/\S+/i);
2121
2122
  return o ? o[0] : null;
2122
2123
  }
@@ -2124,7 +2125,7 @@ function Kn(t, o) {
2124
2125
  const r = o || "12004";
2125
2126
  return `${cn ? cn.replace(/\/+$/, "") : ""}/fone/projectDetail/requirement/${r}?workItemId=${t}&workitemViewId=10003013`;
2126
2127
  }
2127
- function pi({
2128
+ function hi({
2128
2129
  scenario: t,
2129
2130
  onClose: o,
2130
2131
  onCreated: r
@@ -2263,7 +2264,7 @@ function pi({
2263
2264
  3: "CP",
2264
2265
  4: "PD",
2265
2266
  10: "SOP"
2266
- }, B = ye ? {
2267
+ }, O = ye ? {
2267
2268
  foneIteamType: ye.workitemClassify || "",
2268
2269
  // 改用大类型(需求/任务/缺陷/故障/事件)
2269
2270
  foneIteamSpaceId: ye.projectCode || String(ye.projectId || ""),
@@ -2284,7 +2285,7 @@ function pi({
2284
2285
  work_item_id: $,
2285
2286
  source: t.source
2286
2287
  },
2287
- tags: B
2288
+ tags: O
2288
2289
  })
2289
2290
  })).json();
2290
2291
  Q.success && ((de = Q.data) != null && de.id) ? r(Q.data.id) : (Y(Q.message || "创建失败,请重试"), k(!1));
@@ -2308,7 +2309,7 @@ function pi({
2308
2309
  const Ie = await $n(ye);
2309
2310
  de = an(Ie), Ge = Ie;
2310
2311
  } else
2311
- de = an($), Ge = ui($) || $;
2312
+ de = an($), Ge = pi($) || $;
2312
2313
  if (!de) {
2313
2314
  Y(
2314
2315
  ye ? "短链解析结果中无法识别 workItemId,请改用工单详情页长链接" : "无法从链接中识别 workItemId,请检查链接是否包含 workItemId 参数"
@@ -2337,7 +2338,7 @@ function pi({
2337
2338
  );
2338
2339
  }
2339
2340
  await A($, ce, ye);
2340
- }, [T, E, A]), O = q(() => {
2341
+ }, [T, E, A]), B = q(() => {
2341
2342
  s === "link" ? ee() : se();
2342
2343
  }, [s, ee, se]), _e = /* @__PURE__ */ a(
2343
2344
  "div",
@@ -2357,7 +2358,7 @@ function pi({
2357
2358
  ] }) : /* @__PURE__ */ e("span", {}),
2358
2359
  /* @__PURE__ */ a("div", { style: { display: "flex", gap: 8 }, children: [
2359
2360
  /* @__PURE__ */ e(gt, { onClick: o, children: "取消" }),
2360
- /* @__PURE__ */ e(gt, { type: "primary", loading: b, onClick: O, children: "确认并开始分析" })
2361
+ /* @__PURE__ */ e(gt, { type: "primary", loading: b, onClick: B, children: "确认并开始分析" })
2361
2362
  ] })
2362
2363
  ]
2363
2364
  }
@@ -2525,26 +2526,26 @@ function pi({
2525
2526
  }
2526
2527
  );
2527
2528
  }
2528
- const hi = "_section_fs105_7", fi = "_sectionPadded_fs105_12", gi = "_sectionHeader_fs105_18", _i = "_sectionTitle_fs105_22", yi = "_sectionSubtitle_fs105_29", vi = "_cardGrid_fs105_36", ki = "_scenarioCard_fs105_43", bi = "_cardHeader_fs105_79", Ni = "_iconWrap_fs105_87", wi = "_iconFone_fs105_103", Si = "_iconBiz_fs105_108", Ci = "_cardInfo_fs105_113", Ti = "_cardTitle_fs105_118", Ii = "_tags_fs105_127", Li = "_tag_fs105_127", xi = "_cardDesc_fs105_149", Ai = "_cardFooter_fs105_157", Pi = "_enterHint_fs105_165", He = {
2529
- section: hi,
2530
- sectionPadded: fi,
2531
- sectionHeader: gi,
2532
- sectionTitle: _i,
2533
- sectionSubtitle: yi,
2534
- cardGrid: vi,
2535
- scenarioCard: ki,
2536
- cardHeader: bi,
2537
- iconWrap: Ni,
2538
- iconFone: wi,
2539
- iconBiz: Si,
2540
- cardInfo: Ci,
2541
- cardTitle: Ti,
2542
- tags: Ii,
2543
- tag: Li,
2544
- cardDesc: xi,
2545
- cardFooter: Ai,
2546
- enterHint: Pi
2547
- }, $i = [
2529
+ const fi = "_section_fs105_7", gi = "_sectionPadded_fs105_12", _i = "_sectionHeader_fs105_18", yi = "_sectionTitle_fs105_22", vi = "_sectionSubtitle_fs105_29", ki = "_cardGrid_fs105_36", bi = "_scenarioCard_fs105_43", Ni = "_cardHeader_fs105_79", wi = "_iconWrap_fs105_87", Si = "_iconFone_fs105_103", Ci = "_iconBiz_fs105_108", Ti = "_cardInfo_fs105_113", Ii = "_cardTitle_fs105_118", Li = "_tags_fs105_127", xi = "_tag_fs105_127", Ai = "_cardDesc_fs105_149", Pi = "_cardFooter_fs105_157", $i = "_enterHint_fs105_165", He = {
2530
+ section: fi,
2531
+ sectionPadded: gi,
2532
+ sectionHeader: _i,
2533
+ sectionTitle: yi,
2534
+ sectionSubtitle: vi,
2535
+ cardGrid: ki,
2536
+ scenarioCard: bi,
2537
+ cardHeader: Ni,
2538
+ iconWrap: wi,
2539
+ iconFone: Si,
2540
+ iconBiz: Ci,
2541
+ cardInfo: Ti,
2542
+ cardTitle: Ii,
2543
+ tags: Li,
2544
+ tag: xi,
2545
+ cardDesc: Ai,
2546
+ cardFooter: Pi,
2547
+ enterHint: $i
2548
+ }, Ei = [
2548
2549
  {
2549
2550
  key: "troubleshooting-fone",
2550
2551
  icon: /* @__PURE__ */ e(Sn, {}),
@@ -2572,7 +2573,7 @@ const hi = "_section_fs105_7", fi = "_sectionPadded_fs105_12", gi = "_sectionHea
2572
2573
  tags: ["页面地址解析", "工程定位", "知识问答"]
2573
2574
  }
2574
2575
  ];
2575
- function Ei({
2576
+ function Mi({
2576
2577
  onProjectCreated: t,
2577
2578
  padded: o = !0,
2578
2579
  className: r
@@ -2587,7 +2588,7 @@ function Ei({
2587
2588
  /* @__PURE__ */ e("h2", { className: He.sectionTitle, children: "可用场景" }),
2588
2589
  /* @__PURE__ */ e("p", { className: He.sectionSubtitle, children: "选择场景,即刻启动智能协作" })
2589
2590
  ] }),
2590
- /* @__PURE__ */ e("div", { className: He.cardGrid, children: $i.map((g) => /* @__PURE__ */ a(
2591
+ /* @__PURE__ */ e("div", { className: He.cardGrid, children: Ei.map((g) => /* @__PURE__ */ a(
2591
2592
  "div",
2592
2593
  {
2593
2594
  className: He.scenarioCard,
@@ -2610,14 +2611,14 @@ function Ei({
2610
2611
  g.key
2611
2612
  )) }),
2612
2613
  s && (s.scenarioCode === "biz-consult" ? /* @__PURE__ */ e(
2613
- mi,
2614
+ ui,
2614
2615
  {
2615
2616
  scenario: s,
2616
2617
  onClose: () => m(null),
2617
2618
  onCreated: t
2618
2619
  }
2619
2620
  ) : /* @__PURE__ */ e(
2620
- pi,
2621
+ hi,
2621
2622
  {
2622
2623
  scenario: s,
2623
2624
  onClose: () => m(null),
@@ -2628,35 +2629,35 @@ function Ei({
2628
2629
  }
2629
2630
  );
2630
2631
  }
2631
- const Mi = "_landing_1na4r_1", Di = "_scrollArea_1na4r_11", Fi = "_header_1na4r_22", Ri = "_title_1na4r_31", Oi = "_contextLine_1na4r_39", Bi = "_contextItem_1na4r_48", ji = "_contextIcon_1na4r_54", Wi = "_contextDivider_1na4r_58", Hi = "_contextError_1na4r_62", Ui = "_scenariosSection_1na4r_66", zi = "_composerDock_1na4r_71", Gi = "_inputCard_1na4r_80", qi = "_textarea_1na4r_95", Ki = "_toolbar_1na4r_113", Vi = "_toolbarLeft_1na4r_120", Yi = "_scenarioSelect_1na4r_129", Ji = "_scenarioHint_1na4r_150", Qi = "_hintTooltip_1na4r_161", Zi = "_sendBtn_1na4r_181", Me = {
2632
- landing: Mi,
2633
- scrollArea: Di,
2634
- header: Fi,
2635
- title: Ri,
2632
+ const Di = "_landing_1na4r_1", Fi = "_scrollArea_1na4r_11", Ri = "_header_1na4r_22", Bi = "_title_1na4r_31", Oi = "_contextLine_1na4r_39", ji = "_contextItem_1na4r_48", Wi = "_contextIcon_1na4r_54", Hi = "_contextDivider_1na4r_58", Ui = "_contextError_1na4r_62", zi = "_scenariosSection_1na4r_66", Gi = "_composerDock_1na4r_71", qi = "_inputCard_1na4r_80", Ki = "_textarea_1na4r_95", Vi = "_toolbar_1na4r_113", Yi = "_toolbarLeft_1na4r_120", Ji = "_scenarioSelect_1na4r_129", Qi = "_scenarioHint_1na4r_150", Zi = "_hintTooltip_1na4r_161", Xi = "_sendBtn_1na4r_181", Me = {
2633
+ landing: Di,
2634
+ scrollArea: Fi,
2635
+ header: Ri,
2636
+ title: Bi,
2636
2637
  contextLine: Oi,
2637
- contextItem: Bi,
2638
- contextIcon: ji,
2639
- contextDivider: Wi,
2640
- contextError: Hi,
2641
- scenariosSection: Ui,
2642
- composerDock: zi,
2643
- inputCard: Gi,
2644
- textarea: qi,
2645
- toolbar: Ki,
2646
- toolbarLeft: Vi,
2647
- scenarioSelect: Yi,
2648
- scenarioHint: Ji,
2649
- hintTooltip: Qi,
2650
- sendBtn: Zi
2638
+ contextItem: ji,
2639
+ contextIcon: Wi,
2640
+ contextDivider: Hi,
2641
+ contextError: Ui,
2642
+ scenariosSection: zi,
2643
+ composerDock: Gi,
2644
+ inputCard: qi,
2645
+ textarea: Ki,
2646
+ toolbar: Vi,
2647
+ toolbarLeft: Yi,
2648
+ scenarioSelect: Ji,
2649
+ scenarioHint: Qi,
2650
+ hintTooltip: Zi,
2651
+ sendBtn: Xi
2651
2652
  };
2652
- function Xi(t) {
2653
+ function ec(t) {
2653
2654
  if (t.length === 0) return null;
2654
2655
  const o = t.find(
2655
2656
  (r) => /全场景总控/.test(r.name || "") || /super_common/i.test(r.code || "")
2656
2657
  );
2657
2658
  return o || t[0];
2658
2659
  }
2659
- function ec({
2660
+ function tc({
2660
2661
  onCreated: t,
2661
2662
  onProjectCreated: o,
2662
2663
  presetScenarioCode: r
@@ -2676,7 +2677,7 @@ function ec({
2676
2677
  return;
2677
2678
  }
2678
2679
  I(""), L(y);
2679
- const C = (r || "").trim(), i = (C ? y.find((b) => b.code === C) : null) || Xi(y);
2680
+ const C = (r || "").trim(), i = (C ? y.find((b) => b.code === C) : null) || ec(y);
2680
2681
  i && F(i.code);
2681
2682
  } catch (f) {
2682
2683
  D || (L([]), I(f instanceof Error ? f.message : "加载场景失败"));
@@ -2719,7 +2720,7 @@ function ec({
2719
2720
  ] })
2720
2721
  ] }),
2721
2722
  o ? /* @__PURE__ */ e("div", { className: Me.scenariosSection, children: /* @__PURE__ */ e(
2722
- Ei,
2723
+ Mi,
2723
2724
  {
2724
2725
  onProjectCreated: o,
2725
2726
  padded: !1
@@ -2781,31 +2782,31 @@ function ec({
2781
2782
  ] }) })
2782
2783
  ] });
2783
2784
  }
2784
- const tc = "_bellBtn_zkdkx_2", nc = "_badge_zkdkx_25", oc = "_overlay_zkdkx_44", ac = "_panel_zkdkx_55", rc = "_panelHeader_zkdkx_70", sc = "_panelTitle_zkdkx_79", ic = "_markAllBtn_zkdkx_85", cc = "_panelBody_zkdkx_101", lc = "_empty_zkdkx_107", dc = "_item_zkdkx_115", mc = "_itemUnread_zkdkx_130", uc = "_itemHeader_zkdkx_135", pc = "_statusDot_zkdkx_142", hc = "_statusSuccess_zkdkx_149", fc = "_statusFail_zkdkx_153", gc = "_itemTask_zkdkx_157", _c = "_markReadBtn_zkdkx_167", yc = "_itemMeta_zkdkx_185", vc = "_itemResult_zkdkx_194", De = {
2785
- bellBtn: tc,
2786
- badge: nc,
2787
- overlay: oc,
2788
- panel: ac,
2789
- panelHeader: rc,
2790
- panelTitle: sc,
2791
- markAllBtn: ic,
2792
- panelBody: cc,
2793
- empty: lc,
2794
- item: dc,
2795
- itemUnread: mc,
2796
- itemHeader: uc,
2797
- statusDot: pc,
2798
- statusSuccess: hc,
2799
- statusFail: fc,
2800
- itemTask: gc,
2801
- markReadBtn: _c,
2802
- itemMeta: yc,
2803
- itemResult: vc
2785
+ const nc = "_bellBtn_zkdkx_2", oc = "_badge_zkdkx_25", ac = "_overlay_zkdkx_44", rc = "_panel_zkdkx_55", sc = "_panelHeader_zkdkx_70", ic = "_panelTitle_zkdkx_79", cc = "_markAllBtn_zkdkx_85", lc = "_panelBody_zkdkx_101", dc = "_empty_zkdkx_107", mc = "_item_zkdkx_115", uc = "_itemUnread_zkdkx_130", pc = "_itemHeader_zkdkx_135", hc = "_statusDot_zkdkx_142", fc = "_statusSuccess_zkdkx_149", gc = "_statusFail_zkdkx_153", _c = "_itemTask_zkdkx_157", yc = "_markReadBtn_zkdkx_167", vc = "_itemMeta_zkdkx_185", kc = "_itemResult_zkdkx_194", De = {
2786
+ bellBtn: nc,
2787
+ badge: oc,
2788
+ overlay: ac,
2789
+ panel: rc,
2790
+ panelHeader: sc,
2791
+ panelTitle: ic,
2792
+ markAllBtn: cc,
2793
+ panelBody: lc,
2794
+ empty: dc,
2795
+ item: mc,
2796
+ itemUnread: uc,
2797
+ itemHeader: pc,
2798
+ statusDot: hc,
2799
+ statusSuccess: fc,
2800
+ statusFail: gc,
2801
+ itemTask: _c,
2802
+ markReadBtn: yc,
2803
+ itemMeta: vc,
2804
+ itemResult: kc
2804
2805
  };
2805
- function kc() {
2806
+ function bc() {
2806
2807
  const t = M((x) => x.token), [o, r] = c([]), [s, m] = c(0), [g, w] = c(!1), L = le(null), [S, F] = c({ top: 0, right: 0 }), K = q(async () => {
2807
2808
  try {
2808
- const x = await Oa(t, 30);
2809
+ const x = await Ba(t, 30);
2809
2810
  r(x.items), m(x.unread);
2810
2811
  } catch {
2811
2812
  }
@@ -2827,7 +2828,7 @@ function kc() {
2827
2828
  w(x);
2828
2829
  }, v = async (x) => {
2829
2830
  try {
2830
- await Ba(x, t), r(
2831
+ await Oa(x, t), r(
2831
2832
  (U) => U.map((z) => Lt(z.id, x) ? { ...z, readFlag: 1 } : z)
2832
2833
  ), m((U) => Math.max(0, U - 1));
2833
2834
  } catch {
@@ -2911,23 +2912,23 @@ function kc() {
2911
2912
  ] })
2912
2913
  ] });
2913
2914
  }
2914
- const bc = "_selfSupportFabWrap_1y10a_1", Nc = "_selfSupportFab_1y10a_1", Vn = {
2915
- selfSupportFabWrap: bc,
2916
- selfSupportFab: Nc
2917
- }, Yn = "ft_self_support_fab_top", wc = "ft_self_support_fab_visible", fo = 48, go = 80, Sc = 8, Cc = 4;
2918
- function Tc() {
2915
+ const Nc = "_selfSupportFabWrap_1y10a_1", wc = "_selfSupportFab_1y10a_1", Vn = {
2916
+ selfSupportFabWrap: Nc,
2917
+ selfSupportFab: wc
2918
+ }, Yn = "ft_self_support_fab_top", Sc = "ft_self_support_fab_visible", fo = 48, go = 80, Cc = 8, Tc = 4;
2919
+ function Ic() {
2919
2920
  return Math.max(go, window.innerHeight - fo - 140);
2920
2921
  }
2921
2922
  function yn(t) {
2922
- const o = window.innerHeight - fo - Sc;
2923
+ const o = window.innerHeight - fo - Cc;
2923
2924
  return Math.max(go, Math.min(t, o));
2924
2925
  }
2925
- function Ic() {
2926
+ function Lc() {
2926
2927
  const [t] = c(
2927
- () => localStorage.getItem(wc) === "true"
2928
+ () => localStorage.getItem(Sc) === "true"
2928
2929
  ), [o, r] = c(!1), [s, m] = c(() => {
2929
2930
  const v = Number(localStorage.getItem(Yn));
2930
- return Number.isFinite(v) && v > 0 ? yn(v) : Tc();
2931
+ return Number.isFinite(v) && v > 0 ? yn(v) : Ic();
2931
2932
  }), [g, w] = c(!1), L = le({ active: !1, moved: !1, startY: 0, startTop: 0 }), S = q(
2932
2933
  (v) => {
2933
2934
  L.current = {
@@ -2942,7 +2943,7 @@ function Ic() {
2942
2943
  (v) => {
2943
2944
  if (!L.current.active) return;
2944
2945
  const I = v.clientY - L.current.startY;
2945
- Math.abs(I) > Cc && (L.current.moved = !0, w(!0)), m(yn(L.current.startTop + I));
2946
+ Math.abs(I) > Tc && (L.current.moved = !0, w(!0)), m(yn(L.current.startTop + I));
2946
2947
  },
2947
2948
  []
2948
2949
  ), K = q(
@@ -2989,7 +2990,7 @@ function Ic() {
2989
2990
  )
2990
2991
  ] }) : null;
2991
2992
  }
2992
- function Lc({
2993
+ function xc({
2993
2994
  members: t,
2994
2995
  loading: o,
2995
2996
  value: r,
@@ -3698,7 +3699,7 @@ const J = {
3698
3699
  }
3699
3700
  )
3700
3701
  };
3701
- function xc(t) {
3702
+ function Ac(t) {
3702
3703
  return /^\.z_team\/\.agent\/[^/]+\/skills$/.test(t);
3703
3704
  }
3704
3705
  const Jn = /* @__PURE__ */ new Set([
@@ -3712,7 +3713,7 @@ const Jn = /* @__PURE__ */ new Set([
3712
3713
  name: "asc",
3713
3714
  id: "asc"
3714
3715
  };
3715
- function Ac() {
3716
+ function Pc() {
3716
3717
  try {
3717
3718
  const t = localStorage.getItem("ft_sidebar_sortDims");
3718
3719
  if (!t) return [];
@@ -3737,7 +3738,7 @@ function Ac() {
3737
3738
  return [];
3738
3739
  }
3739
3740
  }
3740
- function Pc({
3741
+ function $c({
3741
3742
  onOpenTeam: t,
3742
3743
  onNewProject: o
3743
3744
  }) {
@@ -3772,7 +3773,7 @@ function Pc({
3772
3773
  ), I = M((n) => n.selectFile), x = M((n) => n.deleteScenarioInstance), U = M((n) => n.forkScenarioInstance), z = M((n) => n.updateScenarioInstance), V = M((n) => n.renameFile), Z = M((n) => n.createFile), ne = M((n) => n.createFolder), re = M((n) => n.deleteFile), D = M((n) => n.uploadFile), f = M((n) => n.uploadFolder), y = M((n) => n.downloadFile), C = M((n) => n.expandProject), T = M((n) => n.loadAllSkills), i = M((n) => n.addProjectSkill), b = M((n) => n.removeProjectSkill), k = M((n) => n.refreshAgentSkills), W = M((n) => n.refreshAllAgentSkills), Y = M((n) => n.syncFromProduction), pe = M((n) => n.fetchWorkspaceEnv), p = M((n) => n.loadFileTree), R = M((n) => n.loadProjects), h = Fe(
3773
3774
  () => Da(r),
3774
3775
  [r]
3775
- ), [j, Ce] = c(null), [Te, ge] = c({ x: 0, y: 0 }), [oe, A] = c(!1), ee = le(null), se = le(null), [O, _e] = c(null), [Ne, Ue] = c(!1), [et, $] = c({}), [ce, ye] = c(
3776
+ ), [j, Ce] = c(null), [Te, ge] = c({ x: 0, y: 0 }), [oe, A] = c(!1), ee = le(null), se = le(null), [B, _e] = c(null), [Ne, Ue] = c(!1), [et, $] = c({}), [ce, ye] = c(
3776
3777
  /* @__PURE__ */ new Set()
3777
3778
  ), [de, Ge] = c(() => {
3778
3779
  try {
@@ -3781,7 +3782,7 @@ function Pc({
3781
3782
  } catch {
3782
3783
  return [];
3783
3784
  }
3784
- }), [Ie, me] = c(Ac), [lt, B] = c(
3785
+ }), [Ie, me] = c(Pc), [lt, O] = c(
3785
3786
  /* @__PURE__ */ new Set()
3786
3787
  ), [ie, Q] = c(() => {
3787
3788
  try {
@@ -3857,7 +3858,7 @@ function Pc({
3857
3858
  JSON.stringify(Je)
3858
3859
  );
3859
3860
  }, [Je]);
3860
- const Ot = Fe(() => {
3861
+ const Bt = Fe(() => {
3861
3862
  const n = /* @__PURE__ */ new Map();
3862
3863
  for (const l of At) {
3863
3864
  const u = [
@@ -3870,10 +3871,10 @@ function Pc({
3870
3871
  return n;
3871
3872
  }, [At]), Pt = q(
3872
3873
  (n) => {
3873
- const l = String(n).trim(), u = Ot.get(l);
3874
+ const l = String(n).trim(), u = Bt.get(l);
3874
3875
  return u && u.length > 0 ? u : [l];
3875
3876
  },
3876
- [Ot]
3877
+ [Bt]
3877
3878
  );
3878
3879
  H(() => {
3879
3880
  Tt((n) => {
@@ -3924,7 +3925,7 @@ function Pc({
3924
3925
  }
3925
3926
  return l.filter((G) => G.dim !== n);
3926
3927
  });
3927
- }, []), Be = ie !== "3d" || Je.length > 0 || de.length > 0 || Ie.length > 0, Qt = q(() => {
3928
+ }, []), Oe = ie !== "3d" || Je.length > 0 || de.length > 0 || Ie.length > 0, Qt = q(() => {
3928
3929
  Q("3d"), Tt([]);
3929
3930
  }, []);
3930
3931
  H(() => {
@@ -3937,7 +3938,7 @@ function Pc({
3937
3938
  return () => clearTimeout(n);
3938
3939
  }, [de, Ie, Je, ie]);
3939
3940
  const Nt = v || un, It = q((n) => {
3940
- B((l) => {
3941
+ O((l) => {
3941
3942
  const u = new Set(l);
3942
3943
  return u.has(n) ? u.delete(n) : u.add(n), u;
3943
3944
  });
@@ -4026,7 +4027,7 @@ function Pc({
4026
4027
  const l = n.indexOf("/");
4027
4028
  if (l > 0) {
4028
4029
  const u = n.substring(l + 1);
4029
- Bt(u);
4030
+ Ot(u);
4030
4031
  }
4031
4032
  });
4032
4033
  }, [S]), H(() => {
@@ -4080,7 +4081,7 @@ function Pc({
4080
4081
  });
4081
4082
  },
4082
4083
  []
4083
- ), Bt = q(
4084
+ ), Ot = q(
4084
4085
  async (n) => {
4085
4086
  if (!s) return;
4086
4087
  const l = `${s.id}/${n}`;
@@ -4098,12 +4099,12 @@ function Pc({
4098
4099
  [s]
4099
4100
  ), Cn = q(
4100
4101
  (n, l) => {
4101
- ce.has(n) || Bt(l), ye((G) => {
4102
+ ce.has(n) || Ot(l), ye((G) => {
4102
4103
  const X = new Set(G);
4103
4104
  return X.has(n) ? X.delete(n) : X.add(n), X;
4104
4105
  });
4105
4106
  },
4106
- [ce, Bt]
4107
+ [ce, Ot]
4107
4108
  ), ko = q(
4108
4109
  (n, l, u, G, X) => {
4109
4110
  const ke = Array.isArray(n) ? n : [], wt = X ?? 16;
@@ -4300,14 +4301,14 @@ function Pc({
4300
4301
  ]
4301
4302
  ), No = q(
4302
4303
  (n) => {
4303
- if (!O) return;
4304
- const l = O;
4304
+ if (!B) return;
4305
+ const l = B;
4305
4306
  _e(null), n.trim() && ((l.type === "rename-project" || l.type === "rename-file") && !h || (l.type === "rename-project" && l.target ? z(l.target.id, {
4306
4307
  name: n.trim()
4307
4308
  }) : l.type === "rename-file" && l.target ? V(l.target.path, n.trim()) : l.type === "new-file" && l.target ? Z(l.target.path, n.trim()) : l.type === "new-folder" && l.target && ne(l.target.path, n.trim())));
4308
4309
  },
4309
4310
  [
4310
- O,
4311
+ B,
4311
4312
  z,
4312
4313
  V,
4313
4314
  Z,
@@ -4401,7 +4402,7 @@ function Pc({
4401
4402
  ue("新建文件夹", J.folder, "new-folder"),
4402
4403
  ue("上传文件", J.upload, "upload-file"),
4403
4404
  ue("上传文件夹", J.upload, "upload-folder")
4404
- ] : n.is_dir && xc(n.path) ? [
4405
+ ] : n.is_dir && Ac(n.path) ? [
4405
4406
  ue("刷新技能", J.refresh, "refresh-agent-skills"),
4406
4407
  ue("新建文件", J.file, "new-file"),
4407
4408
  ue("新建文件夹", J.folder, "new-folder"),
@@ -4423,7 +4424,7 @@ function Pc({
4423
4424
  ue("删除", J.trash, "delete"),
4424
4425
  ue("下载", J.download, "download")
4425
4426
  ];
4426
- }, Co = O ? O.type === "rename-project" ? "输入新项目名称" : O.type === "rename-file" ? "输入新文件名" : O.type === "new-file" ? "输入文件名" : "输入文件夹名" : "", To = O ? O.type === "rename-project" ? "重命名项目" : O.type === "rename-file" ? "重命名" : O.type === "new-file" ? "新建文件" : "新建文件夹" : "", Io = O && O.type === "rename-file" && O.target || O && O.type === "rename-project" && O.target ? O.target.name : "", Lo = /* @__PURE__ */ a("div", { className: d.filterPopover, children: [
4427
+ }, Co = B ? B.type === "rename-project" ? "输入新项目名称" : B.type === "rename-file" ? "输入新文件名" : B.type === "new-file" ? "输入文件名" : "输入文件夹名" : "", To = B ? B.type === "rename-project" ? "重命名项目" : B.type === "rename-file" ? "重命名" : B.type === "new-file" ? "新建文件" : "新建文件夹" : "", Io = B && B.type === "rename-file" && B.target || B && B.type === "rename-project" && B.target ? B.target.name : "", Lo = /* @__PURE__ */ a("div", { className: d.filterPopover, children: [
4427
4428
  /* @__PURE__ */ a("div", { className: d.filterSection, children: [
4428
4429
  /* @__PURE__ */ e("div", { className: d.filterSectionTitle, children: "过滤" }),
4429
4430
  /* @__PURE__ */ e("div", { className: d.filterTimeOptions, children: [
@@ -4443,7 +4444,7 @@ function Pc({
4443
4444
  )) }),
4444
4445
  /* @__PURE__ */ a("div", { className: d.filterSectionRow, children: [
4445
4446
  /* @__PURE__ */ e(
4446
- Lc,
4447
+ xc,
4447
4448
  {
4448
4449
  members: At,
4449
4450
  loading: Yt,
@@ -4455,9 +4456,9 @@ function Pc({
4455
4456
  "button",
4456
4457
  {
4457
4458
  type: "button",
4458
- className: `${d.iconBtn} ${d.iconBtnReset} ${Be ? d.iconBtnResetActive : ""}`,
4459
+ className: `${d.iconBtn} ${d.iconBtnReset} ${Oe ? d.iconBtnResetActive : ""}`,
4459
4460
  title: "重置过滤",
4460
- disabled: !Be,
4461
+ disabled: !Oe,
4461
4462
  onClick: Qt,
4462
4463
  children: J.reset
4463
4464
  }
@@ -4591,12 +4592,12 @@ function Pc({
4591
4592
  "button",
4592
4593
  {
4593
4594
  type: "button",
4594
- className: `${d.filterTriggerBtn} ${Be ? d.filterTriggerBtnActive : ""}`,
4595
+ className: `${d.filterTriggerBtn} ${Oe ? d.filterTriggerBtnActive : ""}`,
4595
4596
  title: "筛选",
4596
4597
  children: [
4597
4598
  /* @__PURE__ */ e(va, {}),
4598
4599
  /* @__PURE__ */ e("span", { children: "筛选" }),
4599
- Be ? /* @__PURE__ */ e("span", { className: d.filterTriggerDot }) : null
4600
+ Oe ? /* @__PURE__ */ e("span", { className: d.filterTriggerDot }) : null
4600
4601
  ]
4601
4602
  }
4602
4603
  )
@@ -4663,8 +4664,8 @@ function Pc({
4663
4664
  ))
4664
4665
  }
4665
4666
  ),
4666
- O && /* @__PURE__ */ e(
4667
- $c,
4667
+ B && /* @__PURE__ */ e(
4668
+ Ec,
4668
4669
  {
4669
4670
  title: To,
4670
4671
  placeholder: Co,
@@ -4674,7 +4675,7 @@ function Pc({
4674
4675
  }
4675
4676
  ),
4676
4677
  Ne && /* @__PURE__ */ e(
4677
- Ec,
4678
+ Mc,
4678
4679
  {
4679
4680
  allSkills: F,
4680
4681
  projectSkills: K,
@@ -4692,7 +4693,7 @@ function Pc({
4692
4693
  )
4693
4694
  ] });
4694
4695
  }
4695
- function $c({
4696
+ function Ec({
4696
4697
  title: t,
4697
4698
  placeholder: o,
4698
4699
  defaultValue: r,
@@ -4726,7 +4727,7 @@ function $c({
4726
4727
  ] })
4727
4728
  ] }) });
4728
4729
  }
4729
- function Ec({
4730
+ function Mc({
4730
4731
  allSkills: t,
4731
4732
  projectSkills: o,
4732
4733
  onConfirm: r,
@@ -4809,47 +4810,47 @@ function Ec({
4809
4810
  }
4810
4811
  ) });
4811
4812
  }
4812
- const Mc = ea(Pc), Dc = "_welcomeRoot_19teb_2", Fc = "_welcomeInner_19teb_14", Rc = "_heroTitle_19teb_25", Oc = "_heroDivider_19teb_46", Bc = "_composer_19teb_55", jc = "_composerTextarea_19teb_73", Wc = "_composerFooter_19teb_92", Hc = "_scenarioWrap_19teb_100", Uc = "_scenarioIcon_19teb_121", zc = "_scenarioLabel_19teb_126", Gc = "_scenarioArrow_19teb_133", qc = "_scenarioArrowOpen_19teb_139", Kc = "_scenarioDropdown_19teb_143", Vc = "_scenarioOption_19teb_163", Yc = "_scenarioOptionActive_19teb_180", Jc = "_scenarioOptionName_19teb_186", Qc = "_scenarioOptionCode_19teb_196", Zc = "_scenarioOptionDesc_19teb_203", Xc = "_scenarioOptionMeta_19teb_210", el = "_scenarioDefaultBadge_19teb_218", tl = "_scenarioMetaHint_19teb_228", nl = "_sendBtn_19teb_239", ol = "_suggestions_19teb_269", al = "_suggestionsLabel_19teb_277", rl = "_suggestionItem_19teb_284", sl = "_suggestionIcon_19teb_306", il = "_suggestionText_19teb_312", cl = "_errorHint_19teb_321", be = {
4813
- welcomeRoot: Dc,
4814
- welcomeInner: Fc,
4815
- heroTitle: Rc,
4813
+ const Dc = ea($c), Fc = "_welcomeRoot_19teb_2", Rc = "_welcomeInner_19teb_14", Bc = "_heroTitle_19teb_25", Oc = "_heroDivider_19teb_46", jc = "_composer_19teb_55", Wc = "_composerTextarea_19teb_73", Hc = "_composerFooter_19teb_92", Uc = "_scenarioWrap_19teb_100", zc = "_scenarioIcon_19teb_121", Gc = "_scenarioLabel_19teb_126", qc = "_scenarioArrow_19teb_133", Kc = "_scenarioArrowOpen_19teb_139", Vc = "_scenarioDropdown_19teb_143", Yc = "_scenarioOption_19teb_163", Jc = "_scenarioOptionActive_19teb_180", Qc = "_scenarioOptionName_19teb_186", Zc = "_scenarioOptionCode_19teb_196", Xc = "_scenarioOptionDesc_19teb_203", el = "_scenarioOptionMeta_19teb_210", tl = "_scenarioDefaultBadge_19teb_218", nl = "_scenarioMetaHint_19teb_228", ol = "_sendBtn_19teb_239", al = "_suggestions_19teb_269", rl = "_suggestionsLabel_19teb_277", sl = "_suggestionItem_19teb_284", il = "_suggestionIcon_19teb_306", cl = "_suggestionText_19teb_312", ll = "_errorHint_19teb_321", be = {
4814
+ welcomeRoot: Fc,
4815
+ welcomeInner: Rc,
4816
+ heroTitle: Bc,
4816
4817
  heroDivider: Oc,
4817
- composer: Bc,
4818
- composerTextarea: jc,
4819
- composerFooter: Wc,
4820
- scenarioWrap: Hc,
4821
- scenarioIcon: Uc,
4822
- scenarioLabel: zc,
4823
- scenarioArrow: Gc,
4824
- scenarioArrowOpen: qc,
4825
- scenarioDropdown: Kc,
4826
- scenarioOption: Vc,
4827
- scenarioOptionActive: Yc,
4828
- scenarioOptionName: Jc,
4829
- scenarioOptionCode: Qc,
4830
- scenarioOptionDesc: Zc,
4831
- scenarioOptionMeta: Xc,
4832
- scenarioDefaultBadge: el,
4833
- scenarioMetaHint: tl,
4834
- sendBtn: nl,
4835
- suggestions: ol,
4836
- suggestionsLabel: al,
4837
- suggestionItem: rl,
4838
- suggestionIcon: sl,
4839
- suggestionText: il,
4840
- errorHint: cl
4841
- }, ll = [
4818
+ composer: jc,
4819
+ composerTextarea: Wc,
4820
+ composerFooter: Hc,
4821
+ scenarioWrap: Uc,
4822
+ scenarioIcon: zc,
4823
+ scenarioLabel: Gc,
4824
+ scenarioArrow: qc,
4825
+ scenarioArrowOpen: Kc,
4826
+ scenarioDropdown: Vc,
4827
+ scenarioOption: Yc,
4828
+ scenarioOptionActive: Jc,
4829
+ scenarioOptionName: Qc,
4830
+ scenarioOptionCode: Zc,
4831
+ scenarioOptionDesc: Xc,
4832
+ scenarioOptionMeta: el,
4833
+ scenarioDefaultBadge: tl,
4834
+ scenarioMetaHint: nl,
4835
+ sendBtn: ol,
4836
+ suggestions: al,
4837
+ suggestionsLabel: rl,
4838
+ suggestionItem: sl,
4839
+ suggestionIcon: il,
4840
+ suggestionText: cl,
4841
+ errorHint: ll
4842
+ }, dl = [
4842
4843
  { icon: "🛒", text: "开发一个购物车结算流程" },
4843
4844
  { icon: "🧹", text: "将当前项目治理重复代码,降至 5% 以下" },
4844
4845
  { icon: "🔍", text: "调研 AI Agent 开发框架选型" }
4845
4846
  ], Qn = 18;
4846
- function dl(t) {
4847
+ function ml(t) {
4847
4848
  const o = t.trim();
4848
4849
  if (!o) return "新会话";
4849
4850
  const r = o.replace(/^[#@/·\-\s]+/, "").replace(/[。!?!?.,,;;]+$/, "").trim(), m = r.split(/\n/)[0].trim() || r;
4850
4851
  return m.length > Qn ? m.slice(0, Qn) + "…" : m || "新会话";
4851
4852
  }
4852
- function ml() {
4853
+ function ul() {
4853
4854
  const t = le(null), { token: o, createProjectAndSendFirstMessage: r } = M(
4854
4855
  dn((i) => ({
4855
4856
  token: i.token,
@@ -4920,7 +4921,7 @@ function ml() {
4920
4921
  return;
4921
4922
  }
4922
4923
  z(!0), Z("");
4923
- const b = dl(i);
4924
+ const b = ml(i);
4924
4925
  try {
4925
4926
  await r(
4926
4927
  b,
@@ -5027,7 +5028,7 @@ function ml() {
5027
5028
  ] }),
5028
5029
  /* @__PURE__ */ a("div", { className: be.suggestions, children: [
5029
5030
  /* @__PURE__ */ e("div", { className: be.suggestionsLabel, children: "试试这些" }),
5030
- ll.map((i) => /* @__PURE__ */ a(
5031
+ dl.map((i) => /* @__PURE__ */ a(
5031
5032
  "button",
5032
5033
  {
5033
5034
  type: "button",
@@ -5044,66 +5045,68 @@ function ml() {
5044
5045
  ] })
5045
5046
  ] }) });
5046
5047
  }
5047
- const ul = "_layout_i9evc_1", pl = "_banner_i9evc_8", hl = "_bannerLeft_i9evc_20", fl = "_logo_i9evc_26", gl = "_bannerRight_i9evc_33", _l = "_bannerCenter_i9evc_39", yl = "_bannerTipLine_i9evc_53", vl = "_bannerNoticeLine_i9evc_65", kl = "_bannerNoticeClickable_i9evc_71", bl = "_bannerTipText_i9evc_75", Nl = "_announcementModalWrap_i9evc_82", wl = "_announcementModalHeader_i9evc_89", Sl = "_announcementModalTitle_i9evc_98", Cl = "_announcementModalIcon_i9evc_107", Tl = "_announcementModalClose_i9evc_112", Il = "_announcementModalBody_i9evc_133", Ll = "_announcementList_i9evc_140", xl = "_announcementListItem_i9evc_149", Al = "_announcementListItemActive_i9evc_167", Pl = "_announcementDetail_i9evc_176", $l = "_announcementDetailTitle_i9evc_187", El = "_announcementDetailContent_i9evc_196", Ml = "_announcementDetailMeta_i9evc_207", Dl = "_announcementDetailEmpty_i9evc_218", Fl = "_popupNoticeModalWrap_i9evc_230", Rl = "_popupNoticeHeader_i9evc_237", Ol = "_popupNoticeHeaderTitle_i9evc_246", Bl = "_popupNoticeHeaderIcon_i9evc_255", jl = "_popupNoticeCounter_i9evc_260", Wl = "_popupNoticeBody_i9evc_267", Hl = "_popupNoticeTitle_i9evc_277", Ul = "_popupNoticeContent_i9evc_287", zl = "_popupNoticeFooter_i9evc_296", Gl = "_popupNoticeBtn_i9evc_304", ql = "_popupNoticeBtnConfirm_i9evc_327", Kl = "_bannerQuoteLine_i9evc_349", Vl = "_bannerTipLabel_i9evc_359", Yl = "_quoteAuthor_i9evc_378", Jl = "_iconGroup_i9evc_417", Ql = "_wsIndicator_i9evc_476", Zl = "_wsConnecting_i9evc_486", Xl = "_wsDisconnected_i9evc_491", ed = "_wsConnected_i9evc_496", td = "_wsDot_i9evc_501", nd = "_wsLabel_i9evc_531", od = "_headerUser_i9evc_535", ad = "_headerUsername_i9evc_549", rd = "_mainArea_i9evc_559", sd = "_sidebar_i9evc_566", id = "_sidebarResizeHandle_i9evc_577", cd = "_sidebarCollapseFab_i9evc_587", ld = "_sidebarExpandFab_i9evc_617", dd = "_todoPanel_i9evc_775", md = "_todoPanelHidden_i9evc_785", ud = "_centerPanel_i9evc_791", pd = "_modeToggleBtn_i9evc_801", hd = "_modeToggleBtnActive_i9evc_820", fd = "_smartWorkbenchArea_i9evc_834", N = {
5048
- layout: ul,
5049
- banner: pl,
5050
- bannerLeft: hl,
5051
- logo: fl,
5052
- bannerRight: gl,
5053
- bannerCenter: _l,
5054
- bannerTipLine: yl,
5055
- bannerNoticeLine: vl,
5056
- bannerNoticeClickable: kl,
5057
- bannerTipText: bl,
5058
- announcementModalWrap: Nl,
5059
- announcementModalHeader: wl,
5060
- announcementModalTitle: Sl,
5061
- announcementModalIcon: Cl,
5062
- announcementModalClose: Tl,
5063
- announcementModalBody: Il,
5064
- announcementList: Ll,
5065
- announcementListItem: xl,
5066
- announcementListItemActive: Al,
5067
- announcementDetail: Pl,
5068
- announcementDetailTitle: $l,
5069
- announcementDetailContent: El,
5070
- announcementDetailMeta: Ml,
5071
- announcementDetailEmpty: Dl,
5072
- popupNoticeModalWrap: Fl,
5073
- popupNoticeHeader: Rl,
5048
+ const pl = "_layout_i9evc_1", hl = "_banner_i9evc_8", fl = "_bannerLeft_i9evc_20", gl = "_logo_i9evc_26", _l = "_bannerRight_i9evc_33", yl = "_bannerCenter_i9evc_39", vl = "_bannerTipLine_i9evc_53", kl = "_bannerNoticeLine_i9evc_65", bl = "_bannerNoticeClickable_i9evc_71", Nl = "_bannerTipText_i9evc_75", wl = "_announcementModalWrap_i9evc_82", Sl = "_announcementModalHeader_i9evc_89", Cl = "_announcementModalTitle_i9evc_98", Tl = "_announcementModalIcon_i9evc_107", Il = "_announcementModalClose_i9evc_112", Ll = "_announcementModalBody_i9evc_133", xl = "_announcementList_i9evc_140", Al = "_announcementListItem_i9evc_149", Pl = "_announcementListItemActive_i9evc_167", $l = "_announcementDetail_i9evc_176", El = "_announcementDetailTitle_i9evc_187", Ml = "_announcementDetailContent_i9evc_196", Dl = "_announcementDetailMeta_i9evc_207", Fl = "_announcementDetailEmpty_i9evc_218", Rl = "_popupNoticeModalWrap_i9evc_230", Bl = "_popupNoticeHeader_i9evc_237", Ol = "_popupNoticeHeaderTitle_i9evc_246", jl = "_popupNoticeHeaderIcon_i9evc_255", Wl = "_popupNoticeCounter_i9evc_260", Hl = "_popupNoticeBody_i9evc_267", Ul = "_popupNoticeTitle_i9evc_277", zl = "_popupNoticeContent_i9evc_287", Gl = "_popupNoticeFooter_i9evc_296", ql = "_popupNoticeBtn_i9evc_304", Kl = "_popupNoticeBtnConfirm_i9evc_327", Vl = "_bannerQuoteLine_i9evc_349", Yl = "_bannerTipLabel_i9evc_359", Jl = "_quoteAuthor_i9evc_378", Ql = "_iconGroup_i9evc_417", Zl = "_wsIndicator_i9evc_476", Xl = "_wsConnecting_i9evc_486", ed = "_wsDisconnected_i9evc_491", td = "_wsConnected_i9evc_496", nd = "_wsDot_i9evc_501", od = "_wsLabel_i9evc_531", ad = "_headerUser_i9evc_535", rd = "_headerUsername_i9evc_549", sd = "_mainArea_i9evc_559", id = "_sidebar_i9evc_566", cd = "_sidebarResizeHandle_i9evc_577", ld = "_sidebarCollapseFab_i9evc_587", dd = "_sidebarExpandFab_i9evc_617", md = "_todoPanel_i9evc_775", ud = "_todoPanelHidden_i9evc_785", pd = "_centerPanel_i9evc_791", hd = "_modeToggleBtn_i9evc_801", fd = "_modeToggleBtnActive_i9evc_820", gd = "_smartWorkbenchArea_i9evc_834", N = {
5049
+ layout: pl,
5050
+ banner: hl,
5051
+ bannerLeft: fl,
5052
+ logo: gl,
5053
+ bannerRight: _l,
5054
+ bannerCenter: yl,
5055
+ bannerTipLine: vl,
5056
+ bannerNoticeLine: kl,
5057
+ bannerNoticeClickable: bl,
5058
+ bannerTipText: Nl,
5059
+ announcementModalWrap: wl,
5060
+ announcementModalHeader: Sl,
5061
+ announcementModalTitle: Cl,
5062
+ announcementModalIcon: Tl,
5063
+ announcementModalClose: Il,
5064
+ announcementModalBody: Ll,
5065
+ announcementList: xl,
5066
+ announcementListItem: Al,
5067
+ announcementListItemActive: Pl,
5068
+ announcementDetail: $l,
5069
+ announcementDetailTitle: El,
5070
+ announcementDetailContent: Ml,
5071
+ announcementDetailMeta: Dl,
5072
+ announcementDetailEmpty: Fl,
5073
+ popupNoticeModalWrap: Rl,
5074
+ popupNoticeHeader: Bl,
5074
5075
  popupNoticeHeaderTitle: Ol,
5075
- popupNoticeHeaderIcon: Bl,
5076
- popupNoticeCounter: jl,
5077
- popupNoticeBody: Wl,
5078
- popupNoticeTitle: Hl,
5079
- popupNoticeContent: Ul,
5080
- popupNoticeFooter: zl,
5081
- popupNoticeBtn: Gl,
5082
- popupNoticeBtnConfirm: ql,
5083
- bannerQuoteLine: Kl,
5084
- bannerTipLabel: Vl,
5085
- quoteAuthor: Yl,
5086
- iconGroup: Jl,
5087
- wsIndicator: Ql,
5088
- wsConnecting: Zl,
5089
- wsDisconnected: Xl,
5090
- wsConnected: ed,
5091
- wsDot: td,
5092
- wsLabel: nd,
5093
- headerUser: od,
5094
- headerUsername: ad,
5095
- mainArea: rd,
5096
- sidebar: sd,
5097
- sidebarResizeHandle: id,
5098
- sidebarCollapseFab: cd,
5099
- sidebarExpandFab: ld,
5100
- todoPanel: dd,
5101
- todoPanelHidden: md,
5102
- centerPanel: ud,
5103
- modeToggleBtn: pd,
5104
- modeToggleBtnActive: hd,
5105
- smartWorkbenchArea: fd
5106
- }, gd = ct(() => import("./index-plw5wx6y.js")), _d = ct(() => import("./index-a4cM-7bG.js")), yd = ct(() => import("./index-BAK7UDvY.js")), vd = ct(() => import("./index-BIPAVfbP.js").then((t) => t.i)), kd = ct(() => import("./index-CcpWacSZ.js")), bd = ct(() => import("./index-CR3sbzOU.js")), Nd = ct(() => import("./index-C0EIMJI2.js")), wd = ct(() => import("./index-BAY37t4f.js")), Sd = ct(() => import("./index-DUAA6gCd.js")), Cd = ct(() => import("./index-JMzBzwiO.js")), Zn = ct(() => import("./SystemShell-DT4XTcVf.js")), Td = `${window.publicPath ?? "/"}logo.svg`, Id = [
5076
+ popupNoticeHeaderIcon: jl,
5077
+ popupNoticeCounter: Wl,
5078
+ popupNoticeBody: Hl,
5079
+ popupNoticeTitle: Ul,
5080
+ popupNoticeContent: zl,
5081
+ popupNoticeFooter: Gl,
5082
+ popupNoticeBtn: ql,
5083
+ popupNoticeBtnConfirm: Kl,
5084
+ bannerQuoteLine: Vl,
5085
+ bannerTipLabel: Yl,
5086
+ quoteAuthor: Jl,
5087
+ iconGroup: Ql,
5088
+ wsIndicator: Zl,
5089
+ wsConnecting: Xl,
5090
+ wsDisconnected: ed,
5091
+ wsConnected: td,
5092
+ wsDot: nd,
5093
+ wsLabel: od,
5094
+ headerUser: ad,
5095
+ headerUsername: rd,
5096
+ mainArea: sd,
5097
+ sidebar: id,
5098
+ sidebarResizeHandle: cd,
5099
+ sidebarCollapseFab: ld,
5100
+ sidebarExpandFab: dd,
5101
+ todoPanel: md,
5102
+ todoPanelHidden: ud,
5103
+ centerPanel: pd,
5104
+ modeToggleBtn: hd,
5105
+ modeToggleBtnActive: fd,
5106
+ smartWorkbenchArea: gd
5107
+ }, _d = "/api";
5108
+ Ka({ apiBase: _d });
5109
+ const yd = ct(() => import("./index-DY6GPSIu.js")), vd = ct(() => import("./index-a4cM-7bG.js")), kd = ct(() => import("./index-BAK7UDvY.js")), bd = ct(() => import("./index-BchBIdvC.js").then((t) => t.i)), Nd = ct(() => import("./index-D0emG0lK.js")), wd = ct(() => import("./index-CR3sbzOU.js")), Sd = ct(() => import("./index-C0EIMJI2.js")), Cd = ct(() => import("./index-BAY37t4f.js")), Td = ct(() => import("./index-DpUTAD45.js")), Id = ct(() => import("./index-JMzBzwiO.js")), Zn = ct(() => import("./SystemShell-B8mZr4ql.js")), Ld = `${window.publicPath ?? "/"}logo.svg`, xd = [
5107
5110
  "/ctc/",
5108
5111
  "/ai/",
5109
5112
  "/config/",
@@ -5134,8 +5137,8 @@ const ul = "_layout_i9evc_1", pl = "_banner_i9evc_8", hl = "_bannerLeft_i9evc_20
5134
5137
  "/kb/",
5135
5138
  "/oss/"
5136
5139
  ];
5137
- function Ld(t) {
5138
- return t === "/overview" ? !0 : Id.some((o) => t.startsWith(o));
5140
+ function Ad(t) {
5141
+ return t === "/overview" ? !0 : xd.some((o) => t.startsWith(o));
5139
5142
  }
5140
5143
  const _o = "ft_popup_read";
5141
5144
  function Xn(t) {
@@ -5149,7 +5152,7 @@ function yo() {
5149
5152
  return [];
5150
5153
  }
5151
5154
  }
5152
- function xd(t) {
5155
+ function Pd(t) {
5153
5156
  try {
5154
5157
  const o = yo();
5155
5158
  if (o.includes(t)) return;
@@ -5160,7 +5163,7 @@ function xd(t) {
5160
5163
  } catch {
5161
5164
  }
5162
5165
  }
5163
- function Ad({
5166
+ function $d({
5164
5167
  onNewProject: t,
5165
5168
  onOpenTeam: o,
5166
5169
  forcedChatMode: r,
@@ -5174,7 +5177,7 @@ function Ad({
5174
5177
  currentUser: P.currentUser,
5175
5178
  currentProject: P.currentProject
5176
5179
  }))
5177
- ), F = M((P) => P.wsState), K = M((P) => P.token), E = le(null), v = Ya(260, 180, 400, "left"), [I, x] = c(
5180
+ ), F = M((P) => P.wsState), K = M((P) => P.token), E = le(null), v = Ja(260, 180, 400, "left"), [I, x] = c(
5178
5181
  () => localStorage.getItem("ft_sidebar_collapsed") === "true"
5179
5182
  ), [U, z] = c(!1), [V, Z] = c(0), [ne, re] = c(!1), [D, f] = c(null), [y, C] = c(0), [T, i] = c(!1), [b, k] = c(0), [W, Y] = c([]), [pe, p] = c(0), [R, h] = c(!1), [j, Ce] = c([]), [Te, ge] = c(0), oe = Fe(() => {
5180
5183
  const P = D == null ? void 0 : D.announcements;
@@ -5198,7 +5201,7 @@ function Ad({
5198
5201
  }, [oe, R]);
5199
5202
  const ee = q(async () => {
5200
5203
  try {
5201
- const ae = (await On()).quotes ?? [];
5204
+ const ae = (await Bn()).quotes ?? [];
5202
5205
  ae.length > 0 && (Ce(ae), ge(0));
5203
5206
  } catch {
5204
5207
  }
@@ -5207,8 +5210,8 @@ function Ad({
5207
5210
  let P = !0;
5208
5211
  const ae = async () => {
5209
5212
  try {
5210
- const Ke = await On();
5211
- P && (f(Ke), Ce((Be) => Be.length > 0 ? Be : Ke.quotes ?? []));
5213
+ const Ke = await Bn();
5214
+ P && (f(Ke), Ce((Oe) => Oe.length > 0 ? Oe : Ke.quotes ?? []));
5212
5215
  } catch {
5213
5216
  }
5214
5217
  };
@@ -5227,7 +5230,7 @@ function Ad({
5227
5230
  }, 1e4);
5228
5231
  return () => clearInterval(P);
5229
5232
  }, [j, ee]);
5230
- const [se, O] = c(null), [_e, Ne] = c("chat"), [Ue, et] = c(0), [$, ce] = c(0), [ye, de] = c(() => (on(), Xa())), [Ge, Ie] = c(() => {
5233
+ const [se, B] = c(null), [_e, Ne] = c("chat"), [Ue, et] = c(0), [$, ce] = c(0), [ye, de] = c(() => (on(), er())), [Ge, Ie] = c(() => {
5231
5234
  try {
5232
5235
  on();
5233
5236
  const P = new URL(window.location.href).searchParams.get("mode");
@@ -5253,28 +5256,28 @@ function Ad({
5253
5256
  // /test/ 路径优先识别为 test 模式 (main.jsx 的 /test/* 路由传入 forcedChatMode='system',
5254
5257
  // 但测试工作台需要 test 模式来渲染正确的菜单和高亮)
5255
5258
  Ge === "test" || r === "system" && window.location.pathname.startsWith("/test/") ? "test" : r && !Ge ? r : Ge ?? r ?? ye
5256
- ), [lt, B] = c(!1), [ie, Q] = c(null), [$e, Ae] = c(null), [te, Ee] = c(
5259
+ ), [lt, O] = c(!1), [ie, Q] = c(null), [$e, Ae] = c(null), [te, Ee] = c(
5257
5260
  null
5258
5261
  );
5259
5262
  H(() => {
5260
5263
  try {
5261
5264
  const P = new URLSearchParams(window.location.search), ae = P.get("openNote");
5262
5265
  if (ae === "1" || ae === "true") {
5263
- de("collaboration"), B(!0);
5266
+ de("collaboration"), O(!0);
5264
5267
  const Nt = String(
5265
5268
  P.get("projectId") ?? P.get("project_id") ?? ""
5266
5269
  ).trim(), It = Mt(Nt);
5267
5270
  ao(It) && Q(It);
5268
5271
  }
5269
- const ve = P.get("mode"), Ke = P.get("agentId"), Be = P.get("tab"), Qt = P.get("sessionId");
5272
+ const ve = P.get("mode"), Ke = P.get("agentId"), Oe = P.get("tab"), Qt = P.get("sessionId");
5270
5273
  if (ve === "personal" && Ke) {
5271
5274
  de("personal");
5272
5275
  const Nt = Mt(Ke);
5273
- Be && Ae(Be), Qt && Ee(Mt(Qt));
5276
+ Oe && Ae(Oe), Qt && Ee(Mt(Qt));
5274
5277
  const It = M.getState().token;
5275
5278
  Ro(It).then((pn) => {
5276
- const yt = pn.find((Bt) => Lt(Bt.id, Nt));
5277
- yt && (O(yt), Ne(Be === "schedule" ? "detail" : "chat"), ce(Date.now()));
5279
+ const yt = pn.find((Ot) => Lt(Ot.id, Nt));
5280
+ yt && (B(yt), Ne(Oe === "schedule" ? "detail" : "chat"), ce(Date.now()));
5278
5281
  }).catch(() => {
5279
5282
  });
5280
5283
  const mt = new URL(window.location.href);
@@ -5283,7 +5286,7 @@ function Ad({
5283
5286
  } catch {
5284
5287
  }
5285
5288
  }, []), H(() => {
5286
- er(ye);
5289
+ tr(ye);
5287
5290
  }, [ye]);
5288
5291
  const qe = le(ye);
5289
5292
  H(() => {
@@ -5305,7 +5308,7 @@ function Ad({
5305
5308
  const we = q((P) => {
5306
5309
  const ae = window.location.pathname;
5307
5310
  if (P === "system") {
5308
- if (Ld(ae) && !ae.startsWith("/ops/") && !ae.startsWith("/lc/"))
5311
+ if (Ad(ae) && !ae.startsWith("/ops/") && !ae.startsWith("/lc/"))
5309
5312
  return;
5310
5313
  it.push("/ctc/4a/account");
5311
5314
  return;
@@ -5326,14 +5329,14 @@ function Ad({
5326
5329
  }
5327
5330
  let ve = "";
5328
5331
  try {
5329
- const Be = new URL(window.location.href).searchParams.get("desktop");
5330
- (Be === "1" || Be === "true") && (ve = `&desktop=${Be}`);
5332
+ const Oe = new URL(window.location.href).searchParams.get("desktop");
5333
+ (Oe === "1" || Oe === "true") && (ve = `&desktop=${Oe}`);
5331
5334
  } catch {
5332
5335
  }
5333
5336
  let Ke = "";
5334
5337
  try {
5335
- const Be = new URL(window.location.href).searchParams.get(xt);
5336
- Be && (Ke = `&${xt}=${encodeURIComponent(Be)}`);
5338
+ const Oe = new URL(window.location.href).searchParams.get(xt);
5339
+ Oe && (Ke = `&${xt}=${encodeURIComponent(Oe)}`);
5337
5340
  } catch {
5338
5341
  }
5339
5342
  it.push(`/workspace?mode=${P}${ve}${Ke}`);
@@ -5341,11 +5344,11 @@ function Ad({
5341
5344
  x(P), localStorage.setItem("ft_sidebar_collapsed", P ? "true" : "false");
5342
5345
  }, st = M((P) => P.personalChatNav);
5343
5346
  H(() => {
5344
- st.trigger > 0 && st.agent && (de("personal"), O(st.agent), Ne("chat"), et((P) => P + 1), ce(Date.now()));
5347
+ st.trigger > 0 && st.agent && (de("personal"), B(st.agent), Ne("chat"), et((P) => P + 1), ce(Date.now()));
5345
5348
  }, [st.trigger]);
5346
5349
  const mn = q(
5347
5350
  (P, ae) => {
5348
- de("collaboration"), ae && (B(!0), Q(P)), it.push(`/workspace?projectId=${P}`);
5351
+ de("collaboration"), ae && (O(!0), Q(P)), it.push(`/workspace?projectId=${P}`);
5349
5352
  },
5350
5353
  [de]
5351
5354
  ), un = L != null && L.avatar && (L.avatar.startsWith("http") || L.avatar.startsWith("data:")) ? L.avatar : void 0, Vt = [
@@ -5367,9 +5370,9 @@ function Ad({
5367
5370
  k(
5368
5371
  oe.length > 0 ? y % oe.length : 0
5369
5372
  ), i(!0);
5370
- }, [y, oe.length]), dt = W[pe], Ot = pe >= W.length - 1, Pt = q(() => {
5373
+ }, [y, oe.length]), dt = W[pe], Bt = pe >= W.length - 1, Pt = q(() => {
5371
5374
  const P = W[pe];
5372
- if (P && xd(Xn(P)), pe < W.length - 1) {
5375
+ if (P && Pd(Xn(P)), pe < W.length - 1) {
5373
5376
  p((ae) => ae + 1);
5374
5377
  return;
5375
5378
  }
@@ -5383,7 +5386,7 @@ function Ad({
5383
5386
  className: N.bannerLeft,
5384
5387
  onClick: () => it.push("/welcome"),
5385
5388
  style: { cursor: "pointer" },
5386
- children: /* @__PURE__ */ e("img", { src: Td, alt: "Z-Team", className: N.logo })
5389
+ children: /* @__PURE__ */ e("img", { src: Ld, alt: "Z-Team", className: N.logo })
5387
5390
  }
5388
5391
  ),
5389
5392
  /* @__PURE__ */ a("div", { className: N.bannerCenter, children: [
@@ -5557,7 +5560,7 @@ function Ad({
5557
5560
  children: /* @__PURE__ */ e(Pa, {})
5558
5561
  }
5559
5562
  ),
5560
- /* @__PURE__ */ e("div", { className: N.iconGroup, children: /* @__PURE__ */ e(kc, {}) }),
5563
+ /* @__PURE__ */ e("div", { className: N.iconGroup, children: /* @__PURE__ */ e(bc, {}) }),
5561
5564
  L && /* @__PURE__ */ e(
5562
5565
  Zo,
5563
5566
  {
@@ -5585,21 +5588,21 @@ function Ad({
5585
5588
  ] }),
5586
5589
  /* @__PURE__ */ e(Pn, { fallback: /* @__PURE__ */ e("div", { style: { padding: 24, color: "rgba(0,0,0,0.45)" }, children: "加载中…" }), children: me === "smart" ? (
5587
5590
  /* ── 智能模式 ── */
5588
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(_d, {}) })
5591
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(vd, {}) })
5589
5592
  ) : me === "knowledge" ? (
5590
5593
  /* ── 业务知识图谱(因果链图数据库直查) ── */
5591
- /* @__PURE__ */ e(yd, {})
5594
+ /* @__PURE__ */ e(kd, {})
5592
5595
  ) : me === "life" ? (
5593
5596
  /* ── 勇敢爱生活(社区 + 学习中心 + 市场资源)──
5594
5597
  * 2026-10-22:原顶栏「市场」入口已撤,市场资源分类进了这里的二级导航。 */
5595
- /* @__PURE__ */ e(vd, {})
5598
+ /* @__PURE__ */ e(bd, {})
5596
5599
  ) : me === "ops" ? (
5597
5600
  /* ── 运维模式:中间件孵化菜单面 (大需求 004),见文件头 OpsWorkbench 的注释 ── */
5598
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(kd, {}) })
5601
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Nd, {}) })
5599
5602
  ) : me === "admin" ? (
5600
5603
  /* ── 运营模式(团队后台管理):embedded 隐藏内层 Z-Team 顶栏,导航由外层 tab 栏提供,避免双层顶栏 ── */
5601
5604
  /* @__PURE__ */ e(
5602
- bd,
5605
+ wd,
5603
5606
  {
5604
5607
  embedded: !0,
5605
5608
  onSwitchToCollaboration: () => de("collaboration")
@@ -5617,16 +5620,16 @@ function Ad({
5617
5620
  /* ── FEATURE063: RPA 模式 ──
5618
5621
  * 左侧 RpaSidebar (7 个菜单) + 右侧 useRoutes 渲染 7 个一级页面.
5619
5622
  */
5620
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Sd, { onModeSwitch: we }) })
5623
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Td, { onModeSwitch: we }) })
5621
5624
  ) : me === "product" ? (
5622
5625
  /* ── 产品工作台 ── */
5623
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Cd, {}) })
5626
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Id, {}) })
5624
5627
  ) : me === "dev" ? (
5625
5628
  /* ── 研发模式:z-lc 低代码平台 ──
5626
5629
  * 左侧 DevWorkbench 出 z-lc 的 4 组 11 项菜单, 右侧 LcApp 渲染
5627
5630
  * /lc/* 下的页面。z-lc 前端源码已并入本仓 src/lc/。
5628
5631
  */
5629
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Nd, {}) })
5632
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Sd, {}) })
5630
5633
  ) : me === "test" ? (
5631
5634
  /* ── 测试模式 (FEATURE061) ──
5632
5635
  * 复用 SystemShell 体系: 左侧 SystemWorkbench 菜单 + 右侧 pathname 匹配渲染
@@ -5635,7 +5638,7 @@ function Ad({
5635
5638
  /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Zn, {}) })
5636
5639
  ) : me === "training" ? (
5637
5640
  /* ── 培训管理 ── */
5638
- /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(wd, {}) })
5641
+ /* @__PURE__ */ e("div", { className: N.smartWorkbenchArea, children: /* @__PURE__ */ e(Cd, {}) })
5639
5642
  ) : me === "personal" ? (
5640
5643
  /* ── 个人模式:workbuddy 壳(MiniMax Code 式布局) ──
5641
5644
  * 点「个人」直接落到 workbuddy 首页:左侧项目树 + 中间大输入框。
@@ -5648,7 +5651,7 @@ function Ad({
5648
5651
  * 包一层后最多是「这个壳显示渲染异常 + 重试」,其余模式仍可切。
5649
5652
  */
5650
5653
  /* @__PURE__ */ e(Pn, { fallback: null, children: /* @__PURE__ */ e(Wa, { children: /* @__PURE__ */ e(
5651
- gd,
5654
+ yd,
5652
5655
  {
5653
5656
  onOpenProject: mn,
5654
5657
  onSwitchMode: (P) => we(P),
@@ -5680,7 +5683,7 @@ function Ad({
5680
5683
  className: N.sidebar,
5681
5684
  style: { width: v.width, minWidth: v.width },
5682
5685
  children: [
5683
- /* @__PURE__ */ e(Mc, { onOpenTeam: o, onNewProject: t }),
5686
+ /* @__PURE__ */ e(Dc, { onOpenTeam: o, onNewProject: t }),
5684
5687
  /* @__PURE__ */ e(
5685
5688
  "div",
5686
5689
  {
@@ -5703,7 +5706,7 @@ function Ad({
5703
5706
  }
5704
5707
  ),
5705
5708
  /* @__PURE__ */ e("div", { className: N.centerPanel, children: s ? /* @__PURE__ */ e(
5706
- ec,
5709
+ tc,
5707
5710
  {
5708
5711
  onCreated: w,
5709
5712
  presetScenarioCode: m
@@ -5716,19 +5719,19 @@ function Ad({
5716
5719
  onToggleTodoPanel: () => z((P) => !P),
5717
5720
  todoCount: V
5718
5721
  }
5719
- ) : /* @__PURE__ */ e(ml, {}) }),
5722
+ ) : /* @__PURE__ */ e(ul, {}) }),
5720
5723
  /* @__PURE__ */ e(
5721
5724
  "div",
5722
5725
  {
5723
5726
  className: `${N.todoPanel} ${U ? "" : N.todoPanelHidden}`,
5724
- children: /* @__PURE__ */ e(cr, { onCountChange: Z })
5727
+ children: /* @__PURE__ */ e(lr, { onCountChange: Z })
5725
5728
  }
5726
5729
  )
5727
5730
  ] })
5728
5731
  ) }),
5729
- /* @__PURE__ */ e(li, {}),
5730
- /* @__PURE__ */ e(Ic, {}),
5731
- /* @__PURE__ */ e(jr, {}),
5732
+ /* @__PURE__ */ e(di, {}),
5733
+ /* @__PURE__ */ e(Lc, {}),
5734
+ /* @__PURE__ */ e(Wr, {}),
5732
5735
  /* @__PURE__ */ e(
5733
5736
  so,
5734
5737
  {
@@ -5824,9 +5827,9 @@ function Ad({
5824
5827
  "button",
5825
5828
  {
5826
5829
  type: "button",
5827
- className: `${N.popupNoticeBtn} ${Ot ? N.popupNoticeBtnConfirm : ""}`,
5830
+ className: `${N.popupNoticeBtn} ${Bt ? N.popupNoticeBtnConfirm : ""}`,
5828
5831
  onClick: Pt,
5829
- children: Ot ? "✓ 我已阅读" : "下一条 →"
5832
+ children: Bt ? "✓ 我已阅读" : "下一条 →"
5830
5833
  }
5831
5834
  ) })
5832
5835
  ]
@@ -5834,25 +5837,25 @@ function Ad({
5834
5837
  )
5835
5838
  ] });
5836
5839
  }
5837
- const Pd = "_selectList_13hpp_1", $d = "_selectItem_13hpp_14", Ed = "_selectItemInfo_13hpp_32", Md = "_selectItemName_13hpp_38", Dd = "_selectItemDesc_13hpp_45", Fd = "_selectedBadge_13hpp_54", Rd = "_divider_13hpp_62", Od = "_memberList_13hpp_68", Bd = "_memberRow_13hpp_72", jd = "_memberRowLeft_13hpp_80", Wd = "_removeBtn_13hpp_86", Hd = "_searchInput_13hpp_98", Ud = "_spinBody_13hpp_119", Le = {
5838
- selectList: Pd,
5839
- selectItem: $d,
5840
- selectItemInfo: Ed,
5841
- selectItemName: Md,
5842
- selectItemDesc: Dd,
5843
- selectedBadge: Fd,
5844
- divider: Rd,
5845
- memberList: Od,
5846
- memberRow: Bd,
5847
- memberRowLeft: jd,
5848
- removeBtn: Wd,
5849
- searchInput: Hd,
5850
- spinBody: Ud
5840
+ const Ed = "_selectList_13hpp_1", Md = "_selectItem_13hpp_14", Dd = "_selectItemInfo_13hpp_32", Fd = "_selectItemName_13hpp_38", Rd = "_selectItemDesc_13hpp_45", Bd = "_selectedBadge_13hpp_54", Od = "_divider_13hpp_62", jd = "_memberList_13hpp_68", Wd = "_memberRow_13hpp_72", Hd = "_memberRowLeft_13hpp_80", Ud = "_removeBtn_13hpp_86", zd = "_searchInput_13hpp_98", Gd = "_spinBody_13hpp_119", Le = {
5841
+ selectList: Ed,
5842
+ selectItem: Md,
5843
+ selectItemInfo: Dd,
5844
+ selectItemName: Fd,
5845
+ selectItemDesc: Rd,
5846
+ selectedBadge: Bd,
5847
+ divider: Od,
5848
+ memberList: jd,
5849
+ memberRow: Wd,
5850
+ memberRowLeft: Hd,
5851
+ removeBtn: Ud,
5852
+ searchInput: zd,
5853
+ spinBody: Gd
5851
5854
  }, eo = (t) => {
5852
5855
  var o;
5853
5856
  return (t.agent_code || ((o = t._agenthub_raw) == null ? void 0 : o.agentCode) || "").trim();
5854
5857
  }, $t = (t, o) => `${t}:${o}`;
5855
- function zd({ onClose: t }) {
5858
+ function qd({ onClose: t }) {
5856
5859
  const {
5857
5860
  members: o,
5858
5861
  availableAgents: r,
@@ -6199,19 +6202,19 @@ function zd({ onClose: t }) {
6199
6202
  }
6200
6203
  );
6201
6204
  }
6202
- const Gd = "/v1/ws/local-agent";
6205
+ const Kd = "/v1/ws/local-agent";
6203
6206
  let Ve = null, Ct = "", Ft = null, kt = null, Nn = 0;
6204
6207
  const Rt = /* @__PURE__ */ new Map();
6205
- function qd() {
6208
+ function Vd() {
6206
6209
  return typeof window < "u" && !!window.__TAURI__;
6207
6210
  }
6208
- function Kd() {
6209
- return `${window.location.protocol === "https:" ? "wss:" : "ws:"}//${window.location.host}${Gd}`;
6211
+ function Yd() {
6212
+ return `${window.location.protocol === "https:" ? "wss:" : "ws:"}//${window.location.host}${Kd}`;
6210
6213
  }
6211
6214
  function vt(t) {
6212
6215
  Ve && Ve.readyState === WebSocket.OPEN && Ve.send(JSON.stringify(t));
6213
6216
  }
6214
- function Vd() {
6217
+ function Jd() {
6215
6218
  kt != null && window.clearInterval(kt), kt = window.setInterval(() => {
6216
6219
  vt({ type: "register", token: Ct });
6217
6220
  }, 3e4);
@@ -6224,7 +6227,7 @@ function to() {
6224
6227
  Ft = null, vo();
6225
6228
  }, t);
6226
6229
  }
6227
- async function Yd(t) {
6230
+ async function Qd(t) {
6228
6231
  const o = String(t.requestId ?? ""), r = String(t.method ?? "GET"), s = String(t.path ?? "");
6229
6232
  if (!o || !s.startsWith("/v1/")) {
6230
6233
  vt({ type: "error", requestId: o, message: "invalid proxy request" });
@@ -6278,19 +6281,19 @@ async function Yd(t) {
6278
6281
  function vo() {
6279
6282
  if (Ct && !(Ve && (Ve.readyState === WebSocket.CONNECTING || Ve.readyState === WebSocket.OPEN))) {
6280
6283
  try {
6281
- Ve = new WebSocket(Kd());
6284
+ Ve = new WebSocket(Yd());
6282
6285
  } catch {
6283
6286
  to();
6284
6287
  return;
6285
6288
  }
6286
6289
  Ve.onopen = () => {
6287
- Nn = 0, vt({ type: "register", token: Ct }), Vd();
6290
+ Nn = 0, vt({ type: "register", token: Ct }), Jd();
6288
6291
  }, Ve.onmessage = (t) => {
6289
6292
  var o;
6290
6293
  try {
6291
6294
  const r = JSON.parse(t.data), s = String(r.type ?? "");
6292
6295
  if (s === "request")
6293
- Yd(r);
6296
+ Qd(r);
6294
6297
  else if (s === "cancel") {
6295
6298
  const m = String(r.requestId ?? "");
6296
6299
  (o = Rt.get(m)) == null || o.abort(), Rt.delete(m);
@@ -6303,16 +6306,16 @@ function vo() {
6303
6306
  };
6304
6307
  }
6305
6308
  }
6306
- function Jd(t) {
6307
- !qd() || !t || (Ct && Ct !== t && Qd(), Ct = t, vo());
6309
+ function Zd(t) {
6310
+ !Vd() || !t || (Ct && Ct !== t && Xd(), Ct = t, vo());
6308
6311
  }
6309
- function Qd() {
6312
+ function Xd() {
6310
6313
  Ct = "", Ft != null && (window.clearTimeout(Ft), Ft = null), kt != null && (window.clearInterval(kt), kt = null), Rt.forEach((t) => t.abort()), Rt.clear(), Ve && (Ve.onclose = null, Ve.close(), Ve = null);
6311
6314
  }
6312
- const Zd = "_teamWorkspaceRoot_1ydrp_1", Xd = "_loadingWrap_1ydrp_7", em = "_openingOverlay_1ydrp_13", Wt = {
6313
- teamWorkspaceRoot: Zd,
6314
- loadingWrap: Xd,
6315
- openingOverlay: em
6315
+ const em = "_teamWorkspaceRoot_1ydrp_1", tm = "_loadingWrap_1ydrp_7", nm = "_openingOverlay_1ydrp_13", Wt = {
6316
+ teamWorkspaceRoot: em,
6317
+ loadingWrap: tm,
6318
+ openingOverlay: nm
6316
6319
  };
6317
6320
  async function vn(t, o) {
6318
6321
  const r = await Ho();
@@ -6333,10 +6336,10 @@ function no() {
6333
6336
  search: s ? `?${s}` : ""
6334
6337
  });
6335
6338
  }
6336
- function tm({
6339
+ function om({
6337
6340
  forcedChatMode: t
6338
6341
  } = {}) {
6339
- const o = ta(), r = na(), s = t !== "system" && Ka() && !Va(o.search);
6342
+ const o = ta(), r = na(), s = t !== "system" && Va() && !Ya(o.search);
6340
6343
  H(() => {
6341
6344
  s && it.replace({
6342
6345
  pathname: "/workspace/phone",
@@ -6358,7 +6361,7 @@ function tm({
6358
6361
  }))
6359
6362
  ), F = M((p) => p.loadProjects), K = M((p) => p.loadRunningExecutions), E = M((p) => p.updateCurrentUser), v = M((p) => p.selectFile), I = M((p) => p.clearCurrentProject), [x, U] = c(!1), [z, V] = c(!1), [Z, ne] = c(null), re = le(!1), D = le(!1);
6360
6363
  H(() => {
6361
- Jd(S);
6364
+ Zd(S);
6362
6365
  }, [S]), H(() => {
6363
6366
  const p = Ut.parse(o.search), R = String(p.newChat ?? "").trim();
6364
6367
  if (!R) return;
@@ -6398,19 +6401,19 @@ function tm({
6398
6401
  const j = 100;
6399
6402
  let Ce = !1, Te = 0;
6400
6403
  const ge = 3, oe = (se) => {
6401
- const O = M.getState().token;
6404
+ const B = M.getState().token;
6402
6405
  if (pe.current != null) {
6403
- R || (E(xn(se)), y(!0)), vn(O, (Ne) => {
6406
+ R || (E(xn(se)), y(!0)), vn(B, (Ne) => {
6404
6407
  R || E(Ne);
6405
6408
  }).catch(() => {
6406
- !R && O && (localStorage.removeItem("z_team_token"), M.setState({ token: "" }));
6409
+ !R && B && (localStorage.removeItem("z_team_token"), M.setState({ token: "" }));
6407
6410
  });
6408
6411
  return;
6409
6412
  }
6410
- vn(O, (Ne) => {
6413
+ vn(B, (Ne) => {
6411
6414
  R || E(Ne);
6412
6415
  }).catch(() => {
6413
- R || (O && (localStorage.removeItem("z_team_token"), M.setState({ token: "" })), E(xn(se)));
6416
+ R || (B && (localStorage.removeItem("z_team_token"), M.setState({ token: "" })), E(xn(se)));
6414
6417
  }).finally(() => {
6415
6418
  R || y(!0);
6416
6419
  });
@@ -6419,19 +6422,19 @@ function tm({
6419
6422
  if (R) return;
6420
6423
  const se = async () => {
6421
6424
  if (R) return;
6422
- let O = Ko();
6423
- if ((!O || !Ln(O)) && !Ce) {
6425
+ let B = Ko();
6426
+ if ((!B || !Ln(B)) && !Ce) {
6424
6427
  Ce = !0;
6425
6428
  try {
6426
6429
  const _e = await Go();
6427
- _e.kind === "authenticated" ? O = _e.user : _e.kind === "unauthenticated" && (Te += 1);
6430
+ _e.kind === "authenticated" ? B = _e.user : _e.kind === "unauthenticated" && (Te += 1);
6428
6431
  } catch {
6429
6432
  } finally {
6430
6433
  Ce = !1;
6431
6434
  }
6432
6435
  }
6433
- if (O && Ln(O)) {
6434
- oe(O);
6436
+ if (B && Ln(B)) {
6437
+ oe(B);
6435
6438
  return;
6436
6439
  }
6437
6440
  if (Te >= ge) {
@@ -6536,12 +6539,12 @@ function tm({
6536
6539
  try {
6537
6540
  if (await j(), h)
6538
6541
  return;
6539
- let { token: oe, projects: A, expandProject: ee } = M.getState(), se = A.find((O) => O.id === p);
6542
+ let { token: oe, projects: A, expandProject: ee } = M.getState(), se = A.find((B) => B.id === p);
6540
6543
  if (!se) {
6541
- const O = await za(p, oe);
6544
+ const B = await za(p, oe);
6542
6545
  if (h)
6543
6546
  return;
6544
- if (O.status === "NOT_FOUND" || !O.scenarioInstance) {
6547
+ if (B.status === "NOT_FOUND" || !B.scenarioInstance) {
6545
6548
  An.info("无此工程");
6546
6549
  return;
6547
6550
  }
@@ -6577,10 +6580,10 @@ function tm({
6577
6580
  oe != null && oe.taskId && ge.loadTaskMessages(oe.taskId).catch(() => {
6578
6581
  }), ge.loadFileTree(void 0, !0).catch(() => {
6579
6582
  });
6580
- }, R = Oo((ge) => {
6583
+ }, R = Bo((ge) => {
6581
6584
  M.getState().setWsState(ge);
6582
6585
  });
6583
- Bo(g.id, S, p), K().catch(() => {
6586
+ Oo(g.id, S, p), K().catch(() => {
6584
6587
  });
6585
6588
  const h = M.getState(), { handler: j, dispose: Ce } = ca({
6586
6589
  projectId: g.id,
@@ -6621,7 +6624,7 @@ function tm({
6621
6624
  ] })
6622
6625
  ] }) : /* @__PURE__ */ e("div", { className: Wt.loadingWrap, children: /* @__PURE__ */ e(at, { description: "正在接入 4A 统一登录…" }) }) : /* @__PURE__ */ a("div", { className: `${Wt.teamWorkspaceRoot} team-workspace-root`, children: [
6623
6626
  /* @__PURE__ */ e(
6624
- Ad,
6627
+ $d,
6625
6628
  {
6626
6629
  onNewProject: () => {
6627
6630
  M.getState().currentProject && I();
@@ -6635,48 +6638,48 @@ function tm({
6635
6638
  }
6636
6639
  ),
6637
6640
  i != null ? /* @__PURE__ */ e("div", { className: Wt.openingOverlay, children: /* @__PURE__ */ e(at, { description: `正在打开工程 ${i}…` }) }) : null,
6638
- x && /* @__PURE__ */ e(zd, { onClose: () => U(!1) }),
6641
+ x && /* @__PURE__ */ e(qd, { onClose: () => U(!1) }),
6639
6642
  /* @__PURE__ */ e(Fa, {})
6640
6643
  ] });
6641
6644
  }
6642
- const tu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
6645
+ const au = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
6643
6646
  __proto__: null,
6644
- default: tm
6647
+ default: om
6645
6648
  }, Symbol.toStringTag, { value: "Module" }));
6646
6649
  export {
6647
- Ym as A,
6648
- Zm as B,
6649
- Jm as C,
6650
- qm as D,
6651
- Gm as E,
6652
- Km as F,
6653
- Vm as G,
6654
- qd as H,
6655
- tu as I,
6650
+ Zm as A,
6651
+ tu as B,
6652
+ Xm as C,
6653
+ Ym as D,
6654
+ Vm as E,
6655
+ Jm as F,
6656
+ Qm as G,
6657
+ Vd as H,
6658
+ au as I,
6656
6659
  ot as a,
6657
- Sm as b,
6658
- Tm as c,
6659
- Dm as d,
6660
- Rm as e,
6661
- Cm as f,
6662
- Fm as g,
6663
- Lm as h,
6664
- Za as i,
6665
- Am as j,
6666
- $m as k,
6667
- Mm as l,
6668
- Em as m,
6669
- Pm as n,
6670
- Om as o,
6671
- Bm as p,
6672
- jm as q,
6673
- Xm as r,
6674
- Um as s,
6675
- xm as t,
6676
- Im as u,
6677
- Hm as v,
6678
- eu as w,
6679
- zm as x,
6680
- Wm as y,
6681
- Qm as z
6660
+ Im as b,
6661
+ xm as c,
6662
+ Bm as d,
6663
+ jm as e,
6664
+ Lm as f,
6665
+ Om as g,
6666
+ Pm as h,
6667
+ Xa as i,
6668
+ Em as j,
6669
+ Dm as k,
6670
+ Rm as l,
6671
+ Fm as m,
6672
+ Mm as n,
6673
+ Wm as o,
6674
+ Hm as p,
6675
+ Um as q,
6676
+ nu as r,
6677
+ qm as s,
6678
+ $m as t,
6679
+ Am as u,
6680
+ Gm as v,
6681
+ ou as w,
6682
+ Km as x,
6683
+ zm as y,
6684
+ eu as z
6682
6685
  };