@yuku123/z-team-component 0.2.78 → 0.2.80

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 (52) hide show
  1. package/dist/{menuPermission-CO2KgDX8.js → menuPermission-D9NGpBZP.js} +1 -1
  2. package/dist/pages.js +1 -1
  3. package/dist/z-team-component.css +2 -2
  4. package/package.json +1 -1
  5. package/dist/ChangeLogView-_bRZ55Yi.js +0 -542
  6. package/dist/ComponentDoc-Aw4QY8oI.js +0 -3998
  7. package/dist/InvitationManagementPage-Bv0ys--k.js +0 -495
  8. package/dist/OnboardingPage-B7274ITW.js +0 -393
  9. package/dist/ScheduledTasks-cc8n9giN.js +0 -9406
  10. package/dist/SystemShell-CPGtmxXl.js +0 -689
  11. package/dist/_commonjsHelpers-B52_cu2H.js +0 -26
  12. package/dist/api-B2APc1an.js +0 -20
  13. package/dist/api-CIhVblfa.js +0 -2155
  14. package/dist/browser-jb_PFvU3.js +0 -1538
  15. package/dist/createWorkspaceWsHandler-BWP5S5X3.js +0 -12951
  16. package/dist/ctc-sso-DtJHC-2M.js +0 -117
  17. package/dist/echarts-B1OU1xr4.js +0 -16
  18. package/dist/history-BlrA1eaW.js +0 -41
  19. package/dist/index-51d5011I.js +0 -178
  20. package/dist/index-62K6U_D_.js +0 -574
  21. package/dist/index-ACANAhdd.js +0 -242
  22. package/dist/index-B_LJRFsK.js +0 -339
  23. package/dist/index-BgIheStI.js +0 -133
  24. package/dist/index-BohoJQPr.js +0 -7631
  25. package/dist/index-Bpi_ysgC.js +0 -914
  26. package/dist/index-BwyN94l7.js +0 -9567
  27. package/dist/index-BydWNuk5.js +0 -1229
  28. package/dist/index-C6FYNbSB.js +0 -118
  29. package/dist/index-C815hPWS.js +0 -430
  30. package/dist/index-CNcX0oSU.js +0 -112
  31. package/dist/index-CUVdeb8y.js +0 -638
  32. package/dist/index-CijskN6t.js +0 -316
  33. package/dist/index-Cvx6rrxD.js +0 -956
  34. package/dist/index-Cwr5Slv1.js +0 -480
  35. package/dist/index-CxFAICql.js +0 -42050
  36. package/dist/index-D2cy0jVs.js +0 -1143
  37. package/dist/index-DGbL_CMP.js +0 -137
  38. package/dist/index-DK70mOTz.js +0 -143
  39. package/dist/index-DT80Pwa_.js +0 -5893
  40. package/dist/index-DWsfQMp8.js +0 -208
  41. package/dist/index-DhDdFRHC.js +0 -279
  42. package/dist/index-Dm3wmB0K.js +0 -435
  43. package/dist/index-DvBDj0ul.js +0 -93
  44. package/dist/index-DzS6-D3M.js +0 -1640
  45. package/dist/index-Xn84wLNu.js +0 -2700
  46. package/dist/index-_9zO-72Q.js +0 -2908
  47. package/dist/index-cdB5K3gx.js +0 -814
  48. package/dist/index-nU-V276i.js +0 -170
  49. package/dist/index-uF04Ucsi.js +0 -8
  50. package/dist/index.js +0 -10
  51. package/dist/index.module-CAa-2T7m.js +0 -72
  52. package/dist/index.module-UI0iz8K0.js +0 -42
