@yuku123/z-team-component 0.2.91 → 0.2.92

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.
Files changed (53) hide show
  1. package/dist/{ChangeLogView-DagOxr6O.js → ChangeLogView-DMVBdFFX.js} +12 -12
  2. package/dist/ComponentDoc-Boc9n2c_.js +8035 -0
  3. package/dist/{InvitationManagementPage-DYoqQA0v.js → InvitationManagementPage-B4UJQBrv.js} +1 -1
  4. package/dist/{OnboardingPage-D2Gm8MRd.js → OnboardingPage-BuDvSKMx.js} +2 -2
  5. package/dist/{ScheduledTasks-DB3VxAnb.js → ScheduledTasks-DY4iYtX3.js} +4341 -4337
  6. package/dist/{SystemShell-D3jHItxY.js → SystemShell-UVZjsfJs.js} +11 -12
  7. package/dist/admin-logs-OIyOdfuC.js +198 -0
  8. package/dist/{api-DYsAzJJo.js → api-mJ7FvgsR.js} +1 -1
  9. package/dist/createWorkspaceWsHandler-9k7O4P-D.js +13135 -0
  10. package/dist/{index-B5dDwxhs.js → index-BMt6Z1yA.js} +1 -1
  11. package/dist/{index-Cw6MIoNv.js → index-Bi6mbk7-.js} +6 -7
  12. package/dist/{index-E4Q6JmzX.js → index-BxRNZbw5.js} +3 -3
  13. package/dist/{index-CgWa7RFv.js → index-C2LwqjZQ.js} +23 -24
  14. package/dist/{index-BZ12pY96.js → index-COLSSd6V.js} +2 -2
  15. package/dist/{index-BfzgRKii.js → index-CYe2nfiG.js} +90 -91
  16. package/dist/{index-BYe87pnq.js → index-CeYCMcgX.js} +11 -12
  17. package/dist/index-Ckpc_Z6-.js +3495 -0
  18. package/dist/{index-BMQ6XkO3.js → index-CpA8ev3a.js} +1 -1
  19. package/dist/{index-VGtET31b.js → index-CpwvgQ3b.js} +1 -1
  20. package/dist/{index-W_4faD_M.js → index-CsHpsX_P.js} +2 -2
  21. package/dist/{index-CYyFYmlZ.js → index-CwNtNKwX.js} +8 -9
  22. package/dist/index-D1odHNMR.js +316 -0
  23. package/dist/{index-DyQ9YnMd.js → index-D74FCwtx.js} +3629 -3473
  24. package/dist/{index-Dwqa30HZ.js → index-D83QI-17.js} +4 -4
  25. package/dist/{index-Cggl78j7.js → index-DeHC7MtX.js} +5 -6
  26. package/dist/{index-ues0LW7p.js → index-FAhDAnIy.js} +1257 -1258
  27. package/dist/{index-C8cR7lJw.js → index-GHQ4Tl6H.js} +10 -11
  28. package/dist/{index-BaCqZeiw.js → index-Gk-5X-GO.js} +1 -1
  29. package/dist/{index-CZyFAmEq.js → index-Hm6ZaRmP.js} +10 -11
  30. package/dist/{index-CLfhHxPf.js → index-TW4txhve.js} +1 -1
  31. package/dist/{index-DE82vM_4.js → index-kwnNAAM0.js} +19 -18
  32. package/dist/{index-CSpckSHg.js → index-r4IxoITP.js} +23 -23
  33. package/dist/{index-CLD5lLa6.js → index-s5yeUpMA.js} +19 -19
  34. package/dist/{index-152G-_4j.js → index-zEqjsTFh.js} +5 -6
  35. package/dist/index.js +1 -1
  36. package/dist/{instance-CI6-4BZ6.js → instance-BpY3BXci.js} +1 -1
  37. package/dist/{menuPermission-C33I6ujb.js → menuPermission-DX8KlB6K.js} +11 -11
  38. package/dist/pages.js +8 -8
  39. package/dist/{send-default-agent-team-message-c5oKdQQA.js → send-default-agent-team-message-DVFuAdE9.js} +1 -1
  40. package/dist/{sso-user-DToM5dPy.js → sso-user-BBkFFo35.js} +1 -1
  41. package/dist/{training-B38tnwLL.js → training-BCi9cA6O.js} +1 -1
  42. package/dist/webide-MQ5gD1Go.js +5233 -0
  43. package/dist/z-team-component.css +1 -26
  44. package/package.json +3 -2
  45. package/dist/ComponentDoc-Bqfu128t.js +0 -3998
  46. package/dist/admin-logs-ogvMwS4O.js +0 -302
  47. package/dist/api-BftpestH.js +0 -2156
  48. package/dist/createWorkspaceWsHandler-D8h5BEzH.js +0 -13030
  49. package/dist/index-CUVdeb8y.js +0 -638
  50. package/dist/index-DVaTGA2z.js +0 -3488
  51. package/dist/schedule-ChO2xIGd.js +0 -625
  52. package/dist/useAppStore-uc8v8XZC.js +0 -1920
  53. package/dist/webide-BuUYLPSp.js +0 -8399
