@yuku123/z-agent-component 0.1.1 → 0.1.3

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.
@@ -0,0 +1,861 @@
1
+ import { createRequest as U } from "@yuku123/z-frontend-common";
2
+ import me, { useState as Ae, useRef as J, useEffect as X } from "react";
3
+ import { Breadcrumb as Te, Button as te, Input as he } from "antd";
4
+ import { InboxOutlined as be, SearchOutlined as Ee, ExclamationCircleOutlined as ve, ReloadOutlined as ye } from "@ant-design/icons";
5
+ import { useNavigate as Se } from "react-router-dom";
6
+ import * as re from "echarts/core";
7
+ import { BarChart as xe, LineChart as Oe } from "echarts/charts";
8
+ import { GridComponent as Pe, LegendComponent as ke, TitleComponent as we, TooltipComponent as Re } from "echarts/components";
9
+ import { CanvasRenderer as _e } from "echarts/renderers";
10
+ import je from "echarts-for-react/lib/core";
11
+ const ne = U({ baseURL: "/api", timeout: 15e3 }), W = U({ baseURL: "/api", timeout: 15e3 }), B = U({ baseURL: "/api", timeout: 15e3 });
12
+ function N(r) {
13
+ const i = function(s, o = {}) {
14
+ const c = { ...o };
15
+ return c.body !== void 0 && (c.data = c.body, delete c.body), typeof c.method == "string" && (c.method = c.method.toUpperCase()), c.url = s, r.request(c);
16
+ };
17
+ return ["get", "post", "put", "delete", "patch", "head", "request", "create", "interceptors"].forEach((s) => {
18
+ typeof r[s] == "function" ? i[s] = r[s].bind(r) : i[s] = r[s];
19
+ }), i;
20
+ }
21
+ const Ge = N(ne);
22
+ N(W);
23
+ N(B);
24
+ function Ze({ apiBase: r } = {}) {
25
+ if (r !== void 0)
26
+ for (const i of [ne, W, B])
27
+ i.defaults.baseURL = r;
28
+ }
29
+ const Z = { GET: "GET", DELETE: "DELETE" }, w = {};
30
+ function e(r, i, a, s, o) {
31
+ w[r] || (w[r] = {}), w[r][i] = { verb: a, path: s, transform: o };
32
+ }
33
+ function Ce(r, i) {
34
+ let a = 0;
35
+ return r.replace(/\{(\w+)\}/g, () => String(i[a++] ?? ""));
36
+ }
37
+ class Ie extends Error {
38
+ constructor(i, a, s) {
39
+ super(`[apiRouter] ${i}.${a}() 未注册路由(${s}):本次没有发出任何请求。若该端点本应存在,请先在 agent/api/routes.js 里 reg('${i}', '${a}', ...)。`), this.name = "ApiRouteError", this.__missing_route = !0, this.api = i, this.method = a;
40
+ }
41
+ }
42
+ class $e extends Error {
43
+ constructor(i, a, s) {
44
+ super(`[apiRouter] ${i}.${a}() 参数形状不对:${s}`), this.name = "ApiParamError", this.__param_shape = !0, this.api = i, this.method = a;
45
+ }
46
+ }
47
+ function De(r, i) {
48
+ return i.startsWith("/ctc/ac") || i.startsWith("/ctc/authorization") || i.startsWith("/ctc/surl") ? B : i.startsWith("/auth/") ? W : Ge;
49
+ }
50
+ function Le(r) {
51
+ const i = { data: void 0, params: void 0 };
52
+ if (!r.length) return i;
53
+ const a = r[0];
54
+ if (a && typeof a == "object" && !Array.isArray(a) && ("data" in a || "params" in a) ? ("data" in a && (i.data = a.data), "params" in a && (i.params = a.params)) : i.data = a, r.length > 1) {
55
+ const s = r[1];
56
+ s && typeof s == "object" && !Array.isArray(s) && ("params" in s ? i.params = s.params : "data" in s ? i.data = s.data : i.params = s);
57
+ }
58
+ return i;
59
+ }
60
+ function Ue(r, i, a, s) {
61
+ const o = {};
62
+ if (r === Z.GET || r === Z.DELETE) {
63
+ const n = i[0];
64
+ if (n != null) {
65
+ if (typeof n != "object" || Array.isArray(n))
66
+ throw new $e(
67
+ a,
68
+ s,
69
+ `GET/DELETE 端点收到标量参数 ${JSON.stringify(n)},query 参数名未知,请改用 {params:{<参数名>: 值}}`
70
+ );
71
+ o.params = "params" in n ? n.params : n;
72
+ }
73
+ return o;
74
+ }
75
+ const { data: c, params: f } = Le(i);
76
+ return c !== void 0 && (o.data = c), f !== void 0 && (o.params = f), o;
77
+ }
78
+ function h(r) {
79
+ return new Proxy({}, {
80
+ get: (i, a) => {
81
+ if (!(a === "then" || typeof a == "symbol"))
82
+ return a === "toJSON" || a === "constructor" || a === "toString" ? () => `[apiRouter:${r}]` : async (...s) => {
83
+ var c, f;
84
+ const o = (c = w[r]) == null ? void 0 : c[a];
85
+ if (!o) {
86
+ const n = w[r] ? "方法名未注册" : "api key 未注册", p = new Ie(r, a, n);
87
+ throw console.error(p.message), p;
88
+ }
89
+ try {
90
+ const n = Ce(o.path, s), p = De(o.verb, n), A = Ue(o.verb, s, r, a), T = await p.request({
91
+ method: o.verb,
92
+ url: n,
93
+ ...A
94
+ });
95
+ return o.transform ? o.transform(T, s) : T;
96
+ } catch (n) {
97
+ if (n && n.__missing_route) throw n;
98
+ if (n && n.__param_shape)
99
+ throw console.error(n.message), n;
100
+ n && typeof n == "object" && (n.__api_error = !0, n.__api = r, n.__api_method = a);
101
+ const p = (f = n == null ? void 0 : n.response) == null ? void 0 : f.status;
102
+ throw console.error(
103
+ `[apiRouter] ${r}.${a}() 请求失败${p ? `(HTTP ${p})` : ""}:${(n == null ? void 0 : n.message) || n}`
104
+ ), n;
105
+ }
106
+ };
107
+ }
108
+ });
109
+ }
110
+ e("llmApi", "toolTemplateList", "GET", "/z-llm/config/tool-template/list");
111
+ e("mcpApi", "list", "GET", "/mcp/server/list");
112
+ e("mcpApi", "listTools", "POST", "/mcp/server/tools/list");
113
+ e("mcpApi", "callTool", "POST", "/mcp/server/tools/call");
114
+ e("ossApi", "listBuckets", "GET", "/v1/bucket");
115
+ e("ossApi", "getBucketStats", "GET", "/v1/bucket/stats");
116
+ e("ossApi", "createBucket", "POST", "/v1/bucket");
117
+ e("ossApi", "deleteBucket", "DELETE", "/v1/bucket");
118
+ e("ossApi", "setBucketAcl", "PUT", "/v1/bucket/acl");
119
+ e("ossApi", "listObjects", "GET", "/v1/object");
120
+ e("ossApi", "presignedUrl", "GET", "/v1/object/url");
121
+ e("ossApi", "uploadObject", "POST", "/v1/object");
122
+ e("ossApi", "downloadUrl", "GET", "/v1/object/url");
123
+ e("ossApi", "deleteObject", "DELETE", "/v1/object");
124
+ e("ossApi", "copyObject", "POST", "/v1/object/copy");
125
+ e("ossApi", "batchDelete", "POST", "/v1/object/batch-delete");
126
+ e("ossApi", "createFolder", "POST", "/v1/folder");
127
+ e("scriptApi", "list", "GET", "/script/list");
128
+ e("scriptApi", "create", "POST", "/script");
129
+ e("scriptApi", "update", "POST", "/script/update");
130
+ e("scriptApi", "delete", "POST", "/script/delete");
131
+ e("scriptApi", "publish", "POST", "/script/publish");
132
+ e("scriptApi", "unpublish", "POST", "/script/unpublish");
133
+ e("scriptApi", "run", "POST", "/script/run");
134
+ e("scriptApi", "importCurl", "POST", "/script/import-curl");
135
+ e("scriptApi", "importOpenApi", "POST", "/script/import-openapi");
136
+ e("scriptApi", "previewMapping", "POST", "/script/preview-mapping");
137
+ e("skillApi", "page", "POST", "/skill/page");
138
+ e("skillApi", "categoryTree", "GET", "/skill/category/tree");
139
+ e("skillApi", "create", "POST", "/skill");
140
+ e("skillApi", "createCategory", "POST", "/skill/category");
141
+ e("skillApi", "deleteCategory", "POST", "/skill/category/delete");
142
+ e("skillApi", "getBySkillCode", "GET", "/skill/by-code");
143
+ e("skillApi", "install", "POST", "/skill/install");
144
+ e("skillApi", "stats", "GET", "/skill/stats");
145
+ e("skillApi", "versions", "GET", "/skill/versions");
146
+ e("skillApi", "downloadPackage", "GET", "/skill/download");
147
+ e("skillApi", "uploadPackage", "POST", "/skill/upload");
148
+ e("agentApi", "appPage", "POST", "/agent/app/page");
149
+ e("agentApi", "appGet", "GET", "/agent/app/get");
150
+ e("agentApi", "appCreate", "POST", "/agent/app");
151
+ e("agentApi", "appUpdate", "POST", "/agent/app/update");
152
+ e("agentApi", "appDelete", "POST", "/agent/app/delete");
153
+ e("agentApi", "appPublish", "POST", "/agent/app/publish");
154
+ e("agentApi", "appUpgrade", "POST", "/agent/app/upgrade");
155
+ e("agentApi", "appToggleShare", "POST", "/agent/app/toggleShare");
156
+ e("agentApi", "versions", "GET", "/agent/app/versions");
157
+ e("agentApi", "groupTree", "GET", "/agent/group/tree");
158
+ e("agentApi", "groupCreate", "POST", "/agent/group");
159
+ e("agentApi", "groupUpdate", "POST", "/agent/group/update");
160
+ e("agentApi", "groupDelete", "POST", "/agent/group/delete");
161
+ e("agentApi", "chatHistory", "GET", "/agent/chat/history");
162
+ e("agentApi", "chatStream", "POST", "/agent/chat/send");
163
+ e("agentApi", "chatClear", "POST", "/agent/chat/clear");
164
+ e("agentApi", "shareVerify", "GET", "/agent/share/verify");
165
+ e("flowApi", "list", "GET", "/agent/flow/list");
166
+ e("flowApi", "get", "GET", "/agent/flow/byId");
167
+ e("flowApi", "byFlowId", "GET", "/agent/flow/byFlowId");
168
+ e("flowApi", "versions", "GET", "/agent/flow/versions");
169
+ e("flowApi", "create", "POST", "/agent/flow/create");
170
+ e("flowApi", "update", "POST", "/agent/flow/update");
171
+ e("flowApi", "publish", "POST", "/agent/flow/publish");
172
+ e("flowApi", "archive", "POST", "/agent/flow/archive");
173
+ e("flowApi", "newVersion", "POST", "/agent/flow/newVersion");
174
+ e("flowApi", "delete", "POST", "/agent/flow/delete");
175
+ e("flowApi", "execute", "POST", "/agent/flow/execute");
176
+ e("flowApi", "health", "GET", "/agent/flow/health");
177
+ e("statsApi", "overview", "GET", "/agent/stats/overview");
178
+ e("statsApi", "trend", "GET", "/agent/stats/trend");
179
+ e("statsApi", "latency", "GET", "/agent/stats/latency");
180
+ e("statsApi", "byApp", "GET", "/agent/stats/by-app");
181
+ e("statsApi", "byUser", "GET", "/agent/stats/by-user");
182
+ e("statsApi", "health", "GET", "/agent/stats/health");
183
+ e("pluginApi", "page", "GET", "/agent/plugin/page");
184
+ e("pluginApi", "get", "GET", "/agent/plugin/byId");
185
+ e("pluginApi", "byCode", "GET", "/agent/plugin/byCode");
186
+ e("pluginApi", "create", "POST", "/agent/plugin/create");
187
+ e("pluginApi", "update", "POST", "/agent/plugin/update");
188
+ e("pluginApi", "status", "POST", "/agent/plugin/status");
189
+ e("pluginApi", "delete", "POST", "/agent/plugin/delete");
190
+ e("pluginApi", "execute", "POST", "/agent/plugin/execute");
191
+ e("pluginApi", "builtinBeans", "GET", "/agent/plugin/builtin-beans");
192
+ e("pluginApi", "health", "GET", "/agent/plugin/health");
193
+ e("triggerApi", "page", "GET", "/agent/trigger/page");
194
+ e("triggerApi", "get", "GET", "/agent/trigger/byId");
195
+ e("triggerApi", "create", "POST", "/agent/trigger/create");
196
+ e("triggerApi", "update", "POST", "/agent/trigger/update");
197
+ e("triggerApi", "status", "POST", "/agent/trigger/status");
198
+ e("triggerApi", "delete", "POST", "/agent/trigger/delete");
199
+ e("triggerApi", "fire", "POST", "/agent/trigger/fire");
200
+ e("triggerApi", "health", "GET", "/agent/trigger/health");
201
+ e("templateApi", "page", "GET", "/agent/template/page");
202
+ e("templateApi", "get", "GET", "/agent/template/byId");
203
+ e("templateApi", "hot", "GET", "/agent/template/hot");
204
+ e("templateApi", "create", "POST", "/agent/template/create");
205
+ e("templateApi", "update", "POST", "/agent/template/update");
206
+ e("templateApi", "status", "POST", "/agent/template/status");
207
+ e("templateApi", "delete", "POST", "/agent/template/delete");
208
+ e("templateApi", "fork", "POST", "/agent/template/fork");
209
+ e("templateApi", "health", "GET", "/agent/template/health");
210
+ e("textGenApi", "page", "GET", "/agent/textgen/page");
211
+ e("textGenApi", "get", "GET", "/agent/textgen/byId");
212
+ e("textGenApi", "results", "GET", "/agent/textgen/results");
213
+ e("textGenApi", "create", "POST", "/agent/textgen/create");
214
+ e("textGenApi", "delete", "POST", "/agent/textgen/delete");
215
+ e("textGenApi", "run", "POST", "/agent/textgen/run");
216
+ e("textGenApi", "createAndRun", "POST", "/agent/textgen/createAndRun");
217
+ e("textGenApi", "health", "GET", "/agent/textgen/health");
218
+ e("humanInputApi", "inbox", "GET", "/agent/human/inbox");
219
+ e("humanInputApi", "listByExecution", "GET", "/agent/human/execution");
220
+ e("humanInputApi", "getById", "GET", "/agent/human/byId");
221
+ e("humanInputApi", "getByCode", "GET", "/agent/human/by-code");
222
+ e("humanInputApi", "decide", "POST", "/agent/human/decide");
223
+ e("humanInputApi", "create", "POST", "/agent/human/create");
224
+ e("humanInputApi", "health", "GET", "/agent/human/health");
225
+ e("productApi", "page", "GET", "/v1/products");
226
+ e("productApi", "create", "POST", "/v1/products");
227
+ e("productApi", "update", "PUT", "/v1/products");
228
+ e("productApi", "delete", "DELETE", "/v1/products");
229
+ e("productApi", "publish", "POST", "/v1/products/publish");
230
+ e("productApi", "offline", "POST", "/v1/products/offline");
231
+ e("productApi", "configGet", "GET", "/v1/products/config");
232
+ e("productApi", "configSave", "PUT", "/v1/products/config");
233
+ e("sceneApi", "page", "GET", "/v1/scenes");
234
+ e("sceneApi", "create", "POST", "/v1/scenes");
235
+ e("sceneApi", "update", "PUT", "/v1/scenes");
236
+ e("sceneApi", "delete", "DELETE", "/v1/scenes");
237
+ e("sceneApi", "duplicate", "POST", "/v1/scenes/duplicate");
238
+ e("sceneApi", "publish", "POST", "/v1/scenes/publish");
239
+ e("sceneApi", "offline", "POST", "/v1/scenes/offline");
240
+ e("sceneApi", "execute", "POST", "/v1/scenes/execute");
241
+ e("sceneApi", "canvasGet", "GET", "/v1/scenes/canvas");
242
+ e("sceneApi", "configGet", "GET", "/v1/scenes/config");
243
+ e("sceneApi", "nodes", "GET", "/v1/scenes/nodes");
244
+ e("sceneApi", "chatHistory", "GET", "/v1/scenes/chat-history");
245
+ const Qe = h("agentApi"), Ke = h("flowApi"), et = h("statsApi");
246
+ h("pluginApi");
247
+ h("memoryApi");
248
+ h("triggerApi");
249
+ const tt = h("templateApi");
250
+ h("textGenApi");
251
+ h("humanInputApi");
252
+ const rt = h("llmApi"), nt = h("mcpApi"), at = h("scriptApi"), it = h("skillApi"), st = h("productApi"), ot = h("sceneApi"), lt = h("ossApi");
253
+ var j = { exports: {} }, P = {};
254
+ /**
255
+ * @license React
256
+ * react-jsx-runtime.production.js
257
+ *
258
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
259
+ *
260
+ * This source code is licensed under the MIT license found in the
261
+ * LICENSE file in the root directory of this source tree.
262
+ */
263
+ var Q;
264
+ function We() {
265
+ if (Q) return P;
266
+ Q = 1;
267
+ var r = Symbol.for("react.transitional.element"), i = Symbol.for("react.fragment");
268
+ function a(s, o, c) {
269
+ var f = null;
270
+ if (c !== void 0 && (f = "" + c), o.key !== void 0 && (f = "" + o.key), "key" in o) {
271
+ c = {};
272
+ for (var n in o)
273
+ n !== "key" && (c[n] = o[n]);
274
+ } else c = o;
275
+ return o = c.ref, {
276
+ $$typeof: r,
277
+ type: s,
278
+ key: f,
279
+ ref: o !== void 0 ? o : null,
280
+ props: c
281
+ };
282
+ }
283
+ return P.Fragment = i, P.jsx = a, P.jsxs = a, P;
284
+ }
285
+ var k = {};
286
+ /**
287
+ * @license React
288
+ * react-jsx-runtime.development.js
289
+ *
290
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
291
+ *
292
+ * This source code is licensed under the MIT license found in the
293
+ * LICENSE file in the root directory of this source tree.
294
+ */
295
+ var K;
296
+ function Be() {
297
+ return K || (K = 1, process.env.NODE_ENV !== "production" && (function() {
298
+ function r(t) {
299
+ if (t == null) return null;
300
+ if (typeof t == "function")
301
+ return t.$$typeof === de ? null : t.displayName || t.name || null;
302
+ if (typeof t == "string") return t;
303
+ switch (t) {
304
+ case b:
305
+ return "Fragment";
306
+ case ae:
307
+ return "Profiler";
308
+ case O:
309
+ return "StrictMode";
310
+ case le:
311
+ return "Suspense";
312
+ case ce:
313
+ return "SuspenseList";
314
+ case ue:
315
+ return "Activity";
316
+ }
317
+ if (typeof t == "object")
318
+ switch (typeof t.tag == "number" && console.error(
319
+ "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
320
+ ), t.$$typeof) {
321
+ case S:
322
+ return "Portal";
323
+ case se:
324
+ return t.displayName || "Context";
325
+ case ie:
326
+ return (t._context.displayName || "Context") + ".Consumer";
327
+ case oe:
328
+ var l = t.render;
329
+ return t = t.displayName, t || (t = l.displayName || l.name || "", t = t !== "" ? "ForwardRef(" + t + ")" : "ForwardRef"), t;
330
+ case pe:
331
+ return l = t.displayName || null, l !== null ? l : r(t.type) || "Memo";
332
+ case C:
333
+ l = t._payload, t = t._init;
334
+ try {
335
+ return r(t(l));
336
+ } catch {
337
+ }
338
+ }
339
+ return null;
340
+ }
341
+ function i(t) {
342
+ return "" + t;
343
+ }
344
+ function a(t) {
345
+ try {
346
+ i(t);
347
+ var l = !1;
348
+ } catch {
349
+ l = !0;
350
+ }
351
+ if (l) {
352
+ l = console;
353
+ var d = l.error, g = typeof Symbol == "function" && Symbol.toStringTag && t[Symbol.toStringTag] || t.constructor.name || "Object";
354
+ return d.call(
355
+ l,
356
+ "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
357
+ g
358
+ ), i(t);
359
+ }
360
+ }
361
+ function s(t) {
362
+ if (t === b) return "<>";
363
+ if (typeof t == "object" && t !== null && t.$$typeof === C)
364
+ return "<...>";
365
+ try {
366
+ var l = r(t);
367
+ return l ? "<" + l + ">" : "<...>";
368
+ } catch {
369
+ return "<...>";
370
+ }
371
+ }
372
+ function o() {
373
+ var t = I.A;
374
+ return t === null ? null : t.getOwner();
375
+ }
376
+ function c() {
377
+ return Error("react-stack-top-frame");
378
+ }
379
+ function f(t) {
380
+ if (Y.call(t, "key")) {
381
+ var l = Object.getOwnPropertyDescriptor(t, "key").get;
382
+ if (l && l.isReactWarning) return !1;
383
+ }
384
+ return t.key !== void 0;
385
+ }
386
+ function n(t, l) {
387
+ function d() {
388
+ q || (q = !0, console.error(
389
+ "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
390
+ l
391
+ ));
392
+ }
393
+ d.isReactWarning = !0, Object.defineProperty(t, "key", {
394
+ get: d,
395
+ configurable: !0
396
+ });
397
+ }
398
+ function p() {
399
+ var t = r(this.type);
400
+ return F[t] || (F[t] = !0, console.error(
401
+ "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
402
+ )), t = this.props.ref, t !== void 0 ? t : null;
403
+ }
404
+ function A(t, l, d, g, _, D) {
405
+ var m = d.ref;
406
+ return t = {
407
+ $$typeof: R,
408
+ type: t,
409
+ key: l,
410
+ props: d,
411
+ _owner: g
412
+ }, (m !== void 0 ? m : null) !== null ? Object.defineProperty(t, "ref", {
413
+ enumerable: !1,
414
+ get: p
415
+ }) : Object.defineProperty(t, "ref", { enumerable: !1, value: null }), t._store = {}, Object.defineProperty(t._store, "validated", {
416
+ configurable: !1,
417
+ enumerable: !1,
418
+ writable: !0,
419
+ value: 0
420
+ }), Object.defineProperty(t, "_debugInfo", {
421
+ configurable: !1,
422
+ enumerable: !1,
423
+ writable: !0,
424
+ value: null
425
+ }), Object.defineProperty(t, "_debugStack", {
426
+ configurable: !1,
427
+ enumerable: !1,
428
+ writable: !0,
429
+ value: _
430
+ }), Object.defineProperty(t, "_debugTask", {
431
+ configurable: !1,
432
+ enumerable: !1,
433
+ writable: !0,
434
+ value: D
435
+ }), Object.freeze && (Object.freeze(t.props), Object.freeze(t)), t;
436
+ }
437
+ function T(t, l, d, g, _, D) {
438
+ var m = l.children;
439
+ if (m !== void 0)
440
+ if (g)
441
+ if (fe(m)) {
442
+ for (g = 0; g < m.length; g++)
443
+ E(m[g]);
444
+ Object.freeze && Object.freeze(m);
445
+ } else
446
+ console.error(
447
+ "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
448
+ );
449
+ else E(m);
450
+ if (Y.call(l, "key")) {
451
+ m = r(t);
452
+ var x = Object.keys(l).filter(function(ge) {
453
+ return ge !== "key";
454
+ });
455
+ g = 0 < x.length ? "{key: someKey, " + x.join(": ..., ") + ": ...}" : "{key: someKey}", H[m + g] || (x = 0 < x.length ? "{" + x.join(": ..., ") + ": ...}" : "{}", console.error(
456
+ `A props object containing a "key" prop is being spread into JSX:
457
+ let props = %s;
458
+ <%s {...props} />
459
+ React keys must be passed directly to JSX without using spread:
460
+ let props = %s;
461
+ <%s key={someKey} {...props} />`,
462
+ g,
463
+ m,
464
+ x,
465
+ m
466
+ ), H[m + g] = !0);
467
+ }
468
+ if (m = null, d !== void 0 && (a(d), m = "" + d), f(l) && (a(l.key), m = "" + l.key), "key" in l) {
469
+ d = {};
470
+ for (var L in l)
471
+ L !== "key" && (d[L] = l[L]);
472
+ } else d = l;
473
+ return m && n(
474
+ d,
475
+ typeof t == "function" ? t.displayName || t.name || "Unknown" : t
476
+ ), A(
477
+ t,
478
+ m,
479
+ d,
480
+ o(),
481
+ _,
482
+ D
483
+ );
484
+ }
485
+ function E(t) {
486
+ y(t) ? t._store && (t._store.validated = 1) : typeof t == "object" && t !== null && t.$$typeof === C && (t._payload.status === "fulfilled" ? y(t._payload.value) && t._payload.value._store && (t._payload.value._store.validated = 1) : t._store && (t._store.validated = 1));
487
+ }
488
+ function y(t) {
489
+ return typeof t == "object" && t !== null && t.$$typeof === R;
490
+ }
491
+ var v = me, R = Symbol.for("react.transitional.element"), S = Symbol.for("react.portal"), b = Symbol.for("react.fragment"), O = Symbol.for("react.strict_mode"), ae = Symbol.for("react.profiler"), ie = Symbol.for("react.consumer"), se = Symbol.for("react.context"), oe = Symbol.for("react.forward_ref"), le = Symbol.for("react.suspense"), ce = Symbol.for("react.suspense_list"), pe = Symbol.for("react.memo"), C = Symbol.for("react.lazy"), ue = Symbol.for("react.activity"), de = Symbol.for("react.client.reference"), I = v.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, Y = Object.prototype.hasOwnProperty, fe = Array.isArray, $ = console.createTask ? console.createTask : function() {
492
+ return null;
493
+ };
494
+ v = {
495
+ react_stack_bottom_frame: function(t) {
496
+ return t();
497
+ }
498
+ };
499
+ var q, F = {}, M = v.react_stack_bottom_frame.bind(
500
+ v,
501
+ c
502
+ )(), V = $(s(c)), H = {};
503
+ k.Fragment = b, k.jsx = function(t, l, d) {
504
+ var g = 1e4 > I.recentlyCreatedOwnerStacks++;
505
+ return T(
506
+ t,
507
+ l,
508
+ d,
509
+ !1,
510
+ g ? Error("react-stack-top-frame") : M,
511
+ g ? $(s(t)) : V
512
+ );
513
+ }, k.jsxs = function(t, l, d) {
514
+ var g = 1e4 > I.recentlyCreatedOwnerStacks++;
515
+ return T(
516
+ t,
517
+ l,
518
+ d,
519
+ !0,
520
+ g ? Error("react-stack-top-frame") : M,
521
+ g ? $(s(t)) : V
522
+ );
523
+ };
524
+ })()), k;
525
+ }
526
+ var ee;
527
+ function Ne() {
528
+ return ee || (ee = 1, process.env.NODE_ENV === "production" ? j.exports = We() : j.exports = Be()), j.exports;
529
+ }
530
+ var u = Ne();
531
+ const G = {
532
+ // 卡片表面
533
+ surfaceAlt: "#fafbfc",
534
+ // 次级表面 (表格 hover 等)
535
+ border: "#e5e7eb",
536
+ text: "#111827",
537
+ // 主文本
538
+ textMuted: "#6b7280"
539
+ }, z = {
540
+ md: 12
541
+ };
542
+ function ct({
543
+ icon: r,
544
+ title: i = "暂无数据",
545
+ description: a,
546
+ actionText: s,
547
+ onAction: o,
548
+ size: c = "md",
549
+ style: f
550
+ }) {
551
+ const n = { sm: 24, md: 40, lg: 64 }, p = { sm: 14, md: 16, lg: 20 };
552
+ return /* @__PURE__ */ u.jsxs(
553
+ "div",
554
+ {
555
+ role: "status",
556
+ "aria-live": "polite",
557
+ style: {
558
+ padding: n[c] || n.md,
559
+ textAlign: "center",
560
+ background: "#ffffff",
561
+ borderRadius: z.md,
562
+ border: "1px dashed #e5e7eb",
563
+ ...f
564
+ },
565
+ children: [
566
+ /* @__PURE__ */ u.jsx("div", { style: {
567
+ display: "inline-flex",
568
+ alignItems: "center",
569
+ justifyContent: "center",
570
+ width: 56,
571
+ height: 56,
572
+ borderRadius: "50%",
573
+ background: G.surfaceAlt,
574
+ marginBottom: 16,
575
+ fontSize: 28,
576
+ color: "#9ca3af"
577
+ }, children: r || /* @__PURE__ */ u.jsx(be, {}) }),
578
+ /* @__PURE__ */ u.jsx("div", { style: {
579
+ fontSize: p[c],
580
+ fontWeight: 600,
581
+ color: G.text,
582
+ marginBottom: a ? 6 : 16
583
+ }, children: i }),
584
+ a && /* @__PURE__ */ u.jsx("div", { style: {
585
+ fontSize: 13,
586
+ color: G.textMuted,
587
+ lineHeight: 1.6,
588
+ maxWidth: 360,
589
+ margin: "0 auto 16px"
590
+ }, children: a }),
591
+ s && o && /* @__PURE__ */ u.jsx(
592
+ te,
593
+ {
594
+ type: "primary",
595
+ onClick: o,
596
+ style: {
597
+ background: "linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%)",
598
+ border: "none",
599
+ minHeight: 36
600
+ },
601
+ children: s
602
+ }
603
+ )
604
+ ]
605
+ }
606
+ );
607
+ }
608
+ function pt({
609
+ error: r,
610
+ title: i = "加载失败",
611
+ description: a,
612
+ onRetry: s,
613
+ retryText: o = "重新加载",
614
+ variant: c = "inline",
615
+ style: f
616
+ }) {
617
+ var n;
618
+ const p = c === "full", A = (n = r == null ? void 0 : r.response) == null ? void 0 : n.data, T = A && typeof A == "object" && (typeof A.message == "string" && A.message || typeof A.msg == "string" && A.msg) || null, E = T || (typeof r == "string" ? r : (r == null ? void 0 : r.message) || (r == null ? void 0 : r.msg) || (r ? String(r) : null)), y = a || (T ? `原因: ${T}` : E ? `原因: ${E}。请检查网络或稍后重试。` : "请检查网络或稍后重试。");
619
+ return /* @__PURE__ */ u.jsxs(
620
+ "div",
621
+ {
622
+ role: "alert",
623
+ "aria-live": "assertive",
624
+ style: {
625
+ padding: p ? "48px 24px" : "20px 24px",
626
+ background: p ? "#ffffff" : "#fef2f2",
627
+ border: p ? `1px dashed ${G.border}` : "1px solid #fecaca",
628
+ borderRadius: z.md,
629
+ textAlign: p ? "center" : "left",
630
+ display: "flex",
631
+ flexDirection: p ? "column" : "row",
632
+ alignItems: p ? "center" : "flex-start",
633
+ gap: p ? 12 : 16,
634
+ ...f
635
+ },
636
+ children: [
637
+ /* @__PURE__ */ u.jsx("div", { style: {
638
+ display: "inline-flex",
639
+ alignItems: "center",
640
+ justifyContent: "center",
641
+ width: p ? 56 : 36,
642
+ height: p ? 56 : 36,
643
+ borderRadius: "50%",
644
+ background: p ? "#fef2f2" : "#ffffff",
645
+ color: "#dc2626",
646
+ fontSize: p ? 28 : 18,
647
+ flexShrink: 0
648
+ }, children: /* @__PURE__ */ u.jsx(ve, {}) }),
649
+ /* @__PURE__ */ u.jsxs("div", { style: { flex: 1, minWidth: 0 }, children: [
650
+ /* @__PURE__ */ u.jsx("div", { style: {
651
+ fontSize: p ? 16 : 14,
652
+ fontWeight: 600,
653
+ color: "#991b1b",
654
+ marginBottom: 4
655
+ }, children: i }),
656
+ /* @__PURE__ */ u.jsx("div", { style: {
657
+ fontSize: 13,
658
+ color: "#7f1d1d",
659
+ lineHeight: 1.6,
660
+ wordBreak: "break-word"
661
+ }, children: y }),
662
+ s && /* @__PURE__ */ u.jsx(
663
+ te,
664
+ {
665
+ type: "primary",
666
+ danger: !0,
667
+ icon: /* @__PURE__ */ u.jsx(ye, {}),
668
+ onClick: s,
669
+ size: p ? "middle" : "small",
670
+ style: { marginTop: 12 },
671
+ children: o
672
+ }
673
+ )
674
+ ] })
675
+ ]
676
+ }
677
+ );
678
+ }
679
+ function ut({
680
+ value: r,
681
+ onChange: i,
682
+ onSearch: a,
683
+ placeholder: s = "搜索...",
684
+ debounceMs: o = 300,
685
+ width: c = 280,
686
+ allowClear: f = !0,
687
+ // antd v6: enterButton 已被废弃,SearchInput 已通过 onKeyDown 自行处理 Enter 键,
688
+ // 所以从 rest 里过滤掉,避免透传到原生 <input> 报 React 警告。
689
+ enterButton: n,
690
+ ...p
691
+ }) {
692
+ const [A, T] = Ae(r || ""), E = J(null), y = J(r || "");
693
+ X(() => {
694
+ r !== void 0 && r !== A && (T(r || ""), y.current = r || "");
695
+ }, [r]), X(() => () => {
696
+ E.current && clearTimeout(E.current);
697
+ }, []);
698
+ const v = (b) => {
699
+ y.current = b, i && i(b);
700
+ }, R = (b) => {
701
+ const O = b.target.value;
702
+ if (T(O), E.current && clearTimeout(E.current), O === "") {
703
+ v("");
704
+ return;
705
+ }
706
+ E.current = setTimeout(() => v(O), o);
707
+ }, S = (b) => {
708
+ E.current && clearTimeout(E.current), v(b), a && a(b);
709
+ };
710
+ return /* @__PURE__ */ u.jsx(
711
+ he,
712
+ {
713
+ ...p,
714
+ value: A,
715
+ onChange: R,
716
+ onPressEnter: S,
717
+ onKeyDown: (b) => {
718
+ b.key === "Enter" ? (b.preventDefault(), S(A)) : b.key === "Escape" && (T(""), S(""));
719
+ },
720
+ placeholder: s,
721
+ allowClear: f ? { clearIcon: /* @__PURE__ */ u.jsx("span", { onClick: () => {
722
+ T(""), S("");
723
+ }, children: "×" }) } : !1,
724
+ prefix: /* @__PURE__ */ u.jsx(Ee, { style: { color: "#9ca3af" } }),
725
+ style: {
726
+ width: c,
727
+ borderRadius: z.md,
728
+ ...p.style || {}
729
+ }
730
+ }
731
+ );
732
+ }
733
+ function dt({
734
+ title: r,
735
+ subtitle: i,
736
+ breadcrumb: a,
737
+ extra: s,
738
+ back: o,
739
+ onBack: c
740
+ }) {
741
+ const f = Se();
742
+ return /* @__PURE__ */ u.jsx("div", { style: {
743
+ marginBottom: 12,
744
+ paddingBottom: 10,
745
+ borderBottom: "1px solid #f1f5f9"
746
+ }, children: /* @__PURE__ */ u.jsxs("div", { style: {
747
+ display: "flex",
748
+ alignItems: "center",
749
+ justifyContent: "space-between",
750
+ gap: 12,
751
+ flexWrap: "wrap"
752
+ }, children: [
753
+ /* @__PURE__ */ u.jsxs("div", { style: {
754
+ display: "flex",
755
+ alignItems: "center",
756
+ gap: 10,
757
+ minWidth: 0,
758
+ flexWrap: "wrap"
759
+ }, children: [
760
+ o && /* @__PURE__ */ u.jsx(
761
+ "button",
762
+ {
763
+ onClick: () => {
764
+ c ? c() : f(-1);
765
+ },
766
+ "aria-label": "返回上一页",
767
+ style: {
768
+ width: 28,
769
+ height: 28,
770
+ borderRadius: 6,
771
+ border: "1px solid #e5e7eb",
772
+ background: "#ffffff",
773
+ color: "#6b7280",
774
+ cursor: "pointer",
775
+ display: "inline-flex",
776
+ alignItems: "center",
777
+ justifyContent: "center",
778
+ fontSize: 13,
779
+ transition: "all 150ms ease",
780
+ flexShrink: 0
781
+ },
782
+ onMouseEnter: (n) => {
783
+ n.currentTarget.style.background = "#f8fafc", n.currentTarget.style.color = "#111827", n.currentTarget.style.borderColor = "#7c3aed";
784
+ },
785
+ onMouseLeave: (n) => {
786
+ n.currentTarget.style.background = "#ffffff", n.currentTarget.style.color = "#6b7280", n.currentTarget.style.borderColor = "#e5e7eb";
787
+ },
788
+ children: "←"
789
+ }
790
+ ),
791
+ a && a.length > 0 ? /* @__PURE__ */ u.jsx(
792
+ Te,
793
+ {
794
+ items: a.map((n, p) => {
795
+ const A = p === a.length - 1;
796
+ return {
797
+ title: n.href && !A ? /* @__PURE__ */ u.jsx("a", { onClick: (T) => {
798
+ T.preventDefault(), f(n.href);
799
+ }, children: n.label }) : /* @__PURE__ */ u.jsx("span", { style: A ? {
800
+ fontWeight: 600,
801
+ color: "#111827"
802
+ } : void 0, children: n.label })
803
+ };
804
+ })
805
+ }
806
+ ) : r && /* @__PURE__ */ u.jsx("span", { role: "heading", "aria-level": 1, style: {
807
+ fontSize: 15,
808
+ fontWeight: 600,
809
+ color: "#111827",
810
+ lineHeight: 1.4
811
+ }, children: r }),
812
+ i && /* @__PURE__ */ u.jsx("span", { title: i, style: {
813
+ fontSize: 12,
814
+ color: "#94a3b8",
815
+ lineHeight: 1.4,
816
+ whiteSpace: "nowrap",
817
+ overflow: "hidden",
818
+ textOverflow: "ellipsis",
819
+ maxWidth: 360
820
+ }, children: i })
821
+ ] }),
822
+ s && /* @__PURE__ */ u.jsx("div", { style: {
823
+ display: "flex",
824
+ gap: 8,
825
+ flexShrink: 0
826
+ }, children: s })
827
+ ] }) });
828
+ }
829
+ re.use([
830
+ xe,
831
+ Oe,
832
+ Pe,
833
+ ke,
834
+ we,
835
+ Re,
836
+ _e
837
+ ]);
838
+ function ft(r) {
839
+ return /* @__PURE__ */ u.jsx(je, { echarts: re, ...r });
840
+ }
841
+ export {
842
+ ft as R,
843
+ ut as S,
844
+ Qe as a,
845
+ et as b,
846
+ tt as c,
847
+ Ze as d,
848
+ ct as e,
849
+ Ke as f,
850
+ at as g,
851
+ it as h,
852
+ u as j,
853
+ rt as l,
854
+ nt as m,
855
+ lt as o,
856
+ st as p,
857
+ dt as r,
858
+ ot as s,
859
+ pt as t,
860
+ Ge as u
861
+ };