@yuku123/z-subscribe-frontend-component 0.1.1

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,3833 @@
1
+ import mt, { useState as z, useEffect as Ye } from "react";
2
+ import { useNavigate as rr, useParams as vr, Routes as kr, Route as Ie, Navigate as Dr } from "react-router-dom";
3
+ import { Layout as nr, Alert as Fe, Space as J, Button as Y, Typography as re, Select as pe, Input as te, Card as $, Table as Ue, Drawer as Lr, Tabs as Ur, Tag as ee, message as L, Tooltip as Fr, Popconfirm as Br, Modal as jt, Form as F, Spin as zr, Radio as Se, InputNumber as ot, Row as Ct, Col as Te, Statistic as Me, Empty as $r } from "antd";
4
+ import { BugOutlined as qr, ReloadOutlined as yt, FileTextOutlined as Pt, CheckCircleOutlined as sr, PlusOutlined as Hr, ApiOutlined as bt, ProjectOutlined as Mr, EditOutlined as Jr, ThunderboltOutlined as Vr, PlayCircleOutlined as Wr, PauseCircleOutlined as Kr, DeleteOutlined as Gr, ExclamationCircleOutlined as Xr, SaveOutlined as Yr, ArrowLeftOutlined as Qr } from "@ant-design/icons";
5
+ import "@ant-design/pro-components";
6
+ var Je = { exports: {} }, ve = {};
7
+ /**
8
+ * @license React
9
+ * react-jsx-runtime.production.js
10
+ *
11
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
12
+ *
13
+ * This source code is licensed under the MIT license found in the
14
+ * LICENSE file in the root directory of this source tree.
15
+ */
16
+ var Nt;
17
+ function Zr() {
18
+ if (Nt) return ve;
19
+ Nt = 1;
20
+ var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
21
+ function r(n, s, o) {
22
+ var a = null;
23
+ if (o !== void 0 && (a = "" + o), s.key !== void 0 && (a = "" + s.key), "key" in s) {
24
+ o = {};
25
+ for (var c in s)
26
+ c !== "key" && (o[c] = s[c]);
27
+ } else o = s;
28
+ return s = o.ref, {
29
+ $$typeof: e,
30
+ type: n,
31
+ key: a,
32
+ ref: s !== void 0 ? s : null,
33
+ props: o
34
+ };
35
+ }
36
+ return ve.Fragment = t, ve.jsx = r, ve.jsxs = r, ve;
37
+ }
38
+ var ke = {};
39
+ /**
40
+ * @license React
41
+ * react-jsx-runtime.development.js
42
+ *
43
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
44
+ *
45
+ * This source code is licensed under the MIT license found in the
46
+ * LICENSE file in the root directory of this source tree.
47
+ */
48
+ var It;
49
+ function en() {
50
+ return It || (It = 1, process.env.NODE_ENV !== "production" && (function() {
51
+ function e(i) {
52
+ if (i == null) return null;
53
+ if (typeof i == "function")
54
+ return i.$$typeof === K ? null : i.displayName || i.name || null;
55
+ if (typeof i == "string") return i;
56
+ switch (i) {
57
+ case R:
58
+ return "Fragment";
59
+ case x:
60
+ return "Profiler";
61
+ case y:
62
+ return "StrictMode";
63
+ case k:
64
+ return "Suspense";
65
+ case W:
66
+ return "SuspenseList";
67
+ case D:
68
+ return "Activity";
69
+ }
70
+ if (typeof i == "object")
71
+ switch (typeof i.tag == "number" && console.error(
72
+ "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
73
+ ), i.$$typeof) {
74
+ case P:
75
+ return "Portal";
76
+ case O:
77
+ return i.displayName || "Context";
78
+ case d:
79
+ return (i._context.displayName || "Context") + ".Consumer";
80
+ case v:
81
+ var w = i.render;
82
+ return i = i.displayName, i || (i = w.displayName || w.name || "", i = i !== "" ? "ForwardRef(" + i + ")" : "ForwardRef"), i;
83
+ case g:
84
+ return w = i.displayName || null, w !== null ? w : e(i.type) || "Memo";
85
+ case p:
86
+ w = i._payload, i = i._init;
87
+ try {
88
+ return e(i(w));
89
+ } catch {
90
+ }
91
+ }
92
+ return null;
93
+ }
94
+ function t(i) {
95
+ return "" + i;
96
+ }
97
+ function r(i) {
98
+ try {
99
+ t(i);
100
+ var w = !1;
101
+ } catch {
102
+ w = !0;
103
+ }
104
+ if (w) {
105
+ w = console;
106
+ var A = w.error, j = typeof Symbol == "function" && Symbol.toStringTag && i[Symbol.toStringTag] || i.constructor.name || "Object";
107
+ return A.call(
108
+ w,
109
+ "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
110
+ j
111
+ ), t(i);
112
+ }
113
+ }
114
+ function n(i) {
115
+ if (i === R) return "<>";
116
+ if (typeof i == "object" && i !== null && i.$$typeof === p)
117
+ return "<...>";
118
+ try {
119
+ var w = e(i);
120
+ return w ? "<" + w + ">" : "<...>";
121
+ } catch {
122
+ return "<...>";
123
+ }
124
+ }
125
+ function s() {
126
+ var i = ne.A;
127
+ return i === null ? null : i.getOwner();
128
+ }
129
+ function o() {
130
+ return Error("react-stack-top-frame");
131
+ }
132
+ function a(i) {
133
+ if (he.call(i, "key")) {
134
+ var w = Object.getOwnPropertyDescriptor(i, "key").get;
135
+ if (w && w.isReactWarning) return !1;
136
+ }
137
+ return i.key !== void 0;
138
+ }
139
+ function c(i, w) {
140
+ function A() {
141
+ ie || (ie = !0, console.error(
142
+ "%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)",
143
+ w
144
+ ));
145
+ }
146
+ A.isReactWarning = !0, Object.defineProperty(i, "key", {
147
+ get: A,
148
+ configurable: !0
149
+ });
150
+ }
151
+ function f() {
152
+ var i = e(this.type);
153
+ return ue[i] || (ue[i] = !0, console.error(
154
+ "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."
155
+ )), i = this.props.ref, i !== void 0 ? i : null;
156
+ }
157
+ function m(i, w, A, j, ae, I) {
158
+ var _ = A.ref;
159
+ return i = {
160
+ $$typeof: C,
161
+ type: i,
162
+ key: w,
163
+ props: A,
164
+ _owner: j
165
+ }, (_ !== void 0 ? _ : null) !== null ? Object.defineProperty(i, "ref", {
166
+ enumerable: !1,
167
+ get: f
168
+ }) : Object.defineProperty(i, "ref", { enumerable: !1, value: null }), i._store = {}, Object.defineProperty(i._store, "validated", {
169
+ configurable: !1,
170
+ enumerable: !1,
171
+ writable: !0,
172
+ value: 0
173
+ }), Object.defineProperty(i, "_debugInfo", {
174
+ configurable: !1,
175
+ enumerable: !1,
176
+ writable: !0,
177
+ value: null
178
+ }), Object.defineProperty(i, "_debugStack", {
179
+ configurable: !1,
180
+ enumerable: !1,
181
+ writable: !0,
182
+ value: ae
183
+ }), Object.defineProperty(i, "_debugTask", {
184
+ configurable: !1,
185
+ enumerable: !1,
186
+ writable: !0,
187
+ value: I
188
+ }), Object.freeze && (Object.freeze(i.props), Object.freeze(i)), i;
189
+ }
190
+ function h(i, w, A, j, ae, I) {
191
+ var _ = w.children;
192
+ if (_ !== void 0)
193
+ if (j)
194
+ if (G(_)) {
195
+ for (j = 0; j < _.length; j++)
196
+ b(_[j]);
197
+ Object.freeze && Object.freeze(_);
198
+ } else
199
+ console.error(
200
+ "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
201
+ );
202
+ else b(_);
203
+ if (he.call(w, "key")) {
204
+ _ = e(i);
205
+ var B = Object.keys(w).filter(function(Pe) {
206
+ return Pe !== "key";
207
+ });
208
+ j = 0 < B.length ? "{key: someKey, " + B.join(": ..., ") + ": ...}" : "{key: someKey}", X[_ + j] || (B = 0 < B.length ? "{" + B.join(": ..., ") + ": ...}" : "{}", console.error(
209
+ `A props object containing a "key" prop is being spread into JSX:
210
+ let props = %s;
211
+ <%s {...props} />
212
+ React keys must be passed directly to JSX without using spread:
213
+ let props = %s;
214
+ <%s key={someKey} {...props} />`,
215
+ j,
216
+ _,
217
+ B,
218
+ _
219
+ ), X[_ + j] = !0);
220
+ }
221
+ if (_ = null, A !== void 0 && (r(A), _ = "" + A), a(w) && (r(w.key), _ = "" + w.key), "key" in w) {
222
+ A = {};
223
+ for (var ce in w)
224
+ ce !== "key" && (A[ce] = w[ce]);
225
+ } else A = w;
226
+ return _ && c(
227
+ A,
228
+ typeof i == "function" ? i.displayName || i.name || "Unknown" : i
229
+ ), m(
230
+ i,
231
+ _,
232
+ A,
233
+ s(),
234
+ ae,
235
+ I
236
+ );
237
+ }
238
+ function b(i) {
239
+ T(i) ? i._store && (i._store.validated = 1) : typeof i == "object" && i !== null && i.$$typeof === p && (i._payload.status === "fulfilled" ? T(i._payload.value) && i._payload.value._store && (i._payload.value._store.validated = 1) : i._store && (i._store.validated = 1));
240
+ }
241
+ function T(i) {
242
+ return typeof i == "object" && i !== null && i.$$typeof === C;
243
+ }
244
+ var S = mt, C = Symbol.for("react.transitional.element"), P = Symbol.for("react.portal"), R = Symbol.for("react.fragment"), y = Symbol.for("react.strict_mode"), x = Symbol.for("react.profiler"), d = Symbol.for("react.consumer"), O = Symbol.for("react.context"), v = Symbol.for("react.forward_ref"), k = Symbol.for("react.suspense"), W = Symbol.for("react.suspense_list"), g = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), D = Symbol.for("react.activity"), K = Symbol.for("react.client.reference"), ne = S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, he = Object.prototype.hasOwnProperty, G = Array.isArray, se = console.createTask ? console.createTask : function() {
245
+ return null;
246
+ };
247
+ S = {
248
+ react_stack_bottom_frame: function(i) {
249
+ return i();
250
+ }
251
+ };
252
+ var ie, ue = {}, be = S.react_stack_bottom_frame.bind(
253
+ S,
254
+ o
255
+ )(), me = se(n(o)), X = {};
256
+ ke.Fragment = R, ke.jsx = function(i, w, A) {
257
+ var j = 1e4 > ne.recentlyCreatedOwnerStacks++;
258
+ return h(
259
+ i,
260
+ w,
261
+ A,
262
+ !1,
263
+ j ? Error("react-stack-top-frame") : be,
264
+ j ? se(n(i)) : me
265
+ );
266
+ }, ke.jsxs = function(i, w, A) {
267
+ var j = 1e4 > ne.recentlyCreatedOwnerStacks++;
268
+ return h(
269
+ i,
270
+ w,
271
+ A,
272
+ !0,
273
+ j ? Error("react-stack-top-frame") : be,
274
+ j ? se(n(i)) : me
275
+ );
276
+ };
277
+ })()), ke;
278
+ }
279
+ var vt;
280
+ function tn() {
281
+ return vt || (vt = 1, process.env.NODE_ENV === "production" ? Je.exports = Zr() : Je.exports = en()), Je.exports;
282
+ }
283
+ var u = tn();
284
+ function or(e, t) {
285
+ return function() {
286
+ return e.apply(t, arguments);
287
+ };
288
+ }
289
+ const { toString: rn } = Object.prototype, { getPrototypeOf: Ae } = Object, { iterator: ze, toStringTag: ir } = Symbol, Qe = (({ hasOwnProperty: e }) => (t, r) => e.call(t, r))(Object.prototype), Be = (e, t) => {
290
+ let r = e;
291
+ const n = [];
292
+ for (; r != null && r !== Object.prototype; ) {
293
+ if (n.indexOf(r) !== -1)
294
+ return !1;
295
+ if (n.push(r), Qe(r, t))
296
+ return !0;
297
+ r = Ae(r);
298
+ }
299
+ return !1;
300
+ }, nn = (e, t) => e != null && Be(e, t) ? e[t] : void 0, xt = /* @__PURE__ */ ((e) => (t) => {
301
+ const r = rn.call(t);
302
+ return e[r] || (e[r] = r.slice(8, -1).toLowerCase());
303
+ })(/* @__PURE__ */ Object.create(null)), le = (e) => (e = e.toLowerCase(), (t) => xt(t) === e), tt = (e) => (t) => typeof t === e, { isArray: Ee } = Array, _e = tt("undefined");
304
+ function je(e) {
305
+ return e !== null && !_e(e) && e.constructor !== null && !_e(e.constructor) && Q(e.constructor.isBuffer) && e.constructor.isBuffer(e);
306
+ }
307
+ const ar = le("ArrayBuffer");
308
+ function sn(e) {
309
+ let t;
310
+ return typeof ArrayBuffer < "u" && ArrayBuffer.isView ? t = ArrayBuffer.isView(e) : t = e && e.buffer && ar(e.buffer), t;
311
+ }
312
+ const on = tt("string"), Q = tt("function"), lr = tt("number"), Ce = (e) => e !== null && typeof e == "object", an = (e) => e === !0 || e === !1, Ke = (e) => {
313
+ if (!Ce(e))
314
+ return !1;
315
+ const t = Ae(e);
316
+ return (t === null || t === Object.prototype || Ae(t) === null) && // Treat any genuine (non-Object.prototype-polluted) Symbol.toStringTag or
317
+ // Symbol.iterator as evidence the value is a tagged/iterable type rather
318
+ // than a plain object, while ignoring keys injected onto Object.prototype.
319
+ !Be(e, ir) && !Be(e, ze);
320
+ }, ln = (e) => {
321
+ if (!Ce(e) || je(e))
322
+ return !1;
323
+ try {
324
+ return Object.keys(e).length === 0 && Object.getPrototypeOf(e) === Object.prototype;
325
+ } catch {
326
+ return !1;
327
+ }
328
+ }, cn = le("Date"), un = le("File"), dn = (e) => !!(e && typeof e.uri < "u"), fn = (e) => e && typeof e.getParts < "u", pn = le("Blob"), hn = le("FileList"), mn = (e) => Ce(e) && Q(e.pipe);
329
+ function yn() {
330
+ return typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {};
331
+ }
332
+ const kt = yn(), Dt = typeof kt.FormData < "u" ? kt.FormData : void 0, bn = (e) => {
333
+ if (!e) return !1;
334
+ if (Dt && e instanceof Dt) return !0;
335
+ const t = Ae(e);
336
+ if (!t || t === Object.prototype || !Q(e.append)) return !1;
337
+ const r = xt(e);
338
+ return r === "formdata" || // detect form-data instance
339
+ r === "object" && Q(e.toString) && e.toString() === "[object FormData]";
340
+ }, xn = le("URLSearchParams"), [gn, wn, En, Rn] = [
341
+ "ReadableStream",
342
+ "Request",
343
+ "Response",
344
+ "Headers"
345
+ ].map(le), Sn = (e) => e.trim ? e.trim() : e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "");
346
+ function $e(e, t, { allOwnKeys: r = !1 } = {}) {
347
+ if (e === null || typeof e > "u")
348
+ return;
349
+ let n, s;
350
+ if (typeof e != "object" && (e = [e]), Ee(e))
351
+ for (n = 0, s = e.length; n < s; n++)
352
+ t.call(null, e[n], n, e);
353
+ else {
354
+ if (je(e))
355
+ return;
356
+ const o = r ? Object.getOwnPropertyNames(e) : Object.keys(e), a = o.length;
357
+ let c;
358
+ for (n = 0; n < a; n++)
359
+ c = o[n], t.call(null, e[c], c, e);
360
+ }
361
+ }
362
+ function cr(e, t) {
363
+ if (je(e))
364
+ return null;
365
+ t = t.toLowerCase();
366
+ const r = Object.keys(e);
367
+ let n = r.length, s;
368
+ for (; n-- > 0; )
369
+ if (s = r[n], t === s.toLowerCase())
370
+ return s;
371
+ return null;
372
+ }
373
+ const ge = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : global, ur = (e) => !_e(e) && e !== ge;
374
+ function dt(...e) {
375
+ const { caseless: t, skipUndefined: r } = ur(this) && this || {}, n = {}, s = (o, a) => {
376
+ if (a === "__proto__" || a === "constructor" || a === "prototype")
377
+ return;
378
+ const c = t && typeof a == "string" && cr(n, a) || a, f = Qe(n, c) ? n[c] : void 0;
379
+ Ke(f) && Ke(o) ? n[c] = dt(f, o) : Ke(o) ? n[c] = dt({}, o) : Ee(o) ? n[c] = o.slice() : (!r || !_e(o)) && (n[c] = o);
380
+ };
381
+ for (let o = 0, a = e.length; o < a; o++) {
382
+ const c = e[o];
383
+ if (!c || je(c) || ($e(c, s), typeof c != "object" || Ee(c)))
384
+ continue;
385
+ const f = Object.getOwnPropertySymbols(c);
386
+ for (let m = 0; m < f.length; m++) {
387
+ const h = f[m];
388
+ Dn.call(c, h) && s(c[h], h);
389
+ }
390
+ }
391
+ return n;
392
+ }
393
+ const Tn = (e, t, r, { allOwnKeys: n } = {}) => ($e(
394
+ t,
395
+ (s, o) => {
396
+ r && Q(s) ? Object.defineProperty(e, o, {
397
+ // Null-proto descriptor so a polluted Object.prototype.get cannot
398
+ // hijack defineProperty's accessor-vs-data resolution.
399
+ __proto__: null,
400
+ value: or(s, r),
401
+ writable: !0,
402
+ enumerable: !0,
403
+ configurable: !0
404
+ }) : Object.defineProperty(e, o, {
405
+ __proto__: null,
406
+ value: s,
407
+ writable: !0,
408
+ enumerable: !0,
409
+ configurable: !0
410
+ });
411
+ },
412
+ { allOwnKeys: n }
413
+ ), e), On = (e) => (e.charCodeAt(0) === 65279 && (e = e.slice(1)), e), An = (e, t, r, n) => {
414
+ e.prototype = Object.create(t.prototype, n), Object.defineProperty(e.prototype, "constructor", {
415
+ __proto__: null,
416
+ value: e,
417
+ writable: !0,
418
+ enumerable: !1,
419
+ configurable: !0
420
+ }), Object.defineProperty(e, "super", {
421
+ __proto__: null,
422
+ value: t.prototype
423
+ }), r && Object.assign(e.prototype, r);
424
+ }, _n = (e, t, r, n) => {
425
+ let s, o, a;
426
+ const c = {};
427
+ if (t = t || {}, e == null) return t;
428
+ do {
429
+ for (s = Object.getOwnPropertyNames(e), o = s.length; o-- > 0; )
430
+ a = s[o], (!n || n(a, e, t)) && !c[a] && (t[a] = e[a], c[a] = !0);
431
+ e = r !== !1 && Ae(e);
432
+ } while (e && (!r || r(e, t)) && e !== Object.prototype);
433
+ return t;
434
+ }, jn = (e, t, r) => {
435
+ e = String(e), (r === void 0 || r > e.length) && (r = e.length), r -= t.length;
436
+ const n = e.indexOf(t, r);
437
+ return n !== -1 && n === r;
438
+ }, Cn = (e) => {
439
+ if (!e) return null;
440
+ if (Ee(e)) return e;
441
+ let t = e.length;
442
+ if (!lr(t)) return null;
443
+ const r = new Array(t);
444
+ for (; t-- > 0; )
445
+ r[t] = e[t];
446
+ return r;
447
+ }, Pn = /* @__PURE__ */ ((e) => (t) => e && t instanceof e)(typeof Uint8Array < "u" && Ae(Uint8Array)), Nn = (e, t) => {
448
+ const n = (e && e[ze]).call(e);
449
+ let s;
450
+ for (; (s = n.next()) && !s.done; ) {
451
+ const o = s.value;
452
+ t.call(e, o[0], o[1]);
453
+ }
454
+ }, In = (e, t) => {
455
+ let r;
456
+ const n = [];
457
+ for (; (r = e.exec(t)) !== null; )
458
+ n.push(r);
459
+ return n;
460
+ }, vn = le("HTMLFormElement"), kn = (e) => e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, function(r, n, s) {
461
+ return n.toUpperCase() + s;
462
+ }), { propertyIsEnumerable: Dn } = Object.prototype, Ln = le("RegExp"), dr = (e, t) => {
463
+ const r = Object.getOwnPropertyDescriptors(e), n = {};
464
+ $e(r, (s, o) => {
465
+ let a;
466
+ (a = t(s, o, e)) !== !1 && (n[o] = a || s);
467
+ }), Object.defineProperties(e, n);
468
+ }, Un = (e) => {
469
+ dr(e, (t, r) => {
470
+ if (Q(e) && ["arguments", "caller", "callee"].includes(r))
471
+ return !1;
472
+ const n = e[r];
473
+ if (Q(n)) {
474
+ if (t.enumerable = !1, "writable" in t) {
475
+ t.writable = !1;
476
+ return;
477
+ }
478
+ t.set || (t.set = () => {
479
+ throw Error("Can not rewrite read-only method '" + r + "'");
480
+ });
481
+ }
482
+ });
483
+ }, Fn = (e, t) => {
484
+ const r = {}, n = (s) => {
485
+ s.forEach((o) => {
486
+ r[o] = !0;
487
+ });
488
+ };
489
+ return Ee(e) ? n(e) : n(String(e).split(t)), r;
490
+ }, Bn = () => {
491
+ }, zn = (e, t) => e != null && Number.isFinite(e = +e) ? e : t;
492
+ function $n(e) {
493
+ return !!(e && Q(e.append) && e[ir] === "FormData" && e[ze]);
494
+ }
495
+ const qn = (e) => {
496
+ const t = /* @__PURE__ */ new WeakSet(), r = (n) => {
497
+ if (Ce(n)) {
498
+ if (t.has(n))
499
+ return;
500
+ if (je(n))
501
+ return n;
502
+ if (!("toJSON" in n)) {
503
+ t.add(n);
504
+ const s = Ee(n) ? [] : {};
505
+ return $e(n, (o, a) => {
506
+ const c = r(o);
507
+ !_e(c) && (s[a] = c);
508
+ }), t.delete(n), s;
509
+ }
510
+ }
511
+ return n;
512
+ };
513
+ return r(e);
514
+ }, Hn = le("AsyncFunction"), Mn = (e) => e && (Ce(e) || Q(e)) && Q(e.then) && Q(e.catch), fr = ((e, t) => e ? setImmediate : t ? ((r, n) => (ge.addEventListener(
515
+ "message",
516
+ ({ source: s, data: o }) => {
517
+ s === ge && o === r && n.length && n.shift()();
518
+ },
519
+ !1
520
+ ), (s) => {
521
+ n.push(s), ge.postMessage(r, "*");
522
+ }))(`axios@${Math.random()}`, []) : (r) => setTimeout(r))(typeof setImmediate == "function", Q(ge.postMessage)), Jn = typeof queueMicrotask < "u" ? queueMicrotask.bind(ge) : typeof process < "u" && process.nextTick || fr, pr = (e) => e != null && Q(e[ze]), Vn = (e) => e != null && Be(e, ze) && pr(e), l = {
523
+ isArray: Ee,
524
+ isArrayBuffer: ar,
525
+ isBuffer: je,
526
+ isFormData: bn,
527
+ isArrayBufferView: sn,
528
+ isString: on,
529
+ isNumber: lr,
530
+ isBoolean: an,
531
+ isObject: Ce,
532
+ isPlainObject: Ke,
533
+ isEmptyObject: ln,
534
+ isReadableStream: gn,
535
+ isRequest: wn,
536
+ isResponse: En,
537
+ isHeaders: Rn,
538
+ isUndefined: _e,
539
+ isDate: cn,
540
+ isFile: un,
541
+ isReactNativeBlob: dn,
542
+ isReactNative: fn,
543
+ isBlob: pn,
544
+ isRegExp: Ln,
545
+ isFunction: Q,
546
+ isStream: mn,
547
+ isURLSearchParams: xn,
548
+ isTypedArray: Pn,
549
+ isFileList: hn,
550
+ forEach: $e,
551
+ merge: dt,
552
+ extend: Tn,
553
+ trim: Sn,
554
+ stripBOM: On,
555
+ inherits: An,
556
+ toFlatObject: _n,
557
+ kindOf: xt,
558
+ kindOfTest: le,
559
+ endsWith: jn,
560
+ toArray: Cn,
561
+ forEachEntry: Nn,
562
+ matchAll: In,
563
+ isHTMLForm: vn,
564
+ hasOwnProperty: Qe,
565
+ hasOwnProp: Qe,
566
+ // an alias to avoid ESLint no-prototype-builtins detection
567
+ hasOwnInPrototypeChain: Be,
568
+ getSafeProp: nn,
569
+ reduceDescriptors: dr,
570
+ freezeMethods: Un,
571
+ toObjectSet: Fn,
572
+ toCamelCase: kn,
573
+ noop: Bn,
574
+ toFiniteNumber: zn,
575
+ findKey: cr,
576
+ global: ge,
577
+ isContextDefined: ur,
578
+ isSpecCompliantForm: $n,
579
+ toJSONObject: qn,
580
+ isAsyncFn: Hn,
581
+ isThenable: Mn,
582
+ setImmediate: fr,
583
+ asap: Jn,
584
+ isIterable: pr,
585
+ isSafeIterable: Vn
586
+ }, Wn = l.toObjectSet([
587
+ "age",
588
+ "authorization",
589
+ "content-length",
590
+ "content-type",
591
+ "etag",
592
+ "expires",
593
+ "from",
594
+ "host",
595
+ "if-modified-since",
596
+ "if-unmodified-since",
597
+ "last-modified",
598
+ "location",
599
+ "max-forwards",
600
+ "proxy-authorization",
601
+ "referer",
602
+ "retry-after",
603
+ "user-agent"
604
+ ]), Kn = (e) => {
605
+ const t = {};
606
+ let r, n, s;
607
+ return e && e.split(`
608
+ `).forEach(function(a) {
609
+ s = a.indexOf(":"), r = a.substring(0, s).trim().toLowerCase(), n = a.substring(s + 1).trim(), !(!r || t[r] && Wn[r]) && (r === "set-cookie" ? t[r] ? t[r].push(n) : t[r] = [n] : t[r] = t[r] ? t[r] + ", " + n : n);
610
+ }), t;
611
+ };
612
+ function Gn(e) {
613
+ let t = 0, r = e.length;
614
+ for (; t < r; ) {
615
+ const n = e.charCodeAt(t);
616
+ if (n !== 9 && n !== 32)
617
+ break;
618
+ t += 1;
619
+ }
620
+ for (; r > t; ) {
621
+ const n = e.charCodeAt(r - 1);
622
+ if (n !== 9 && n !== 32)
623
+ break;
624
+ r -= 1;
625
+ }
626
+ return t === 0 && r === e.length ? e : e.slice(t, r);
627
+ }
628
+ const Xn = new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+", "g"), Yn = new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+", "g");
629
+ function gt(e, t) {
630
+ return l.isArray(e) ? e.map((r) => gt(r, t)) : Gn(String(e).replace(t, ""));
631
+ }
632
+ const Qn = (e) => gt(e, Xn), Zn = (e) => gt(e, Yn);
633
+ function hr(e) {
634
+ const t = /* @__PURE__ */ Object.create(null);
635
+ return l.forEach(e.toJSON(), (r, n) => {
636
+ t[n] = Zn(r);
637
+ }), t;
638
+ }
639
+ const Lt = Symbol("internals");
640
+ function De(e) {
641
+ return e && String(e).trim().toLowerCase();
642
+ }
643
+ function Ge(e) {
644
+ return e === !1 || e == null ? e : l.isArray(e) ? e.map(Ge) : Qn(String(e));
645
+ }
646
+ function es(e) {
647
+ const t = /* @__PURE__ */ Object.create(null), r = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;
648
+ let n;
649
+ for (; n = r.exec(e); )
650
+ t[n[1]] = n[2];
651
+ return t;
652
+ }
653
+ const ts = (e) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());
654
+ function it(e, t, r, n, s) {
655
+ if (l.isFunction(n))
656
+ return n.call(this, t, r);
657
+ if (s && (t = r), !!l.isString(t)) {
658
+ if (l.isString(n))
659
+ return t.indexOf(n) !== -1;
660
+ if (l.isRegExp(n))
661
+ return n.test(t);
662
+ }
663
+ }
664
+ function rs(e) {
665
+ return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (t, r, n) => r.toUpperCase() + n);
666
+ }
667
+ function ns(e, t) {
668
+ const r = l.toCamelCase(" " + t);
669
+ ["get", "set", "has"].forEach((n) => {
670
+ Object.defineProperty(e, n + r, {
671
+ // Null-proto descriptor so a polluted Object.prototype.get cannot turn
672
+ // this data descriptor into an accessor descriptor on the way in.
673
+ __proto__: null,
674
+ value: function(s, o, a) {
675
+ return this[n].call(this, t, s, o, a);
676
+ },
677
+ configurable: !0
678
+ });
679
+ });
680
+ }
681
+ let V = class {
682
+ constructor(t) {
683
+ t && this.set(t);
684
+ }
685
+ set(t, r, n) {
686
+ const s = this;
687
+ function o(c, f, m) {
688
+ const h = De(f);
689
+ if (!h)
690
+ return;
691
+ const b = l.findKey(s, h);
692
+ (!b || s[b] === void 0 || m === !0 || m === void 0 && s[b] !== !1) && (s[b || f] = Ge(c));
693
+ }
694
+ const a = (c, f) => l.forEach(c, (m, h) => o(m, h, f));
695
+ if (l.isPlainObject(t) || t instanceof this.constructor)
696
+ a(t, r);
697
+ else if (l.isString(t) && (t = t.trim()) && !ts(t))
698
+ a(Kn(t), r);
699
+ else if (l.isObject(t) && l.isSafeIterable(t)) {
700
+ let c = /* @__PURE__ */ Object.create(null), f, m;
701
+ for (const h of t) {
702
+ if (!l.isArray(h))
703
+ throw new TypeError("Object iterator must return a key-value pair");
704
+ m = h[0], l.hasOwnProp(c, m) ? (f = c[m], c[m] = l.isArray(f) ? [...f, h[1]] : [f, h[1]]) : c[m] = h[1];
705
+ }
706
+ a(c, r);
707
+ } else
708
+ t != null && o(r, t, n);
709
+ return this;
710
+ }
711
+ get(t, r) {
712
+ if (t = De(t), t) {
713
+ const n = l.findKey(this, t);
714
+ if (n) {
715
+ const s = this[n];
716
+ if (!r)
717
+ return s;
718
+ if (r === !0)
719
+ return es(s);
720
+ if (l.isFunction(r))
721
+ return r.call(this, s, n);
722
+ if (l.isRegExp(r))
723
+ return r.exec(s);
724
+ throw new TypeError("parser must be boolean|regexp|function");
725
+ }
726
+ }
727
+ }
728
+ has(t, r) {
729
+ if (t = De(t), t) {
730
+ const n = l.findKey(this, t);
731
+ return !!(n && this[n] !== void 0 && (!r || it(this, this[n], n, r)));
732
+ }
733
+ return !1;
734
+ }
735
+ delete(t, r) {
736
+ const n = this;
737
+ let s = !1;
738
+ function o(a) {
739
+ if (a = De(a), a) {
740
+ const c = l.findKey(n, a);
741
+ c && (!r || it(n, n[c], c, r)) && (delete n[c], s = !0);
742
+ }
743
+ }
744
+ return l.isArray(t) ? t.forEach(o) : o(t), s;
745
+ }
746
+ clear(t) {
747
+ const r = Object.keys(this);
748
+ let n = r.length, s = !1;
749
+ for (; n--; ) {
750
+ const o = r[n];
751
+ (!t || it(this, this[o], o, t, !0)) && (delete this[o], s = !0);
752
+ }
753
+ return s;
754
+ }
755
+ normalize(t) {
756
+ const r = this, n = {};
757
+ return l.forEach(this, (s, o) => {
758
+ const a = l.findKey(n, o);
759
+ if (a) {
760
+ r[a] = Ge(s), delete r[o];
761
+ return;
762
+ }
763
+ const c = t ? rs(o) : String(o).trim();
764
+ c !== o && delete r[o], r[c] = Ge(s), n[c] = !0;
765
+ }), this;
766
+ }
767
+ concat(...t) {
768
+ return this.constructor.concat(this, ...t);
769
+ }
770
+ toJSON(t) {
771
+ const r = /* @__PURE__ */ Object.create(null);
772
+ return l.forEach(this, (n, s) => {
773
+ n != null && n !== !1 && (r[s] = t && l.isArray(n) ? n.join(", ") : n);
774
+ }), r;
775
+ }
776
+ [Symbol.iterator]() {
777
+ return Object.entries(this.toJSON())[Symbol.iterator]();
778
+ }
779
+ toString() {
780
+ return Object.entries(this.toJSON()).map(([t, r]) => t + ": " + r).join(`
781
+ `);
782
+ }
783
+ getSetCookie() {
784
+ return this.get("set-cookie") || [];
785
+ }
786
+ get [Symbol.toStringTag]() {
787
+ return "AxiosHeaders";
788
+ }
789
+ static from(t) {
790
+ return t instanceof this ? t : new this(t);
791
+ }
792
+ static concat(t, ...r) {
793
+ const n = new this(t);
794
+ return r.forEach((s) => n.set(s)), n;
795
+ }
796
+ static accessor(t) {
797
+ const n = (this[Lt] = this[Lt] = {
798
+ accessors: {}
799
+ }).accessors, s = this.prototype;
800
+ function o(a) {
801
+ const c = De(a);
802
+ n[c] || (ns(s, a), n[c] = !0);
803
+ }
804
+ return l.isArray(t) ? t.forEach(o) : o(t), this;
805
+ }
806
+ };
807
+ V.accessor([
808
+ "Content-Type",
809
+ "Content-Length",
810
+ "Accept",
811
+ "Accept-Encoding",
812
+ "User-Agent",
813
+ "Authorization"
814
+ ]);
815
+ l.reduceDescriptors(V.prototype, ({ value: e }, t) => {
816
+ let r = t[0].toUpperCase() + t.slice(1);
817
+ return {
818
+ get: () => e,
819
+ set(n) {
820
+ this[r] = n;
821
+ }
822
+ };
823
+ });
824
+ l.freezeMethods(V);
825
+ const ss = "[REDACTED ****]";
826
+ function os(e) {
827
+ if (l.hasOwnProp(e, "toJSON"))
828
+ return !0;
829
+ let t = Object.getPrototypeOf(e);
830
+ for (; t && t !== Object.prototype; ) {
831
+ if (l.hasOwnProp(t, "toJSON"))
832
+ return !0;
833
+ t = Object.getPrototypeOf(t);
834
+ }
835
+ return !1;
836
+ }
837
+ function is(e, t) {
838
+ const r = new Set(t.map((o) => String(o).toLowerCase())), n = [], s = (o) => {
839
+ if (o === null || typeof o != "object" || l.isBuffer(o)) return o;
840
+ if (n.indexOf(o) !== -1) return;
841
+ o instanceof V && (o = o.toJSON()), n.push(o);
842
+ let a;
843
+ if (l.isArray(o))
844
+ a = [], o.forEach((c, f) => {
845
+ const m = s(c);
846
+ l.isUndefined(m) || (a[f] = m);
847
+ });
848
+ else {
849
+ if (!l.isPlainObject(o) && os(o))
850
+ return n.pop(), o;
851
+ a = /* @__PURE__ */ Object.create(null);
852
+ for (const [c, f] of Object.entries(o)) {
853
+ const m = r.has(c.toLowerCase()) ? ss : s(f);
854
+ l.isUndefined(m) || (a[c] = m);
855
+ }
856
+ }
857
+ return n.pop(), a;
858
+ };
859
+ return s(e);
860
+ }
861
+ let E = class mr extends Error {
862
+ static from(t, r, n, s, o, a) {
863
+ const c = new mr(t.message, r || t.code, n, s, o);
864
+ return c.cause = t, c.name = t.name, t.status != null && c.status == null && (c.status = t.status), a && Object.assign(c, a), c;
865
+ }
866
+ /**
867
+ * Create an Error with the specified message, config, error code, request and response.
868
+ *
869
+ * @param {string} message The error message.
870
+ * @param {string} [code] The error code (for example, 'ECONNABORTED').
871
+ * @param {Object} [config] The config.
872
+ * @param {Object} [request] The request.
873
+ * @param {Object} [response] The response.
874
+ *
875
+ * @returns {Error} The created error.
876
+ */
877
+ constructor(t, r, n, s, o) {
878
+ super(t), Object.defineProperty(this, "message", {
879
+ // Null-proto descriptor so a polluted Object.prototype.get cannot turn
880
+ // this data descriptor into an accessor descriptor on the way in.
881
+ __proto__: null,
882
+ value: t,
883
+ enumerable: !0,
884
+ writable: !0,
885
+ configurable: !0
886
+ }), this.name = "AxiosError", this.isAxiosError = !0, r && (this.code = r), n && (this.config = n), s && (this.request = s), o && (this.response = o, this.status = o.status);
887
+ }
888
+ toJSON() {
889
+ const t = this.config, r = t && l.hasOwnProp(t, "redact") ? t.redact : void 0, n = l.isArray(r) && r.length > 0 ? is(t, r) : l.toJSONObject(t);
890
+ return {
891
+ // Standard
892
+ message: this.message,
893
+ name: this.name,
894
+ // Microsoft
895
+ description: this.description,
896
+ number: this.number,
897
+ // Mozilla
898
+ fileName: this.fileName,
899
+ lineNumber: this.lineNumber,
900
+ columnNumber: this.columnNumber,
901
+ stack: this.stack,
902
+ // Axios
903
+ config: n,
904
+ code: this.code,
905
+ status: this.status
906
+ };
907
+ }
908
+ };
909
+ E.ERR_BAD_OPTION_VALUE = "ERR_BAD_OPTION_VALUE";
910
+ E.ERR_BAD_OPTION = "ERR_BAD_OPTION";
911
+ E.ECONNABORTED = "ECONNABORTED";
912
+ E.ETIMEDOUT = "ETIMEDOUT";
913
+ E.ECONNREFUSED = "ECONNREFUSED";
914
+ E.ERR_NETWORK = "ERR_NETWORK";
915
+ E.ERR_FR_TOO_MANY_REDIRECTS = "ERR_FR_TOO_MANY_REDIRECTS";
916
+ E.ERR_DEPRECATED = "ERR_DEPRECATED";
917
+ E.ERR_BAD_RESPONSE = "ERR_BAD_RESPONSE";
918
+ E.ERR_BAD_REQUEST = "ERR_BAD_REQUEST";
919
+ E.ERR_CANCELED = "ERR_CANCELED";
920
+ E.ERR_NOT_SUPPORT = "ERR_NOT_SUPPORT";
921
+ E.ERR_INVALID_URL = "ERR_INVALID_URL";
922
+ E.ERR_FORM_DATA_DEPTH_EXCEEDED = "ERR_FORM_DATA_DEPTH_EXCEEDED";
923
+ const as = null, yr = 100;
924
+ function ft(e) {
925
+ return l.isPlainObject(e) || l.isArray(e);
926
+ }
927
+ function br(e) {
928
+ return l.endsWith(e, "[]") ? e.slice(0, -2) : e;
929
+ }
930
+ function at(e, t, r) {
931
+ return e ? e.concat(t).map(function(s, o) {
932
+ return s = br(s), !r && o ? "[" + s + "]" : s;
933
+ }).join(r ? "." : "") : t;
934
+ }
935
+ function ls(e) {
936
+ return l.isArray(e) && !e.some(ft);
937
+ }
938
+ const cs = l.toFlatObject(l, {}, null, function(t) {
939
+ return /^is[A-Z]/.test(t);
940
+ });
941
+ function rt(e, t, r) {
942
+ if (!l.isObject(e))
943
+ throw new TypeError("target must be an object");
944
+ t = t || new FormData(), r = l.toFlatObject(
945
+ r,
946
+ {
947
+ metaTokens: !0,
948
+ dots: !1,
949
+ indexes: !1
950
+ },
951
+ !1,
952
+ function(x, d) {
953
+ return !l.isUndefined(d[x]);
954
+ }
955
+ );
956
+ const n = r.metaTokens, s = r.visitor || C, o = r.dots, a = r.indexes, c = r.Blob || typeof Blob < "u" && Blob, f = r.maxDepth === void 0 ? yr : r.maxDepth, m = c && l.isSpecCompliantForm(t), h = [];
957
+ if (!l.isFunction(s))
958
+ throw new TypeError("visitor must be a function");
959
+ function b(y) {
960
+ if (y === null) return "";
961
+ if (l.isDate(y))
962
+ return y.toISOString();
963
+ if (l.isBoolean(y))
964
+ return y.toString();
965
+ if (!m && l.isBlob(y))
966
+ throw new E("Blob is not supported. Use a Buffer instead.");
967
+ return l.isArrayBuffer(y) || l.isTypedArray(y) ? m && typeof Blob == "function" ? new Blob([y]) : Buffer.from(y) : y;
968
+ }
969
+ function T(y) {
970
+ if (y > f)
971
+ throw new E(
972
+ "Object is too deeply nested (" + y + " levels). Max depth: " + f,
973
+ E.ERR_FORM_DATA_DEPTH_EXCEEDED
974
+ );
975
+ }
976
+ function S(y, x) {
977
+ if (f === 1 / 0)
978
+ return JSON.stringify(y);
979
+ const d = [];
980
+ return JSON.stringify(y, function(v, k) {
981
+ if (!l.isObject(k))
982
+ return k;
983
+ for (; d.length && d[d.length - 1] !== this; )
984
+ d.pop();
985
+ return d.push(k), T(x + d.length - 1), k;
986
+ });
987
+ }
988
+ function C(y, x, d) {
989
+ let O = y;
990
+ if (l.isReactNative(t) && l.isReactNativeBlob(y))
991
+ return t.append(at(d, x, o), b(y)), !1;
992
+ if (y && !d && typeof y == "object") {
993
+ if (l.endsWith(x, "{}"))
994
+ x = n ? x : x.slice(0, -2), y = S(y, 1);
995
+ else if (l.isArray(y) && ls(y) || (l.isFileList(y) || l.endsWith(x, "[]")) && (O = l.toArray(y)))
996
+ return x = br(x), O.forEach(function(k, W) {
997
+ !(l.isUndefined(k) || k === null) && t.append(
998
+ // eslint-disable-next-line no-nested-ternary
999
+ a === !0 ? at([x], W, o) : a === null ? x : x + "[]",
1000
+ b(k)
1001
+ );
1002
+ }), !1;
1003
+ }
1004
+ return ft(y) ? !0 : (t.append(at(d, x, o), b(y)), !1);
1005
+ }
1006
+ const P = Object.assign(cs, {
1007
+ defaultVisitor: C,
1008
+ convertValue: b,
1009
+ isVisitable: ft
1010
+ });
1011
+ function R(y, x, d = 0) {
1012
+ if (!l.isUndefined(y)) {
1013
+ if (T(d), h.indexOf(y) !== -1)
1014
+ throw new Error("Circular reference detected in " + x.join("."));
1015
+ h.push(y), l.forEach(y, function(v, k) {
1016
+ (!(l.isUndefined(v) || v === null) && s.call(t, v, l.isString(k) ? k.trim() : k, x, P)) === !0 && R(v, x ? x.concat(k) : [k], d + 1);
1017
+ }), h.pop();
1018
+ }
1019
+ }
1020
+ if (!l.isObject(e))
1021
+ throw new TypeError("data must be an object");
1022
+ return R(e), t;
1023
+ }
1024
+ function Ut(e) {
1025
+ const t = {
1026
+ "!": "%21",
1027
+ "'": "%27",
1028
+ "(": "%28",
1029
+ ")": "%29",
1030
+ "~": "%7E",
1031
+ "%20": "+"
1032
+ };
1033
+ return encodeURIComponent(e).replace(/[!'()~]|%20/g, function(n) {
1034
+ return t[n];
1035
+ });
1036
+ }
1037
+ function wt(e, t) {
1038
+ this._pairs = [], e && rt(e, this, t);
1039
+ }
1040
+ const xr = wt.prototype;
1041
+ xr.append = function(t, r) {
1042
+ this._pairs.push([t, r]);
1043
+ };
1044
+ xr.toString = function(t) {
1045
+ const r = t ? function(n) {
1046
+ return t.call(this, n, Ut);
1047
+ } : Ut;
1048
+ return this._pairs.map(function(s) {
1049
+ return r(s[0]) + "=" + r(s[1]);
1050
+ }, "").join("&");
1051
+ };
1052
+ function us(e) {
1053
+ return encodeURIComponent(e).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+");
1054
+ }
1055
+ function gr(e, t, r) {
1056
+ if (!t)
1057
+ return e;
1058
+ const n = l.isFunction(r) ? {
1059
+ serialize: r
1060
+ } : r, s = l.getSafeProp(n, "encode") || us, o = l.getSafeProp(n, "serialize");
1061
+ let a;
1062
+ if (o ? a = o(t, n) : a = l.isURLSearchParams(t) ? t.toString() : new wt(t, n).toString(s), a) {
1063
+ const c = e.indexOf("#");
1064
+ c !== -1 && (e = e.slice(0, c)), e += (e.indexOf("?") === -1 ? "?" : "&") + a;
1065
+ }
1066
+ return e;
1067
+ }
1068
+ class Ft {
1069
+ constructor() {
1070
+ this.handlers = [];
1071
+ }
1072
+ /**
1073
+ * Add a new interceptor to the stack
1074
+ *
1075
+ * @param {Function} fulfilled The function to handle `then` for a `Promise`
1076
+ * @param {Function} rejected The function to handle `reject` for a `Promise`
1077
+ * @param {Object} options The options for the interceptor, synchronous and runWhen
1078
+ *
1079
+ * @return {Number} An ID used to remove interceptor later
1080
+ */
1081
+ use(t, r, n) {
1082
+ return this.handlers.push({
1083
+ fulfilled: t,
1084
+ rejected: r,
1085
+ synchronous: n ? n.synchronous : !1,
1086
+ runWhen: n ? n.runWhen : null
1087
+ }), this.handlers.length - 1;
1088
+ }
1089
+ /**
1090
+ * Remove an interceptor from the stack
1091
+ *
1092
+ * @param {Number} id The ID that was returned by `use`
1093
+ *
1094
+ * @returns {void}
1095
+ */
1096
+ eject(t) {
1097
+ this.handlers[t] && (this.handlers[t] = null);
1098
+ }
1099
+ /**
1100
+ * Clear all interceptors from the stack
1101
+ *
1102
+ * @returns {void}
1103
+ */
1104
+ clear() {
1105
+ this.handlers && (this.handlers = []);
1106
+ }
1107
+ /**
1108
+ * Iterate over all the registered interceptors
1109
+ *
1110
+ * This method is particularly useful for skipping over any
1111
+ * interceptors that may have become `null` calling `eject`.
1112
+ *
1113
+ * @param {Function} fn The function to call for each interceptor
1114
+ *
1115
+ * @returns {void}
1116
+ */
1117
+ forEach(t) {
1118
+ l.forEach(this.handlers, function(n) {
1119
+ n !== null && t(n);
1120
+ });
1121
+ }
1122
+ }
1123
+ const Et = {
1124
+ silentJSONParsing: !0,
1125
+ forcedJSONParsing: !0,
1126
+ clarifyTimeoutError: !1,
1127
+ legacyInterceptorReqResOrdering: !0,
1128
+ advertiseZstdAcceptEncoding: !1,
1129
+ validateStatusUndefinedResolves: !0
1130
+ }, ds = typeof URLSearchParams < "u" ? URLSearchParams : wt, fs = typeof FormData < "u" ? FormData : null, ps = typeof Blob < "u" ? Blob : null, hs = {
1131
+ isBrowser: !0,
1132
+ classes: {
1133
+ URLSearchParams: ds,
1134
+ FormData: fs,
1135
+ Blob: ps
1136
+ },
1137
+ protocols: ["http", "https", "file", "blob", "url", "data"]
1138
+ }, Rt = typeof window < "u" && typeof document < "u", pt = typeof navigator == "object" && navigator || void 0, ms = Rt && (!pt || ["ReactNative", "NativeScript", "NS"].indexOf(pt.product) < 0), ys = typeof WorkerGlobalScope < "u" && // eslint-disable-next-line no-undef
1139
+ self instanceof WorkerGlobalScope && typeof self.importScripts == "function", bs = Rt && window.location.href || "http://localhost", xs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1140
+ __proto__: null,
1141
+ hasBrowserEnv: Rt,
1142
+ hasStandardBrowserEnv: ms,
1143
+ hasStandardBrowserWebWorkerEnv: ys,
1144
+ navigator: pt,
1145
+ origin: bs
1146
+ }, Symbol.toStringTag, { value: "Module" })), q = {
1147
+ ...xs,
1148
+ ...hs
1149
+ };
1150
+ function gs(e, t) {
1151
+ return rt(e, new q.classes.URLSearchParams(), {
1152
+ visitor: function(r, n, s, o) {
1153
+ return q.isNode && l.isBuffer(r) ? (this.append(n, r.toString("base64")), !1) : o.defaultVisitor.apply(this, arguments);
1154
+ },
1155
+ ...t
1156
+ });
1157
+ }
1158
+ const Bt = yr;
1159
+ function wr(e) {
1160
+ if (e > Bt)
1161
+ throw new E(
1162
+ "FormData field is too deeply nested (" + e + " levels). Max depth: " + Bt,
1163
+ E.ERR_FORM_DATA_DEPTH_EXCEEDED
1164
+ );
1165
+ }
1166
+ function ws(e) {
1167
+ const t = [], r = /\w+|\[(\w*)]/g;
1168
+ let n;
1169
+ for (; (n = r.exec(e)) !== null; )
1170
+ wr(t.length), t.push(n[0] === "[]" ? "" : n[1] || n[0]);
1171
+ return t;
1172
+ }
1173
+ function Es(e) {
1174
+ const t = {}, r = Object.keys(e);
1175
+ let n;
1176
+ const s = r.length;
1177
+ let o;
1178
+ for (n = 0; n < s; n++)
1179
+ o = r[n], t[o] = e[o];
1180
+ return t;
1181
+ }
1182
+ function Er(e) {
1183
+ function t(r, n, s, o) {
1184
+ wr(o);
1185
+ let a = r[o++];
1186
+ if (a === "__proto__") return !0;
1187
+ const c = Number.isFinite(+a), f = o >= r.length;
1188
+ return a = !a && l.isArray(s) ? s.length : a, f ? (l.hasOwnProp(s, a) ? s[a] = l.isArray(s[a]) ? s[a].concat(n) : [s[a], n] : s[a] = n, !c) : ((!l.hasOwnProp(s, a) || !l.isObject(s[a])) && (s[a] = []), t(r, n, s[a], o) && l.isArray(s[a]) && (s[a] = Es(s[a])), !c);
1189
+ }
1190
+ if (l.isFormData(e) && l.isFunction(e.entries)) {
1191
+ const r = {};
1192
+ return l.forEachEntry(e, (n, s) => {
1193
+ t(ws(n), s, r, 0);
1194
+ }), r;
1195
+ }
1196
+ return null;
1197
+ }
1198
+ const Oe = (e, t) => e != null && l.hasOwnProp(e, t) ? e[t] : void 0;
1199
+ function Rs(e, t, r) {
1200
+ if (l.isString(e))
1201
+ try {
1202
+ return (t || JSON.parse)(e), l.trim(e);
1203
+ } catch (n) {
1204
+ if (n.name !== "SyntaxError")
1205
+ throw n;
1206
+ }
1207
+ return (r || JSON.stringify)(e);
1208
+ }
1209
+ const qe = {
1210
+ transitional: Et,
1211
+ adapter: ["xhr", "http", "fetch"],
1212
+ transformRequest: [
1213
+ function(t, r) {
1214
+ const n = r.getContentType() || "", s = n.indexOf("application/json") > -1, o = l.isObject(t);
1215
+ if (o && l.isHTMLForm(t) && (t = new FormData(t)), l.isFormData(t))
1216
+ return s ? JSON.stringify(Er(t)) : t;
1217
+ if (l.isArrayBuffer(t) || l.isBuffer(t) || l.isStream(t) || l.isFile(t) || l.isBlob(t) || l.isReadableStream(t))
1218
+ return t;
1219
+ if (l.isArrayBufferView(t))
1220
+ return t.buffer;
1221
+ if (l.isURLSearchParams(t))
1222
+ return r.setContentType("application/x-www-form-urlencoded;charset=utf-8", !1), t.toString();
1223
+ let c;
1224
+ if (o) {
1225
+ const f = Oe(this, "formSerializer");
1226
+ if (n.indexOf("application/x-www-form-urlencoded") > -1)
1227
+ return gs(t, f).toString();
1228
+ if ((c = l.isFileList(t)) || n.indexOf("multipart/form-data") > -1) {
1229
+ const m = Oe(this, "env"), h = m && m.FormData;
1230
+ return rt(
1231
+ c ? { "files[]": t } : t,
1232
+ h && new h(),
1233
+ f
1234
+ );
1235
+ }
1236
+ }
1237
+ return o || s ? (r.setContentType("application/json", !1), Rs(t)) : t;
1238
+ }
1239
+ ],
1240
+ transformResponse: [
1241
+ function(t) {
1242
+ const r = Oe(this, "transitional") || qe.transitional, n = r && r.forcedJSONParsing, s = Oe(this, "responseType"), o = s === "json";
1243
+ if (l.isResponse(t) || l.isReadableStream(t))
1244
+ return t;
1245
+ if (t && l.isString(t) && (n && !s || o)) {
1246
+ const c = !(r && r.silentJSONParsing) && o;
1247
+ try {
1248
+ return JSON.parse(t, Oe(this, "parseReviver"));
1249
+ } catch (f) {
1250
+ if (c)
1251
+ throw f.name === "SyntaxError" ? E.from(f, E.ERR_BAD_RESPONSE, this, null, Oe(this, "response")) : f;
1252
+ }
1253
+ }
1254
+ return t;
1255
+ }
1256
+ ],
1257
+ /**
1258
+ * A timeout in milliseconds to abort a request. If set to 0 (default) a
1259
+ * timeout is not created.
1260
+ */
1261
+ timeout: 0,
1262
+ xsrfCookieName: "XSRF-TOKEN",
1263
+ xsrfHeaderName: "X-XSRF-TOKEN",
1264
+ maxContentLength: -1,
1265
+ maxBodyLength: -1,
1266
+ env: {
1267
+ FormData: q.classes.FormData,
1268
+ Blob: q.classes.Blob
1269
+ },
1270
+ validateStatus: function(t) {
1271
+ return t >= 200 && t < 300;
1272
+ },
1273
+ headers: {
1274
+ common: {
1275
+ Accept: "application/json, text/plain, */*",
1276
+ "Content-Type": void 0
1277
+ }
1278
+ }
1279
+ };
1280
+ l.forEach(["delete", "get", "head", "post", "put", "patch", "query"], (e) => {
1281
+ qe.headers[e] = {};
1282
+ });
1283
+ function lt(e, t) {
1284
+ const r = this || qe, n = t || r, s = V.from(n.headers);
1285
+ let o = n.data;
1286
+ return l.forEach(e, function(c) {
1287
+ o = c.call(r, o, s.normalize(), t ? t.status : void 0);
1288
+ }), s.normalize(), o;
1289
+ }
1290
+ function Rr(e) {
1291
+ return !!(e && e.__CANCEL__);
1292
+ }
1293
+ let He = class extends E {
1294
+ /**
1295
+ * A `CanceledError` is an object that is thrown when an operation is canceled.
1296
+ *
1297
+ * @param {string=} message The message.
1298
+ * @param {Object=} config The config.
1299
+ * @param {Object=} request The request.
1300
+ *
1301
+ * @returns {CanceledError} The created error.
1302
+ */
1303
+ constructor(t, r, n) {
1304
+ super(t ?? "canceled", E.ERR_CANCELED, r, n), this.name = "CanceledError", this.__CANCEL__ = !0;
1305
+ }
1306
+ };
1307
+ function Sr(e, t, r) {
1308
+ const n = r.config.validateStatus;
1309
+ !r.status || !n || n(r.status) ? e(r) : t(new E(
1310
+ "Request failed with status code " + r.status,
1311
+ r.status >= 400 && r.status < 500 ? E.ERR_BAD_REQUEST : E.ERR_BAD_RESPONSE,
1312
+ r.config,
1313
+ r.request,
1314
+ r
1315
+ ));
1316
+ }
1317
+ function Ss(e) {
1318
+ const t = /^([-+\w]{1,25}):(?:\/\/)?/.exec(e);
1319
+ return t && t[1] || "";
1320
+ }
1321
+ function Ts(e, t) {
1322
+ e = e || 10;
1323
+ const r = new Array(e), n = new Array(e);
1324
+ let s = 0, o = 0, a;
1325
+ return t = t !== void 0 ? t : 1e3, function(f) {
1326
+ const m = Date.now(), h = n[o];
1327
+ a || (a = m), r[s] = f, n[s] = m;
1328
+ let b = o, T = 0;
1329
+ for (; b !== s; )
1330
+ T += r[b++], b = b % e;
1331
+ if (s = (s + 1) % e, s === o && (o = (o + 1) % e), m - a < t)
1332
+ return;
1333
+ const S = h && m - h;
1334
+ return S ? Math.round(T * 1e3 / S) : void 0;
1335
+ };
1336
+ }
1337
+ function Os(e, t) {
1338
+ let r = 0, n = 1e3 / t, s, o;
1339
+ const a = (m, h = Date.now()) => {
1340
+ r = h, s = null, o && (clearTimeout(o), o = null), e(...m);
1341
+ };
1342
+ return [(...m) => {
1343
+ const h = Date.now(), b = h - r;
1344
+ b >= n ? a(m, h) : (s = m, o || (o = setTimeout(() => {
1345
+ o = null, a(s);
1346
+ }, n - b)));
1347
+ }, () => s && a(s)];
1348
+ }
1349
+ const Ze = (e, t, r = 3) => {
1350
+ let n = 0;
1351
+ const s = Ts(50, 250);
1352
+ return Os((o) => {
1353
+ if (!o || typeof o.loaded != "number")
1354
+ return;
1355
+ const a = o.loaded, c = o.lengthComputable ? o.total : void 0, f = c != null ? Math.min(a, c) : a, m = Math.max(0, f - n), h = s(m);
1356
+ n = Math.max(n, f);
1357
+ const b = {
1358
+ loaded: f,
1359
+ total: c,
1360
+ progress: c ? f / c : void 0,
1361
+ bytes: m,
1362
+ rate: h || void 0,
1363
+ estimated: h && c ? (c - f) / h : void 0,
1364
+ event: o,
1365
+ lengthComputable: c != null,
1366
+ [t ? "download" : "upload"]: !0
1367
+ };
1368
+ e(b);
1369
+ }, r);
1370
+ }, zt = (e, t) => {
1371
+ const r = e != null;
1372
+ return [
1373
+ (n) => t[0]({
1374
+ lengthComputable: r,
1375
+ total: e,
1376
+ loaded: n
1377
+ }),
1378
+ t[1]
1379
+ ];
1380
+ }, $t = (e) => (...t) => l.asap(() => e(...t)), As = q.hasStandardBrowserEnv ? /* @__PURE__ */ ((e, t) => (r) => (r = new URL(r, q.origin), e.protocol === r.protocol && e.host === r.host && (t || e.port === r.port)))(
1381
+ new URL(q.origin),
1382
+ q.navigator && /(msie|trident)/i.test(q.navigator.userAgent)
1383
+ ) : () => !0, _s = q.hasStandardBrowserEnv ? (
1384
+ // Standard browser envs support document.cookie
1385
+ {
1386
+ write(e, t, r, n, s, o, a) {
1387
+ if (typeof document > "u") return;
1388
+ const c = [`${e}=${encodeURIComponent(t)}`];
1389
+ l.isNumber(r) && c.push(`expires=${new Date(r).toUTCString()}`), l.isString(n) && c.push(`path=${n}`), l.isString(s) && c.push(`domain=${s}`), o === !0 && c.push("secure"), l.isString(a) && c.push(`SameSite=${a}`), document.cookie = c.join("; ");
1390
+ },
1391
+ read(e) {
1392
+ if (typeof document > "u") return null;
1393
+ const t = document.cookie.split(";");
1394
+ for (let r = 0; r < t.length; r++) {
1395
+ const n = t[r].replace(/^\s+/, ""), s = n.indexOf("=");
1396
+ if (s !== -1 && n.slice(0, s) === e)
1397
+ return decodeURIComponent(n.slice(s + 1));
1398
+ }
1399
+ return null;
1400
+ },
1401
+ remove(e) {
1402
+ this.write(e, "", Date.now() - 864e5, "/");
1403
+ }
1404
+ }
1405
+ ) : (
1406
+ // Non-standard browser env (web workers, react-native) lack needed support.
1407
+ {
1408
+ write() {
1409
+ },
1410
+ read() {
1411
+ return null;
1412
+ },
1413
+ remove() {
1414
+ }
1415
+ }
1416
+ );
1417
+ function js(e) {
1418
+ return typeof e != "string" ? !1 : /^([a-z][a-z\d+\-.]*:)?\/\//i.test(e);
1419
+ }
1420
+ function Cs(e, t) {
1421
+ return t ? e.replace(/\/?\/$/, "") + "/" + t.replace(/^\/+/, "") : e;
1422
+ }
1423
+ const Ps = /^https?:(?!\/\/)/i, Ns = /[\t\n\r]/g;
1424
+ function Is(e) {
1425
+ let t = 0;
1426
+ for (; t < e.length && e.charCodeAt(t) <= 32; )
1427
+ t++;
1428
+ return e.slice(t);
1429
+ }
1430
+ function vs(e) {
1431
+ return Is(e).replace(Ns, "");
1432
+ }
1433
+ function qt(e, t) {
1434
+ if (typeof e == "string" && Ps.test(vs(e)))
1435
+ throw new E(
1436
+ 'Invalid URL: missing "//" after protocol',
1437
+ E.ERR_INVALID_URL,
1438
+ t
1439
+ );
1440
+ }
1441
+ function Tr(e, t, r, n) {
1442
+ qt(t, n);
1443
+ let s = !js(t);
1444
+ return e && (s || r === !1) ? (qt(e, n), Cs(e, t)) : t;
1445
+ }
1446
+ const Ht = (e) => e instanceof V ? { ...e } : e;
1447
+ function Re(e, t) {
1448
+ t = t || {};
1449
+ const r = /* @__PURE__ */ Object.create(null);
1450
+ Object.defineProperty(r, "hasOwnProperty", {
1451
+ // Null-proto descriptor so a polluted Object.prototype.get cannot turn
1452
+ // this data descriptor into an accessor descriptor on the way in.
1453
+ __proto__: null,
1454
+ value: Object.prototype.hasOwnProperty,
1455
+ enumerable: !1,
1456
+ writable: !0,
1457
+ configurable: !0
1458
+ });
1459
+ function n(h, b, T, S) {
1460
+ return l.isPlainObject(h) && l.isPlainObject(b) ? l.merge.call({ caseless: S }, h, b) : l.isPlainObject(b) ? l.merge({}, b) : l.isArray(b) ? b.slice() : b;
1461
+ }
1462
+ function s(h, b, T, S) {
1463
+ if (l.isUndefined(b)) {
1464
+ if (!l.isUndefined(h))
1465
+ return n(void 0, h, T, S);
1466
+ } else return n(h, b, T, S);
1467
+ }
1468
+ function o(h, b) {
1469
+ if (!l.isUndefined(b))
1470
+ return n(void 0, b);
1471
+ }
1472
+ function a(h, b) {
1473
+ if (l.isUndefined(b)) {
1474
+ if (!l.isUndefined(h))
1475
+ return n(void 0, h);
1476
+ } else return n(void 0, b);
1477
+ }
1478
+ function c(h) {
1479
+ const b = l.hasOwnProp(t, "transitional") ? t.transitional : void 0;
1480
+ if (!l.isUndefined(b))
1481
+ if (l.isPlainObject(b)) {
1482
+ if (l.hasOwnProp(b, h))
1483
+ return b[h];
1484
+ } else
1485
+ return;
1486
+ const T = l.hasOwnProp(e, "transitional") ? e.transitional : void 0;
1487
+ if (l.isPlainObject(T) && l.hasOwnProp(T, h))
1488
+ return T[h];
1489
+ }
1490
+ function f(h, b, T) {
1491
+ if (l.hasOwnProp(t, T))
1492
+ return n(h, b);
1493
+ if (l.hasOwnProp(e, T))
1494
+ return n(void 0, h);
1495
+ }
1496
+ const m = {
1497
+ url: o,
1498
+ method: o,
1499
+ data: o,
1500
+ baseURL: a,
1501
+ transformRequest: a,
1502
+ transformResponse: a,
1503
+ paramsSerializer: a,
1504
+ timeout: a,
1505
+ timeoutMessage: a,
1506
+ withCredentials: a,
1507
+ withXSRFToken: a,
1508
+ adapter: a,
1509
+ responseType: a,
1510
+ xsrfCookieName: a,
1511
+ xsrfHeaderName: a,
1512
+ onUploadProgress: a,
1513
+ onDownloadProgress: a,
1514
+ decompress: a,
1515
+ maxContentLength: a,
1516
+ maxBodyLength: a,
1517
+ beforeRedirect: a,
1518
+ transport: a,
1519
+ httpAgent: a,
1520
+ httpsAgent: a,
1521
+ cancelToken: a,
1522
+ socketPath: a,
1523
+ allowedSocketPaths: a,
1524
+ responseEncoding: a,
1525
+ validateStatus: f,
1526
+ headers: (h, b, T) => s(Ht(h), Ht(b), T, !0)
1527
+ };
1528
+ return l.forEach(Object.keys({ ...e, ...t }), function(b) {
1529
+ if (b === "__proto__" || b === "constructor" || b === "prototype") return;
1530
+ const T = l.hasOwnProp(m, b) ? m[b] : s, S = l.hasOwnProp(e, b) ? e[b] : void 0, C = l.hasOwnProp(t, b) ? t[b] : void 0, P = T(S, C, b);
1531
+ l.isUndefined(P) && T !== f || (r[b] = P);
1532
+ }), l.hasOwnProp(t, "validateStatus") && l.isUndefined(t.validateStatus) && c("validateStatusUndefinedResolves") === !1 && (l.hasOwnProp(e, "validateStatus") ? r.validateStatus = n(void 0, e.validateStatus) : delete r.validateStatus), r;
1533
+ }
1534
+ const ks = ["content-type", "content-length"];
1535
+ function Ds(e, t, r) {
1536
+ if (r !== "content-only") {
1537
+ e.set(t);
1538
+ return;
1539
+ }
1540
+ Object.entries(t).forEach(([n, s]) => {
1541
+ ks.includes(n.toLowerCase()) && e.set(n, s);
1542
+ });
1543
+ }
1544
+ const Ls = (e) => encodeURIComponent(e).replace(
1545
+ /%([0-9A-F]{2})/gi,
1546
+ (t, r) => String.fromCharCode(parseInt(r, 16))
1547
+ );
1548
+ function Or(e) {
1549
+ const t = Re({}, e), r = (T) => l.hasOwnProp(t, T) ? t[T] : void 0, n = r("data");
1550
+ let s = r("withXSRFToken");
1551
+ const o = r("xsrfHeaderName"), a = r("xsrfCookieName");
1552
+ let c = r("headers");
1553
+ const f = r("auth"), m = r("baseURL"), h = r("allowAbsoluteUrls"), b = r("url");
1554
+ if (t.headers = c = V.from(c), t.url = gr(
1555
+ Tr(m, b, h, t),
1556
+ r("params"),
1557
+ r("paramsSerializer")
1558
+ ), f) {
1559
+ const T = l.getSafeProp(f, "username") || "", S = l.getSafeProp(f, "password") || "";
1560
+ c.set(
1561
+ "Authorization",
1562
+ "Basic " + btoa(T + ":" + (S ? Ls(S) : ""))
1563
+ );
1564
+ }
1565
+ if (l.isFormData(n) && (q.hasStandardBrowserEnv || q.hasStandardBrowserWebWorkerEnv || l.isReactNative(n) ? c.setContentType(void 0) : l.isFunction(n.getHeaders) && Ds(c, n.getHeaders(), r("formDataHeaderPolicy"))), q.hasStandardBrowserEnv && (l.isFunction(s) && (s = s(t)), s === !0 || s == null && As(t.url))) {
1566
+ const S = o && a && _s.read(a);
1567
+ S && c.set(o, S);
1568
+ }
1569
+ return t;
1570
+ }
1571
+ const Us = typeof XMLHttpRequest < "u", Fs = Us && function(e) {
1572
+ return new Promise(function(r, n) {
1573
+ const s = Or(e);
1574
+ let o = s.data;
1575
+ const a = V.from(s.headers).normalize();
1576
+ let { responseType: c, onUploadProgress: f, onDownloadProgress: m } = s, h, b, T, S, C;
1577
+ function P() {
1578
+ S && S(), C && C(), s.cancelToken && s.cancelToken.unsubscribe(h), s.signal && s.signal.removeEventListener("abort", h);
1579
+ }
1580
+ let R = new XMLHttpRequest();
1581
+ R.open(s.method.toUpperCase(), s.url, !0), R.timeout = s.timeout;
1582
+ function y() {
1583
+ if (!R)
1584
+ return;
1585
+ const d = V.from(
1586
+ "getAllResponseHeaders" in R && R.getAllResponseHeaders()
1587
+ ), v = {
1588
+ data: !c || c === "text" || c === "json" ? R.responseText : R.response,
1589
+ status: R.status,
1590
+ statusText: R.statusText,
1591
+ headers: d,
1592
+ config: e,
1593
+ request: R
1594
+ };
1595
+ Sr(
1596
+ function(W) {
1597
+ r(W), P();
1598
+ },
1599
+ function(W) {
1600
+ n(W), P();
1601
+ },
1602
+ v
1603
+ ), R = null;
1604
+ }
1605
+ "onloadend" in R ? R.onloadend = y : R.onreadystatechange = function() {
1606
+ !R || R.readyState !== 4 || R.status === 0 && !(R.responseURL && R.responseURL.startsWith("file:")) || setTimeout(y);
1607
+ }, R.onabort = function() {
1608
+ R && (n(new E("Request aborted", E.ECONNABORTED, e, R)), P(), R = null);
1609
+ }, R.onerror = function(O) {
1610
+ const v = O && O.message ? O.message : "Network Error", k = new E(v, E.ERR_NETWORK, e, R);
1611
+ k.event = O || null, n(k), P(), R = null;
1612
+ }, R.ontimeout = function() {
1613
+ let O = s.timeout ? "timeout of " + s.timeout + "ms exceeded" : "timeout exceeded";
1614
+ const v = s.transitional || Et;
1615
+ s.timeoutErrorMessage && (O = s.timeoutErrorMessage), n(
1616
+ new E(
1617
+ O,
1618
+ v.clarifyTimeoutError ? E.ETIMEDOUT : E.ECONNABORTED,
1619
+ e,
1620
+ R
1621
+ )
1622
+ ), P(), R = null;
1623
+ }, o === void 0 && a.setContentType(null), "setRequestHeader" in R && l.forEach(hr(a), function(O, v) {
1624
+ R.setRequestHeader(v, O);
1625
+ }), l.isUndefined(s.withCredentials) || (R.withCredentials = !!s.withCredentials), c && c !== "json" && (R.responseType = s.responseType), m && ([T, C] = Ze(m, !0), R.addEventListener("progress", T)), f && R.upload && ([b, S] = Ze(f), R.upload.addEventListener("progress", b), R.upload.addEventListener("loadend", S)), (s.cancelToken || s.signal) && (h = (d) => {
1626
+ R && (n(!d || d.type ? new He(null, e, R) : d), R.abort(), P(), R = null);
1627
+ }, s.cancelToken && s.cancelToken.subscribe(h), s.signal && (s.signal.aborted ? h() : s.signal.addEventListener("abort", h)));
1628
+ const x = Ss(s.url);
1629
+ if (x && !q.protocols.includes(x)) {
1630
+ n(
1631
+ new E(
1632
+ "Unsupported protocol " + x + ":",
1633
+ E.ERR_BAD_REQUEST,
1634
+ e
1635
+ )
1636
+ );
1637
+ return;
1638
+ }
1639
+ R.send(o || null);
1640
+ });
1641
+ }, Bs = (e, t) => {
1642
+ if (e = e ? e.filter(Boolean) : [], !t && !e.length)
1643
+ return;
1644
+ const r = new AbortController();
1645
+ let n = !1;
1646
+ const s = function(f) {
1647
+ if (!n) {
1648
+ n = !0, a();
1649
+ const m = f instanceof Error ? f : this.reason;
1650
+ r.abort(
1651
+ m instanceof E ? m : new He(m instanceof Error ? m.message : m)
1652
+ );
1653
+ }
1654
+ };
1655
+ let o = t && setTimeout(() => {
1656
+ o = null, s(new E(`timeout of ${t}ms exceeded`, E.ETIMEDOUT));
1657
+ }, t);
1658
+ const a = () => {
1659
+ e && (o && clearTimeout(o), o = null, e.forEach((f) => {
1660
+ f.unsubscribe ? f.unsubscribe(s) : f.removeEventListener("abort", s);
1661
+ }), e = null);
1662
+ };
1663
+ e.forEach((f) => f.addEventListener("abort", s));
1664
+ const { signal: c } = r;
1665
+ return c.unsubscribe = () => l.asap(a), c;
1666
+ }, zs = function* (e, t) {
1667
+ let r = e.byteLength;
1668
+ if (r < t) {
1669
+ yield e;
1670
+ return;
1671
+ }
1672
+ let n = 0, s;
1673
+ for (; n < r; )
1674
+ s = n + t, yield e.slice(n, s), n = s;
1675
+ }, $s = async function* (e, t) {
1676
+ for await (const r of qs(e))
1677
+ yield* zs(r, t);
1678
+ }, qs = async function* (e) {
1679
+ if (e[Symbol.asyncIterator]) {
1680
+ yield* e;
1681
+ return;
1682
+ }
1683
+ const t = e.getReader();
1684
+ try {
1685
+ for (; ; ) {
1686
+ const { done: r, value: n } = await t.read();
1687
+ if (r)
1688
+ break;
1689
+ yield n;
1690
+ }
1691
+ } finally {
1692
+ await t.cancel();
1693
+ }
1694
+ }, Mt = (e, t, r, n) => {
1695
+ const s = $s(e, t);
1696
+ let o = 0, a, c = (f) => {
1697
+ a || (a = !0, n && n(f));
1698
+ };
1699
+ return new ReadableStream(
1700
+ {
1701
+ async pull(f) {
1702
+ try {
1703
+ const { done: m, value: h } = await s.next();
1704
+ if (m) {
1705
+ c(), f.close();
1706
+ return;
1707
+ }
1708
+ let b = h.byteLength;
1709
+ if (r) {
1710
+ let T = o += b;
1711
+ r(T);
1712
+ }
1713
+ f.enqueue(new Uint8Array(h));
1714
+ } catch (m) {
1715
+ throw c(m), m;
1716
+ }
1717
+ },
1718
+ cancel(f) {
1719
+ return c(f), s.return();
1720
+ }
1721
+ },
1722
+ {
1723
+ highWaterMark: 2
1724
+ }
1725
+ );
1726
+ }, et = (e) => e >= 48 && e <= 57 || e >= 65 && e <= 70 || e >= 97 && e <= 102, Hs = (e, t, r) => t + 2 < r && et(e.charCodeAt(t + 1)) && et(e.charCodeAt(t + 2));
1727
+ function Ms(e) {
1728
+ if (!e || typeof e != "string" || !e.startsWith("data:")) return 0;
1729
+ const t = e.indexOf(",");
1730
+ if (t < 0) return 0;
1731
+ const r = e.slice(5, t), n = e.slice(t + 1);
1732
+ if (/;base64/i.test(r)) {
1733
+ let a = n.length;
1734
+ const c = n.length;
1735
+ for (let S = 0; S < c; S++)
1736
+ if (n.charCodeAt(S) === 37 && S + 2 < c) {
1737
+ const C = n.charCodeAt(S + 1), P = n.charCodeAt(S + 2);
1738
+ et(C) && et(P) && (a -= 2, S += 2);
1739
+ }
1740
+ let f = 0, m = c - 1;
1741
+ const h = (S) => S >= 2 && n.charCodeAt(S - 2) === 37 && // '%'
1742
+ n.charCodeAt(S - 1) === 51 && // '3'
1743
+ (n.charCodeAt(S) === 68 || n.charCodeAt(S) === 100);
1744
+ m >= 0 && (n.charCodeAt(m) === 61 ? (f++, m--) : h(m) && (f++, m -= 3)), f === 1 && m >= 0 && (n.charCodeAt(m) === 61 || h(m)) && f++;
1745
+ const T = Math.floor(a / 4) * 3 - (f || 0);
1746
+ return T > 0 ? T : 0;
1747
+ }
1748
+ let o = 0;
1749
+ for (let a = 0, c = n.length; a < c; a++) {
1750
+ const f = n.charCodeAt(a);
1751
+ if (f === 37 && Hs(n, a, c))
1752
+ o += 1, a += 2;
1753
+ else if (f < 128)
1754
+ o += 1;
1755
+ else if (f < 2048)
1756
+ o += 2;
1757
+ else if (f >= 55296 && f <= 56319 && a + 1 < c) {
1758
+ const m = n.charCodeAt(a + 1);
1759
+ m >= 56320 && m <= 57343 ? (o += 4, a++) : o += 3;
1760
+ } else
1761
+ o += 3;
1762
+ }
1763
+ return o;
1764
+ }
1765
+ const St = "1.18.0", Jt = 64 * 1024, { isFunction: Ve } = l, Js = (e) => encodeURIComponent(e).replace(
1766
+ /%([0-9A-F]{2})/gi,
1767
+ (t, r) => String.fromCharCode(parseInt(r, 16))
1768
+ ), Vt = (e) => {
1769
+ if (!l.isString(e))
1770
+ return e;
1771
+ try {
1772
+ return decodeURIComponent(e);
1773
+ } catch {
1774
+ return e;
1775
+ }
1776
+ }, Wt = (e, ...t) => {
1777
+ try {
1778
+ return !!e(...t);
1779
+ } catch {
1780
+ return !1;
1781
+ }
1782
+ }, Vs = (e) => {
1783
+ const t = e.indexOf("://");
1784
+ let r = e;
1785
+ return t !== -1 && (r = r.slice(t + 3)), r.includes("@") || r.includes(":");
1786
+ }, Ws = (e) => {
1787
+ const t = l.global !== void 0 && l.global !== null ? l.global : globalThis, { ReadableStream: r, TextEncoder: n } = t;
1788
+ e = l.merge.call(
1789
+ {
1790
+ skipUndefined: !0
1791
+ },
1792
+ {
1793
+ Request: t.Request,
1794
+ Response: t.Response
1795
+ },
1796
+ e
1797
+ );
1798
+ const { fetch: s, Request: o, Response: a } = e, c = s ? Ve(s) : typeof fetch == "function", f = Ve(o), m = Ve(a);
1799
+ if (!c)
1800
+ return !1;
1801
+ const h = c && Ve(r), b = c && (typeof n == "function" ? /* @__PURE__ */ ((y) => (x) => y.encode(x))(new n()) : async (y) => new Uint8Array(await new o(y).arrayBuffer())), T = f && h && Wt(() => {
1802
+ let y = !1;
1803
+ const x = new o(q.origin, {
1804
+ body: new r(),
1805
+ method: "POST",
1806
+ get duplex() {
1807
+ return y = !0, "half";
1808
+ }
1809
+ }), d = x.headers.has("Content-Type");
1810
+ return x.body != null && x.body.cancel(), y && !d;
1811
+ }), S = m && h && Wt(() => l.isReadableStream(new a("").body)), C = {
1812
+ stream: S && ((y) => y.body)
1813
+ };
1814
+ c && ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((y) => {
1815
+ !C[y] && (C[y] = (x, d) => {
1816
+ let O = x && x[y];
1817
+ if (O)
1818
+ return O.call(x);
1819
+ throw new E(
1820
+ `Response type '${y}' is not supported`,
1821
+ E.ERR_NOT_SUPPORT,
1822
+ d
1823
+ );
1824
+ });
1825
+ });
1826
+ const P = async (y) => {
1827
+ if (y == null)
1828
+ return 0;
1829
+ if (l.isBlob(y))
1830
+ return y.size;
1831
+ if (l.isSpecCompliantForm(y))
1832
+ return (await new o(q.origin, {
1833
+ method: "POST",
1834
+ body: y
1835
+ }).arrayBuffer()).byteLength;
1836
+ if (l.isArrayBufferView(y) || l.isArrayBuffer(y))
1837
+ return y.byteLength;
1838
+ if (l.isURLSearchParams(y) && (y = y + ""), l.isString(y))
1839
+ return (await b(y)).byteLength;
1840
+ }, R = async (y, x) => {
1841
+ const d = l.toFiniteNumber(y.getContentLength());
1842
+ return d ?? P(x);
1843
+ };
1844
+ return async (y) => {
1845
+ let {
1846
+ url: x,
1847
+ method: d,
1848
+ data: O,
1849
+ signal: v,
1850
+ cancelToken: k,
1851
+ timeout: W,
1852
+ onDownloadProgress: g,
1853
+ onUploadProgress: p,
1854
+ responseType: D,
1855
+ headers: K,
1856
+ withCredentials: ne = "same-origin",
1857
+ fetchOptions: he,
1858
+ maxContentLength: G,
1859
+ maxBodyLength: se
1860
+ } = Or(y);
1861
+ const ie = l.isNumber(G) && G > -1, ue = l.isNumber(se) && se > -1, be = (I) => l.hasOwnProp(y, I) ? y[I] : void 0;
1862
+ let me = s || fetch;
1863
+ D = D ? (D + "").toLowerCase() : "text";
1864
+ let X = Bs(
1865
+ [v, k && k.toAbortSignal()],
1866
+ W
1867
+ ), i = null;
1868
+ const w = X && X.unsubscribe && (() => {
1869
+ X.unsubscribe();
1870
+ });
1871
+ let A, j = null;
1872
+ const ae = () => new E(
1873
+ "Request body larger than maxBodyLength limit",
1874
+ E.ERR_BAD_REQUEST,
1875
+ y,
1876
+ i
1877
+ );
1878
+ try {
1879
+ let I;
1880
+ const _ = be("auth");
1881
+ if (_) {
1882
+ const N = l.getSafeProp(_, "username") || "", Z = l.getSafeProp(_, "password") || "";
1883
+ I = {
1884
+ username: N,
1885
+ password: Z
1886
+ };
1887
+ }
1888
+ if (Vs(x)) {
1889
+ const N = new URL(x, q.origin);
1890
+ if (!I && (N.username || N.password)) {
1891
+ const Z = Vt(N.username), ye = Vt(N.password);
1892
+ I = {
1893
+ username: Z,
1894
+ password: ye
1895
+ };
1896
+ }
1897
+ (N.username || N.password) && (N.username = "", N.password = "", x = N.href);
1898
+ }
1899
+ if (I && (K.delete("authorization"), K.set(
1900
+ "Authorization",
1901
+ "Basic " + btoa(Js((I.username || "") + ":" + (I.password || "")))
1902
+ )), ie && typeof x == "string" && x.startsWith("data:") && Ms(x) > G)
1903
+ throw new E(
1904
+ "maxContentLength size of " + G + " exceeded",
1905
+ E.ERR_BAD_RESPONSE,
1906
+ y,
1907
+ i
1908
+ );
1909
+ if (ue && d !== "get" && d !== "head") {
1910
+ const N = await P(O);
1911
+ if (typeof N == "number" && isFinite(N) && (A = N, N > se))
1912
+ throw ae();
1913
+ }
1914
+ const B = ue && (l.isReadableStream(O) || l.isStream(O)), ce = (N, Z, ye) => Mt(
1915
+ N,
1916
+ Jt,
1917
+ (xe) => {
1918
+ if (ue && xe > se)
1919
+ throw j = ae();
1920
+ Z && Z(xe);
1921
+ },
1922
+ ye
1923
+ );
1924
+ if (T && d !== "get" && d !== "head" && (p || B)) {
1925
+ if (A = A ?? await R(K, O), A !== 0 || B) {
1926
+ let N = new o(x, {
1927
+ method: "POST",
1928
+ body: O,
1929
+ duplex: "half"
1930
+ }), Z;
1931
+ if (l.isFormData(O) && (Z = N.headers.get("content-type")) && K.setContentType(Z), N.body) {
1932
+ const [ye, xe] = p && zt(
1933
+ A,
1934
+ Ze($t(p))
1935
+ ) || [];
1936
+ O = ce(N.body, ye, xe);
1937
+ }
1938
+ }
1939
+ } else if (B && !f && h && d !== "get" && d !== "head")
1940
+ O = ce(O);
1941
+ else if (B && f && !T && d !== "get" && d !== "head")
1942
+ throw new E(
1943
+ "Stream request bodies are not supported by the current fetch implementation",
1944
+ E.ERR_NOT_SUPPORT,
1945
+ y,
1946
+ i
1947
+ );
1948
+ l.isString(ne) || (ne = ne ? "include" : "omit");
1949
+ const Pe = f && "credentials" in o.prototype;
1950
+ if (l.isFormData(O)) {
1951
+ const N = K.getContentType();
1952
+ N && /^multipart\/form-data/i.test(N) && !/boundary=/i.test(N) && K.delete("content-type");
1953
+ }
1954
+ K.set("User-Agent", "axios/" + St, !1);
1955
+ const Ot = {
1956
+ ...he,
1957
+ signal: X,
1958
+ method: d.toUpperCase(),
1959
+ headers: hr(K.normalize()),
1960
+ body: O,
1961
+ duplex: "half",
1962
+ credentials: Pe ? ne : void 0
1963
+ };
1964
+ i = f && new o(x, Ot);
1965
+ let de = await (f ? me(i, he) : me(x, Ot));
1966
+ const At = V.from(de.headers);
1967
+ if (ie) {
1968
+ const N = l.toFiniteNumber(At.getContentLength());
1969
+ if (N != null && N > G)
1970
+ throw new E(
1971
+ "maxContentLength size of " + G + " exceeded",
1972
+ E.ERR_BAD_RESPONSE,
1973
+ y,
1974
+ i
1975
+ );
1976
+ }
1977
+ const st = S && (D === "stream" || D === "response");
1978
+ if (S && de.body && (g || ie || st && w)) {
1979
+ const N = {};
1980
+ ["status", "statusText", "headers"].forEach((Ne) => {
1981
+ N[Ne] = de[Ne];
1982
+ });
1983
+ const Z = l.toFiniteNumber(At.getContentLength()), [ye, xe] = g && zt(
1984
+ Z,
1985
+ Ze($t(g), !0)
1986
+ ) || [];
1987
+ let _t = 0;
1988
+ const Ir = (Ne) => {
1989
+ if (ie && (_t = Ne, _t > G))
1990
+ throw new E(
1991
+ "maxContentLength size of " + G + " exceeded",
1992
+ E.ERR_BAD_RESPONSE,
1993
+ y,
1994
+ i
1995
+ );
1996
+ ye && ye(Ne);
1997
+ };
1998
+ de = new a(
1999
+ Mt(de.body, Jt, Ir, () => {
2000
+ xe && xe(), w && w();
2001
+ }),
2002
+ N
2003
+ );
2004
+ }
2005
+ D = D || "text";
2006
+ let fe = await C[l.findKey(C, D) || "text"](
2007
+ de,
2008
+ y
2009
+ );
2010
+ if (ie && !S && !st) {
2011
+ let N;
2012
+ if (fe != null && (typeof fe.byteLength == "number" ? N = fe.byteLength : typeof fe.size == "number" ? N = fe.size : typeof fe == "string" && (N = typeof n == "function" ? new n().encode(fe).byteLength : fe.length)), typeof N == "number" && N > G)
2013
+ throw new E(
2014
+ "maxContentLength size of " + G + " exceeded",
2015
+ E.ERR_BAD_RESPONSE,
2016
+ y,
2017
+ i
2018
+ );
2019
+ }
2020
+ return !st && w && w(), await new Promise((N, Z) => {
2021
+ Sr(N, Z, {
2022
+ data: fe,
2023
+ headers: V.from(de.headers),
2024
+ status: de.status,
2025
+ statusText: de.statusText,
2026
+ config: y,
2027
+ request: i
2028
+ });
2029
+ });
2030
+ } catch (I) {
2031
+ if (w && w(), X && X.aborted && X.reason instanceof E) {
2032
+ const _ = X.reason;
2033
+ throw _.config = y, i && (_.request = i), I !== _ && (_.cause = I), _;
2034
+ }
2035
+ throw j ? (i && !j.request && (j.request = i), j) : I instanceof E ? (i && !I.request && (I.request = i), I) : I && I.name === "TypeError" && /Load failed|fetch/i.test(I.message) ? Object.assign(
2036
+ new E(
2037
+ "Network Error",
2038
+ E.ERR_NETWORK,
2039
+ y,
2040
+ i,
2041
+ I && I.response
2042
+ ),
2043
+ {
2044
+ cause: I.cause || I
2045
+ }
2046
+ ) : E.from(I, I && I.code, y, i, I && I.response);
2047
+ }
2048
+ };
2049
+ }, Ks = /* @__PURE__ */ new Map(), Ar = (e) => {
2050
+ let t = e && e.env || {};
2051
+ const { fetch: r, Request: n, Response: s } = t, o = [n, s, r];
2052
+ let a = o.length, c = a, f, m, h = Ks;
2053
+ for (; c--; )
2054
+ f = o[c], m = h.get(f), m === void 0 && h.set(f, m = c ? /* @__PURE__ */ new Map() : Ws(t)), h = m;
2055
+ return m;
2056
+ };
2057
+ Ar();
2058
+ const Tt = {
2059
+ http: as,
2060
+ xhr: Fs,
2061
+ fetch: {
2062
+ get: Ar
2063
+ }
2064
+ };
2065
+ l.forEach(Tt, (e, t) => {
2066
+ if (e) {
2067
+ try {
2068
+ Object.defineProperty(e, "name", { __proto__: null, value: t });
2069
+ } catch {
2070
+ }
2071
+ Object.defineProperty(e, "adapterName", { __proto__: null, value: t });
2072
+ }
2073
+ });
2074
+ const Kt = (e) => `- ${e}`, Gs = (e) => l.isFunction(e) || e === null || e === !1;
2075
+ function Xs(e, t) {
2076
+ e = l.isArray(e) ? e : [e];
2077
+ const { length: r } = e;
2078
+ let n, s;
2079
+ const o = {};
2080
+ for (let a = 0; a < r; a++) {
2081
+ n = e[a];
2082
+ let c;
2083
+ if (s = n, !Gs(n) && (s = Tt[(c = String(n)).toLowerCase()], s === void 0))
2084
+ throw new E(`Unknown adapter '${c}'`);
2085
+ if (s && (l.isFunction(s) || (s = s.get(t))))
2086
+ break;
2087
+ o[c || "#" + a] = s;
2088
+ }
2089
+ if (!s) {
2090
+ const a = Object.entries(o).map(
2091
+ ([f, m]) => `adapter ${f} ` + (m === !1 ? "is not supported by the environment" : "is not available in the build")
2092
+ );
2093
+ let c = r ? a.length > 1 ? `since :
2094
+ ` + a.map(Kt).join(`
2095
+ `) : " " + Kt(a[0]) : "as no adapter specified";
2096
+ throw new E(
2097
+ "There is no suitable adapter to dispatch the request " + c,
2098
+ "ERR_NOT_SUPPORT"
2099
+ );
2100
+ }
2101
+ return s;
2102
+ }
2103
+ const _r = {
2104
+ /**
2105
+ * Resolve an adapter from a list of adapter names or functions.
2106
+ * @type {Function}
2107
+ */
2108
+ getAdapter: Xs,
2109
+ /**
2110
+ * Exposes all known adapters
2111
+ * @type {Object<string, Function|Object>}
2112
+ */
2113
+ adapters: Tt
2114
+ };
2115
+ function ct(e) {
2116
+ if (e.cancelToken && e.cancelToken.throwIfRequested(), e.signal && e.signal.aborted)
2117
+ throw new He(null, e);
2118
+ }
2119
+ function Gt(e) {
2120
+ return ct(e), e.headers = V.from(e.headers), e.data = lt.call(e, e.transformRequest), ["post", "put", "patch"].indexOf(e.method) !== -1 && e.headers.setContentType("application/x-www-form-urlencoded", !1), _r.getAdapter(e.adapter || qe.adapter, e)(e).then(
2121
+ function(n) {
2122
+ ct(e), e.response = n;
2123
+ try {
2124
+ n.data = lt.call(e, e.transformResponse, n);
2125
+ } finally {
2126
+ delete e.response;
2127
+ }
2128
+ return n.headers = V.from(n.headers), n;
2129
+ },
2130
+ function(n) {
2131
+ if (!Rr(n) && (ct(e), n && n.response)) {
2132
+ e.response = n.response;
2133
+ try {
2134
+ n.response.data = lt.call(
2135
+ e,
2136
+ e.transformResponse,
2137
+ n.response
2138
+ );
2139
+ } finally {
2140
+ delete e.response;
2141
+ }
2142
+ n.response.headers = V.from(n.response.headers);
2143
+ }
2144
+ return Promise.reject(n);
2145
+ }
2146
+ );
2147
+ }
2148
+ const nt = {};
2149
+ ["object", "boolean", "number", "function", "string", "symbol"].forEach((e, t) => {
2150
+ nt[e] = function(n) {
2151
+ return typeof n === e || "a" + (t < 1 ? "n " : " ") + e;
2152
+ };
2153
+ });
2154
+ const Xt = {};
2155
+ nt.transitional = function(t, r, n) {
2156
+ function s(o, a) {
2157
+ return "[Axios v" + St + "] Transitional option '" + o + "'" + a + (n ? ". " + n : "");
2158
+ }
2159
+ return (o, a, c) => {
2160
+ if (t === !1)
2161
+ throw new E(
2162
+ s(a, " has been removed" + (r ? " in " + r : "")),
2163
+ E.ERR_DEPRECATED
2164
+ );
2165
+ return r && !Xt[a] && (Xt[a] = !0, console.warn(
2166
+ s(
2167
+ a,
2168
+ " has been deprecated since v" + r + " and will be removed in the near future"
2169
+ )
2170
+ )), t ? t(o, a, c) : !0;
2171
+ };
2172
+ };
2173
+ nt.spelling = function(t) {
2174
+ return (r, n) => (console.warn(`${n} is likely a misspelling of ${t}`), !0);
2175
+ };
2176
+ function Ys(e, t, r) {
2177
+ if (typeof e != "object")
2178
+ throw new E("options must be an object", E.ERR_BAD_OPTION_VALUE);
2179
+ const n = Object.keys(e);
2180
+ let s = n.length;
2181
+ for (; s-- > 0; ) {
2182
+ const o = n[s], a = Object.prototype.hasOwnProperty.call(t, o) ? t[o] : void 0;
2183
+ if (a) {
2184
+ const c = e[o], f = c === void 0 || a(c, o, e);
2185
+ if (f !== !0)
2186
+ throw new E(
2187
+ "option " + o + " must be " + f,
2188
+ E.ERR_BAD_OPTION_VALUE
2189
+ );
2190
+ continue;
2191
+ }
2192
+ if (r !== !0)
2193
+ throw new E("Unknown option " + o, E.ERR_BAD_OPTION);
2194
+ }
2195
+ }
2196
+ const Xe = {
2197
+ assertOptions: Ys,
2198
+ validators: nt
2199
+ }, H = Xe.validators;
2200
+ let we = class {
2201
+ constructor(t) {
2202
+ this.defaults = t || {}, this.interceptors = {
2203
+ request: new Ft(),
2204
+ response: new Ft()
2205
+ };
2206
+ }
2207
+ /**
2208
+ * Dispatch a request
2209
+ *
2210
+ * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)
2211
+ * @param {?Object} config
2212
+ *
2213
+ * @returns {Promise} The Promise to be fulfilled
2214
+ */
2215
+ async request(t, r) {
2216
+ try {
2217
+ return await this._request(t, r);
2218
+ } catch (n) {
2219
+ if (n instanceof Error) {
2220
+ let s = {};
2221
+ Error.captureStackTrace ? Error.captureStackTrace(s) : s = new Error();
2222
+ const o = (() => {
2223
+ if (!s.stack)
2224
+ return "";
2225
+ const a = s.stack.indexOf(`
2226
+ `);
2227
+ return a === -1 ? "" : s.stack.slice(a + 1);
2228
+ })();
2229
+ try {
2230
+ if (!n.stack)
2231
+ n.stack = o;
2232
+ else if (o) {
2233
+ const a = o.indexOf(`
2234
+ `), c = a === -1 ? -1 : o.indexOf(`
2235
+ `, a + 1), f = c === -1 ? "" : o.slice(c + 1);
2236
+ String(n.stack).endsWith(f) || (n.stack += `
2237
+ ` + o);
2238
+ }
2239
+ } catch {
2240
+ }
2241
+ }
2242
+ throw n;
2243
+ }
2244
+ }
2245
+ _request(t, r) {
2246
+ typeof t == "string" ? (r = r || {}, r.url = t) : r = t || {}, r = Re(this.defaults, r);
2247
+ const { transitional: n, paramsSerializer: s, headers: o } = r;
2248
+ n !== void 0 && Xe.assertOptions(
2249
+ n,
2250
+ {
2251
+ silentJSONParsing: H.transitional(H.boolean),
2252
+ forcedJSONParsing: H.transitional(H.boolean),
2253
+ clarifyTimeoutError: H.transitional(H.boolean),
2254
+ legacyInterceptorReqResOrdering: H.transitional(H.boolean),
2255
+ advertiseZstdAcceptEncoding: H.transitional(H.boolean),
2256
+ validateStatusUndefinedResolves: H.transitional(H.boolean)
2257
+ },
2258
+ !1
2259
+ ), s != null && (l.isFunction(s) ? r.paramsSerializer = {
2260
+ serialize: s
2261
+ } : Xe.assertOptions(
2262
+ s,
2263
+ {
2264
+ encode: H.function,
2265
+ serialize: H.function
2266
+ },
2267
+ !0
2268
+ )), r.allowAbsoluteUrls !== void 0 || (this.defaults.allowAbsoluteUrls !== void 0 ? r.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls : r.allowAbsoluteUrls = !0), Xe.assertOptions(
2269
+ r,
2270
+ {
2271
+ baseUrl: H.spelling("baseURL"),
2272
+ withXsrfToken: H.spelling("withXSRFToken")
2273
+ },
2274
+ !0
2275
+ ), r.method = (r.method || this.defaults.method || "get").toLowerCase();
2276
+ let a = o && l.merge(o.common, o[r.method]);
2277
+ o && l.forEach(["delete", "get", "head", "post", "put", "patch", "query", "common"], (C) => {
2278
+ delete o[C];
2279
+ }), r.headers = V.concat(a, o);
2280
+ const c = [];
2281
+ let f = !0;
2282
+ this.interceptors.request.forEach(function(P) {
2283
+ if (typeof P.runWhen == "function" && P.runWhen(r) === !1)
2284
+ return;
2285
+ f = f && P.synchronous;
2286
+ const R = r.transitional || Et;
2287
+ R && R.legacyInterceptorReqResOrdering ? c.unshift(P.fulfilled, P.rejected) : c.push(P.fulfilled, P.rejected);
2288
+ });
2289
+ const m = [];
2290
+ this.interceptors.response.forEach(function(P) {
2291
+ m.push(P.fulfilled, P.rejected);
2292
+ });
2293
+ let h, b = 0, T;
2294
+ if (!f) {
2295
+ const C = [Gt.bind(this), void 0];
2296
+ for (C.unshift(...c), C.push(...m), T = C.length, h = Promise.resolve(r); b < T; )
2297
+ h = h.then(C[b++], C[b++]);
2298
+ return h;
2299
+ }
2300
+ T = c.length;
2301
+ let S = r;
2302
+ for (; b < T; ) {
2303
+ const C = c[b++], P = c[b++];
2304
+ try {
2305
+ S = C(S);
2306
+ } catch (R) {
2307
+ P.call(this, R);
2308
+ break;
2309
+ }
2310
+ }
2311
+ try {
2312
+ h = Gt.call(this, S);
2313
+ } catch (C) {
2314
+ return Promise.reject(C);
2315
+ }
2316
+ for (b = 0, T = m.length; b < T; )
2317
+ h = h.then(m[b++], m[b++]);
2318
+ return h;
2319
+ }
2320
+ getUri(t) {
2321
+ t = Re(this.defaults, t);
2322
+ const r = Tr(t.baseURL, t.url, t.allowAbsoluteUrls, t);
2323
+ return gr(r, t.params, t.paramsSerializer);
2324
+ }
2325
+ };
2326
+ l.forEach(["delete", "get", "head", "options"], function(t) {
2327
+ we.prototype[t] = function(r, n) {
2328
+ return this.request(
2329
+ Re(n || {}, {
2330
+ method: t,
2331
+ url: r,
2332
+ data: n && l.hasOwnProp(n, "data") ? n.data : void 0
2333
+ })
2334
+ );
2335
+ };
2336
+ });
2337
+ l.forEach(["post", "put", "patch", "query"], function(t) {
2338
+ function r(n) {
2339
+ return function(o, a, c) {
2340
+ return this.request(
2341
+ Re(c || {}, {
2342
+ method: t,
2343
+ headers: n ? {
2344
+ "Content-Type": "multipart/form-data"
2345
+ } : {},
2346
+ url: o,
2347
+ data: a
2348
+ })
2349
+ );
2350
+ };
2351
+ }
2352
+ we.prototype[t] = r(), t !== "query" && (we.prototype[t + "Form"] = r(!0));
2353
+ });
2354
+ let Qs = class jr {
2355
+ constructor(t) {
2356
+ if (typeof t != "function")
2357
+ throw new TypeError("executor must be a function.");
2358
+ let r;
2359
+ this.promise = new Promise(function(o) {
2360
+ r = o;
2361
+ });
2362
+ const n = this;
2363
+ this.promise.then((s) => {
2364
+ if (!n._listeners) return;
2365
+ let o = n._listeners.length;
2366
+ for (; o-- > 0; )
2367
+ n._listeners[o](s);
2368
+ n._listeners = null;
2369
+ }), this.promise.then = (s) => {
2370
+ let o;
2371
+ const a = new Promise((c) => {
2372
+ n.subscribe(c), o = c;
2373
+ }).then(s);
2374
+ return a.cancel = function() {
2375
+ n.unsubscribe(o);
2376
+ }, a;
2377
+ }, t(function(o, a, c) {
2378
+ n.reason || (n.reason = new He(o, a, c), r(n.reason));
2379
+ });
2380
+ }
2381
+ /**
2382
+ * Throws a `CanceledError` if cancellation has been requested.
2383
+ */
2384
+ throwIfRequested() {
2385
+ if (this.reason)
2386
+ throw this.reason;
2387
+ }
2388
+ /**
2389
+ * Subscribe to the cancel signal
2390
+ */
2391
+ subscribe(t) {
2392
+ if (this.reason) {
2393
+ t(this.reason);
2394
+ return;
2395
+ }
2396
+ this._listeners ? this._listeners.push(t) : this._listeners = [t];
2397
+ }
2398
+ /**
2399
+ * Unsubscribe from the cancel signal
2400
+ */
2401
+ unsubscribe(t) {
2402
+ if (!this._listeners)
2403
+ return;
2404
+ const r = this._listeners.indexOf(t);
2405
+ r !== -1 && this._listeners.splice(r, 1);
2406
+ }
2407
+ toAbortSignal() {
2408
+ const t = new AbortController(), r = (n) => {
2409
+ t.abort(n);
2410
+ };
2411
+ return this.subscribe(r), t.signal.unsubscribe = () => this.unsubscribe(r), t.signal;
2412
+ }
2413
+ /**
2414
+ * Returns an object that contains a new `CancelToken` and a function that, when called,
2415
+ * cancels the `CancelToken`.
2416
+ */
2417
+ static source() {
2418
+ let t;
2419
+ return {
2420
+ token: new jr(function(s) {
2421
+ t = s;
2422
+ }),
2423
+ cancel: t
2424
+ };
2425
+ }
2426
+ };
2427
+ function Zs(e) {
2428
+ return function(r) {
2429
+ return e.apply(null, r);
2430
+ };
2431
+ }
2432
+ function eo(e) {
2433
+ return l.isObject(e) && e.isAxiosError === !0;
2434
+ }
2435
+ const ht = {
2436
+ Continue: 100,
2437
+ SwitchingProtocols: 101,
2438
+ Processing: 102,
2439
+ EarlyHints: 103,
2440
+ Ok: 200,
2441
+ Created: 201,
2442
+ Accepted: 202,
2443
+ NonAuthoritativeInformation: 203,
2444
+ NoContent: 204,
2445
+ ResetContent: 205,
2446
+ PartialContent: 206,
2447
+ MultiStatus: 207,
2448
+ AlreadyReported: 208,
2449
+ ImUsed: 226,
2450
+ MultipleChoices: 300,
2451
+ MovedPermanently: 301,
2452
+ Found: 302,
2453
+ SeeOther: 303,
2454
+ NotModified: 304,
2455
+ UseProxy: 305,
2456
+ Unused: 306,
2457
+ TemporaryRedirect: 307,
2458
+ PermanentRedirect: 308,
2459
+ BadRequest: 400,
2460
+ Unauthorized: 401,
2461
+ PaymentRequired: 402,
2462
+ Forbidden: 403,
2463
+ NotFound: 404,
2464
+ MethodNotAllowed: 405,
2465
+ NotAcceptable: 406,
2466
+ ProxyAuthenticationRequired: 407,
2467
+ RequestTimeout: 408,
2468
+ Conflict: 409,
2469
+ Gone: 410,
2470
+ LengthRequired: 411,
2471
+ PreconditionFailed: 412,
2472
+ PayloadTooLarge: 413,
2473
+ UriTooLong: 414,
2474
+ UnsupportedMediaType: 415,
2475
+ RangeNotSatisfiable: 416,
2476
+ ExpectationFailed: 417,
2477
+ ImATeapot: 418,
2478
+ MisdirectedRequest: 421,
2479
+ UnprocessableEntity: 422,
2480
+ Locked: 423,
2481
+ FailedDependency: 424,
2482
+ TooEarly: 425,
2483
+ UpgradeRequired: 426,
2484
+ PreconditionRequired: 428,
2485
+ TooManyRequests: 429,
2486
+ RequestHeaderFieldsTooLarge: 431,
2487
+ UnavailableForLegalReasons: 451,
2488
+ InternalServerError: 500,
2489
+ NotImplemented: 501,
2490
+ BadGateway: 502,
2491
+ ServiceUnavailable: 503,
2492
+ GatewayTimeout: 504,
2493
+ HttpVersionNotSupported: 505,
2494
+ VariantAlsoNegotiates: 506,
2495
+ InsufficientStorage: 507,
2496
+ LoopDetected: 508,
2497
+ NotExtended: 510,
2498
+ NetworkAuthenticationRequired: 511,
2499
+ WebServerIsDown: 521,
2500
+ ConnectionTimedOut: 522,
2501
+ OriginIsUnreachable: 523,
2502
+ TimeoutOccurred: 524,
2503
+ SslHandshakeFailed: 525,
2504
+ InvalidSslCertificate: 526
2505
+ };
2506
+ Object.entries(ht).forEach(([e, t]) => {
2507
+ ht[t] = e;
2508
+ });
2509
+ function Cr(e) {
2510
+ const t = new we(e), r = or(we.prototype.request, t);
2511
+ return l.extend(r, we.prototype, t, { allOwnKeys: !0 }), l.extend(r, t, null, { allOwnKeys: !0 }), r.create = function(s) {
2512
+ return Cr(Re(e, s));
2513
+ }, r;
2514
+ }
2515
+ const U = Cr(qe);
2516
+ U.Axios = we;
2517
+ U.CanceledError = He;
2518
+ U.CancelToken = Qs;
2519
+ U.isCancel = Rr;
2520
+ U.VERSION = St;
2521
+ U.toFormData = rt;
2522
+ U.AxiosError = E;
2523
+ U.Cancel = U.CanceledError;
2524
+ U.all = function(t) {
2525
+ return Promise.all(t);
2526
+ };
2527
+ U.spread = Zs;
2528
+ U.isAxiosError = eo;
2529
+ U.mergeConfig = Re;
2530
+ U.AxiosHeaders = V;
2531
+ U.formToJSON = (e) => Er(l.isHTMLForm(e) ? new FormData(e) : e);
2532
+ U.getAdapter = _r.getAdapter;
2533
+ U.HttpStatusCode = ht;
2534
+ U.default = U;
2535
+ const {
2536
+ Axios: Po,
2537
+ AxiosError: No,
2538
+ CanceledError: Io,
2539
+ isCancel: vo,
2540
+ CancelToken: ko,
2541
+ VERSION: Do,
2542
+ all: Lo,
2543
+ Cancel: Uo,
2544
+ isAxiosError: Fo,
2545
+ spread: Bo,
2546
+ toFormData: zo,
2547
+ AxiosHeaders: $o,
2548
+ HttpStatusCode: qo,
2549
+ formToJSON: Ho,
2550
+ getAdapter: Mo,
2551
+ mergeConfig: Jo,
2552
+ create: Vo
2553
+ } = U;
2554
+ var to = Object.defineProperty, ro = (e, t, r) => t in e ? to(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, no = (e, t, r) => ro(e, t + "", r), ut = { exports: {} }, Le = {};
2555
+ /**
2556
+ * @license React
2557
+ * react-jsx-runtime.production.js
2558
+ *
2559
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
2560
+ *
2561
+ * This source code is licensed under the MIT license found in the
2562
+ * LICENSE file in the root directory of this source tree.
2563
+ */
2564
+ var Yt;
2565
+ function so() {
2566
+ if (Yt) return Le;
2567
+ Yt = 1;
2568
+ var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
2569
+ function r(n, s, o) {
2570
+ var a = null;
2571
+ if (o !== void 0 && (a = "" + o), s.key !== void 0 && (a = "" + s.key), "key" in s) {
2572
+ o = {};
2573
+ for (var c in s)
2574
+ c !== "key" && (o[c] = s[c]);
2575
+ } else o = s;
2576
+ return s = o.ref, {
2577
+ $$typeof: e,
2578
+ type: n,
2579
+ key: a,
2580
+ ref: s !== void 0 ? s : null,
2581
+ props: o
2582
+ };
2583
+ }
2584
+ return Le.Fragment = t, Le.jsx = r, Le.jsxs = r, Le;
2585
+ }
2586
+ var We = {};
2587
+ /**
2588
+ * @license React
2589
+ * react-jsx-runtime.development.js
2590
+ *
2591
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
2592
+ *
2593
+ * This source code is licensed under the MIT license found in the
2594
+ * LICENSE file in the root directory of this source tree.
2595
+ */
2596
+ var Qt;
2597
+ function oo() {
2598
+ return Qt || (Qt = 1, process.env.NODE_ENV !== "production" && (function() {
2599
+ function e(i) {
2600
+ if (i == null) return null;
2601
+ if (typeof i == "function")
2602
+ return i.$$typeof === K ? null : i.displayName || i.name || null;
2603
+ if (typeof i == "string") return i;
2604
+ switch (i) {
2605
+ case R:
2606
+ return "Fragment";
2607
+ case x:
2608
+ return "Profiler";
2609
+ case y:
2610
+ return "StrictMode";
2611
+ case k:
2612
+ return "Suspense";
2613
+ case W:
2614
+ return "SuspenseList";
2615
+ case D:
2616
+ return "Activity";
2617
+ }
2618
+ if (typeof i == "object")
2619
+ switch (typeof i.tag == "number" && console.error(
2620
+ "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
2621
+ ), i.$$typeof) {
2622
+ case P:
2623
+ return "Portal";
2624
+ case O:
2625
+ return i.displayName || "Context";
2626
+ case d:
2627
+ return (i._context.displayName || "Context") + ".Consumer";
2628
+ case v:
2629
+ var w = i.render;
2630
+ return i = i.displayName, i || (i = w.displayName || w.name || "", i = i !== "" ? "ForwardRef(" + i + ")" : "ForwardRef"), i;
2631
+ case g:
2632
+ return w = i.displayName || null, w !== null ? w : e(i.type) || "Memo";
2633
+ case p:
2634
+ w = i._payload, i = i._init;
2635
+ try {
2636
+ return e(i(w));
2637
+ } catch {
2638
+ }
2639
+ }
2640
+ return null;
2641
+ }
2642
+ function t(i) {
2643
+ return "" + i;
2644
+ }
2645
+ function r(i) {
2646
+ try {
2647
+ t(i);
2648
+ var w = !1;
2649
+ } catch {
2650
+ w = !0;
2651
+ }
2652
+ if (w) {
2653
+ w = console;
2654
+ var A = w.error, j = typeof Symbol == "function" && Symbol.toStringTag && i[Symbol.toStringTag] || i.constructor.name || "Object";
2655
+ return A.call(
2656
+ w,
2657
+ "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
2658
+ j
2659
+ ), t(i);
2660
+ }
2661
+ }
2662
+ function n(i) {
2663
+ if (i === R) return "<>";
2664
+ if (typeof i == "object" && i !== null && i.$$typeof === p)
2665
+ return "<...>";
2666
+ try {
2667
+ var w = e(i);
2668
+ return w ? "<" + w + ">" : "<...>";
2669
+ } catch {
2670
+ return "<...>";
2671
+ }
2672
+ }
2673
+ function s() {
2674
+ var i = ne.A;
2675
+ return i === null ? null : i.getOwner();
2676
+ }
2677
+ function o() {
2678
+ return Error("react-stack-top-frame");
2679
+ }
2680
+ function a(i) {
2681
+ if (he.call(i, "key")) {
2682
+ var w = Object.getOwnPropertyDescriptor(i, "key").get;
2683
+ if (w && w.isReactWarning) return !1;
2684
+ }
2685
+ return i.key !== void 0;
2686
+ }
2687
+ function c(i, w) {
2688
+ function A() {
2689
+ ie || (ie = !0, console.error(
2690
+ "%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)",
2691
+ w
2692
+ ));
2693
+ }
2694
+ A.isReactWarning = !0, Object.defineProperty(i, "key", {
2695
+ get: A,
2696
+ configurable: !0
2697
+ });
2698
+ }
2699
+ function f() {
2700
+ var i = e(this.type);
2701
+ return ue[i] || (ue[i] = !0, console.error(
2702
+ "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."
2703
+ )), i = this.props.ref, i !== void 0 ? i : null;
2704
+ }
2705
+ function m(i, w, A, j, ae, I) {
2706
+ var _ = A.ref;
2707
+ return i = {
2708
+ $$typeof: C,
2709
+ type: i,
2710
+ key: w,
2711
+ props: A,
2712
+ _owner: j
2713
+ }, (_ !== void 0 ? _ : null) !== null ? Object.defineProperty(i, "ref", {
2714
+ enumerable: !1,
2715
+ get: f
2716
+ }) : Object.defineProperty(i, "ref", { enumerable: !1, value: null }), i._store = {}, Object.defineProperty(i._store, "validated", {
2717
+ configurable: !1,
2718
+ enumerable: !1,
2719
+ writable: !0,
2720
+ value: 0
2721
+ }), Object.defineProperty(i, "_debugInfo", {
2722
+ configurable: !1,
2723
+ enumerable: !1,
2724
+ writable: !0,
2725
+ value: null
2726
+ }), Object.defineProperty(i, "_debugStack", {
2727
+ configurable: !1,
2728
+ enumerable: !1,
2729
+ writable: !0,
2730
+ value: ae
2731
+ }), Object.defineProperty(i, "_debugTask", {
2732
+ configurable: !1,
2733
+ enumerable: !1,
2734
+ writable: !0,
2735
+ value: I
2736
+ }), Object.freeze && (Object.freeze(i.props), Object.freeze(i)), i;
2737
+ }
2738
+ function h(i, w, A, j, ae, I) {
2739
+ var _ = w.children;
2740
+ if (_ !== void 0)
2741
+ if (j)
2742
+ if (G(_)) {
2743
+ for (j = 0; j < _.length; j++)
2744
+ b(_[j]);
2745
+ Object.freeze && Object.freeze(_);
2746
+ } else
2747
+ console.error(
2748
+ "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
2749
+ );
2750
+ else b(_);
2751
+ if (he.call(w, "key")) {
2752
+ _ = e(i);
2753
+ var B = Object.keys(w).filter(function(Pe) {
2754
+ return Pe !== "key";
2755
+ });
2756
+ j = 0 < B.length ? "{key: someKey, " + B.join(": ..., ") + ": ...}" : "{key: someKey}", X[_ + j] || (B = 0 < B.length ? "{" + B.join(": ..., ") + ": ...}" : "{}", console.error(
2757
+ `A props object containing a "key" prop is being spread into JSX:
2758
+ let props = %s;
2759
+ <%s {...props} />
2760
+ React keys must be passed directly to JSX without using spread:
2761
+ let props = %s;
2762
+ <%s key={someKey} {...props} />`,
2763
+ j,
2764
+ _,
2765
+ B,
2766
+ _
2767
+ ), X[_ + j] = !0);
2768
+ }
2769
+ if (_ = null, A !== void 0 && (r(A), _ = "" + A), a(w) && (r(w.key), _ = "" + w.key), "key" in w) {
2770
+ A = {};
2771
+ for (var ce in w)
2772
+ ce !== "key" && (A[ce] = w[ce]);
2773
+ } else A = w;
2774
+ return _ && c(
2775
+ A,
2776
+ typeof i == "function" ? i.displayName || i.name || "Unknown" : i
2777
+ ), m(
2778
+ i,
2779
+ _,
2780
+ A,
2781
+ s(),
2782
+ ae,
2783
+ I
2784
+ );
2785
+ }
2786
+ function b(i) {
2787
+ T(i) ? i._store && (i._store.validated = 1) : typeof i == "object" && i !== null && i.$$typeof === p && (i._payload.status === "fulfilled" ? T(i._payload.value) && i._payload.value._store && (i._payload.value._store.validated = 1) : i._store && (i._store.validated = 1));
2788
+ }
2789
+ function T(i) {
2790
+ return typeof i == "object" && i !== null && i.$$typeof === C;
2791
+ }
2792
+ var S = mt, C = Symbol.for("react.transitional.element"), P = Symbol.for("react.portal"), R = Symbol.for("react.fragment"), y = Symbol.for("react.strict_mode"), x = Symbol.for("react.profiler"), d = Symbol.for("react.consumer"), O = Symbol.for("react.context"), v = Symbol.for("react.forward_ref"), k = Symbol.for("react.suspense"), W = Symbol.for("react.suspense_list"), g = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), D = Symbol.for("react.activity"), K = Symbol.for("react.client.reference"), ne = S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, he = Object.prototype.hasOwnProperty, G = Array.isArray, se = console.createTask ? console.createTask : function() {
2793
+ return null;
2794
+ };
2795
+ S = {
2796
+ react_stack_bottom_frame: function(i) {
2797
+ return i();
2798
+ }
2799
+ };
2800
+ var ie, ue = {}, be = S.react_stack_bottom_frame.bind(
2801
+ S,
2802
+ o
2803
+ )(), me = se(n(o)), X = {};
2804
+ We.Fragment = R, We.jsx = function(i, w, A) {
2805
+ var j = 1e4 > ne.recentlyCreatedOwnerStacks++;
2806
+ return h(
2807
+ i,
2808
+ w,
2809
+ A,
2810
+ !1,
2811
+ j ? Error("react-stack-top-frame") : be,
2812
+ j ? se(n(i)) : me
2813
+ );
2814
+ }, We.jsxs = function(i, w, A) {
2815
+ var j = 1e4 > ne.recentlyCreatedOwnerStacks++;
2816
+ return h(
2817
+ i,
2818
+ w,
2819
+ A,
2820
+ !0,
2821
+ j ? Error("react-stack-top-frame") : be,
2822
+ j ? se(n(i)) : me
2823
+ );
2824
+ };
2825
+ })()), We;
2826
+ }
2827
+ var Zt;
2828
+ function io() {
2829
+ return Zt || (Zt = 1, process.env.NODE_ENV === "production" ? ut.exports = so() : ut.exports = oo()), ut.exports;
2830
+ }
2831
+ var oe = io();
2832
+ const { Header: Wo, Sider: Ko, Content: Go } = nr;
2833
+ function ao(e) {
2834
+ if (e && typeof e == "object" && "code" in e && "data" in e) {
2835
+ const t = e;
2836
+ return t.code !== 200 ? Promise.reject(new Error(t.message || "请求失败")) : t.data;
2837
+ }
2838
+ return e;
2839
+ }
2840
+ function lo(e, t = {}) {
2841
+ const {
2842
+ tokenKey: r = "token",
2843
+ userInfoKey: n = "userInfo",
2844
+ unauthorizedRedirect: s = "/login"
2845
+ } = t;
2846
+ e.interceptors.request.use((o) => {
2847
+ const a = localStorage.getItem(r);
2848
+ return a && (o.headers.Authorization = `Bearer ${a}`), o;
2849
+ }), e.interceptors.response.use(
2850
+ (o) => ao(o.data),
2851
+ (o) => {
2852
+ var a, c, f;
2853
+ return ((a = o.response) == null ? void 0 : a.status) === 401 ? (localStorage.removeItem(r), localStorage.removeItem(n), window.location.href = s) : ((c = o.response) == null ? void 0 : c.status) === 403 ? console.error("没有权限访问该资源") : ((f = o.response) == null ? void 0 : f.status) === 500 && console.error("服务器内部错误"), Promise.reject(o);
2854
+ }
2855
+ );
2856
+ }
2857
+ function Pr(e = {}) {
2858
+ const t = U.create({
2859
+ baseURL: e.baseURL ?? "/api",
2860
+ timeout: e.timeout ?? 1e4
2861
+ });
2862
+ return lo(t, {
2863
+ tokenKey: e.tokenKey,
2864
+ userInfoKey: e.userInfoKey,
2865
+ unauthorizedRedirect: e.unauthorizedRedirect
2866
+ }), t;
2867
+ }
2868
+ const M = Pr();
2869
+ Pr();
2870
+ class Xo extends mt.Component {
2871
+ constructor(t) {
2872
+ super(t), no(this, "handleReset", () => {
2873
+ this.setState({ hasError: !1, error: null, errorInfo: null }), typeof this.props.onReset == "function" && this.props.onReset();
2874
+ }), this.state = { hasError: !1, error: null, errorInfo: null };
2875
+ }
2876
+ static getDerivedStateFromError(t) {
2877
+ return { hasError: !0, error: t };
2878
+ }
2879
+ componentDidCatch(t, r) {
2880
+ console.error("[ErrorBoundary] caught error:", t, r), this.setState({ errorInfo: r });
2881
+ }
2882
+ render() {
2883
+ if (!this.state.hasError)
2884
+ return this.props.children;
2885
+ const { fallbackTitle: t = "组件加载失败", fallbackDescription: r, showReload: n = !0 } = this.props, s = this.state.error && (this.state.error.message || String(this.state.error)) || "未知错误";
2886
+ return /* @__PURE__ */ oe.jsxs(
2887
+ "div",
2888
+ {
2889
+ style: {
2890
+ padding: 24,
2891
+ background: "#fff2f0",
2892
+ border: "1px solid #ffccc7",
2893
+ borderRadius: 8,
2894
+ minHeight: 200
2895
+ },
2896
+ children: [
2897
+ /* @__PURE__ */ oe.jsx(
2898
+ Fe,
2899
+ {
2900
+ type: "error",
2901
+ showIcon: !0,
2902
+ icon: /* @__PURE__ */ oe.jsx(qr, {}),
2903
+ message: t,
2904
+ description: /* @__PURE__ */ oe.jsxs("div", { children: [
2905
+ /* @__PURE__ */ oe.jsx("div", { style: { marginBottom: 8 }, children: r || "当前组件发生了异常,已被错误边界捕获。其他功能仍可正常使用。" }),
2906
+ /* @__PURE__ */ oe.jsx(
2907
+ "div",
2908
+ {
2909
+ style: {
2910
+ fontFamily: "Menlo, Monaco, Consolas, monospace",
2911
+ fontSize: 12,
2912
+ color: "#cf1322",
2913
+ background: "#fff",
2914
+ padding: 8,
2915
+ borderRadius: 4,
2916
+ border: "1px solid #ffccc7",
2917
+ wordBreak: "break-word",
2918
+ whiteSpace: "pre-wrap"
2919
+ },
2920
+ children: s
2921
+ }
2922
+ )
2923
+ ] })
2924
+ }
2925
+ ),
2926
+ n && /* @__PURE__ */ oe.jsx(J, { style: { marginTop: 16 }, children: /* @__PURE__ */ oe.jsx(Y, { icon: /* @__PURE__ */ oe.jsx(yt, {}), onClick: this.handleReset, children: "重试" }) })
2927
+ ]
2928
+ }
2929
+ );
2930
+ }
2931
+ }
2932
+ const { Title: Yo, Text: Qo, Paragraph: Zo } = re;
2933
+ let co = "/api";
2934
+ function Nr() {
2935
+ return U.create({ baseURL: co, timeout: 15e3 });
2936
+ }
2937
+ const uo = Nr();
2938
+ Nr();
2939
+ uo.interceptors.request.use((e) => {
2940
+ const t = localStorage.getItem("token");
2941
+ return t && (e.headers.Authorization = `Bearer ${t}`), e;
2942
+ });
2943
+ const { Header: ei, Sider: ti, Content: ri } = nr, { Text: ni } = re, { Title: si, Text: oi } = re, { Option: ii } = pe, { TextArea: ai } = te, fo = [
2944
+ { type: "STRING", label: "字符串", icon: /* @__PURE__ */ oe.jsx(Pt, {}), color: "#1677ff", desc: "短文本 (默认 VARCHAR 255)" },
2945
+ { type: "TEXT", label: "长文本", icon: /* @__PURE__ */ oe.jsx(Pt, {}), color: "#13c2c2", desc: "TEXT 类型, 无长度限制" },
2946
+ { type: "INT", label: "整数", icon: "#", color: "#722ed1", desc: "INT 整数" },
2947
+ { type: "LONG", label: "长整数", icon: "#", color: "#722ed1", desc: "BIGINT 长整数" },
2948
+ { type: "DECIMAL", label: "小数", icon: "0.00", color: "#eb2f96", desc: "DECIMAL 精确小数" },
2949
+ { type: "BOOLEAN", label: "布尔", icon: /* @__PURE__ */ oe.jsx(sr, {}), color: "#52c41a", desc: "TINYINT(1) 是/否" },
2950
+ { type: "DATE", label: "日期", icon: "📅", color: "#fa8c16", desc: "DATE yyyy-MM-dd" },
2951
+ { type: "DATETIME", label: "日期时间", icon: "🕐", color: "#fa8c16", desc: "DATETIME yyyy-MM-dd HH:mm:ss" },
2952
+ { type: "JSON", label: "JSON", icon: "{}", color: "#2f54eb", desc: "JSON 字符串" },
2953
+ { type: "REF", label: "引用", icon: "🔗", color: "#8c8c8c", desc: "外键引用 BIGINT" }
2954
+ ];
2955
+ Object.fromEntries(fo.map((e) => [e.type, e]));
2956
+ const { Option: li } = pe;
2957
+ te.TextArea, te.TextArea;
2958
+ const { Text: ci, Paragraph: ui } = re, { TextArea: di } = te, { TextArea: fi } = te, { Text: pi, Paragraph: hi } = re, { TextArea: mi } = te, { Text: yi, Paragraph: bi } = re, { Text: xi } = re, { Text: gi } = re, { TextArea: wi } = te, { Text: Ei, Paragraph: Ri } = re, { Text: Si } = re, { Text: Ti } = re, { Text: Oi } = re, { Text: Ai } = re;
2959
+ common;
2960
+ const po = {
2961
+ STANDARD_JSON: { label: "标准 JSON", color: "blue" },
2962
+ RSS_XML: { label: "RSS 2.0", color: "orange" },
2963
+ ATOM_XML: { label: "Atom 1.0", color: "gold" },
2964
+ CUSTOM_SCRIPT: { label: "自定义脚本", color: "purple" },
2965
+ INTERNAL_BEAN: { label: "内部 Bean", color: "cyan" }
2966
+ }, ho = {
2967
+ PENDING_VERIFY: { color: "default", text: "待验证" },
2968
+ VERIFIED: { color: "green", text: "已验证" },
2969
+ INVALID_AUTH: { color: "red", text: "鉴权失败" },
2970
+ FATAL: { color: "red", text: "永久失败" },
2971
+ DISABLED: { color: "default", text: "已停用" }
2972
+ }, er = {
2973
+ PENDING: { color: "default" },
2974
+ RUNNING: { color: "processing" },
2975
+ SUCCESS: { color: "green" },
2976
+ EMPTY: { color: "default" },
2977
+ FAILED: { color: "red" },
2978
+ FATAL: { color: "red" }
2979
+ };
2980
+ function mo() {
2981
+ const e = rr(), [t, r] = z([]), [n, s] = z(!1), [o, a] = z(null), [c, f] = z([]), [m, h] = z({}), [b, T] = z(null), [S, C] = z([]), P = async () => {
2982
+ s(!0);
2983
+ try {
2984
+ const g = await M.get("/subscribe/subscription/list");
2985
+ g && g.success !== !1 && r(Array.isArray(g.data) ? g.data : Array.isArray(g) ? g : []);
2986
+ } catch (g) {
2987
+ L.error("获取订阅列表失败: " + ((g == null ? void 0 : g.message) || ""));
2988
+ } finally {
2989
+ s(!1);
2990
+ }
2991
+ };
2992
+ Ye(() => {
2993
+ P();
2994
+ }, []);
2995
+ const R = (g) => {
2996
+ jt.confirm({
2997
+ title: "确认删除",
2998
+ icon: /* @__PURE__ */ u.jsx(Xr, {}),
2999
+ content: `确定要删除订阅 "${g.name}" 吗? 运行历史会保留.`,
3000
+ onOk: async () => {
3001
+ try {
3002
+ const p = await M.delete(`/subscribe/subscription/${g.id}`);
3003
+ p && p.success !== !1 ? (L.success("删除成功"), P()) : L.error((p == null ? void 0 : p.message) || "删除失败");
3004
+ } catch (p) {
3005
+ L.error("删除失败: " + ((p == null ? void 0 : p.message) || ""));
3006
+ }
3007
+ }
3008
+ });
3009
+ }, y = async (g) => {
3010
+ try {
3011
+ const p = await M.post(`/subscribe/subscription/${g}/enable`);
3012
+ p && p.success !== !1 ? (L.success("已启用"), P()) : L.error((p == null ? void 0 : p.message) || "启用失败");
3013
+ } catch (p) {
3014
+ L.error("启用失败: " + ((p == null ? void 0 : p.message) || ""));
3015
+ }
3016
+ }, x = async (g) => {
3017
+ try {
3018
+ const p = await M.post(`/subscribe/subscription/${g}/disable`);
3019
+ p && p.success !== !1 ? (L.success("已停用"), P()) : L.error((p == null ? void 0 : p.message) || "停用失败");
3020
+ } catch (p) {
3021
+ L.error("停用失败: " + ((p == null ? void 0 : p.message) || ""));
3022
+ }
3023
+ }, d = async (g) => {
3024
+ jt.confirm({
3025
+ title: "手动触发",
3026
+ content: `将立即执行一次 "${g.name}" 的抽取, 同步返回 runId.`,
3027
+ onOk: async () => {
3028
+ try {
3029
+ const p = await M.post(`/subscribe/subscription/${g.id}/trigger?triggerBy=ceo`);
3030
+ if (p && (p.data !== void 0 || p.success !== !1)) {
3031
+ const D = p.data ?? p;
3032
+ L.success(`已触发, runId = ${D}`), v(g);
3033
+ } else
3034
+ L.error((p == null ? void 0 : p.message) || "触发失败");
3035
+ } catch (p) {
3036
+ L.error("触发失败: " + ((p == null ? void 0 : p.message) || ""));
3037
+ }
3038
+ }
3039
+ });
3040
+ }, O = async (g) => {
3041
+ try {
3042
+ const p = await M.post(`/subscribe/subscription/${g.id}/dry-run`);
3043
+ a({ sub: g, result: (p == null ? void 0 : p.data) ?? p });
3044
+ } catch (p) {
3045
+ a({ sub: g, result: { success: !1, errorMessage: (p == null ? void 0 : p.message) || "请求失败" } });
3046
+ }
3047
+ }, v = async (g) => {
3048
+ try {
3049
+ const p = await M.get(`/subscribe/run/list?subscriptionId=${g.id}&limit=20`), D = (p == null ? void 0 : p.data) ?? p ?? [];
3050
+ f(Array.isArray(D) ? D : []), T(null), h({}), C([]), a({ sub: g, tab: "runs" });
3051
+ } catch {
3052
+ L.error("获取运行历史失败");
3053
+ }
3054
+ }, k = async (g) => {
3055
+ if (m[g]) {
3056
+ T(g);
3057
+ return;
3058
+ }
3059
+ try {
3060
+ const p = await M.get(`/subscribe/run/${g}/items?limit=200`), D = (p == null ? void 0 : p.data) ?? p ?? [];
3061
+ h((K) => ({ ...K, [g]: Array.isArray(D) ? D : [] })), T(g);
3062
+ } catch {
3063
+ L.error("获取抽取项失败");
3064
+ }
3065
+ }, W = [
3066
+ {
3067
+ title: "ID",
3068
+ dataIndex: "id",
3069
+ width: 70
3070
+ },
3071
+ {
3072
+ title: "名称",
3073
+ dataIndex: "name",
3074
+ render: (g, p) => /* @__PURE__ */ u.jsxs(J, { orientation: "vertical", size: 0, children: [
3075
+ /* @__PURE__ */ u.jsx("span", { style: { fontWeight: 500 }, children: g }),
3076
+ p.description && /* @__PURE__ */ u.jsx("span", { style: { color: "#999", fontSize: 12 }, children: p.description })
3077
+ ] })
3078
+ },
3079
+ {
3080
+ title: "数据源",
3081
+ dataIndex: "sourceType",
3082
+ width: 90,
3083
+ render: (g) => /* @__PURE__ */ u.jsx(ee, { children: g })
3084
+ },
3085
+ {
3086
+ title: "抽取器",
3087
+ dataIndex: "extractorType",
3088
+ width: 140,
3089
+ render: (g) => {
3090
+ const p = po[g] || { label: g, color: "default" };
3091
+ return /* @__PURE__ */ u.jsx(ee, { color: p.color, children: p.label });
3092
+ }
3093
+ },
3094
+ {
3095
+ title: "Cron",
3096
+ dataIndex: "cronExpr",
3097
+ width: 150,
3098
+ render: (g) => /* @__PURE__ */ u.jsx("code", { style: { fontSize: 12 }, children: g })
3099
+ },
3100
+ {
3101
+ title: "状态",
3102
+ dataIndex: "status",
3103
+ width: 110,
3104
+ render: (g) => {
3105
+ const p = ho[g] || { color: "default", text: g };
3106
+ return /* @__PURE__ */ u.jsx(ee, { color: p.color, children: p.text });
3107
+ }
3108
+ },
3109
+ {
3110
+ title: "启用",
3111
+ dataIndex: "enabled",
3112
+ width: 80,
3113
+ render: (g, p) => g ? /* @__PURE__ */ u.jsx(ee, { color: "green", children: "是" }) : /* @__PURE__ */ u.jsx(ee, { children: "否" })
3114
+ },
3115
+ {
3116
+ title: "最近 run",
3117
+ dataIndex: "lastStatus",
3118
+ width: 110,
3119
+ render: (g, p) => {
3120
+ var D;
3121
+ return g ? /* @__PURE__ */ u.jsx(Fr, { title: p.lastError || "", children: /* @__PURE__ */ u.jsx(ee, { color: ((D = er[g]) == null ? void 0 : D.color) || "default", children: g }) }) : /* @__PURE__ */ u.jsx("span", { style: { color: "#ccc" }, children: "-" });
3122
+ }
3123
+ },
3124
+ {
3125
+ title: "累计",
3126
+ width: 130,
3127
+ render: (g, p) => /* @__PURE__ */ u.jsxs(J, { size: 4, children: [
3128
+ /* @__PURE__ */ u.jsxs(ee, { color: "green", children: [
3129
+ "✓ ",
3130
+ p.successCountTotal || 0
3131
+ ] }),
3132
+ /* @__PURE__ */ u.jsxs(ee, { color: "red", children: [
3133
+ "✗ ",
3134
+ p.failCountTotal || 0
3135
+ ] })
3136
+ ] })
3137
+ },
3138
+ {
3139
+ title: "操作",
3140
+ width: 280,
3141
+ fixed: "right",
3142
+ render: (g, p) => /* @__PURE__ */ u.jsxs(J, { size: 4, wrap: !0, children: [
3143
+ /* @__PURE__ */ u.jsx(
3144
+ Y,
3145
+ {
3146
+ type: "link",
3147
+ size: "small",
3148
+ icon: /* @__PURE__ */ u.jsx(Jr, {}),
3149
+ onClick: () => e(`/subscribe/edit/${p.id}`),
3150
+ children: "编辑"
3151
+ }
3152
+ ),
3153
+ /* @__PURE__ */ u.jsx(
3154
+ Y,
3155
+ {
3156
+ type: "link",
3157
+ size: "small",
3158
+ icon: /* @__PURE__ */ u.jsx(Vr, {}),
3159
+ onClick: () => O(p),
3160
+ children: "试运行"
3161
+ }
3162
+ ),
3163
+ /* @__PURE__ */ u.jsx(
3164
+ Y,
3165
+ {
3166
+ type: "link",
3167
+ size: "small",
3168
+ icon: /* @__PURE__ */ u.jsx(Wr, {}),
3169
+ onClick: () => d(p),
3170
+ children: "触发"
3171
+ }
3172
+ ),
3173
+ /* @__PURE__ */ u.jsx(
3174
+ Y,
3175
+ {
3176
+ type: "link",
3177
+ size: "small",
3178
+ onClick: () => v(p),
3179
+ children: "历史"
3180
+ }
3181
+ ),
3182
+ p.enabled ? /* @__PURE__ */ u.jsx(
3183
+ Y,
3184
+ {
3185
+ type: "link",
3186
+ size: "small",
3187
+ icon: /* @__PURE__ */ u.jsx(Kr, {}),
3188
+ onClick: () => x(p.id),
3189
+ children: "停用"
3190
+ }
3191
+ ) : /* @__PURE__ */ u.jsx(
3192
+ Y,
3193
+ {
3194
+ type: "link",
3195
+ size: "small",
3196
+ icon: /* @__PURE__ */ u.jsx(sr, {}),
3197
+ onClick: () => y(p.id),
3198
+ children: "启用"
3199
+ }
3200
+ ),
3201
+ /* @__PURE__ */ u.jsx(Br, { title: "确认删除?", onConfirm: () => R(p), okText: "删除", cancelText: "取消", children: /* @__PURE__ */ u.jsx(Y, { type: "link", size: "small", danger: !0, icon: /* @__PURE__ */ u.jsx(Gr, {}), children: "删除" }) })
3202
+ ] })
3203
+ }
3204
+ ];
3205
+ return /* @__PURE__ */ u.jsxs("div", { style: { padding: 24 }, children: [
3206
+ /* @__PURE__ */ u.jsxs(
3207
+ $,
3208
+ {
3209
+ title: /* @__PURE__ */ u.jsxs(J, { children: [
3210
+ /* @__PURE__ */ u.jsx(bt, {}),
3211
+ "订阅中心 - 数据源订阅"
3212
+ ] }),
3213
+ extra: /* @__PURE__ */ u.jsxs(J, { children: [
3214
+ /* @__PURE__ */ u.jsx(Y, { icon: /* @__PURE__ */ u.jsx(yt, {}), onClick: P, children: "刷新" }),
3215
+ /* @__PURE__ */ u.jsx(
3216
+ Y,
3217
+ {
3218
+ type: "primary",
3219
+ icon: /* @__PURE__ */ u.jsx(Hr, {}),
3220
+ onClick: () => e("/subscribe/new"),
3221
+ children: "新建订阅"
3222
+ }
3223
+ )
3224
+ ] }),
3225
+ children: [
3226
+ /* @__PURE__ */ u.jsx(
3227
+ Fe,
3228
+ {
3229
+ type: "info",
3230
+ showIcon: !0,
3231
+ style: { marginBottom: 16 },
3232
+ message: "订阅中心负责把三方 / 内部 / RSS 等数据源按 Cron 定时抽取, 归一化后落到本地, 供 CEO 立项和 Agent 协作使用."
3233
+ }
3234
+ ),
3235
+ /* @__PURE__ */ u.jsx(
3236
+ Ue,
3237
+ {
3238
+ rowKey: "id",
3239
+ columns: W,
3240
+ dataSource: t,
3241
+ loading: n,
3242
+ scroll: { x: 1400 },
3243
+ size: "middle",
3244
+ pagination: { pageSize: 20, showSizeChanger: !0, showTotal: (g) => `共 ${g} 条` }
3245
+ }
3246
+ )
3247
+ ]
3248
+ }
3249
+ ),
3250
+ /* @__PURE__ */ u.jsx(
3251
+ Lr,
3252
+ {
3253
+ title: o != null && o.sub ? `试运行 - ${o.sub.name}` : "运行历史",
3254
+ open: !!o,
3255
+ onClose: () => a(null),
3256
+ width: 900,
3257
+ children: (o == null ? void 0 : o.tab) === "runs" ? /* @__PURE__ */ u.jsx(
3258
+ Ur,
3259
+ {
3260
+ activeKey: b ? "items" : "list",
3261
+ onChange: (g) => g === "list" && T(null),
3262
+ items: [
3263
+ {
3264
+ key: "list",
3265
+ label: `运行列表 (${c.length})`,
3266
+ children: /* @__PURE__ */ u.jsx(
3267
+ Ue,
3268
+ {
3269
+ rowKey: "id",
3270
+ size: "small",
3271
+ dataSource: c,
3272
+ pagination: !1,
3273
+ onRow: (g) => ({ onClick: () => k(g.id) }),
3274
+ columns: [
3275
+ { title: "runId", dataIndex: "id", width: 70 },
3276
+ {
3277
+ title: "计划",
3278
+ dataIndex: "scheduledAt",
3279
+ width: 160,
3280
+ render: (g) => g ? new Date(g).toLocaleString() : "-"
3281
+ },
3282
+ { title: "耗时(ms)", dataIndex: "durationMs", width: 90 },
3283
+ {
3284
+ title: "状态",
3285
+ dataIndex: "status",
3286
+ width: 90,
3287
+ render: (g) => {
3288
+ var p;
3289
+ return /* @__PURE__ */ u.jsx(ee, { color: (p = er[g]) == null ? void 0 : p.color, children: g });
3290
+ }
3291
+ },
3292
+ {
3293
+ title: "拉取/成功/重复/死信",
3294
+ width: 200,
3295
+ render: (g, p) => `${p.fetchedCount} / ${p.successCount} / ${p.duplicateCount || 0} / ${p.deadLetterCount}`
3296
+ },
3297
+ {
3298
+ title: "错误",
3299
+ dataIndex: "errorMessage",
3300
+ render: (g) => g ? /* @__PURE__ */ u.jsx("span", { style: { color: "#cf1322", fontSize: 12 }, children: g }) : "-"
3301
+ }
3302
+ ]
3303
+ }
3304
+ )
3305
+ },
3306
+ {
3307
+ key: "items",
3308
+ label: b ? `run#${b} 抽取项` : "抽取项",
3309
+ disabled: !b,
3310
+ children: /* @__PURE__ */ u.jsxs(J, { orientation: "vertical", style: { width: "100%" }, children: [
3311
+ /* @__PURE__ */ u.jsxs(J, { children: [
3312
+ /* @__PURE__ */ u.jsxs(ee, { color: "blue", children: [
3313
+ "已选 ",
3314
+ S.length,
3315
+ " 条"
3316
+ ] }),
3317
+ /* @__PURE__ */ u.jsxs(
3318
+ Y,
3319
+ {
3320
+ size: "small",
3321
+ type: "primary",
3322
+ icon: /* @__PURE__ */ u.jsx(Mr, {}),
3323
+ disabled: S.length === 0,
3324
+ onClick: () => {
3325
+ const g = S.join(",");
3326
+ e(`/project/new?subscriptionId=${o.sub.id}&itemIds=${g}`);
3327
+ },
3328
+ children: [
3329
+ "用所选 ",
3330
+ S.length,
3331
+ " 条立项"
3332
+ ]
3333
+ }
3334
+ )
3335
+ ] }),
3336
+ /* @__PURE__ */ u.jsx(
3337
+ Ue,
3338
+ {
3339
+ rowKey: "id",
3340
+ size: "small",
3341
+ dataSource: m[b] || [],
3342
+ pagination: { pageSize: 20 },
3343
+ rowSelection: {
3344
+ selectedRowKeys: S,
3345
+ onChange: C
3346
+ },
3347
+ columns: [
3348
+ { title: "id", dataIndex: "dedupKey", width: 180, ellipsis: !0 },
3349
+ {
3350
+ title: "title",
3351
+ dataIndex: "normalized",
3352
+ render: (g) => {
3353
+ try {
3354
+ return JSON.parse(g).title || "(无标题)";
3355
+ } catch {
3356
+ return g;
3357
+ }
3358
+ }
3359
+ },
3360
+ {
3361
+ title: "link",
3362
+ dataIndex: "normalized",
3363
+ render: (g) => {
3364
+ try {
3365
+ const p = JSON.parse(g);
3366
+ return p.link ? /* @__PURE__ */ u.jsx("a", { href: p.link, target: "_blank", children: "↗" }) : "-";
3367
+ } catch {
3368
+ return "-";
3369
+ }
3370
+ }
3371
+ },
3372
+ {
3373
+ title: "状态",
3374
+ dataIndex: "status",
3375
+ width: 110,
3376
+ render: (g) => /* @__PURE__ */ u.jsx(ee, { children: g })
3377
+ }
3378
+ ]
3379
+ }
3380
+ )
3381
+ ] })
3382
+ }
3383
+ ]
3384
+ }
3385
+ ) : /* @__PURE__ */ u.jsx(yo, { result: o == null ? void 0 : o.result })
3386
+ }
3387
+ )
3388
+ ] });
3389
+ }
3390
+ function yo({ result: e }) {
3391
+ return e ? e.success ? /* @__PURE__ */ u.jsxs(J, { orientation: "vertical", style: { width: "100%" }, size: "middle", children: [
3392
+ /* @__PURE__ */ u.jsx($, { size: "small", title: "调用结果", children: /* @__PURE__ */ u.jsxs(J, { size: "large", wrap: !0, children: [
3393
+ /* @__PURE__ */ u.jsxs("span", { children: [
3394
+ /* @__PURE__ */ u.jsx("b", { children: "HTTP:" }),
3395
+ " ",
3396
+ e.httpStatus || "-"
3397
+ ] }),
3398
+ /* @__PURE__ */ u.jsxs("span", { children: [
3399
+ /* @__PURE__ */ u.jsx("b", { children: "耗时:" }),
3400
+ " ",
3401
+ e.latencyMs,
3402
+ "ms"
3403
+ ] }),
3404
+ /* @__PURE__ */ u.jsxs("span", { children: [
3405
+ /* @__PURE__ */ u.jsx("b", { children: "大小:" }),
3406
+ " ",
3407
+ e.responseSize,
3408
+ "B"
3409
+ ] }),
3410
+ /* @__PURE__ */ u.jsxs("span", { children: [
3411
+ /* @__PURE__ */ u.jsx("b", { children: "样本:" }),
3412
+ " ",
3413
+ e.sampleCount,
3414
+ " 条"
3415
+ ] })
3416
+ ] }) }),
3417
+ e.firstItem && /* @__PURE__ */ u.jsx($, { size: "small", title: "第一条样本 (归一化后)", children: /* @__PURE__ */ u.jsx("pre", { style: { background: "#f5f5f5", padding: 12, borderRadius: 4, maxHeight: 300, overflow: "auto" }, children: JSON.stringify(e.firstItem, null, 2) }) }),
3418
+ e.responsePreview && /* @__PURE__ */ u.jsx($, { size: "small", title: "响应预览 (前 4KB)", children: /* @__PURE__ */ u.jsx("pre", { style: { background: "#f5f5f5", padding: 12, borderRadius: 4, maxHeight: 300, overflow: "auto", fontSize: 12 }, children: e.responsePreview }) }),
3419
+ e.fieldErrors && e.fieldErrors.length > 0 && /* @__PURE__ */ u.jsx(Fe, { type: "warning", showIcon: !0, message: "字段问题", description: /* @__PURE__ */ u.jsx("ul", { children: e.fieldErrors.map((t, r) => /* @__PURE__ */ u.jsx("li", { children: t }, r)) }) })
3420
+ ] }) : /* @__PURE__ */ u.jsx(Fe, { type: "error", showIcon: !0, message: "试运行失败", description: e.errorMessage || "未知错误" }) : null;
3421
+ }
3422
+ const bo = [
3423
+ { value: "STANDARD_JSON", label: "标准 JSON (按统一契约返回的 JSON)" },
3424
+ { value: "RSS_XML", label: "RSS 2.0 (XML feed)" },
3425
+ { value: "ATOM_XML", label: "Atom 1.0 (XML feed)" },
3426
+ { value: "CUSTOM_SCRIPT", label: "自定义脚本 (z-script 平台)" },
3427
+ { value: "INTERNAL_BEAN", label: "内部 Bean (我们自己的模块, 暂未启用)" }
3428
+ ], xo = [
3429
+ { value: "NONE", label: "无鉴权" },
3430
+ { value: "BEARER", label: "Bearer (Authorization: Bearer xxx)" },
3431
+ { value: "API_KEY", label: "API Key (Authorization: xxx)" },
3432
+ { value: "BASIC", label: "Basic (user:password base64)" }
3433
+ ], go = [
3434
+ { label: "每 5 分钟", value: "0 */5 * * * ?" },
3435
+ { label: "每 15 分钟", value: "0 */15 * * * ?" },
3436
+ { label: "每小时", value: "0 0 * * * ?" },
3437
+ { label: "每 6 小时", value: "0 0 */6 * * ?" },
3438
+ { label: "每天 8 点", value: "0 0 8 * * ?" }
3439
+ ];
3440
+ function tr() {
3441
+ const { id: e } = vr(), t = rr(), r = !!e, [n] = F.useForm(), [s, o] = z(!1), [a, c] = z(!1), [f, m] = z([]), [h, b] = z([]), T = F.useWatch("sourceType", n), S = F.useWatch("extractorType", n), C = F.useWatch("authType", n);
3442
+ Ye(() => {
3443
+ P(), R(), r && y();
3444
+ }, [e]);
3445
+ const P = async () => {
3446
+ try {
3447
+ const d = await M.get("/secret/list"), O = (d == null ? void 0 : d.data) ?? d ?? [];
3448
+ m(Array.isArray(O) ? O : []);
3449
+ } catch {
3450
+ }
3451
+ }, R = async () => {
3452
+ try {
3453
+ const d = await M.get("/script/list"), O = (d == null ? void 0 : d.data) ?? d ?? [];
3454
+ b(Array.isArray(O) ? O.filter((v) => v.status === 1) : []);
3455
+ } catch {
3456
+ }
3457
+ }, y = async () => {
3458
+ o(!0);
3459
+ try {
3460
+ const d = await M.get(`/subscribe/subscription/${e}`), O = (d == null ? void 0 : d.data) ?? d;
3461
+ O && n.setFieldsValue({
3462
+ ...O,
3463
+ enabled: O.enabled === 1 || O.enabled === !0
3464
+ });
3465
+ } catch (d) {
3466
+ L.error("加载订阅失败: " + ((d == null ? void 0 : d.message) || ""));
3467
+ } finally {
3468
+ o(!1);
3469
+ }
3470
+ }, x = async () => {
3471
+ try {
3472
+ const d = await n.validateFields();
3473
+ c(!0);
3474
+ const O = {
3475
+ ...d,
3476
+ enabled: d.enabled ? 1 : 0
3477
+ };
3478
+ let v;
3479
+ if (r ? v = await M.put("/subscribe/subscription", O) : v = await M.post("/subscribe/subscription", O), v && v.success === !1) {
3480
+ L.error(v.message || "保存失败");
3481
+ return;
3482
+ }
3483
+ L.success(r ? "已更新 (注意: 修改 cron / url / 抽取器后会自动重置为 PENDING_VERIFY)" : "已创建, 已自动验证"), t("/subscribe/list");
3484
+ } catch (d) {
3485
+ d != null && d.errorFields ? L.warning("请检查表单") : L.error("保存失败: " + ((d == null ? void 0 : d.message) || ""));
3486
+ } finally {
3487
+ c(!1);
3488
+ }
3489
+ };
3490
+ return /* @__PURE__ */ u.jsx("div", { style: { padding: 24 }, children: /* @__PURE__ */ u.jsx(
3491
+ $,
3492
+ {
3493
+ title: /* @__PURE__ */ u.jsxs(J, { children: [
3494
+ /* @__PURE__ */ u.jsx(Y, { type: "text", icon: /* @__PURE__ */ u.jsx(Qr, {}), onClick: () => t("/subscribe/list") }),
3495
+ /* @__PURE__ */ u.jsx(bt, {}),
3496
+ r ? `编辑订阅 #${e}` : "新建订阅"
3497
+ ] }),
3498
+ extra: /* @__PURE__ */ u.jsxs(J, { children: [
3499
+ /* @__PURE__ */ u.jsx(Y, { onClick: () => t("/subscribe/list"), children: "取消" }),
3500
+ /* @__PURE__ */ u.jsx(Y, { type: "primary", icon: /* @__PURE__ */ u.jsx(Yr, {}), loading: a, onClick: x, children: "保存 (自动验证)" })
3501
+ ] }),
3502
+ children: /* @__PURE__ */ u.jsx(zr, { spinning: s, children: /* @__PURE__ */ u.jsxs(
3503
+ F,
3504
+ {
3505
+ form: n,
3506
+ layout: "vertical",
3507
+ initialValues: {
3508
+ sourceType: "HTTP",
3509
+ httpMethod: "GET",
3510
+ authType: "NONE",
3511
+ extractorType: "STANDARD_JSON",
3512
+ enabled: !0,
3513
+ minIntervalSec: 60,
3514
+ maxItemsPerRun: 1e3,
3515
+ timeoutMs: 15e3
3516
+ },
3517
+ children: [
3518
+ /* @__PURE__ */ u.jsxs($, { type: "inner", title: "基本信息", style: { marginBottom: 16 }, children: [
3519
+ /* @__PURE__ */ u.jsx(F.Item, { label: "名称", name: "name", rules: [{ required: !0, message: "请输入名称" }], children: /* @__PURE__ */ u.jsx(te, { placeholder: "例如: GitHub PR 通知" }) }),
3520
+ /* @__PURE__ */ u.jsx(F.Item, { label: "说明", name: "description", children: /* @__PURE__ */ u.jsx(te.TextArea, { rows: 2, placeholder: "(可选)" }) })
3521
+ ] }),
3522
+ /* @__PURE__ */ u.jsxs($, { type: "inner", title: "数据源", style: { marginBottom: 16 }, children: [
3523
+ /* @__PURE__ */ u.jsx(F.Item, { label: "数据源形态", name: "sourceType", rules: [{ required: !0 }], children: /* @__PURE__ */ u.jsxs(Se.Group, { children: [
3524
+ /* @__PURE__ */ u.jsx(Se.Button, { value: "HTTP", children: "HTTP / HTTPS" }),
3525
+ /* @__PURE__ */ u.jsx(Se.Button, { value: "INTERNAL", disabled: !0, children: "内部 Bean (TODO)" })
3526
+ ] }) }),
3527
+ T === "HTTP" && /* @__PURE__ */ u.jsxs(u.Fragment, { children: [
3528
+ /* @__PURE__ */ u.jsx(
3529
+ F.Item,
3530
+ {
3531
+ label: "目标 URL",
3532
+ name: "targetUrl",
3533
+ rules: [{ required: !0, message: "请输入 URL" }],
3534
+ children: /* @__PURE__ */ u.jsx(te, { placeholder: "https://api.github.com/repos/.../pulls?state=open" })
3535
+ }
3536
+ ),
3537
+ /* @__PURE__ */ u.jsxs(J, { size: "large", style: { width: "100%" }, children: [
3538
+ /* @__PURE__ */ u.jsx(F.Item, { label: "HTTP 方法", name: "httpMethod", children: /* @__PURE__ */ u.jsx(pe, { style: { width: 120 }, options: [
3539
+ { value: "GET", label: "GET" },
3540
+ { value: "POST", label: "POST" },
3541
+ { value: "PUT", label: "PUT" }
3542
+ ] }) }),
3543
+ /* @__PURE__ */ u.jsx(F.Item, { label: "超时 (ms)", name: "timeoutMs", children: /* @__PURE__ */ u.jsx(ot, { min: 1e3, max: 12e4, step: 1e3 }) })
3544
+ ] }),
3545
+ /* @__PURE__ */ u.jsx(F.Item, { label: "自定义 HTTP 头 (JSON)", name: "httpHeaders", children: /* @__PURE__ */ u.jsx(te.TextArea, { rows: 2, placeholder: '{"X-Trace-Id":"abc"}' }) }),
3546
+ /* @__PURE__ */ u.jsx(F.Item, { label: "请求体 (POST/PUT)", name: "requestBody", children: /* @__PURE__ */ u.jsx(te.TextArea, { rows: 3, placeholder: "(可选)" }) })
3547
+ ] })
3548
+ ] }),
3549
+ /* @__PURE__ */ u.jsxs($, { type: "inner", title: "鉴权 (从 z-mist 拉取 secret)", style: { marginBottom: 16 }, children: [
3550
+ /* @__PURE__ */ u.jsx(F.Item, { label: "鉴权方式", name: "authType", children: /* @__PURE__ */ u.jsx(pe, { options: xo }) }),
3551
+ C && C !== "NONE" && /* @__PURE__ */ u.jsx(
3552
+ F.Item,
3553
+ {
3554
+ label: "z-mist 凭据引用",
3555
+ name: "authSecretKey",
3556
+ extra: "从密钥中心 (z-mist) 选一个 secret; secret 的解密值会作为 secret 注入",
3557
+ children: /* @__PURE__ */ u.jsx(
3558
+ pe,
3559
+ {
3560
+ showSearch: !0,
3561
+ allowClear: !0,
3562
+ placeholder: "选择 secret (key)",
3563
+ options: f.map((d) => ({
3564
+ value: d.secretKey,
3565
+ label: `${d.secretKey}${d.secretName ? " (" + d.secretName + ")" : ""}`
3566
+ }))
3567
+ }
3568
+ )
3569
+ }
3570
+ )
3571
+ ] }),
3572
+ /* @__PURE__ */ u.jsxs($, { type: "inner", title: "抽取器", style: { marginBottom: 16 }, children: [
3573
+ /* @__PURE__ */ u.jsx(
3574
+ F.Item,
3575
+ {
3576
+ label: "抽取器类型",
3577
+ name: "extractorType",
3578
+ rules: [{ required: !0 }],
3579
+ extra: "STANDARD_JSON/RSS_XML/ATOM_XML 直接解析; CUSTOM_SCRIPT 调 z-script 平台",
3580
+ children: /* @__PURE__ */ u.jsx(pe, { options: bo })
3581
+ }
3582
+ ),
3583
+ S === "CUSTOM_SCRIPT" && /* @__PURE__ */ u.jsx(
3584
+ F.Item,
3585
+ {
3586
+ label: "z-script 脚本",
3587
+ name: "extractorScriptCode",
3588
+ rules: [{ required: !0, message: "请选择脚本" }],
3589
+ extra: "在 智能中心 > 脚本中心 维护脚本. 脚本返回 { items: [...], nextCursor: '...' }",
3590
+ children: /* @__PURE__ */ u.jsx(
3591
+ pe,
3592
+ {
3593
+ showSearch: !0,
3594
+ placeholder: "选择已启用的脚本",
3595
+ options: h.map((d) => ({
3596
+ value: d.scriptCode,
3597
+ label: `${d.scriptCode} (${d.dslType})${d.scriptName ? " - " + d.scriptName : ""}`
3598
+ }))
3599
+ }
3600
+ )
3601
+ }
3602
+ )
3603
+ ] }),
3604
+ /* @__PURE__ */ u.jsxs($, { type: "inner", title: "调度", style: { marginBottom: 16 }, children: [
3605
+ /* @__PURE__ */ u.jsx(
3606
+ F.Item,
3607
+ {
3608
+ label: "Cron 表达式",
3609
+ name: "cronExpr",
3610
+ rules: [{ required: !0, message: "请输入 Cron" }],
3611
+ extra: "Quartz 兼容, 例如 0 */5 * * * ? = 每 5 分钟",
3612
+ children: /* @__PURE__ */ u.jsx(te, { addonAfter: /* @__PURE__ */ u.jsx(
3613
+ pe,
3614
+ {
3615
+ style: { width: 140 },
3616
+ placeholder: "常用",
3617
+ options: go,
3618
+ onChange: (d) => n.setFieldValue("cronExpr", d),
3619
+ value: null
3620
+ }
3621
+ ) })
3622
+ }
3623
+ ),
3624
+ /* @__PURE__ */ u.jsxs(J, { size: "large", children: [
3625
+ /* @__PURE__ */ u.jsx(F.Item, { label: "启用", name: "enabled", valuePropName: "checked", children: /* @__PURE__ */ u.jsxs(Se.Group, { children: [
3626
+ /* @__PURE__ */ u.jsx(Se.Button, { value: !0, children: "启用" }),
3627
+ /* @__PURE__ */ u.jsx(Se.Button, { value: !1, children: "停用" })
3628
+ ] }) }),
3629
+ /* @__PURE__ */ u.jsx(
3630
+ F.Item,
3631
+ {
3632
+ label: "最小间隔 (秒)",
3633
+ name: "minIntervalSec",
3634
+ extra: "距上次 run 至少 N 秒",
3635
+ children: /* @__PURE__ */ u.jsx(ot, { min: 0, max: 3600 })
3636
+ }
3637
+ ),
3638
+ /* @__PURE__ */ u.jsx(F.Item, { label: "单次最多条数", name: "maxItemsPerRun", children: /* @__PURE__ */ u.jsx(ot, { min: 1, max: 1e4 }) })
3639
+ ] })
3640
+ ] }),
3641
+ /* @__PURE__ */ u.jsx(
3642
+ Fe,
3643
+ {
3644
+ type: "success",
3645
+ showIcon: !0,
3646
+ message: "保存后会自动 dry-run: 真实 HTTP 一次, 把响应喂给抽取器, 失败时订阅进入 INVALID_AUTH 状态, 不会自动调度."
3647
+ }
3648
+ )
3649
+ ]
3650
+ }
3651
+ ) })
3652
+ }
3653
+ ) });
3654
+ }
3655
+ const wo = {
3656
+ PENDING: "default",
3657
+ RUNNING: "processing",
3658
+ SUCCESS: "green",
3659
+ EMPTY: "default",
3660
+ FAILED: "red",
3661
+ FATAL: "red"
3662
+ };
3663
+ function Eo() {
3664
+ const [e, t] = z([]), [r, n] = z(null), [s, o] = z([]), [a, c] = z([]), [f, m] = z(null), [h, b] = z(!1);
3665
+ Ye(() => {
3666
+ T();
3667
+ }, []), Ye(() => {
3668
+ r && S(r);
3669
+ }, [r]);
3670
+ const T = async () => {
3671
+ try {
3672
+ const x = await M.get("/subscribe/subscription/list"), d = (x == null ? void 0 : x.data) ?? x ?? [];
3673
+ t(Array.isArray(d) ? d : []), Array.isArray(d) && d.length > 0 && n(d[0].id);
3674
+ } catch {
3675
+ L.error("加载订阅列表失败");
3676
+ }
3677
+ }, S = async (x) => {
3678
+ b(!0);
3679
+ try {
3680
+ const d = await M.get(`/subscribe/run/list?subscriptionId=${x}&limit=50`), O = (d == null ? void 0 : d.data) ?? d ?? [];
3681
+ o(Array.isArray(O) ? O : []);
3682
+ } catch {
3683
+ L.error("加载运行历史失败");
3684
+ } finally {
3685
+ b(!1);
3686
+ }
3687
+ }, C = async (x) => {
3688
+ m(x);
3689
+ try {
3690
+ const d = await M.get(`/subscribe/run/${x}/items?limit=200`), O = (d == null ? void 0 : d.data) ?? d ?? [];
3691
+ c(Array.isArray(O) ? O : []);
3692
+ } catch {
3693
+ L.error("加载抽取项失败");
3694
+ }
3695
+ }, P = s.reduce((x, d) => x + (d.successCount || 0), 0), R = s.reduce((x, d) => x + (d.deadLetterCount || 0), 0), y = s.reduce((x, d) => x + (d.duplicateCount || 0), 0);
3696
+ return /* @__PURE__ */ u.jsx("div", { style: { padding: 24 }, children: /* @__PURE__ */ u.jsxs(
3697
+ $,
3698
+ {
3699
+ title: /* @__PURE__ */ u.jsxs(J, { children: [
3700
+ /* @__PURE__ */ u.jsx(bt, {}),
3701
+ "订阅中心 - 运行历史"
3702
+ ] }),
3703
+ extra: /* @__PURE__ */ u.jsxs(J, { children: [
3704
+ /* @__PURE__ */ u.jsx(
3705
+ pe,
3706
+ {
3707
+ style: { width: 280 },
3708
+ placeholder: "选择订阅",
3709
+ value: r,
3710
+ onChange: n,
3711
+ options: e.map((x) => ({ value: x.id, label: x.name })),
3712
+ showSearch: !0,
3713
+ optionFilterProp: "label"
3714
+ }
3715
+ ),
3716
+ /* @__PURE__ */ u.jsxs("a", { onClick: () => r && S(r), children: [
3717
+ /* @__PURE__ */ u.jsx(yt, {}),
3718
+ " 刷新"
3719
+ ] })
3720
+ ] }),
3721
+ children: [
3722
+ /* @__PURE__ */ u.jsxs(Ct, { gutter: 16, style: { marginBottom: 16 }, children: [
3723
+ /* @__PURE__ */ u.jsx(Te, { span: 6, children: /* @__PURE__ */ u.jsx($, { children: /* @__PURE__ */ u.jsx(Me, { title: "run 总数", value: s.length }) }) }),
3724
+ /* @__PURE__ */ u.jsx(Te, { span: 6, children: /* @__PURE__ */ u.jsx($, { children: /* @__PURE__ */ u.jsx(Me, { title: "成功条数", value: P, valueStyle: { color: "#3f8600" } }) }) }),
3725
+ /* @__PURE__ */ u.jsx(Te, { span: 6, children: /* @__PURE__ */ u.jsx($, { children: /* @__PURE__ */ u.jsx(Me, { title: "死信条数", value: R, valueStyle: { color: "#cf1322" } }) }) }),
3726
+ /* @__PURE__ */ u.jsx(Te, { span: 6, children: /* @__PURE__ */ u.jsx($, { children: /* @__PURE__ */ u.jsx(Me, { title: "重复跳过", value: y }) }) })
3727
+ ] }),
3728
+ /* @__PURE__ */ u.jsxs(Ct, { gutter: 16, children: [
3729
+ /* @__PURE__ */ u.jsx(Te, { span: 12, children: /* @__PURE__ */ u.jsx($, { type: "inner", title: `运行列表 (${s.length})`, size: "small", children: /* @__PURE__ */ u.jsx(
3730
+ Ue,
3731
+ {
3732
+ rowKey: "id",
3733
+ size: "small",
3734
+ loading: h,
3735
+ dataSource: s,
3736
+ pagination: { pageSize: 10 },
3737
+ onRow: (x) => ({
3738
+ onClick: () => C(x.id),
3739
+ style: { cursor: "pointer", background: x.id === f ? "#e6f7ff" : "" }
3740
+ }),
3741
+ columns: [
3742
+ { title: "ID", dataIndex: "id", width: 60 },
3743
+ {
3744
+ title: "计划",
3745
+ dataIndex: "scheduledAt",
3746
+ width: 150,
3747
+ render: (x) => x ? new Date(x).toLocaleString() : "-"
3748
+ },
3749
+ { title: "耗时", dataIndex: "durationMs", width: 80 },
3750
+ {
3751
+ title: "状态",
3752
+ dataIndex: "status",
3753
+ width: 80,
3754
+ render: (x) => /* @__PURE__ */ u.jsx(ee, { color: wo[x], children: x })
3755
+ },
3756
+ {
3757
+ title: "拉取/成功/死信",
3758
+ width: 150,
3759
+ render: (x, d) => `${d.fetchedCount} / ${d.successCount} / ${d.deadLetterCount}`
3760
+ }
3761
+ ]
3762
+ }
3763
+ ) }) }),
3764
+ /* @__PURE__ */ u.jsx(Te, { span: 12, children: /* @__PURE__ */ u.jsx(
3765
+ $,
3766
+ {
3767
+ type: "inner",
3768
+ title: f ? `run#${f} 抽取项 (${a.length})` : "抽取项",
3769
+ size: "small",
3770
+ children: a.length === 0 ? /* @__PURE__ */ u.jsx($r, { description: f ? "该 run 无抽取项" : "点击左侧 run 查看抽取项" }) : /* @__PURE__ */ u.jsx(
3771
+ Ue,
3772
+ {
3773
+ rowKey: "id",
3774
+ size: "small",
3775
+ dataSource: a,
3776
+ pagination: { pageSize: 10 },
3777
+ columns: [
3778
+ { title: "id", dataIndex: "dedupKey", width: 160, ellipsis: !0 },
3779
+ {
3780
+ title: "title",
3781
+ dataIndex: "normalized",
3782
+ render: (x) => {
3783
+ try {
3784
+ return JSON.parse(x).title || "(无标题)";
3785
+ } catch {
3786
+ return x;
3787
+ }
3788
+ }
3789
+ },
3790
+ {
3791
+ title: "link",
3792
+ dataIndex: "normalized",
3793
+ width: 60,
3794
+ render: (x) => {
3795
+ try {
3796
+ const d = JSON.parse(x);
3797
+ return d.link ? /* @__PURE__ */ u.jsx("a", { href: d.link, target: "_blank", children: "↗" }) : "-";
3798
+ } catch {
3799
+ return "-";
3800
+ }
3801
+ }
3802
+ },
3803
+ {
3804
+ title: "状态",
3805
+ dataIndex: "status",
3806
+ width: 100,
3807
+ render: (x) => /* @__PURE__ */ u.jsx(ee, { children: x })
3808
+ }
3809
+ ]
3810
+ }
3811
+ )
3812
+ }
3813
+ ) })
3814
+ ] })
3815
+ ]
3816
+ }
3817
+ ) });
3818
+ }
3819
+ function _i() {
3820
+ return /* @__PURE__ */ u.jsxs(kr, { children: [
3821
+ /* @__PURE__ */ u.jsx(Ie, { index: !0, element: /* @__PURE__ */ u.jsx(Dr, { to: "list", replace: !0 }) }),
3822
+ /* @__PURE__ */ u.jsx(Ie, { path: "list", element: /* @__PURE__ */ u.jsx(mo, {}) }),
3823
+ /* @__PURE__ */ u.jsx(Ie, { path: "new", element: /* @__PURE__ */ u.jsx(tr, {}) }),
3824
+ /* @__PURE__ */ u.jsx(Ie, { path: "edit/:id", element: /* @__PURE__ */ u.jsx(tr, {}) }),
3825
+ /* @__PURE__ */ u.jsx(Ie, { path: "runs", element: /* @__PURE__ */ u.jsx(Eo, {}) })
3826
+ ] });
3827
+ }
3828
+ export {
3829
+ Eo as RunHistory,
3830
+ _i as SubscribeApp,
3831
+ tr as SubscriptionEdit,
3832
+ mo as SubscriptionList
3833
+ };