@@ -1,2155 +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 Qe(e) {
6
- const n = m(e);
7
- return n === "" ? null : n;
8
- }
9
- function Ge(e, n) {
10
- return m(e) === m(n);
11
- }
12
- function Ze(e) {
13
- const n = m(e);
14
- return n !== "" && n.startsWith("-");
15
- }
16
- function le(e) {
17
- const n = m(e);
18
- return n !== "" && pe(n, "0") > 0;
19
- }
20
- function pe(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 fe = 101012001;
36
- function me() {
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 ye() {
41
- const e = new URL(window.location.href);
42
- e.searchParams.has("_from_login") || e.searchParams.set("_from_login", "1");
43
- const n = `${me()}/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 $e(e) {
62
- if (!e) return !1;
63
- if (Number(e.code) === fe) 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
- Ee();
72
- } catch {
73
- }
74
- try {
75
- localStorage.removeItem("ft_token"), localStorage.removeItem("USER_INFO"), delete window.USER_INFO;
76
- } catch {
77
- }
78
- ye();
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", he = typeof window < "u" && /(zteam[-.]ft\.(zteam\.local|zteam\.local)|team\.zteam\.local)/i.test(
90
- window.location.hostname
91
- ), x = he, ge = `${x ? "/kapi" : ""}${ne}/api`, Se = `${x ? "/kapi" : ""}${ne}`, we = `${Se}/v1/scenario-instances`, Te = window.ENV_TYPE || window.envType || "", w = ge, Xe = `${x ? "/kapi" : ""}/z-team-evolution/api`, Ye = `${x ? "/kapi" : ""}/z-team-bench/api`, Ce = Te || "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": Ce,
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 ($e(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 Ie = /_+([a-z0-9])/gi;
151
- function _e(e) {
152
- return e.replace(Ie, (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[_e(t)] = B(s);
160
- return n;
161
- }
162
- return e;
163
- }
164
- async function en(e, n) {
165
- return B(await C(e, n));
166
- }
167
- async function be() {
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 nn(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 tn(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 sn(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 on(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 an(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 rn(e) {
225
- const n = await T(`${w}/tasks/${e}`, g);
226
- return C(n, "加载任务失败");
227
- }
228
- const cn = "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 Ae(e, n = "") {
237
- const t = window.location.protocol === "https:" ? "wss:" : "ws:", s = window.location.host, o = n ? `?token=${encodeURIComponent(n)}` : "";
238
- return `${t}//${s}${we}/${e}/ws${o}`;
239
- }
240
- function dn(e) {
241
- return R.push(e), e(te), () => {
242
- R = R.filter((n) => n !== e);
243
- };
244
- }
245
- function Ue(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 = Ae(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() && (Ue(A, X), D == null || D());
269
- }, u);
270
- };
271
- }
272
- function un(e) {
273
- return k.push(e), () => {
274
- k = k.filter((n) => n !== e);
275
- };
276
- }
277
- async function ln(e) {
278
- await be().catch(() => {
279
- }), p && p.readyState === WebSocket.OPEN && p.send(JSON.stringify(e));
280
- }
281
- function Ee() {
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 pn() {
291
- return typeof localStorage > "u" ? "" : localStorage.getItem(v) || "";
292
- }
293
- function fn(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 mn() {
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 Oe extends Error {
318
- constructor(n) {
319
- super(n), this._apiUserError = !0, this.name = "ApiUserError", this.userMessage = n;
320
- }
321
- }
322
- function yn(e) {
323
- return e instanceof Oe ? !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 Pe = "/z-team", ke = typeof window < "u" && window.ZTEAM_USE_KAPI === !0, se = ke, oe = `${se ? "/kapi" : ""}${Pe}/api`, Re = window.ENV_TYPE || window.envType || "", r = oe, ve = `${se ? "/kapi" : ""}/z-team-evolution/api`;
339
- async function je(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 $n(e) {
353
- return Promise.all(e.map((n) => je(n)));
354
- }
355
- const Ne = Re || "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": Ne,
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 hn(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 gn(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 Sn(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(), qe = 300 * 1e3, De = 30 * 1e3;
463
- async function wn(e, n) {
464
- const t = `${e}`, s = b.get(t);
465
- if (s) {
466
- const o = s.failed ? De : qe;
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 Tn(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 Cn(e = "") {
502
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/scenarios${n}`, c);
503
- return a(t, "获取场景列表失败");
504
- }
505
- async function Je(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 In = Je;
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: Le(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 Le(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 _n(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 bn = "qa_support";
581
- function An(e) {
582
- const n = e.futureTeamProjectId ?? e.future_team_project_id ?? "", t = m(String(n).trim());
583
- return le(t) ? t : null;
584
- }
585
- async function Un(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 En(e) {
600
- const n = await i(
601
- `${r}/scenario-instances/${e}/team/`,
602
- c
603
- );
604
- return a(n, "获取团队成员失败");
605
- }
606
- async function On(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 Pn(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 kn(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 Rn(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 vn(e) {
640
- const n = await i(
641
- `${r}/scenario-instances/${e}/skills`,
642
- c
643
- );
644
- return a(n, "获取技能列表失败");
645
- }
646
- async function jn(e) {
647
- const n = await i(
648
- `${r}/scenario-instances/${e}/all-skills`,
649
- c
650
- );
651
- return a(n, "获取全部技能列表失败");
652
- }
653
- async function Nn(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 qn(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 Dn(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 Jn(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 Ln(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 Mn(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 xn(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 zn(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 Fn(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 Bn(e) {
739
- const n = await i(
740
- `${r}/scenario-instances/${e}/executions`,
741
- c
742
- );
743
- return a(n, "获取执行列表失败");
744
- }
745
- async function Wn(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 Hn() {
753
- const e = await i(`${r}/workspace/env`, c);
754
- return a(e, "获取环境信息失败");
755
- }
756
- async function Kn(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 Vn(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 Qn(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 Gn(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 Zn(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 Xn(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 Yn(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 et(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 nt(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 tt(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 Me(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 xe(e, n = "") {
885
- const t = await Me(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 ze(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 st(e, n = "") {
905
- return await xe(e, n), ze(e, n);
906
- }
907
- async function ot(e) {
908
- const n = await i(`${r}/scenario-instances/${e}`, {
909
- ...c,
910
- method: "DELETE"
911
- });
912
- return a(n, "删除项目失败");
913
- }
914
- async function at(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 rt(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 it(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 ct(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 dt(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 ut(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 lt(e = "") {
981
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/scenarios${n}`, c);
982
- return a(t, "获取场景列表失败");
983
- }
984
- async function pt(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 ft(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 mt(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 yt(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 $t(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 ht(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 gt(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 St(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 wt(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 Tt(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 Ct(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 It(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 _t(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 bt(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 At(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 Ut(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 Et(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 Ot(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 Pt(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 kt(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 Rt(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 vt(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 jt(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 Nt(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 qt(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 Dt(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 Jt(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 Lt(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 Mt(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 xt(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 zt(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 Ft(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 Bt(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 Wt(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 Ht(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 Kt(e, n, t, s, o, d, u, l, f) {
1386
- const O = s ? `?token=${encodeURIComponent(s)}` : "", re = `${r}/personal-agents/${e}/sessions/${n}/chat/stream${O}`;
1387
- try {
1388
- const $ = await fetch(re, {
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
- });
1394
- if (!$.ok || !$.body) {
1395
- const F = await $.text().catch(() => "");
1396
- d(new Error(F || `HTTP ${$.status}`));
1397
- return;
1398
- }
1399
- const ie = $.body.getReader(), ce = new TextDecoder();
1400
- let z = "", N = "";
1401
- for (; ; ) {
1402
- const { done: F, value: de } = await ie.read();
1403
- if (F) break;
1404
- z += ce.decode(de, { stream: !0 });
1405
- const H = z.split(`
1406
- `);
1407
- z = H.pop() || "";
1408
- for (const ue of H) {
1409
- const _ = ue.trim();
1410
- if (!_) {
1411
- N = "";
1412
- continue;
1413
- }
1414
- if (!_.startsWith(":")) {
1415
- if (_.startsWith("event:")) {
1416
- N = _.slice(6).trim();
1417
- continue;
1418
- }
1419
- if (_.startsWith("data:")) {
1420
- const q = _.slice(5).trim();
1421
- if (N === "replace") {
1422
- l && l(q), N = "";
1423
- continue;
1424
- }
1425
- if (q.startsWith("[error]")) {
1426
- d(new Error(q.slice(7).trim()));
1427
- return;
1428
- }
1429
- o(q);
1430
- }
1431
- }
1432
- }
1433
- }
1434
- u();
1435
- } catch ($) {
1436
- d($ instanceof Error ? $ : new Error(String($)));
1437
- }
1438
- }
1439
- const Fe = "http://127.0.0.1:28080";
1440
- async function Vt(e) {
1441
- await fetch(`${Fe}/v1/sessions/${e}`, {
1442
- method: "DELETE"
1443
- });
1444
- }
1445
- async function Qt(e = {}) {
1446
- const n = new URLSearchParams(), { name: t, scenarioInstanceId: s, page: o = 1, size: d = 50, token: u = "" } = e;
1447
- 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);
1448
- const l = n.toString(), f = await i(
1449
- `${r}/admin/tasks${l ? `?${l}` : ""}`,
1450
- c
1451
- );
1452
- return a(f, "获取任务列表失败");
1453
- }
1454
- function Be(e) {
1455
- const n = new URLSearchParams();
1456
- Object.entries(e).forEach(([s, o]) => {
1457
- o != null && o !== "" && n.append(s, String(o));
1458
- });
1459
- const t = n.toString();
1460
- return t ? `?${t}` : "";
1461
- }
1462
- async function Gt(e) {
1463
- const n = await i(
1464
- `${r}/admin/tool-call-logs/timeline${Be(e)}`,
1465
- c
1466
- );
1467
- return a(n, "查询工具调用时间轴统计失败");
1468
- }
1469
- async function Zt(e) {
1470
- const n = [];
1471
- e.date && n.push(`date=${encodeURIComponent(e.date)}`), e.scenarioCode && n.push(`scenarioCode=${encodeURIComponent(e.scenarioCode)}`), e.token && n.push(`token=${encodeURIComponent(e.token)}`);
1472
- const t = n.length > 0 ? `?${n.join("&")}` : "", s = await i(
1473
- `${r}/admin/statistics/token-daily${t}`,
1474
- c
1475
- );
1476
- return a(s, "获取 Token 单日统计失败");
1477
- }
1478
- async function Xt(e = "z-team") {
1479
- const n = await i(
1480
- `${r}/change-log/versions?repo=${encodeURIComponent(e)}`,
1481
- c
1482
- );
1483
- return a(n, "获取变更日志版本列表失败");
1484
- }
1485
- async function Yt(e, n, t = "z-team") {
1486
- const s = new URLSearchParams();
1487
- e != null && s.set("versionId", String(e)), s.set("repo", t);
1488
- const o = await i(
1489
- `${r}/change-log/detail?${s.toString()}`,
1490
- c
1491
- );
1492
- return a(o, "获取变更日志详情失败");
1493
- }
1494
- async function es(e) {
1495
- const n = await i(
1496
- `${ve}/evolution/records/${e}/reset`,
1497
- { ...c, method: "POST" }
1498
- );
1499
- return a(n, "操作失败");
1500
- }
1501
- function y(e) {
1502
- const n = new URLSearchParams();
1503
- Object.entries(e).forEach(([s, o]) => {
1504
- o != null && o !== "" && n.append(s, String(o));
1505
- });
1506
- const t = n.toString();
1507
- return t ? `?${t}` : "";
1508
- }
1509
- async function ns(e) {
1510
- const n = await i(
1511
- `${r}/admin/qa-eval/closed-instances${y({
1512
- close_date: e.closeDate,
1513
- close_date_start: e.closeDateStart,
1514
- close_date_end: e.closeDateEnd,
1515
- scenario_code: e.scenarioCode,
1516
- token: e.token
1517
- })}`,
1518
- c
1519
- ), t = await a(
1520
- n,
1521
- "获取已关单实例列表失败"
1522
- );
1523
- return Array.isArray(t == null ? void 0 : t.list) ? t.list : [];
1524
- }
1525
- async function ts(e) {
1526
- const n = await i(
1527
- `${r}/admin/qa-eval/overview${y({
1528
- close_date: e.closeDate,
1529
- close_date_start: e.closeDateStart,
1530
- close_date_end: e.closeDateEnd,
1531
- scenario_code: e.scenarioCode,
1532
- token: e.token
1533
- })}`,
1534
- c
1535
- );
1536
- return a(n, "获取 QA 评测总览失败");
1537
- }
1538
- async function ss(e, n = "") {
1539
- const t = await i(
1540
- `${r}/admin/qa-eval/report/${e}/cancel${y({
1541
- token: n
1542
- })}`,
1543
- { ...c, method: "POST" }
1544
- );
1545
- return a(t, "取消评测失败");
1546
- }
1547
- async function os(e, n, t = "") {
1548
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1549
- `${r}/admin/scenario-templates/preview${s}`,
1550
- {
1551
- ...c,
1552
- method: "POST",
1553
- headers: { "Content-Type": "application/json" },
1554
- body: JSON.stringify({ html: e, data: n })
1555
- }
1556
- );
1557
- if (!o.ok) throw new Error(`HTTP ${o.status}`);
1558
- return o.text();
1559
- }
1560
- async function as(e, n = "") {
1561
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1562
- `${r}/tasks/${e}/human-assist${t}`,
1563
- { ...c, method: "GET" }
1564
- );
1565
- return a(s, "查询人机协助卡片失败");
1566
- }
1567
- async function rs(e, n, t, s = "") {
1568
- const o = s ? `?token=${encodeURIComponent(s)}` : "", d = await i(
1569
- `${r}/scenario-instances/${e}/card-forms/${n}/submit${o}`,
1570
- {
1571
- ...c,
1572
- method: "POST",
1573
- headers: { "Content-Type": "application/json" },
1574
- body: JSON.stringify({ value: t })
1575
- }
1576
- );
1577
- return a(d, "提交卡片表单失败");
1578
- }
1579
- async function is(e, n, t = "") {
1580
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1581
- `${r}/tasks/${e}/submit-assist${s}`,
1582
- {
1583
- ...c,
1584
- method: "POST",
1585
- headers: { "Content-Type": "application/json" },
1586
- body: JSON.stringify({ value: n })
1587
- }
1588
- );
1589
- return a(o, "提交人机协助任务失败");
1590
- }
1591
- function cs(e) {
1592
- return webIdeFetch(`/instances/${e}`, { method: "DELETE" });
1593
- }
1594
- async function ds(e = "") {
1595
- const n = await i(
1596
- `${r}/admin/runtime-monitor/schedule${y({ token: e })}`,
1597
- c
1598
- );
1599
- return a(n, "查询定时任务概览失败");
1600
- }
1601
- async function us(e) {
1602
- const n = new URLSearchParams();
1603
- 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);
1604
- const t = await i(
1605
- `${r}/admin/statistics/business?${n.toString()}`,
1606
- c
1607
- ), s = await a(t, "业务指标查询失败");
1608
- return {
1609
- total: Number((s == null ? void 0 : s.total) ?? 0),
1610
- trend: Array.isArray(s == null ? void 0 : s.trend) ? s.trend : [],
1611
- ranking: Array.isArray(s == null ? void 0 : s.ranking) ? s.ranking : [],
1612
- tagCoverage: (s == null ? void 0 : s.tagCoverage) ?? void 0,
1613
- creatorDistribution: Array.isArray(s == null ? void 0 : s.creatorDistribution) ? s.creatorDistribution : void 0,
1614
- dailyAvg: (s == null ? void 0 : s.dailyAvg) ?? void 0,
1615
- activeCreators: (s == null ? void 0 : s.activeCreators) ?? void 0
1616
- };
1617
- }
1618
- async function ls(e, n = "") {
1619
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1620
- `${r}/admin/scenario-tags/values/${e}${t}`,
1621
- {
1622
- ...c,
1623
- method: "DELETE"
1624
- }
1625
- );
1626
- return a(s, "删除标签值失败");
1627
- }
1628
- async function ps(e, n, t) {
1629
- const s = await i(
1630
- `${r}/scenario-instances/${e}/workspace/git-clone`,
1631
- {
1632
- ...c,
1633
- method: "POST",
1634
- headers: { "Content-Type": "application/json" },
1635
- body: JSON.stringify({
1636
- parent_path: n,
1637
- url: t.url,
1638
- branch: t.branch ?? "",
1639
- folder_name: t.folderName ?? ""
1640
- })
1641
- }
1642
- );
1643
- return a(s, "Git Clone 失败");
1644
- }
1645
- async function fs() {
1646
- const e = await i(
1647
- `${r}/scenarios/biz-consult-domains`,
1648
- c
1649
- );
1650
- return a(e, "获取业务域选项失败");
1651
- }
1652
- async function ms(e = "") {
1653
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1654
- `${r}/admin/statistics/current-dept${n}`,
1655
- c
1656
- );
1657
- return a(t, "获取当前用户部门信息失败");
1658
- }
1659
- function We(e) {
1660
- const n = new URLSearchParams();
1661
- Object.entries(e).forEach(([s, o]) => {
1662
- o != null && o !== "" && n.append(s, String(o));
1663
- });
1664
- const t = n.toString();
1665
- return t ? `?${t}` : "";
1666
- }
1667
- async function ys(e) {
1668
- const n = await i(
1669
- `${r}/admin/evaluation/instances/${e.id}/snapshot-preview${We({
1670
- section: e.section,
1671
- page: e.page,
1672
- size: e.size,
1673
- task_id: e.taskId,
1674
- token: e.token
1675
- })}`,
1676
- c
1677
- );
1678
- return a(n, "获取快照预览失败");
1679
- }
1680
- const He = typeof window < "u" && window.ZTEAM_WEBIDE_ADMIN_BASE || "http://localhost/kapi/webide/admin";
1681
- async function Ke(e, n) {
1682
- try {
1683
- const t = await fetch(`${He}${e}`, {
1684
- credentials: "include",
1685
- headers: {
1686
- Accept: "application/json",
1687
- "Content-Type": "application/json"
1688
- },
1689
- ...n
1690
- });
1691
- return t.ok ? t.json() : {};
1692
- } catch {
1693
- return {};
1694
- }
1695
- }
1696
- function $s(e) {
1697
- return Ke(`/presets/${e}`, { method: "DELETE" });
1698
- }
1699
- const hs = oe;
1700
- async function gs(e) {
1701
- const n = new FormData();
1702
- n.append("file", e);
1703
- const t = await i(`${r}/common/upload-video`, {
1704
- method: "POST",
1705
- body: n
1706
- }), s = await a(t, "上传视频失败"), o = typeof (s == null ? void 0 : s.url) == "string" ? s.url : "";
1707
- if (!o) {
1708
- const d = "上传视频失败:响应缺少视频地址";
1709
- throw S(d), { _apiUserError: !0, userMessage: d, message: d };
1710
- }
1711
- return o;
1712
- }
1713
- function Ss() {
1714
- const e = "登录已失效,请重新登录";
1715
- throw S(e), { _apiUserError: !0, userMessage: e, message: e };
1716
- }
1717
- async function ws(e) {
1718
- const n = await i(
1719
- `${r}/scenario-instances/${e}/interaction-mode`,
1720
- { ...c }
1721
- ), t = await a(
1722
- n,
1723
- "查询交互模式失败"
1724
- );
1725
- return (t == null ? void 0 : t.mode) ?? "dispatch";
1726
- }
1727
- async function Ts(e, n) {
1728
- const t = await i(
1729
- `${r}/scenario-instances/${e}/interaction-mode`,
1730
- {
1731
- ...c,
1732
- method: "PUT",
1733
- headers: { "Content-Type": "application/json" },
1734
- body: JSON.stringify({ mode: n })
1735
- }
1736
- ), s = await a(
1737
- t,
1738
- "切换交互模式失败"
1739
- );
1740
- return (s == null ? void 0 : s.mode) ?? n;
1741
- }
1742
- async function Cs(e = "") {
1743
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1744
- `${r}/admin/indexer/overview${n}`,
1745
- I()
1746
- );
1747
- return a(t, "获取索引概览失败");
1748
- }
1749
- async function Is(e = "") {
1750
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/indexer/repos${n}`, I()), s = await a(
1751
- t,
1752
- "获取索引仓库列表失败"
1753
- );
1754
- return Array.isArray(s == null ? void 0 : s.repos) ? s.repos : [];
1755
- }
1756
- async function _s(e, n = "") {
1757
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/indexer/repos${t}`, I({
1758
- method: "POST",
1759
- headers: { "Content-Type": "application/json" },
1760
- body: JSON.stringify(e)
1761
- }));
1762
- return a(s, "保存索引仓库失败");
1763
- }
1764
- async function bs(e, n = "") {
1765
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1766
- `${r}/admin/indexer/repos/${encodeURIComponent(e)}${t}`,
1767
- I({ method: "DELETE" })
1768
- );
1769
- return a(s, "删除索引仓库失败");
1770
- }
1771
- async function As(e, n, t = "") {
1772
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(
1773
- `${r}/admin/indexer/repos/${encodeURIComponent(
1774
- e
1775
- )}/enabled${s}`,
1776
- I({
1777
- method: "PUT",
1778
- headers: { "Content-Type": "application/json" },
1779
- body: JSON.stringify({ enabled: n })
1780
- })
1781
- );
1782
- return a(o, "切换仓库启停失败");
1783
- }
1784
- async function Us(e, n = "") {
1785
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1786
- `${r}/admin/indexer/repos/${encodeURIComponent(
1787
- e
1788
- )}/rebuild${t}`,
1789
- I({ method: "POST" })
1790
- );
1791
- return a(s, "触发重建失败");
1792
- }
1793
- async function Es(e = "") {
1794
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/indexer/poll${n}`, I({
1795
- method: "POST"
1796
- }));
1797
- return a(t, "触发轮询失败");
1798
- }
1799
- async function Os(e = "") {
1800
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(
1801
- `${r}/admin/notify-channel/list${n}`,
1802
- c
1803
- ), s = await a(
1804
- t,
1805
- "获取消息渠道状态失败"
1806
- );
1807
- return Array.isArray(s == null ? void 0 : s.channels) ? s.channels : [];
1808
- }
1809
- async function Ps(e, n = "") {
1810
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/notify-channel/test${t}`, {
1811
- ...c,
1812
- method: "POST",
1813
- headers: { "Content-Type": "application/json" },
1814
- body: JSON.stringify(e)
1815
- });
1816
- return a(s, "测试发送失败");
1817
- }
1818
- async function ks(e, n = "") {
1819
- const t = await i(
1820
- `${r}/admin/schedule-task${y({
1821
- token: n,
1822
- task_type: e.taskType,
1823
- page: e.page,
1824
- size: e.size
1825
- })}`,
1826
- c
1827
- );
1828
- return a(t, "查询定时任务模版失败");
1829
- }
1830
- async function Rs(e, n = "") {
1831
- const t = await i(
1832
- `${r}/admin/schedule-task${y({ token: n })}`,
1833
- {
1834
- ...c,
1835
- method: "POST",
1836
- headers: { "Content-Type": "application/json" },
1837
- body: JSON.stringify(e)
1838
- }
1839
- );
1840
- return a(t, "新建定时任务模版失败");
1841
- }
1842
- async function vs(e, n, t = "") {
1843
- const s = await i(
1844
- `${r}/admin/schedule-task/${encodeURIComponent(
1845
- e
1846
- )}${y({ token: t })}`,
1847
- {
1848
- ...c,
1849
- method: "PUT",
1850
- headers: { "Content-Type": "application/json" },
1851
- body: JSON.stringify(n)
1852
- }
1853
- );
1854
- return a(s, "更新定时任务模版失败");
1855
- }
1856
- async function js(e, n, t = "") {
1857
- const s = await i(
1858
- `${r}/admin/schedule-task/${encodeURIComponent(
1859
- e
1860
- )}/toggle${y({ token: t })}`,
1861
- {
1862
- ...c,
1863
- method: "POST",
1864
- headers: { "Content-Type": "application/json" },
1865
- body: JSON.stringify({ enabled: n })
1866
- }
1867
- );
1868
- return a(s, "切换模版状态失败");
1869
- }
1870
- async function Ns(e, n = "") {
1871
- const t = await i(
1872
- `${r}/admin/schedule-task/${encodeURIComponent(
1873
- e
1874
- )}/activate${y({ token: n })}`,
1875
- { ...c, method: "POST" }
1876
- );
1877
- return a(t, "激活模版失败");
1878
- }
1879
- async function qs(e, n = "") {
1880
- const t = await i(
1881
- `${r}/admin/schedule-task/${encodeURIComponent(
1882
- e
1883
- )}${y({ token: n })}`,
1884
- { ...c, method: "DELETE" }
1885
- );
1886
- return a(t, "删除模版失败");
1887
- }
1888
- async function Ds(e, n = "") {
1889
- const t = await i(
1890
- `${r}/admin/schedule-task/${encodeURIComponent(
1891
- e
1892
- )}/run${y({ token: n })}`,
1893
- { ...c, method: "POST" }
1894
- );
1895
- return a(t, "手动执行失败");
1896
- }
1897
- async function Js(e, n = "") {
1898
- const t = await i(
1899
- `${r}/admin/schedule-task/history-all${y({
1900
- token: n,
1901
- task_type: e.taskType,
1902
- page: e.page,
1903
- size: e.size
1904
- })}`,
1905
- c
1906
- );
1907
- return a(t, "查询运行记录失败");
1908
- }
1909
- async function Ls(e, n, t, s, o = "") {
1910
- const d = o ? `?token=${encodeURIComponent(o)}` : "", u = await i(
1911
- `${r}/admin/permissions/users/${e}/roles${d}`,
1912
- {
1913
- ...c,
1914
- method: "PUT",
1915
- headers: { "Content-Type": "application/json" },
1916
- body: JSON.stringify({ staffName: n, accountNo: t, roleIds: s })
1917
- }
1918
- );
1919
- return a(u, "更新用户角色失败");
1920
- }
1921
- async function Ms(e, n = "") {
1922
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1923
- `${r}/admin/permissions/users/${e}/detail${t}`,
1924
- c
1925
- );
1926
- return a(s, "获取用户授权详情失败");
1927
- }
1928
- async function xs(e = "") {
1929
- const n = e ? `?token=${encodeURIComponent(e)}` : "", t = await i(`${r}/admin/roles${n}`, c);
1930
- return a(t, "获取角色列表失败") ?? [];
1931
- }
1932
- async function zs(e, n = "") {
1933
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(
1934
- `${r}/admin/roles/${e}${t}`,
1935
- c
1936
- );
1937
- return a(s, "获取角色详情失败");
1938
- }
1939
- async function Fs(e, n = "") {
1940
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/roles${t}`, {
1941
- ...c,
1942
- method: "POST",
1943
- headers: { "Content-Type": "application/json" },
1944
- body: JSON.stringify(e)
1945
- });
1946
- return a(s, "创建角色失败");
1947
- }
1948
- async function Bs(e, n, t = "") {
1949
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/roles/${e}${s}`, {
1950
- ...c,
1951
- method: "PUT",
1952
- headers: { "Content-Type": "application/json" },
1953
- body: JSON.stringify(n)
1954
- });
1955
- return a(o, "更新角色失败");
1956
- }
1957
- async function Ws(e, n = "") {
1958
- const t = n ? `?token=${encodeURIComponent(n)}` : "", s = await i(`${r}/admin/roles/${e}${t}`, {
1959
- ...c,
1960
- method: "DELETE"
1961
- });
1962
- return a(s, "删除角色失败");
1963
- }
1964
- async function Hs(e, n, t = "") {
1965
- const s = t ? `?token=${encodeURIComponent(t)}` : "", o = await i(`${r}/admin/roles/${e}/users${s}`, {
1966
- ...c,
1967
- method: "PUT",
1968
- headers: { "Content-Type": "application/json" },
1969
- body: JSON.stringify({ users: n })
1970
- });
1971
- return a(o, "更新角色成员失败");
1972
- }
1973
- export {
1974
- Nn as $,
1975
- Bn as A,
1976
- w as B,
1977
- ut as C,
1978
- dt as D,
1979
- st as E,
1980
- ct as F,
1981
- Kn as G,
1982
- Wn as H,
1983
- Hn as I,
1984
- Fn as J,
1985
- yn as K,
1986
- zn as L,
1987
- ln as M,
1988
- tt as N,
1989
- nt as O,
1990
- et as P,
1991
- bn as Q,
1992
- Yn as R,
1993
- Xn as S,
1994
- oe as T,
1995
- Zn as U,
1996
- Gn as V,
1997
- Qn as W,
1998
- Vn as X,
1999
- Jn as Y,
2000
- Dn as Z,
2001
- qn as _,
2002
- T as a,
2003
- _n as a$,
2004
- jn as a0,
2005
- vn as a1,
2006
- Mn as a2,
2007
- Ln as a3,
2008
- Pn as a4,
2009
- On as a5,
2010
- kn as a6,
2011
- Rn as a7,
2012
- En as a8,
2013
- rt as a9,
2014
- cs as aA,
2015
- xt as aB,
2016
- lt as aC,
2017
- us as aD,
2018
- ms as aE,
2019
- cn as aF,
2020
- Ss as aG,
2021
- ve as aH,
2022
- Rt as aI,
2023
- fs as aJ,
2024
- Lt as aK,
2025
- mt as aL,
2026
- Se as aM,
2027
- wn as aN,
2028
- Xe as aO,
2029
- as as aP,
2030
- is as aQ,
2031
- rs as aR,
2032
- rn as aS,
2033
- on as aT,
2034
- an as aU,
2035
- nn as aV,
2036
- tn as aW,
2037
- sn as aX,
2038
- r as aY,
2039
- ws as aZ,
2040
- Ts as a_,
2041
- at as aa,
2042
- ot as ab,
2043
- Tn as ac,
2044
- U as ad,
2045
- hn as ae,
2046
- Vt as af,
2047
- Pt as ag,
2048
- Nt as ah,
2049
- kt as ai,
2050
- vt as aj,
2051
- jt as ak,
2052
- qt as al,
2053
- Mt as am,
2054
- Jt as an,
2055
- Tt as ao,
2056
- je as ap,
2057
- gs as aq,
2058
- Ht as ar,
2059
- $t as as,
2060
- zt as at,
2061
- Ft as au,
2062
- Dt as av,
2063
- Wt as aw,
2064
- Bt as ax,
2065
- Kt as ay,
2066
- Cn as az,
2067
- Un as b,
2068
- a as b0,
2069
- Ae as b1,
2070
- hs as b2,
2071
- es as b3,
2072
- it as b4,
2073
- ps as b5,
2074
- Ye as b6,
2075
- ht as b7,
2076
- gt as b8,
2077
- St as b9,
2078
- xs as bA,
2079
- zs as bB,
2080
- Fs as bC,
2081
- Bs as bD,
2082
- Ws as bE,
2083
- Hs as bF,
2084
- Ms as bG,
2085
- Ls as bH,
2086
- ss as bI,
2087
- ns as bJ,
2088
- ts as bK,
2089
- Ot as bL,
2090
- Et as bM,
2091
- os as bN,
2092
- ds as bO,
2093
- Js as bP,
2094
- ks as bQ,
2095
- vs as bR,
2096
- Rs as bS,
2097
- js as bT,
2098
- Ns as bU,
2099
- Ds as bV,
2100
- qs as bW,
2101
- wt as bX,
2102
- Zt as bY,
2103
- ls as bZ,
2104
- $s as b_,
2105
- yt as ba,
2106
- ft as bb,
2107
- pt as bc,
2108
- G as bd,
2109
- $e as be,
2110
- Qt as bf,
2111
- Gt as bg,
2112
- ys as bh,
2113
- Ct as bi,
2114
- _t as bj,
2115
- It as bk,
2116
- pn as bl,
2117
- Is as bm,
2118
- Cs as bn,
2119
- Us as bo,
2120
- As as bp,
2121
- bs as bq,
2122
- Es as br,
2123
- fn as bs,
2124
- mn as bt,
2125
- _s as bu,
2126
- Os as bv,
2127
- Ps as bw,
2128
- bt as bx,
2129
- At as by,
2130
- Ut as bz,
2131
- Je as c,
2132
- In as d,
2133
- gn as e,
2134
- g as f,
2135
- B as g,
2136
- Xt as h,
2137
- le as i,
2138
- Yt as j,
2139
- Ge as k,
2140
- $n as l,
2141
- Sn as m,
2142
- en as n,
2143
- dn as o,
2144
- An as p,
2145
- Ue as q,
2146
- ye as r,
2147
- xn as s,
2148
- m as t,
2149
- C as u,
2150
- un as v,
2151
- Ee as w,
2152
- Ze as x,
2153
- pe as y,
2154
- Qe as z
2155
- };