@@ -1,2156 +0,0 @@
1
- import { message as K } from "antd";
2
- function m(e) {
3
- return e == null || e === "" ? "" : typeof e == "string" ? e : String(e);
4
- }
5
- function Ge(e) {
6
- const n = m(e);
7
- return n === "" ? null : n;
8
- }
9
- function Ze(e, n) {
10
- return m(e) === m(n);
11
- }
12
- function Xe(e) {
13
- const n = m(e);
14
- return n !== "" && n.startsWith("-");
15
- }
16
- function pe(e) {
17
- const n = m(e);
18
- return n !== "" && fe(n, "0") > 0;
19
- }
20
- function fe(e, n) {
21
- const t = m(e), s = m(n);
22
- if (t === s)
23
- return 0;
24
- if (t === "")
25
- return 1;
26
- if (s === "")
27
- return -1;
28
- try {
29
- const o = BigInt(t), d = BigInt(s);
30
- return o < d ? -1 : 1;
31
- } catch {
32
- return t < s ? -1 : 1;
33
- }
34
- }
35
- const me = 101012001;
36
- function ye() {
37
- const e = typeof window < "u" && window.ZTEAM_SSO_BASE || "";
38
- return e ? e.replace(/\/+$/, "") : typeof window > "u" ? "http://localhost" : window.location.origin;
39
- }
40
- function $e() {
41
- const e = new URL(window.location.href);
42
- e.searchParams.has("_from_login") || e.searchParams.set("_from_login", "1");
43
- const n = `${ye()}/login?redirect=${encodeURIComponent(
44
- e.toString()
45
- )}`;
46
- window.location.href = n;
47
- }
48
- const g = { credentials: "include" };
49
- function L(e, n = "error") {
50
- n === "warning" ? K.warning(e) : K.error(e);
51
- }
52
- typeof window < "u" && window.addEventListener(
53
- "unhandledrejection",
54
- (e) => {
55
- const n = e.reason;
56
- n && typeof n == "object" && n._apiUserError && e.preventDefault();
57
- }
58
- );
59
- let V = !1;
60
- const Q = "登录已失效,请重新登录";
61
- function he(e) {
62
- if (!e) return !1;
63
- if (Number(e.code) === me) return !0;
64
- const n = typeof e.message == "string" ? e.message : "";
65
- return /登录(?:已)?(?:失效|过期)|重新登录|未登录/.test(n);
66
- }
67
- function G() {
68
- if (!V) {
69
- V = !0;
70
- try {
71
- Oe();
72
- } catch {
73
- }
74
- try {
75
- localStorage.removeItem("ft_token"), localStorage.removeItem("USER_INFO"), delete window.USER_INFO;
76
- } catch {
77
- }
78
- $e();
79
- }
80
- throw {
81
- _apiUserError: !0,
82
- userMessage: Q,
83
- message: Q
84
- };
85
- }
86
- function Z(e, n) {
87
- return e.status === 401 ? "登录已失效,请重新登录" : e.status === 403 ? "没有权限访问该资源" : e.status === 404 ? "接口不存在,请确认后端已启动且路径为 /z-team" : e.status >= 500 ? "服务暂时不可用,请稍后重试" : (e.status >= 400, n);
88
- }
89
- const ne = "/z-team", ge = typeof window < "u" && /(zteam[-.]ft\.(zteam\.local|zteam\.local)|team\.zteam\.local)/i.test(
90
- window.location.hostname
91
- ), x = ge, Se = `${x ? "/kapi" : ""}${ne}/api`, we = `${x ? "/kapi" : ""}${ne}`, Te = `${we}/v1/scenario-instances`, Ce = window.ENV_TYPE || window.envType || "", w = Se, Ye = `${x ? "/kapi" : ""}/z-team-evolution/api`, en = `${x ? "/kapi" : ""}/z-team-bench/api`, Ie = Ce || "local";
92
- async function T(e, n) {
93
- try {
94
- const t = {
95
- // ⚠ 显式 Accept(2026-10-23, TASK-20261023-001):后端 SsoInterceptor 只看
96
- // Accept / Content-Type 是否含 application/json ⇒ 裸 fetch 不带 Accept 会落
97
- // 302 分支(跳登录页 ⇒ 200 + text/html ⇒ res.json() 抛错)。
98
- // init?.headers 在最后 ⇒ 调用方仍可用自己的 Accept 覆盖(如 SSE 的 text/event-stream)。
99
- Accept: "application/json",
100
- "project-env": Ie,
101
- ...n == null ? void 0 : n.headers
102
- };
103
- return await fetch(e, { ...g, ...n, headers: t });
104
- } catch {
105
- const t = "无法连接服务器,请确认 Java 服务已启动(如 127.0.0.1:8080)且前端代理 /z-team 已配置";
106
- throw L(t), { _apiUserError: !0, userMessage: t, message: t };
107
- }
108
- }
109
- async function C(e, n) {
110
- e.status === 401 && G();
111
- const t = await e.text().catch(() => "");
112
- let s = {};
113
- if (t)
114
- try {
115
- s = JSON.parse(t);
116
- } catch {
117
- if (!e.ok) {
118
- const o = Z(e, n);
119
- throw L(
120
- e.status >= 500 ? o : `${o}(HTTP ${e.status},响应非 JSON)`
121
- ), {
122
- _apiUserError: !0,
123
- userMessage: o,
124
- message: o
125
- };
126
- }
127
- return t;
128
- }
129
- if (he(s) && G(), typeof s.success == "boolean") {
130
- if (s.success)
131
- return s.data !== void 0 ? s.data : !0;
132
- const o = s.message || // z-team 另有 7 个 admin controller 挂 bench Result({code,msg,data,success})
133
- s.msg || s.detail || n;
134
- throw L(o), {
135
- _apiUserError: !0,
136
- userMessage: o,
137
- message: o
138
- };
139
- }
140
- if (!e.ok) {
141
- const o = s.detail || s.message || Z(e, n);
142
- throw L(o), {
143
- _apiUserError: !0,
144
- userMessage: o,
145
- message: o
146
- };
147
- }
148
- return s;
149
- }
150
- const _e = /_+([a-z0-9])/gi;
151
- function be(e) {
152
- return e.replace(_e, (n, t) => t.toUpperCase());
153
- }
154
- function B(e) {
155
- if (Array.isArray(e)) return e.map((n) => B(n));
156
- if (e && typeof e == "object" && !(e instanceof Date)) {
157
- const n = {};
158
- for (const [t, s] of Object.entries(e))
159
- n[be(t)] = B(s);
160
- return n;
161
- }
162
- return e;
163
- }
164
- async function nn(e, n) {
165
- return B(await C(e, n));
166
- }
167
- async function Ae() {
168
- try {
169
- const e = await T(`${w}/sso/attach-ctc-token`, {
170
- ...g,
171
- method: "POST"
172
- });
173
- if (!e.ok)
174
- return !1;
175
- const n = await e.json().catch(() => null);
176
- return !!(n && n.success);
177
- } catch {
178
- return !1;
179
- }
180
- }
181
- async function tn(e, n) {
182
- const t = n != null && n.trim() !== "" ? { result: n } : void 0, s = await T(`${w}/tasks/${e}/complete`, {
183
- ...g,
184
- method: "POST",
185
- headers: { "Content-Type": "application/json" },
186
- body: t ? JSON.stringify(t) : void 0
187
- });
188
- return C(s, "完成任务失败");
189
- }
190
- async function sn(e, n) {
191
- const t = await T(`${w}/tasks/${e}/suspend`, {
192
- ...g,
193
- method: "POST",
194
- headers: { "Content-Type": "application/json" },
195
- body: void 0
196
- });
197
- return C(t, "挂起任务失败");
198
- }
199
- async function on(e, n) {
200
- const t = await T(`${w}/tasks/${e}/cancel`, {
201
- ...g,
202
- method: "POST",
203
- headers: { "Content-Type": "application/json" },
204
- body: void 0
205
- });
206
- return C(t, "取消任务失败");
207
- }
208
- async function an(e) {
209
- const n = await T(`${w}/tasks/${e}/continue`, {
210
- ...g,
211
- method: "POST",
212
- headers: { "Content-Type": "application/json" }
213
- });
214
- return C(n, "继续执行失败");
215
- }
216
- async function rn(e) {
217
- const n = await T(`${w}/tasks/${e}/reset`, {
218
- ...g,
219
- method: "POST",
220
- headers: { "Content-Type": "application/json" }
221
- });
222
- return C(n, "重置执行失败");
223
- }
224
- async function cn(e) {
225
- const n = await T(`${w}/tasks/${e}`, g);
226
- return C(n, "加载任务失败");
227
- }
228
- const dn = "http://127.0.0.1/kapi/z-webide/inspect";
229
- let p = null, k = [], R = [], A = 0, X = "", D = null, P = 0, h = null, te = "disconnected";
230
- function M(e) {
231
- te = e, R.forEach((n) => n(e));
232
- }
233
- function Y() {
234
- return A !== 0 && A !== "";
235
- }
236
- function Ue(e, n = "") {
237
- const t = window.location.protocol === "https:" ? "wss:" : "ws:", s = window.location.host, o = n ? `?token=${encodeURIComponent(n)}` : "";
238
- return `${t}//${s}${Te}/${e}/ws${o}`;
239
- }
240
- function un(e) {
241
- return R.push(e), e(te), () => {
242
- R = R.filter((n) => n !== e);
243
- };
244
- }
245
- function Ee(e, n = "", t) {
246
- if (p && (p.readyState === WebSocket.CONNECTING || p.readyState === WebSocket.OPEN) && A === e)
247
- return;
248
- p && (p.onclose = null, p.close(), p = null), h != null && (clearTimeout(h), h = null);
249
- const s = Ue(e, n);
250
- A = e, X = n, t && (D = t), M("connecting"), p = new WebSocket(s), p.onopen = () => {
251
- P = 0, M("connected"), console.log("[WS] connected");
252
- }, p.onmessage = (o) => {
253
- try {
254
- const d = JSON.parse(o.data);
255
- console.log("[WS recv]", d.type, d), k.forEach((u) => u(d));
256
- } catch {
257
- }
258
- }, p.onerror = () => {
259
- console.warn("[WS] connection error:", s);
260
- }, p.onclose = (o) => {
261
- const d = o.wasClean;
262
- if (p = null, M("disconnected"), !Y()) return;
263
- P += 1;
264
- const u = Math.min(3e3 * P, 3e4);
265
- console.warn(
266
- `[WS] closed (clean=${d}), reconnect #${P} in ${u}ms`
267
- ), h = setTimeout(() => {
268
- h = null, Y() && (Ee(A, X), D == null || D());
269
- }, u);
270
- };
271
- }
272
- function ln(e) {
273
- return k.push(e), () => {
274
- k = k.filter((n) => n !== e);
275
- };
276
- }
277
- async function pn(e) {
278
- await Ae().catch(() => {
279
- }), p && p.readyState === WebSocket.OPEN && p.send(JSON.stringify(e));
280
- }
281
- function Oe() {
282
- A = 0, h != null && (clearTimeout(h), h = null), p && (p.onclose = null, p.close(), p = null), P = 0, M("disconnected"), k = [], R = [];
283
- }
284
- const c = {
285
- credentials: "include",
286
- // 强制标识为 XHR/fetch API 请求,使后端 SsoInterceptor 走 JSON 401 分支
287
- // 而不是返回 302 跳到 SSO 登录页(避免 fetch follow redirect 后拿到 SPA HTML 导致解析失败)
288
- headers: { Accept: "application/json" }
289
- }, v = "zindexer_admin_token";
290
- function fn() {
291
- return typeof localStorage > "u" ? "" : localStorage.getItem(v) || "";
292
- }
293
- function mn(e) {
294
- if (typeof localStorage > "u") return;
295
- const n = (e || "").trim();
296
- if (!n) {
297
- localStorage.removeItem(v);
298
- return;
299
- }
300
- localStorage.setItem(v, n);
301
- }
302
- function yn() {
303
- typeof localStorage > "u" || localStorage.removeItem(v);
304
- }
305
- function I(e = {}) {
306
- const n = (typeof localStorage < "u" ? localStorage.getItem(v) : "") || "";
307
- return {
308
- ...c,
309
- ...e,
310
- headers: {
311
- ...c.headers || {},
312
- ...e.headers || {},
313
- ...n ? { "X-Indexer-Token": n } : {}
314
- }
315
- };
316
- }
317
- class Pe extends Error {
318
- constructor(n) {
319
- super(n), this._apiUserError = !0, this.name = "ApiUserError", this.userMessage = n;
320
- }
321
- }
322
- function $n(e) {
323
- return e instanceof Pe ? !0 : !!(e && typeof e == "object" && e._apiUserError);
324
- }
325
- function S(e, n = "error") {
326
- console[n === "warning" ? "warn" : "error"]("[api]", e);
327
- }
328
- typeof window < "u" && window.addEventListener(
329
- "unhandledrejection",
330
- (e) => {
331
- const n = e.reason;
332
- n && typeof n == "object" && n._apiUserError && e.preventDefault();
333
- }
334
- );
335
- function ee(e, n) {
336
- return e.status === 401 ? "登录已失效,请重新登录" : e.status === 403 ? "没有权限访问该资源" : e.status === 404 ? "接口不存在,请确认后端已启动且路径为 /z-team" : e.status >= 500 ? "服务暂时不可用,请稍后重试" : (e.status >= 400, n);
337
- }
338
- const ke = "/z-team", Re = typeof window < "u" && window.ZTEAM_USE_KAPI === !0, se = Re, oe = `${se ? "/kapi" : ""}${ke}/api`, ve = window.ENV_TYPE || window.envType || "", r = oe, je = `${se ? "/kapi" : ""}/z-team-evolution/api`;
339
- async function Ne(e) {
340
- const n = new FormData();
341
- n.append("file", e);
342
- const t = await i(`${r}/common/upload-image`, {
343
- method: "POST",
344
- body: n
345
- }), s = await a(t, "上传图片失败"), o = typeof (s == null ? void 0 : s.url) == "string" ? s.url : "";
346
- if (!o) {
347
- const d = "上传图片失败:响应缺少图片地址";
348
- throw S(d), { _apiUserError: !0, userMessage: d, message: d };
349
- }
350
- return o;
351
- }
352
- async function hn(e) {
353
- return Promise.all(e.map((n) => Ne(n)));
354
- }
355
- const qe = ve || "local";
356
- async function i(e, n) {
357
- try {
358
- const t = {
359
- // ⚠ 显式 Accept(2026-10-23, TASK-20261023-001):后端 SsoInterceptor 只看
360
- // Accept / Content-Type 是否含 application/json ⇒ 裸 fetch 不带 Accept 会落
361
- // 302 分支(跳登录页 ⇒ 200 + text/html ⇒ res.json() 抛错)。
362
- // init?.headers 在最后 ⇒ 调用方仍可用自己的 Accept 覆盖(如 SSE 的 text/event-stream)。
363
- Accept: "application/json",
364
- ...c.headers,
365
- "project-env": qe,
366
- ...n == null ? void 0 : n.headers
367
- };
368
- return await fetch(e, { ...c, ...n, headers: t });
369
- } catch {
370
- const t = "无法连接服务器,请确认 Java 服务已启动(如 127.0.0.1:8080)且前端代理 /z-team 已配置";
371
- throw S(t), { _apiUserError: !0, userMessage: t, message: t };
372
- }
373
- }
374
- function ae(e) {
375
- const n = e.id ?? e.staff_id ?? e.staffId ?? e.user_id ?? e.userId;
376
- return {
377
- // FE-PRECISION-FIX: 雪花 ID 保持字符串,禁止走 Number()
378
- id: m(n),
379
- username: String(e.username ?? ""),
380
- display_name: String(e.display_name ?? e.displayName ?? ""),
381
- avatar: String(e.avatar ?? "👤"),
382
- created_at: String(e.created_at ?? e.createdAt ?? ""),
383
- is_global_admin: !!(e.is_global_admin ?? e.globalAdmin ?? e.global_admin ?? !1)
384
- };
385
- }
386
- async function a(e, n) {
387
- const t = await e.text().catch(() => "");
388
- let s = {};
389
- if (t)
390
- try {
391
- s = JSON.parse(t);
392
- } catch {
393
- if (!e.ok) {
394
- const u = ee(e, n);
395
- throw S(
396
- e.status >= 500 ? u : `${u}(HTTP ${e.status},响应非 JSON)`
397
- ), {
398
- _apiUserError: !0,
399
- userMessage: u,
400
- message: u
401
- };
402
- }
403
- return t;
404
- }
405
- const o = s.status_code ?? s.statusCode, d = s.success === !0 || typeof o == "number" && o >= 200 && o < 300;
406
- if (typeof s.success == "boolean" || typeof o == "number") {
407
- if (d)
408
- return s.data !== void 0 ? s.data : !0;
409
- const u = s.message || s.msg || s.detail || n;
410
- throw S(u), {
411
- _apiUserError: !0,
412
- userMessage: u,
413
- message: u
414
- };
415
- }
416
- if (!e.ok) {
417
- const u = s.detail || s.message || ee(e, n);
418
- throw S(u), {
419
- _apiUserError: !0,
420
- userMessage: u,
421
- message: u
422
- };
423
- }
424
- return s;
425
- }
426
- async function gn(e, n) {
427
- const t = await fetch("/kapi/z-ctc/api/ctc/authn/login", {
428
- ...c,
429
- method: "POST",
430
- headers: { Accept: "application/json", "Content-Type": "application/json" },
431
- credentials: "include",
432
- body: JSON.stringify({ identifier: e, password: n })
433
- }), s = await a(t, "登录失败"), o = (s == null ? void 0 : s.userInfo) ?? (s == null ? void 0 : s.user_info) ?? (s == null ? void 0 : s.user) ?? s, d = ae(o);
434
- return { token: (s == null ? void 0 : s.token) ?? "", user: d };
435
- }
436
- async function Sn(e) {
437
- const n = await fetch("/kapi/z-ctc/api/ctc/authn/whoami", {
438
- headers: { Accept: "application/json" },
439
- ...c,
440
- credentials: "include"
441
- }), t = await a(
442
- n,
443
- "获取用户信息失败"
444
- );
445
- return ae(t);
446
- }
447
- async function wn(e) {
448
- await a(
449
- await fetch("/kapi/z-ctc/api/ctc/authn/logout", {
450
- headers: { Accept: "application/json" },
451
- ...c,
452
- method: "POST",
453
- credentials: "include"
454
- }),
455
- "退出失败"
456
- );
457
- try {
458
- localStorage.removeItem("token"), localStorage.removeItem("z_team_token"), localStorage.removeItem("userInfo"), localStorage.removeItem("USER_INFO");
459
- } catch {
460
- }
461
- }
462
- const b = /* @__PURE__ */ new Map(), De = 300 * 1e3, Je = 30 * 1e3;
463
- async function Tn(e, n) {
464
- const t = `${e}`, s = b.get(t);
465
- if (s) {
466
- const o = s.failed ? Je : De;
467
- if (Date.now() - s.at < o)
468
- return { codes: s.codes, failed: s.failed };
469
- b.delete(t);
470
- }
471
- try {
472
- const o = await fetch(
473
- `/kapi/z-ctc/api/ctc/authz/users/permissions?userId=${e}`,
474
- {
475
- headers: {
476
- Accept: "application/json",
477
- Authorization: `Bearer ${n}`
478
- }
479
- }
480
- );
481
- if (!o.ok)
482
- return b.set(t, { codes: [], failed: !0, at: Date.now() }), { codes: [], failed: !0 };
483
- const d = await o.json(), u = (d == null ? void 0 : d.data) ?? d;
484
- if (!Array.isArray(u))
485
- return b.set(t, { codes: [], failed: !0, at: Date.now() }), { codes: [], failed: !0 };
486
- const l = u.map((f) => (f == null ? void 0 : f.resource_code) ?? (f == null ? void 0 : f.resourceCode)).filter((f) => typeof f == "string" && f);
487
- return b.set(t, { codes: l, failed: !1, at: Date.now() }), { codes: l, failed: !1 };
488
- } catch {
489
- return b.set(t, { codes: [], failed: !0, at: Date.now() }), { codes: [], failed: !0 };
490
- }
491
- }
492
- async function Cn(e = "", n) {
493
- const t = new URLSearchParams();
494
- e && t.set("token", e), n && t.set("create_time_start", n);
495
- const s = t.toString(), o = await i(
496
- `${r}/scenario-instances/${s ? `?${s}` : ""}`,
497
- c
498
- );
499
- return a(o, "获取项目列表失败");
500
- }
501
- async function In(e = "") {
502
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/scenarios${n}`, c);
503
- return a(t, "获取场景列表失败");
504
- }
505
- async function Le(e, n = "") {
506
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = {
507
- ...e,
508
- extend_params: { ...e.extend_params, skip_init_task: "true" }
509
- }, o = await i(`${r}/scenario-instances/${t}`, {
510
- ...c,
511
- method: "POST",
512
- headers: { "Content-Type": "application/json" },
513
- body: JSON.stringify(s)
514
- }), d = await a(o, "创建项目失败");
515
- return U(d);
516
- }
517
- const _n = Le;
518
- function U(e) {
519
- return {
520
- // FE-PRECISION-FIX: 雪花 ID 是 19 位 bigint, Number() 会丢末位精度
521
- // (后端 Jackson Long→String 已序列化为字符串, 这里保持字符串避免回退到 Number)
522
- id: e.id == null ? "" : String(e.id),
523
- name: String(e.name ?? ""),
524
- description: String(e.description ?? ""),
525
- workspace_path: String(e.workspace_path ?? e.workspacePath ?? ""),
526
- status: String(e.status ?? "ACTIVE"),
527
- created_at: String(e.created_at ?? e.createdAt ?? ""),
528
- mode: e.mode != null ? String(e.mode) : void 0,
529
- // FEATURE-ID-AS-STRING: 雪花 ID 一律 string, 严禁 Number() (JS Number 精度会丢末位)
530
- scenario_id: e.scenario_id != null ? String(e.scenario_id) : e.scenarioId != null ? String(e.scenarioId) : void 0,
531
- scenario_code: e.scenario_code != null ? String(e.scenario_code) : e.scenarioCode != null ? String(e.scenarioCode) : void 0,
532
- scenario_name: e.scenario_name != null ? String(e.scenario_name) : e.scenarioName != null ? String(e.scenarioName) : void 0,
533
- role: e.role != null ? String(e.role) : void 0,
534
- llm_code: e.llm_code != null ? String(e.llm_code) : e.llmCode != null ? String(e.llmCode) : void 0,
535
- close_feedback: J(e, "close_feedback"),
536
- close_tags: J(e, "close_tags"),
537
- close_time: J(e, "close_time"),
538
- close_user: J(e, "close_user"),
539
- members: Array.isArray(e.members) ? e.members.map((n) => String(n)) : void 0,
540
- parent_id: Me(e)
541
- };
542
- }
543
- function J(e, n) {
544
- const t = n.replace(/_([a-z])/g, (u, l) => l.toUpperCase());
545
- if (e[n] != null) return e[n];
546
- if (e[t] != null) return e[t];
547
- const s = e.close_info ?? e.closeInfo;
548
- if (s) {
549
- if (s[n] != null) return s[n];
550
- if (s[t] != null) return s[t];
551
- }
552
- const o = e.ext;
553
- if (!o) return;
554
- const d = o.params;
555
- if (d)
556
- return d[n] ?? void 0;
557
- }
558
- function Me(e) {
559
- const n = e.ext;
560
- if (!n) return;
561
- const t = n.params;
562
- if (!t) return;
563
- const s = t.parent_id;
564
- if (s == null) return;
565
- const o = m(s);
566
- return o === "" ? void 0 : o;
567
- }
568
- async function bn(e, n) {
569
- const t = await i(
570
- `${r}/scenario-instances/${e}/llm-code`,
571
- {
572
- ...c,
573
- method: "PUT",
574
- headers: { "Content-Type": "application/json" },
575
- body: JSON.stringify({ llmCode: n || null })
576
- }
577
- ), s = await a(t, "设置模型失败");
578
- return U(s);
579
- }
580
- const An = "qa_support";
581
- function Un(e) {
582
- const n = e.futureTeamProjectId ?? e.future_team_project_id ?? "", t = m(String(n).trim());
583
- return pe(t) ? t : null;
584
- }
585
- async function En(e, n, t) {
586
- const s = new URLSearchParams({
587
- ticketId: e,
588
- futureTeamProjectId: String(n),
589
- stage: t
590
- }), o = await i(`${r}/dev-brain/agent/update-z-team`, {
591
- method: "POST",
592
- headers: {
593
- "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
594
- },
595
- body: s.toString()
596
- });
597
- await a(o, "回写工单关联工程失败");
598
- }
599
- async function On(e) {
600
- const n = await i(
601
- `${r}/scenario-instances/${e}/team/`,
602
- c
603
- );
604
- return a(n, "获取团队成员失败");
605
- }
606
- async function Pn(e, n) {
607
- const t = await i(`${r}/scenario-instances/${e}/team/`, {
608
- ...c,
609
- method: "POST",
610
- headers: { "Content-Type": "application/json" },
611
- body: JSON.stringify(n)
612
- });
613
- return a(t, "添加成员失败");
614
- }
615
- async function kn(e, n) {
616
- const t = await i(
617
- `${r}/scenario-instances/${e}/team/${n}`,
618
- {
619
- ...c,
620
- method: "DELETE"
621
- }
622
- );
623
- return a(t, "移除成员失败");
624
- }
625
- async function Rn(e) {
626
- const n = await i(
627
- `${r}/scenario-instances/${e}/team/available-agents`,
628
- c
629
- );
630
- return a(n, "获取Agent列表失败");
631
- }
632
- async function vn(e) {
633
- const n = await i(
634
- `${r}/scenario-instances/${e}/team/available-humans`,
635
- c
636
- );
637
- return a(n, "获取用户列表失败");
638
- }
639
- async function jn(e) {
640
- const n = await i(
641
- `${r}/scenario-instances/${e}/skills`,
642
- c
643
- );
644
- return a(n, "获取技能列表失败");
645
- }
646
- async function Nn(e) {
647
- const n = await i(
648
- `${r}/scenario-instances/${e}/all-skills`,
649
- c
650
- );
651
- return a(n, "获取全部技能列表失败");
652
- }
653
- async function qn(e, n) {
654
- const t = await i(`${r}/scenario-instances/${e}/skills`, {
655
- ...c,
656
- method: "POST",
657
- headers: { "Content-Type": "application/json" },
658
- body: JSON.stringify({ skill_id: n })
659
- });
660
- return a(t, "添加技能失败");
661
- }
662
- async function Dn(e, n) {
663
- const t = await i(
664
- `${r}/scenario-instances/${e}/skills/${n}`,
665
- {
666
- ...c,
667
- method: "DELETE"
668
- }
669
- );
670
- return a(t, "移除技能失败");
671
- }
672
- async function Jn(e, n) {
673
- const t = await i(
674
- `${r}/scenario-instances/${e}/agent-skills/refresh`,
675
- {
676
- ...c,
677
- method: "POST",
678
- headers: { "Content-Type": "application/json" },
679
- body: JSON.stringify({ agent_skills_path: n })
680
- }
681
- );
682
- return a(t, "刷新技能失败");
683
- }
684
- async function Ln(e) {
685
- const n = await i(
686
- `${r}/scenario-instances/${e}/all-agent-skills/refresh`,
687
- {
688
- ...c,
689
- method: "POST"
690
- }
691
- );
692
- return a(n, "刷新所有技能失败");
693
- }
694
- async function Mn(e, n = 50, t) {
695
- let s = `${r}/scenario-instances/${e}/messages?limit=${n}`;
696
- t && (s += `&before=${t}`);
697
- const o = await i(s, c);
698
- return a(o, "加载聊天记录失败,请稍后重试");
699
- }
700
- async function xn(e, n, t = "") {
701
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
702
- `${r}/scenario-instances/${e}/messages/${n}/read${s}`,
703
- {
704
- ...c,
705
- method: "POST"
706
- }
707
- );
708
- return a(o, "标记已读失败");
709
- }
710
- async function zn(e, n, t = "") {
711
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
712
- `${r}/scenario-instances/${e}/messages${s}`,
713
- {
714
- ...c,
715
- method: "POST",
716
- headers: { "Content-Type": "application/json" },
717
- body: JSON.stringify(n)
718
- }
719
- );
720
- return a(o, "发送消息失败");
721
- }
722
- async function Fn(e, n) {
723
- const t = await i(
724
- `${r}/scenario-instances/${e}/cancel/${n}`,
725
- { ...c, method: "POST" }
726
- ), s = await a(t, "取消失败");
727
- if (s != null && s.warning)
728
- throw new Error(String(s.warning));
729
- return s;
730
- }
731
- async function Bn(e, n) {
732
- const t = await i(
733
- `${r}/scenario-instances/${e}/cancel/${n}/queue`,
734
- { ...c, method: "POST" }
735
- );
736
- return a(t, "停止队列失败");
737
- }
738
- async function Wn(e) {
739
- const n = await i(
740
- `${r}/scenario-instances/${e}/executions`,
741
- c
742
- );
743
- return a(n, "获取执行列表失败");
744
- }
745
- async function Hn(e, n = "") {
746
- const t = n ? `?subdir=${encodeURIComponent(n)}` : "", s = await i(
747
- `${r}/scenario-instances/${e}/workspace/tree${t}`,
748
- c
749
- );
750
- return a(s, "获取文件树失败");
751
- }
752
- async function Kn() {
753
- const e = await i(`${r}/workspace/env`, c);
754
- return a(e, "获取环境信息失败");
755
- }
756
- async function Vn(e) {
757
- const n = await i(
758
- `${r}/scenario-instances/${e}/workspace/sync-from-prod`,
759
- {
760
- ...c,
761
- method: "POST",
762
- headers: { "Content-Type": "application/json" }
763
- }
764
- );
765
- return a(n, "同步失败");
766
- }
767
- async function Qn(e, n) {
768
- const t = await i(
769
- `${r}/scenario-instances/${e}/workspace/file?file_path=${encodeURIComponent(
770
- n
771
- )}`,
772
- c
773
- );
774
- return a(t, "获取文件内容失败");
775
- }
776
- async function Gn(e, n, t) {
777
- const s = await i(
778
- `${r}/scenario-instances/${e}/workspace/file?file_path=${encodeURIComponent(
779
- n
780
- )}`,
781
- {
782
- ...c,
783
- method: "POST",
784
- headers: { "Content-Type": "application/json" },
785
- body: JSON.stringify({ content: t })
786
- }
787
- );
788
- return a(s, "保存文件失败");
789
- }
790
- async function Zn(e, n, t) {
791
- const s = await i(
792
- `${r}/scenario-instances/${e}/workspace/rename`,
793
- {
794
- ...c,
795
- method: "PUT",
796
- headers: { "Content-Type": "application/json" },
797
- body: JSON.stringify({ old_path: n, new_name: t })
798
- }
799
- );
800
- return a(s, "重命名失败");
801
- }
802
- async function Xn(e, n, t) {
803
- const s = await i(
804
- `${r}/scenario-instances/${e}/workspace/new-file`,
805
- {
806
- ...c,
807
- method: "POST",
808
- headers: { "Content-Type": "application/json" },
809
- body: JSON.stringify({ parent_path: n, name: t })
810
- }
811
- );
812
- return a(s, "新建文件失败");
813
- }
814
- async function Yn(e, n, t) {
815
- const s = await i(
816
- `${r}/scenario-instances/${e}/workspace/new-folder`,
817
- {
818
- ...c,
819
- method: "POST",
820
- headers: { "Content-Type": "application/json" },
821
- body: JSON.stringify({ parent_path: n, name: t })
822
- }
823
- );
824
- return a(s, "新建文件夹失败");
825
- }
826
- async function et(e, n) {
827
- const t = await i(
828
- `${r}/scenario-instances/${e}/workspace/delete`,
829
- {
830
- ...c,
831
- method: "POST",
832
- headers: { "Content-Type": "application/json" },
833
- body: JSON.stringify({ path: n })
834
- }
835
- );
836
- return a(t, "删除失败");
837
- }
838
- async function nt(e, n, t) {
839
- const s = new FormData();
840
- s.append("file", t), s.append("parent_path", n);
841
- const o = await i(
842
- `${r}/scenario-instances/${e}/workspace/upload-file`,
843
- {
844
- ...c,
845
- method: "POST",
846
- body: s
847
- }
848
- );
849
- return a(o, "上传文件失败");
850
- }
851
- async function tt(e, n, t) {
852
- const s = new FormData();
853
- t.forEach((d) => s.append("files", d)), s.append("parent_path", n);
854
- const o = await i(
855
- `${r}/scenario-instances/${e}/workspace/upload-folder`,
856
- {
857
- ...c,
858
- method: "POST",
859
- body: s
860
- }
861
- );
862
- return a(o, "上传文件夹失败");
863
- }
864
- async function st(e, n) {
865
- const t = await i(
866
- `${r}/scenario-instances/${e}/workspace/download?file_path=${encodeURIComponent(
867
- n
868
- )}`,
869
- c
870
- );
871
- if (!t.ok) throw new Error("下载失败");
872
- return t.blob();
873
- }
874
- async function xe(e, n = "") {
875
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
876
- `${r}/scenario-instances/${e}${t}`,
877
- c
878
- ), o = await a(s, "获取项目失败"), d = o.status === "FOUND" ? "FOUND" : "NOT_FOUND", u = o.scenario_instance ?? o.scenarioInstance ?? null;
879
- return {
880
- status: d,
881
- scenarioInstance: u ? U(u) : null
882
- };
883
- }
884
- async function ze(e, n = "") {
885
- const t = await xe(e, n);
886
- if (t.status === "NOT_FOUND" || !t.scenarioInstance)
887
- throw {
888
- _apiUserError: !0,
889
- userMessage: "项目不存在",
890
- message: "项目不存在"
891
- };
892
- return t.scenarioInstance;
893
- }
894
- async function Fe(e, n = "") {
895
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
896
- `${r}/scenario-instances/${e}/join-self${t}`,
897
- {
898
- ...c,
899
- method: "POST"
900
- }
901
- ), o = await a(s, "加入工程失败");
902
- return U(o);
903
- }
904
- async function ot(e, n = "") {
905
- return await ze(e, n), Fe(e, n);
906
- }
907
- async function at(e) {
908
- const n = await i(`${r}/scenario-instances/${e}`, {
909
- ...c,
910
- method: "DELETE"
911
- });
912
- return a(n, "删除项目失败");
913
- }
914
- async function rt(e, n, t = "") {
915
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
916
- `${r}/scenario-instances/${e}/fork${s}`,
917
- {
918
- ...c,
919
- method: "POST",
920
- headers: { "Content-Type": "application/json" },
921
- body: JSON.stringify({ mode: n })
922
- }
923
- ), d = await a(o, "Fork 项目失败");
924
- return U(d);
925
- }
926
- async function it(e, n) {
927
- const t = await i(`${r}/scenario-instances/${e}`, {
928
- ...c,
929
- method: "PATCH",
930
- headers: { "Content-Type": "application/json" },
931
- body: JSON.stringify(n)
932
- }), s = await a(t, "更新项目失败");
933
- return U(s);
934
- }
935
- async function ct(e) {
936
- const n = await i(
937
- `${r}/scenario-instances/${e}/retry-image-parse`,
938
- {
939
- ...c,
940
- method: "POST",
941
- headers: { "Content-Type": "application/json" }
942
- }
943
- ), s = await a(n, "图片重新解析失败");
944
- return {
945
- success: !!s.success,
946
- message: s.message
947
- };
948
- }
949
- async function dt(e, n, t = "") {
950
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
951
- `${r}/scenario-instances/${e}/task-sessions/${n}${s}`,
952
- {
953
- ...c,
954
- method: "POST",
955
- headers: { "Content-Type": "application/json" }
956
- }
957
- );
958
- return a(o, "创建任务会话失败");
959
- }
960
- async function ut(e, n, t = 50, s, o = "") {
961
- let d = `${r}/scenario-instances/${e}/task-sessions/${n}/messages?limit=${t}`;
962
- s && (d += `&before=${s}`), o && (d += `&token=${encodeURIComponent(o)}`);
963
- const u = await i(d, c);
964
- return a(u, "获取任务消息失败");
965
- }
966
- async function lt(e, n, t, s = "", o) {
967
- const d = s ? `?token=${encodeURIComponent(s)}` : "", u = { content: t };
968
- o && o.length > 0 && (u.image_urls = o);
969
- const l = await i(
970
- `${r}/scenario-instances/${e}/task-sessions/${n}/messages${d}`,
971
- {
972
- ...c,
973
- method: "POST",
974
- headers: { "Content-Type": "application/json" },
975
- body: JSON.stringify(u)
976
- }
977
- );
978
- return a(l, "发送任务消息失败");
979
- }
980
- async function pt(e = "") {
981
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/scenarios${n}`, c);
982
- return a(t, "获取场景列表失败");
983
- }
984
- async function ft(e, n, t = "") {
985
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
986
- `${r}/admin/agents/${encodeURIComponent(
987
- e
988
- )}/identity/test-login${s}`,
989
- {
990
- ...c,
991
- method: "POST",
992
- headers: { "Content-Type": "application/json" },
993
- body: JSON.stringify(n)
994
- }
995
- );
996
- return a(o, "测试登录失败");
997
- }
998
- async function mt(e = "") {
999
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1000
- `${r}/admin/agents/identity-envs${n}`,
1001
- c
1002
- );
1003
- return a(t, "获取身份绑定环境列表失败");
1004
- }
1005
- async function yt(e, n = "") {
1006
- const t = new URLSearchParams();
1007
- e && t.set("envCode", e), n && t.set("token", n);
1008
- const s = t.toString() ? `?${t.toString()}` : "", o = await i(
1009
- `${r}/admin/agents/ctc-members${s}`,
1010
- c
1011
- );
1012
- return a(o, "获取成员列表失败") ?? [];
1013
- }
1014
- async function $t(e, n, t = "") {
1015
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/agents/${e}/move${s}`, {
1016
- ...c,
1017
- method: "POST",
1018
- headers: { "Content-Type": "application/json" },
1019
- body: JSON.stringify(n)
1020
- });
1021
- return a(o, "移动 Agent 分类失败");
1022
- }
1023
- async function ht(e = "") {
1024
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/agents/models${n}`, c);
1025
- return a(t, "获取模型列表失败");
1026
- }
1027
- function W(e) {
1028
- const n = Object.entries(e).filter(([, t]) => t !== void 0 && t !== "").map(([t, s]) => `${t}=${encodeURIComponent(s)}`);
1029
- return n.length ? `?${n.join("&")}` : "";
1030
- }
1031
- async function gt(e, n = "") {
1032
- const t = await i(
1033
- `${r}/admin/agents/${encodeURIComponent(
1034
- e
1035
- )}/ontology${W({ token: n })}`,
1036
- c
1037
- );
1038
- return (await a(
1039
- t,
1040
- "获取前置处理配置失败"
1041
- ) ?? []).map((o) => ({
1042
- ...o,
1043
- nodeInfo: { ...o.nodeInfo, dataPrepareEnabled: !1 }
1044
- }));
1045
- }
1046
- async function St(e, n = "") {
1047
- const t = await i(
1048
- `${r}/admin/agents/ontology/ontologies${W({
1049
- ontologyType: e,
1050
- token: n
1051
- })}`,
1052
- c
1053
- );
1054
- return a(t, "获取本体列表失败") ?? [];
1055
- }
1056
- async function wt(e, n = "") {
1057
- const t = await i(
1058
- `${r}/admin/agents/ontology/knowledges${W({
1059
- ontologyCode: e,
1060
- token: n
1061
- })}`,
1062
- c
1063
- );
1064
- return a(t, "获取知识列表失败") ?? [];
1065
- }
1066
- async function Tt(e, n, t = "") {
1067
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/skills/${e}/move${s}`, {
1068
- ...c,
1069
- method: "POST",
1070
- headers: { "Content-Type": "application/json" },
1071
- body: JSON.stringify(n)
1072
- });
1073
- return a(o, "移动 Skill 分类失败");
1074
- }
1075
- async function Ct(e = "", n = "") {
1076
- const t = new URLSearchParams();
1077
- e && t.append("keyword", e), n && t.append("token", n);
1078
- const s = t.toString() ? `?${t.toString()}` : "", o = await i(
1079
- `${r}/admin/profiles/ctc-staff${s}`,
1080
- c
1081
- );
1082
- return a(o, "获取员工列表失败");
1083
- }
1084
- async function It(e, n, t = "", s = "") {
1085
- const o = new URLSearchParams();
1086
- o.append("profileScope", e), o.append("memberType", n), t && o.append("scenarioCode", t), s && o.append("token", s);
1087
- const d = o.toString() ? `?${o.toString()}` : "", u = await i(`${r}/admin/profiles${d}`, c);
1088
- return a(u, "获取画像列表失败");
1089
- }
1090
- async function _t(e, n = "") {
1091
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/profiles${t}`, {
1092
- ...c,
1093
- method: "POST",
1094
- headers: { "Content-Type": "application/json" },
1095
- body: JSON.stringify(e)
1096
- });
1097
- return a(s, "保存画像失败");
1098
- }
1099
- async function bt(e, n, t, s = "", o = "") {
1100
- const d = new URLSearchParams();
1101
- s && d.append("scenarioCode", s), o && d.append("token", o);
1102
- const u = d.toString() ? `?${d.toString()}` : "", l = await i(
1103
- `${r}/admin/profiles/${encodeURIComponent(
1104
- e
1105
- )}/${encodeURIComponent(n)}/${encodeURIComponent(t)}${u}`,
1106
- {
1107
- ...c,
1108
- method: "DELETE"
1109
- }
1110
- );
1111
- return a(l, "删除画像失败");
1112
- }
1113
- async function At(e = "", n = "") {
1114
- const t = new URLSearchParams();
1115
- e && t.append("scenarioCode", e), n && t.append("token", n);
1116
- const s = t.toString() ? `?${t.toString()}` : "", o = await i(`${r}/admin/human-on-calls${s}`, c);
1117
- return a(o, "获取值班信息失败");
1118
- }
1119
- async function Ut(e, n, t, s = "") {
1120
- const o = s ? `?token=${encodeURIComponent(s)}` : "", d = await i(`${r}/admin/human-on-calls/batch${o}`, {
1121
- ...c,
1122
- method: "POST",
1123
- headers: { "Content-Type": "application/json" },
1124
- body: JSON.stringify({ scenarioCode: e, dayOfWeek: n, onCalls: t })
1125
- });
1126
- return a(d, "保存值班信息失败");
1127
- }
1128
- async function Et(e, n, t, s = "") {
1129
- const o = s ? `?token=${encodeURIComponent(s)}` : "", d = await i(
1130
- `${r}/admin/human-on-calls/${encodeURIComponent(
1131
- e
1132
- )}/${t}/${encodeURIComponent(n)}${o}`,
1133
- { ...c, method: "DELETE" }
1134
- );
1135
- return a(d, "删除值班信息失败");
1136
- }
1137
- async function Ot(e = {}, n = "") {
1138
- const t = [];
1139
- e.scenarioCode && t.push(`scenario_code=${encodeURIComponent(e.scenarioCode)}`), e.status && t.push(`status=${encodeURIComponent(e.status)}`), n && t.push(`token=${encodeURIComponent(n)}`);
1140
- const s = t.length > 0 ? `?${t.join("&")}` : "", o = await i(
1141
- `${r}/admin/scenario-instances/refresh-all-skills${s}`,
1142
- {
1143
- ...c,
1144
- method: "POST"
1145
- }
1146
- );
1147
- return a(o, "全量刷新技能失败");
1148
- }
1149
- async function Pt(e, n = "") {
1150
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1151
- `${r}/admin/scenario-instances/${e}/refresh-skills${t}`,
1152
- {
1153
- ...c,
1154
- method: "POST"
1155
- }
1156
- );
1157
- return a(s, "刷新技能失败");
1158
- }
1159
- function E(e) {
1160
- const n = (...s) => {
1161
- for (const o of s) {
1162
- const d = e[o];
1163
- if (d != null && d !== "") return String(d);
1164
- }
1165
- return "";
1166
- }, t = e.shared;
1167
- return {
1168
- id: e.id,
1169
- userId: n("user_id", "userId"),
1170
- // FE-PRECISION-FIX: agentHubAgentId 声明为 Id,禁止 Number()(会按 float64 抹掉末位)
1171
- agentHubAgentId: e.agent_hub_agent_id != null ? m(e.agent_hub_agent_id) : e.agenthub_agent_id != null ? m(e.agenthub_agent_id) : e.agentHubAgentId != null ? m(e.agentHubAgentId) : null,
1172
- agentCode: n("agent_code", "agentCode"),
1173
- displayName: n("display_name", "displayName"),
1174
- avatar: e.avatar == null ? null : String(e.avatar),
1175
- shared: t == null ? void 0 : Number(t),
1176
- isLocal: e.isLocal,
1177
- localAgentId: e.localAgentId,
1178
- localAgentType: e.localAgentType,
1179
- createTime: e.create_time == null ? e.createTime : String(e.create_time),
1180
- updateTime: e.update_time == null ? e.updateTime : String(e.update_time)
1181
- };
1182
- }
1183
- async function kt(e = "") {
1184
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/personal-agents${n}`, c), s = await a(t, "获取个人 Agent 列表失败");
1185
- return (Array.isArray(s) ? s : []).map((o) => E(o));
1186
- }
1187
- async function Rt(e, n = "") {
1188
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/personal-agents${t}`, {
1189
- ...c,
1190
- method: "POST",
1191
- headers: { "Content-Type": "application/json" },
1192
- body: JSON.stringify({ display_name: e })
1193
- });
1194
- return E(
1195
- await a(s, "创建个人 Agent 失败")
1196
- );
1197
- }
1198
- async function vt(e, n, t, s, o = "") {
1199
- const d = o ? `?token=${encodeURIComponent(o)}` : "", u = await i(`${r}/personal-agents/ensure${d}`, {
1200
- ...c,
1201
- method: "POST",
1202
- headers: { "Content-Type": "application/json" },
1203
- body: JSON.stringify({
1204
- agenthub_agent_id: e,
1205
- agent_code: n,
1206
- display_name: t,
1207
- avatar: s ?? ""
1208
- })
1209
- });
1210
- return E(
1211
- await a(u, "创建个人 Agent 失败")
1212
- );
1213
- }
1214
- async function jt(e, n = "") {
1215
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/personal-agents/${e}${t}`, {
1216
- ...c,
1217
- method: "DELETE"
1218
- });
1219
- return a(s, "删除个人 Agent 失败");
1220
- }
1221
- async function Nt(e, n, t = "") {
1222
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/personal-agents/${e}${s}`, {
1223
- ...c,
1224
- method: "PUT",
1225
- headers: { "Content-Type": "application/json" },
1226
- body: JSON.stringify({ display_name: n })
1227
- });
1228
- return E(
1229
- await a(o, "重命名个人 Agent 失败")
1230
- );
1231
- }
1232
- async function qt(e = "") {
1233
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1234
- `${r}/personal-agents/shared${n}`,
1235
- c
1236
- ), s = await a(
1237
- t,
1238
- "获取共享 Agent 列表失败"
1239
- );
1240
- return (Array.isArray(s) ? s : []).map(
1241
- (o) => E(o)
1242
- );
1243
- }
1244
- async function Dt(e, n, t = "") {
1245
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/personal-agents/${e}/share${s}`, {
1246
- ...c,
1247
- method: "PUT",
1248
- headers: { "Content-Type": "application/json" },
1249
- body: JSON.stringify({ shared: n })
1250
- });
1251
- return E(
1252
- await a(o, "切换共享状态失败")
1253
- );
1254
- }
1255
- async function Jt(e, n = "") {
1256
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1257
- `${r}/personal-agents/${e}/sessions${t}`,
1258
- c
1259
- ), o = await a(
1260
- s,
1261
- "获取会话列表失败"
1262
- ), d = o == null ? void 0 : o.sessions;
1263
- return {
1264
- sessions: (Array.isArray(d) ? d : []).map(j),
1265
- isOwner: (o == null ? void 0 : o.isOwner) === !0,
1266
- userMeta: (o == null ? void 0 : o.userMeta) ?? {}
1267
- };
1268
- }
1269
- async function Lt(e, n = "新会话", t = "", s) {
1270
- const o = t ? `?token=${encodeURIComponent(t)}` : "", d = await i(
1271
- `${r}/personal-agents/${e}/sessions${o}`,
1272
- {
1273
- ...c,
1274
- method: "POST",
1275
- headers: { "Content-Type": "application/json" },
1276
- body: JSON.stringify({
1277
- title: n,
1278
- ...s ? {
1279
- projectSpaceId: String(s.id),
1280
- projectSpaceTitle: s.title
1281
- } : {}
1282
- })
1283
- }
1284
- );
1285
- return j(
1286
- await a(d, "创建会话失败")
1287
- );
1288
- }
1289
- function j(e) {
1290
- const n = e ?? {}, t = (...l) => {
1291
- for (const f of l) {
1292
- const O = n[f];
1293
- if (O != null && O !== "") return String(O);
1294
- }
1295
- return "";
1296
- }, s = n.project_space_id ?? n.projectSpaceId, o = n.project_space_title ?? n.projectSpaceTitle, d = t("create_time", "createTime"), u = t("update_time", "updateTime");
1297
- return {
1298
- id: m(n.id),
1299
- personalAgentId: m(n.personal_agent_id ?? n.personalAgentId),
1300
- userId: t("user_id", "userId"),
1301
- title: t("title"),
1302
- projectSpaceId: s != null && s !== "" ? m(s) : null,
1303
- projectSpaceTitle: o != null && o !== "" ? String(o) : null,
1304
- summary: t("summary") || null,
1305
- createTime: d || void 0,
1306
- updateTime: u || void 0
1307
- };
1308
- }
1309
- async function Mt(e, n = "") {
1310
- const t = n ? `&token=${encodeURIComponent(n)}` : "", s = await i(
1311
- `${r}/personal-agents/sessions/search?keyword=${encodeURIComponent(
1312
- e
1313
- )}&limit=50${t}`,
1314
- c
1315
- ), o = await a(s, "搜索会话失败");
1316
- return (Array.isArray(o) ? o : []).map((d) => {
1317
- const u = d ?? {}, l = String(u.matchField || "title");
1318
- return {
1319
- session: j(u.session),
1320
- matchField: l === "id" || l === "content" ? l : "title",
1321
- snippet: u.snippet != null && u.snippet !== "" ? String(u.snippet) : void 0
1322
- };
1323
- });
1324
- }
1325
- async function xt(e = "") {
1326
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1327
- `${r}/personal-agents/sessions/all${n}`,
1328
- c
1329
- ), s = await a(t, "获取聊天记录失败");
1330
- return (Array.isArray(s) ? s : []).map(j);
1331
- }
1332
- async function zt(e, n, t = "", s) {
1333
- const o = t ? `?token=${encodeURIComponent(t)}` : "", d = await i(
1334
- `${r}/personal-agents/${e}/sessions/${n}${o}`,
1335
- {
1336
- ...c,
1337
- method: "PUT",
1338
- headers: { "Content-Type": "application/json" },
1339
- body: JSON.stringify(
1340
- s ? { projectSpaceId: String(s.id), projectSpaceTitle: s.title } : { clearProjectSpace: !0 }
1341
- )
1342
- }
1343
- );
1344
- return j(
1345
- await a(d, "会话归组失败")
1346
- );
1347
- }
1348
- async function Ft(e) {
1349
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/personal-agents/models${n}`, c);
1350
- return a(t, "获取模型列表失败");
1351
- }
1352
- async function Bt(e) {
1353
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1354
- `${r}/personal-agents/custom-models${n}`,
1355
- c
1356
- );
1357
- return a(t, "获取自定义模型失败");
1358
- }
1359
- async function Wt(e, n, t = "") {
1360
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1361
- `${r}/personal-agents/${e}/sessions/${n}${s}`,
1362
- { ...c, method: "DELETE" }
1363
- );
1364
- return a(o, "删除会话失败");
1365
- }
1366
- async function Ht(e, n, t, s = "") {
1367
- const o = s ? `?token=${encodeURIComponent(s)}` : "", d = await i(
1368
- `${r}/personal-agents/${e}/sessions/${n}${o}`,
1369
- {
1370
- ...c,
1371
- method: "PUT",
1372
- headers: { "Content-Type": "application/json" },
1373
- body: JSON.stringify({ title: t })
1374
- }
1375
- );
1376
- return a(d, "重命名会话失败");
1377
- }
1378
- async function Kt(e, n, t = "") {
1379
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1380
- `${r}/personal-agents/${e}/sessions/${n}/messages${s}`,
1381
- c
1382
- );
1383
- return a(o, "获取消息历史失败");
1384
- }
1385
- async function Vt(e, n, t, s, o, d, u, l, f, O) {
1386
- const re = s ? `?token=${encodeURIComponent(s)}` : "", ie = `${r}/personal-agents/${e}/sessions/${n}/chat/stream${re}`;
1387
- try {
1388
- const $ = await fetch(ie, {
1389
- ...c,
1390
- method: "POST",
1391
- headers: { Accept: "text/event-stream", "Content-Type": "application/json" },
1392
- body: JSON.stringify(f ? { message: t, llmCode: f } : { message: t }),
1393
- signal: O
1394
- });
1395
- if (!$.ok || !$.body) {
1396
- const F = await $.text().catch(() => "");
1397
- d(new Error(F || `HTTP ${$.status}`));
1398
- return;
1399
- }
1400
- const ce = $.body.getReader(), de = new TextDecoder();
1401
- let z = "", N = "";
1402
- for (; ; ) {
1403
- const { done: F, value: ue } = await ce.read();
1404
- if (F) break;
1405
- z += de.decode(ue, { stream: !0 });
1406
- const H = z.split(`
1407
- `);
1408
- z = H.pop() || "";
1409
- for (const le of H) {
1410
- const _ = le.trim();
1411
- if (!_) {
1412
- N = "";
1413
- continue;
1414
- }
1415
- if (!_.startsWith(":")) {
1416
- if (_.startsWith("event:")) {
1417
- N = _.slice(6).trim();
1418
- continue;
1419
- }
1420
- if (_.startsWith("data:")) {
1421
- const q = _.slice(5).trim();
1422
- if (N === "replace") {
1423
- l && l(q), N = "";
1424
- continue;
1425
- }
1426
- if (q.startsWith("[error]")) {
1427
- d(new Error(q.slice(7).trim()));
1428
- return;
1429
- }
1430
- o(q);
1431
- }
1432
- }
1433
- }
1434
- }
1435
- u();
1436
- } catch ($) {
1437
- d($ instanceof Error ? $ : new Error(String($)));
1438
- }
1439
- }
1440
- const Be = "http://127.0.0.1:28080";
1441
- async function Qt(e) {
1442
- await fetch(`${Be}/v1/sessions/${e}`, {
1443
- method: "DELETE"
1444
- });
1445
- }
1446
- async function Gt(e = {}) {
1447
- const n = new URLSearchParams(), { name: t, scenarioInstanceId: s, page: o = 1, size: d = 50, token: u = "" } = e;
1448
- t && n.set("name", t), s != null && s !== "" && n.set("scenarioInstanceId", String(s)), n.set("page", String(o)), n.set("size", String(d)), u && n.set("token", u);
1449
- const l = n.toString(), f = await i(
1450
- `${r}/admin/tasks${l ? `?${l}` : ""}`,
1451
- c
1452
- );
1453
- return a(f, "获取任务列表失败");
1454
- }
1455
- function We(e) {
1456
- const n = new URLSearchParams();
1457
- Object.entries(e).forEach(([s, o]) => {
1458
- o != null && o !== "" && n.append(s, String(o));
1459
- });
1460
- const t = n.toString();
1461
- return t ? `?${t}` : "";
1462
- }
1463
- async function Zt(e) {
1464
- const n = await i(
1465
- `${r}/admin/tool-call-logs/timeline${We(e)}`,
1466
- c
1467
- );
1468
- return a(n, "查询工具调用时间轴统计失败");
1469
- }
1470
- async function Xt(e) {
1471
- const n = [];
1472
- e.date && n.push(`date=${encodeURIComponent(e.date)}`), e.scenarioCode && n.push(`scenarioCode=${encodeURIComponent(e.scenarioCode)}`), e.token && n.push(`token=${encodeURIComponent(e.token)}`);
1473
- const t = n.length > 0 ? `?${n.join("&")}` : "", s = await i(
1474
- `${r}/admin/statistics/token-daily${t}`,
1475
- c
1476
- );
1477
- return a(s, "获取 Token 单日统计失败");
1478
- }
1479
- async function Yt(e = "z-team") {
1480
- const n = await i(
1481
- `${r}/change-log/versions?repo=${encodeURIComponent(e)}`,
1482
- c
1483
- );
1484
- return a(n, "获取变更日志版本列表失败");
1485
- }
1486
- async function es(e, n, t = "z-team") {
1487
- const s = new URLSearchParams();
1488
- e != null && s.set("versionId", String(e)), s.set("repo", t);
1489
- const o = await i(
1490
- `${r}/change-log/detail?${s.toString()}`,
1491
- c
1492
- );
1493
- return a(o, "获取变更日志详情失败");
1494
- }
1495
- async function ns(e) {
1496
- const n = await i(
1497
- `${je}/evolution/records/${e}/reset`,
1498
- { ...c, method: "POST" }
1499
- );
1500
- return a(n, "操作失败");
1501
- }
1502
- function y(e) {
1503
- const n = new URLSearchParams();
1504
- Object.entries(e).forEach(([s, o]) => {
1505
- o != null && o !== "" && n.append(s, String(o));
1506
- });
1507
- const t = n.toString();
1508
- return t ? `?${t}` : "";
1509
- }
1510
- async function ts(e) {
1511
- const n = await i(
1512
- `${r}/admin/qa-eval/closed-instances${y({
1513
- close_date: e.closeDate,
1514
- close_date_start: e.closeDateStart,
1515
- close_date_end: e.closeDateEnd,
1516
- scenario_code: e.scenarioCode,
1517
- token: e.token
1518
- })}`,
1519
- c
1520
- ), t = await a(
1521
- n,
1522
- "获取已关单实例列表失败"
1523
- );
1524
- return Array.isArray(t == null ? void 0 : t.list) ? t.list : [];
1525
- }
1526
- async function ss(e) {
1527
- const n = await i(
1528
- `${r}/admin/qa-eval/overview${y({
1529
- close_date: e.closeDate,
1530
- close_date_start: e.closeDateStart,
1531
- close_date_end: e.closeDateEnd,
1532
- scenario_code: e.scenarioCode,
1533
- token: e.token
1534
- })}`,
1535
- c
1536
- );
1537
- return a(n, "获取 QA 评测总览失败");
1538
- }
1539
- async function os(e, n = "") {
1540
- const t = await i(
1541
- `${r}/admin/qa-eval/report/${e}/cancel${y({
1542
- token: n
1543
- })}`,
1544
- { ...c, method: "POST" }
1545
- );
1546
- return a(t, "取消评测失败");
1547
- }
1548
- async function as(e, n, t = "") {
1549
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1550
- `${r}/admin/scenario-templates/preview${s}`,
1551
- {
1552
- ...c,
1553
- method: "POST",
1554
- headers: { "Content-Type": "application/json" },
1555
- body: JSON.stringify({ html: e, data: n })
1556
- }
1557
- );
1558
- if (!o.ok) throw new Error(`HTTP ${o.status}`);
1559
- return o.text();
1560
- }
1561
- async function rs(e, n = "") {
1562
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1563
- `${r}/tasks/${e}/human-assist${t}`,
1564
- { ...c, method: "GET" }
1565
- );
1566
- return a(s, "查询人机协助卡片失败");
1567
- }
1568
- async function is(e, n, t, s = "") {
1569
- const o = s ? `?token=${encodeURIComponent(s)}` : "", d = await i(
1570
- `${r}/scenario-instances/${e}/card-forms/${n}/submit${o}`,
1571
- {
1572
- ...c,
1573
- method: "POST",
1574
- headers: { "Content-Type": "application/json" },
1575
- body: JSON.stringify({ value: t })
1576
- }
1577
- );
1578
- return a(d, "提交卡片表单失败");
1579
- }
1580
- async function cs(e, n, t = "") {
1581
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1582
- `${r}/tasks/${e}/submit-assist${s}`,
1583
- {
1584
- ...c,
1585
- method: "POST",
1586
- headers: { "Content-Type": "application/json" },
1587
- body: JSON.stringify({ value: n })
1588
- }
1589
- );
1590
- return a(o, "提交人机协助任务失败");
1591
- }
1592
- function ds(e) {
1593
- return webIdeFetch(`/instances/${e}`, { method: "DELETE" });
1594
- }
1595
- async function us(e = "") {
1596
- const n = await i(
1597
- `${r}/admin/runtime-monitor/schedule${y({ token: e })}`,
1598
- c
1599
- );
1600
- return a(n, "查询定时任务概览失败");
1601
- }
1602
- async function ls(e) {
1603
- const n = new URLSearchParams();
1604
- n.set("scenarioCode", e.scenarioCode), e.startDate && n.set("startDate", e.startDate), e.endDate && n.set("endDate", e.endDate), e.creatorId && n.set("creatorId", e.creatorId), e.tagFilters && Object.keys(e.tagFilters).length > 0 && n.set("tagFilters", JSON.stringify(e.tagFilters)), e.groupBy && n.set("groupBy", e.groupBy), e.token && n.set("token", e.token);
1605
- const t = await i(
1606
- `${r}/admin/statistics/business?${n.toString()}`,
1607
- c
1608
- ), s = await a(t, "业务指标查询失败");
1609
- return {
1610
- total: Number((s == null ? void 0 : s.total) ?? 0),
1611
- trend: Array.isArray(s == null ? void 0 : s.trend) ? s.trend : [],
1612
- ranking: Array.isArray(s == null ? void 0 : s.ranking) ? s.ranking : [],
1613
- tagCoverage: (s == null ? void 0 : s.tagCoverage) ?? void 0,
1614
- creatorDistribution: Array.isArray(s == null ? void 0 : s.creatorDistribution) ? s.creatorDistribution : void 0,
1615
- dailyAvg: (s == null ? void 0 : s.dailyAvg) ?? void 0,
1616
- activeCreators: (s == null ? void 0 : s.activeCreators) ?? void 0
1617
- };
1618
- }
1619
- async function ps(e, n = "") {
1620
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1621
- `${r}/admin/scenario-tags/values/${e}${t}`,
1622
- {
1623
- ...c,
1624
- method: "DELETE"
1625
- }
1626
- );
1627
- return a(s, "删除标签值失败");
1628
- }
1629
- async function fs(e, n, t) {
1630
- const s = await i(
1631
- `${r}/scenario-instances/${e}/workspace/git-clone`,
1632
- {
1633
- ...c,
1634
- method: "POST",
1635
- headers: { "Content-Type": "application/json" },
1636
- body: JSON.stringify({
1637
- parent_path: n,
1638
- url: t.url,
1639
- branch: t.branch ?? "",
1640
- folder_name: t.folderName ?? ""
1641
- })
1642
- }
1643
- );
1644
- return a(s, "Git Clone 失败");
1645
- }
1646
- async function ms() {
1647
- const e = await i(
1648
- `${r}/scenarios/biz-consult-domains`,
1649
- c
1650
- );
1651
- return a(e, "获取业务域选项失败");
1652
- }
1653
- async function ys(e = "") {
1654
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1655
- `${r}/admin/statistics/current-dept${n}`,
1656
- c
1657
- );
1658
- return a(t, "获取当前用户部门信息失败");
1659
- }
1660
- function He(e) {
1661
- const n = new URLSearchParams();
1662
- Object.entries(e).forEach(([s, o]) => {
1663
- o != null && o !== "" && n.append(s, String(o));
1664
- });
1665
- const t = n.toString();
1666
- return t ? `?${t}` : "";
1667
- }
1668
- async function $s(e) {
1669
- const n = await i(
1670
- `${r}/admin/evaluation/instances/${e.id}/snapshot-preview${He({
1671
- section: e.section,
1672
- page: e.page,
1673
- size: e.size,
1674
- task_id: e.taskId,
1675
- token: e.token
1676
- })}`,
1677
- c
1678
- );
1679
- return a(n, "获取快照预览失败");
1680
- }
1681
- const Ke = typeof window < "u" && window.ZTEAM_WEBIDE_ADMIN_BASE || "http://localhost/kapi/webide/admin";
1682
- async function Ve(e, n) {
1683
- try {
1684
- const t = await fetch(`${Ke}${e}`, {
1685
- credentials: "include",
1686
- headers: {
1687
- Accept: "application/json",
1688
- "Content-Type": "application/json"
1689
- },
1690
- ...n
1691
- });
1692
- return t.ok ? t.json() : {};
1693
- } catch {
1694
- return {};
1695
- }
1696
- }
1697
- function hs(e) {
1698
- return Ve(`/presets/${e}`, { method: "DELETE" });
1699
- }
1700
- const gs = oe;
1701
- async function Ss(e) {
1702
- const n = new FormData();
1703
- n.append("file", e);
1704
- const t = await i(`${r}/common/upload-video`, {
1705
- method: "POST",
1706
- body: n
1707
- }), s = await a(t, "上传视频失败"), o = typeof (s == null ? void 0 : s.url) == "string" ? s.url : "";
1708
- if (!o) {
1709
- const d = "上传视频失败:响应缺少视频地址";
1710
- throw S(d), { _apiUserError: !0, userMessage: d, message: d };
1711
- }
1712
- return o;
1713
- }
1714
- function ws() {
1715
- const e = "登录已失效,请重新登录";
1716
- throw S(e), { _apiUserError: !0, userMessage: e, message: e };
1717
- }
1718
- async function Ts(e) {
1719
- const n = await i(
1720
- `${r}/scenario-instances/${e}/interaction-mode`,
1721
- { ...c }
1722
- ), t = await a(
1723
- n,
1724
- "查询交互模式失败"
1725
- );
1726
- return (t == null ? void 0 : t.mode) ?? "dispatch";
1727
- }
1728
- async function Cs(e, n) {
1729
- const t = await i(
1730
- `${r}/scenario-instances/${e}/interaction-mode`,
1731
- {
1732
- ...c,
1733
- method: "PUT",
1734
- headers: { "Content-Type": "application/json" },
1735
- body: JSON.stringify({ mode: n })
1736
- }
1737
- ), s = await a(
1738
- t,
1739
- "切换交互模式失败"
1740
- );
1741
- return (s == null ? void 0 : s.mode) ?? n;
1742
- }
1743
- async function Is(e = "") {
1744
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1745
- `${r}/admin/indexer/overview${n}`,
1746
- I()
1747
- );
1748
- return a(t, "获取索引概览失败");
1749
- }
1750
- async function _s(e = "") {
1751
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/indexer/repos${n}`, I()), s = await a(
1752
- t,
1753
- "获取索引仓库列表失败"
1754
- );
1755
- return Array.isArray(s == null ? void 0 : s.repos) ? s.repos : [];
1756
- }
1757
- async function bs(e, n = "") {
1758
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/indexer/repos${t}`, I({
1759
- method: "POST",
1760
- headers: { "Content-Type": "application/json" },
1761
- body: JSON.stringify(e)
1762
- }));
1763
- return a(s, "保存索引仓库失败");
1764
- }
1765
- async function As(e, n = "") {
1766
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1767
- `${r}/admin/indexer/repos/${encodeURIComponent(e)}${t}`,
1768
- I({ method: "DELETE" })
1769
- );
1770
- return a(s, "删除索引仓库失败");
1771
- }
1772
- async function Us(e, n, t = "") {
1773
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1774
- `${r}/admin/indexer/repos/${encodeURIComponent(
1775
- e
1776
- )}/enabled${s}`,
1777
- I({
1778
- method: "PUT",
1779
- headers: { "Content-Type": "application/json" },
1780
- body: JSON.stringify({ enabled: n })
1781
- })
1782
- );
1783
- return a(o, "切换仓库启停失败");
1784
- }
1785
- async function Es(e, n = "") {
1786
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1787
- `${r}/admin/indexer/repos/${encodeURIComponent(
1788
- e
1789
- )}/rebuild${t}`,
1790
- I({ method: "POST" })
1791
- );
1792
- return a(s, "触发重建失败");
1793
- }
1794
- async function Os(e = "") {
1795
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/indexer/poll${n}`, I({
1796
- method: "POST"
1797
- }));
1798
- return a(t, "触发轮询失败");
1799
- }
1800
- async function Ps(e = "") {
1801
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1802
- `${r}/admin/notify-channel/list${n}`,
1803
- c
1804
- ), s = await a(
1805
- t,
1806
- "获取消息渠道状态失败"
1807
- );
1808
- return Array.isArray(s == null ? void 0 : s.channels) ? s.channels : [];
1809
- }
1810
- async function ks(e, n = "") {
1811
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/notify-channel/test${t}`, {
1812
- ...c,
1813
- method: "POST",
1814
- headers: { "Content-Type": "application/json" },
1815
- body: JSON.stringify(e)
1816
- });
1817
- return a(s, "测试发送失败");
1818
- }
1819
- async function Rs(e, n = "") {
1820
- const t = await i(
1821
- `${r}/admin/schedule-task${y({
1822
- token: n,
1823
- task_type: e.taskType,
1824
- page: e.page,
1825
- size: e.size
1826
- })}`,
1827
- c
1828
- );
1829
- return a(t, "查询定时任务模版失败");
1830
- }
1831
- async function vs(e, n = "") {
1832
- const t = await i(
1833
- `${r}/admin/schedule-task${y({ token: n })}`,
1834
- {
1835
- ...c,
1836
- method: "POST",
1837
- headers: { "Content-Type": "application/json" },
1838
- body: JSON.stringify(e)
1839
- }
1840
- );
1841
- return a(t, "新建定时任务模版失败");
1842
- }
1843
- async function js(e, n, t = "") {
1844
- const s = await i(
1845
- `${r}/admin/schedule-task/${encodeURIComponent(
1846
- e
1847
- )}${y({ token: t })}`,
1848
- {
1849
- ...c,
1850
- method: "PUT",
1851
- headers: { "Content-Type": "application/json" },
1852
- body: JSON.stringify(n)
1853
- }
1854
- );
1855
- return a(s, "更新定时任务模版失败");
1856
- }
1857
- async function Ns(e, n, t = "") {
1858
- const s = await i(
1859
- `${r}/admin/schedule-task/${encodeURIComponent(
1860
- e
1861
- )}/toggle${y({ token: t })}`,
1862
- {
1863
- ...c,
1864
- method: "POST",
1865
- headers: { "Content-Type": "application/json" },
1866
- body: JSON.stringify({ enabled: n })
1867
- }
1868
- );
1869
- return a(s, "切换模版状态失败");
1870
- }
1871
- async function qs(e, n = "") {
1872
- const t = await i(
1873
- `${r}/admin/schedule-task/${encodeURIComponent(
1874
- e
1875
- )}/activate${y({ token: n })}`,
1876
- { ...c, method: "POST" }
1877
- );
1878
- return a(t, "激活模版失败");
1879
- }
1880
- async function Ds(e, n = "") {
1881
- const t = await i(
1882
- `${r}/admin/schedule-task/${encodeURIComponent(
1883
- e
1884
- )}${y({ token: n })}`,
1885
- { ...c, method: "DELETE" }
1886
- );
1887
- return a(t, "删除模版失败");
1888
- }
1889
- async function Js(e, n = "") {
1890
- const t = await i(
1891
- `${r}/admin/schedule-task/${encodeURIComponent(
1892
- e
1893
- )}/run${y({ token: n })}`,
1894
- { ...c, method: "POST" }
1895
- );
1896
- return a(t, "手动执行失败");
1897
- }
1898
- async function Ls(e, n = "") {
1899
- const t = await i(
1900
- `${r}/admin/schedule-task/history-all${y({
1901
- token: n,
1902
- task_type: e.taskType,
1903
- page: e.page,
1904
- size: e.size
1905
- })}`,
1906
- c
1907
- );
1908
- return a(t, "查询运行记录失败");
1909
- }
1910
- async function Ms(e, n, t, s, o = "") {
1911
- const d = o ? `?token=${encodeURIComponent(o)}` : "", u = await i(
1912
- `${r}/admin/permissions/users/${e}/roles${d}`,
1913
- {
1914
- ...c,
1915
- method: "PUT",
1916
- headers: { "Content-Type": "application/json" },
1917
- body: JSON.stringify({ staffName: n, accountNo: t, roleIds: s })
1918
- }
1919
- );
1920
- return a(u, "更新用户角色失败");
1921
- }
1922
- async function xs(e, n = "") {
1923
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1924
- `${r}/admin/permissions/users/${e}/detail${t}`,
1925
- c
1926
- );
1927
- return a(s, "获取用户授权详情失败");
1928
- }
1929
- async function zs(e = "") {
1930
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/roles${n}`, c);
1931
- return a(t, "获取角色列表失败") ?? [];
1932
- }
1933
- async function Fs(e, n = "") {
1934
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1935
- `${r}/admin/roles/${e}${t}`,
1936
- c
1937
- );
1938
- return a(s, "获取角色详情失败");
1939
- }
1940
- async function Bs(e, n = "") {
1941
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/roles${t}`, {
1942
- ...c,
1943
- method: "POST",
1944
- headers: { "Content-Type": "application/json" },
1945
- body: JSON.stringify(e)
1946
- });
1947
- return a(s, "创建角色失败");
1948
- }
1949
- async function Ws(e, n, t = "") {
1950
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/roles/${e}${s}`, {
1951
- ...c,
1952
- method: "PUT",
1953
- headers: { "Content-Type": "application/json" },
1954
- body: JSON.stringify(n)
1955
- });
1956
- return a(o, "更新角色失败");
1957
- }
1958
- async function Hs(e, n = "") {
1959
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/roles/${e}${t}`, {
1960
- ...c,
1961
- method: "DELETE"
1962
- });
1963
- return a(s, "删除角色失败");
1964
- }
1965
- async function Ks(e, n, t = "") {
1966
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/roles/${e}/users${s}`, {
1967
- ...c,
1968
- method: "PUT",
1969
- headers: { "Content-Type": "application/json" },
1970
- body: JSON.stringify({ users: n })
1971
- });
1972
- return a(o, "更新角色成员失败");
1973
- }
1974
- export {
1975
- qn as $,
1976
- Wn as A,
1977
- w as B,
1978
- lt as C,
1979
- ut as D,
1980
- ot as E,
1981
- dt as F,
1982
- Vn as G,
1983
- Hn as H,
1984
- Kn as I,
1985
- Bn as J,
1986
- $n as K,
1987
- Fn as L,
1988
- pn as M,
1989
- st as N,
1990
- tt as O,
1991
- nt as P,
1992
- An as Q,
1993
- et as R,
1994
- Yn as S,
1995
- oe as T,
1996
- Xn as U,
1997
- Zn as V,
1998
- Gn as W,
1999
- Qn as X,
2000
- Ln as Y,
2001
- Jn as Z,
2002
- Dn as _,
2003
- T as a,
2004
- bn as a$,
2005
- Nn as a0,
2006
- jn as a1,
2007
- xn as a2,
2008
- Mn as a3,
2009
- kn as a4,
2010
- Pn as a5,
2011
- Rn as a6,
2012
- vn as a7,
2013
- On as a8,
2014
- it as a9,
2015
- ds as aA,
2016
- zt as aB,
2017
- pt as aC,
2018
- ls as aD,
2019
- ys as aE,
2020
- dn as aF,
2021
- ws as aG,
2022
- je as aH,
2023
- vt as aI,
2024
- ms as aJ,
2025
- we as aK,
2026
- Mt as aL,
2027
- yt as aM,
2028
- Tn as aN,
2029
- Ye as aO,
2030
- rs as aP,
2031
- cs as aQ,
2032
- is as aR,
2033
- cn as aS,
2034
- an as aT,
2035
- rn as aU,
2036
- tn as aV,
2037
- sn as aW,
2038
- on as aX,
2039
- r as aY,
2040
- Ts as aZ,
2041
- Cs as a_,
2042
- rt as aa,
2043
- at as ab,
2044
- Cn as ac,
2045
- U as ad,
2046
- gn as ae,
2047
- Qt as af,
2048
- kt as ag,
2049
- qt as ah,
2050
- Rt as ai,
2051
- jt as aj,
2052
- Nt as ak,
2053
- Dt as al,
2054
- xt as am,
2055
- Ht as an,
2056
- Wt as ao,
2057
- Lt as ap,
2058
- Ct as aq,
2059
- Ne as ar,
2060
- Ss as as,
2061
- Kt as at,
2062
- ht as au,
2063
- Ft as av,
2064
- Bt as aw,
2065
- Jt as ax,
2066
- Vt as ay,
2067
- In as az,
2068
- En as b,
2069
- a as b0,
2070
- Ue as b1,
2071
- gs as b2,
2072
- ns as b3,
2073
- ct as b4,
2074
- fs as b5,
2075
- en as b6,
2076
- gt as b7,
2077
- St as b8,
2078
- wt as b9,
2079
- zs as bA,
2080
- Fs as bB,
2081
- Bs as bC,
2082
- Ws as bD,
2083
- Hs as bE,
2084
- Ks as bF,
2085
- xs as bG,
2086
- Ms as bH,
2087
- os as bI,
2088
- ts as bJ,
2089
- ss as bK,
2090
- Pt as bL,
2091
- Ot as bM,
2092
- as as bN,
2093
- us as bO,
2094
- Ls as bP,
2095
- Rs as bQ,
2096
- js as bR,
2097
- vs as bS,
2098
- Ns as bT,
2099
- qs as bU,
2100
- Js as bV,
2101
- Ds as bW,
2102
- Tt as bX,
2103
- Xt as bY,
2104
- ps as bZ,
2105
- hs as b_,
2106
- $t as ba,
2107
- mt as bb,
2108
- ft as bc,
2109
- G as bd,
2110
- he as be,
2111
- Gt as bf,
2112
- Zt as bg,
2113
- $s as bh,
2114
- It as bi,
2115
- bt as bj,
2116
- _t as bk,
2117
- fn as bl,
2118
- _s as bm,
2119
- Is as bn,
2120
- Es as bo,
2121
- Us as bp,
2122
- As as bq,
2123
- Os as br,
2124
- mn as bs,
2125
- yn as bt,
2126
- bs as bu,
2127
- Ps as bv,
2128
- ks as bw,
2129
- At as bx,
2130
- Ut as by,
2131
- Et as bz,
2132
- Le as c,
2133
- _n as d,
2134
- Sn as e,
2135
- g as f,
2136
- B as g,
2137
- Yt as h,
2138
- pe as i,
2139
- es as j,
2140
- Ze as k,
2141
- hn as l,
2142
- wn as m,
2143
- nn as n,
2144
- un as o,
2145
- Un as p,
2146
- Ee as q,
2147
- $e as r,
2148
- zn as s,
2149
- m as t,
2150
- C as u,
2151
- ln as v,
2152
- Oe as w,
2153
- Xe as x,
2154
- fe as y,
2155
- Ge as z
2156
- };