page-agent-sdk 3.18.0 → 3.19.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.
- package/README.md +3 -3
- package/README.zh-CN.md +3 -3
- package/dist/page-agent-sdk.headless.js +926 -863
- package/dist/page-agent-sdk.iife.js +91 -91
- package/dist/page-agent-sdk.js +132 -65
- package/dist/page-agent-sdk.umd.cjs +10 -10
- package/dist/style.css +1 -1
- package/package.json +2 -1
- package/types/index.d.ts +8 -0
|
@@ -101,7 +101,11 @@ async function m(e, t = {}) {
|
|
|
101
101
|
temperature: t.temperature ?? e.temperature,
|
|
102
102
|
maxTokens: t.maxTokens ?? e.maxTokens,
|
|
103
103
|
...e.baseUrl ? { anthropicApiUrl: f(e.baseUrl) } : {},
|
|
104
|
-
...e.extraConfig ? { clientOptions: e.extraConfig } : {}
|
|
104
|
+
...e.extraConfig ? { clientOptions: e.extraConfig } : {},
|
|
105
|
+
...e.cacheControl ? { invocationKwargs: { cache_control: {
|
|
106
|
+
type: "ephemeral",
|
|
107
|
+
...e.cacheControl === !0 ? {} : { ttl: e.cacheControl }
|
|
108
|
+
} } } : {}
|
|
105
109
|
});
|
|
106
110
|
}
|
|
107
111
|
//#endregion
|
|
@@ -142,10 +146,14 @@ function y(e) {
|
|
|
142
146
|
let t = _(e);
|
|
143
147
|
if (!t || typeof t != "object") return null;
|
|
144
148
|
let n = t, r = Number(n.prompt_tokens ?? n.promptTokens ?? n.input_tokens ?? n.inputTokens ?? 0) || 0, i = Number(n.completion_tokens ?? n.completionTokens ?? n.output_tokens ?? n.outputTokens ?? 0) || 0, a = Number(n.total_tokens ?? n.totalTokens ?? r + i) || 0;
|
|
145
|
-
|
|
149
|
+
if (!r && !i && !a) return null;
|
|
150
|
+
let o = n.input_token_details, s = Number(n.cache_read_input_tokens ?? n.cacheReadInputTokens ?? o?.cache_read ?? 0) || 0, c = Number(n.cache_creation_input_tokens ?? n.cacheCreationInputTokens ?? o?.cache_creation ?? 0) || 0;
|
|
151
|
+
return {
|
|
146
152
|
prompt_tokens: r,
|
|
147
153
|
completion_tokens: i,
|
|
148
|
-
total_tokens: a
|
|
154
|
+
total_tokens: a,
|
|
155
|
+
...s ? { cache_read_input_tokens: s } : {},
|
|
156
|
+
...c ? { cache_creation_input_tokens: c } : {}
|
|
149
157
|
};
|
|
150
158
|
}
|
|
151
159
|
//#endregion
|
|
@@ -161,119 +169,119 @@ process.env.NODE_ENV === "production" || Object.freeze([]);
|
|
|
161
169
|
var S = () => {}, C = (e) => e.charCodeAt(0) === 111 && e.charCodeAt(1) === 110 && (e.charCodeAt(2) > 122 || e.charCodeAt(2) < 97), w = (e) => e.startsWith("onUpdate:"), T = Object.assign, E = (e, t) => {
|
|
162
170
|
let n = e.indexOf(t);
|
|
163
171
|
n > -1 && e.splice(n, 1);
|
|
164
|
-
}, D = Object.prototype.hasOwnProperty, O = (e, t) => D.call(e, t), k = Array.isArray, A = (e) =>
|
|
172
|
+
}, D = Object.prototype.hasOwnProperty, O = (e, t) => D.call(e, t), k = Array.isArray, A = (e) => re(e) === "[object Map]", ee = (e) => re(e) === "[object Set]", j = (e) => typeof e == "function", M = (e) => typeof e == "string", te = (e) => typeof e == "symbol", N = (e) => typeof e == "object" && !!e, P = (e) => (N(e) || j(e)) && j(e.then) && j(e.catch), ne = Object.prototype.toString, re = (e) => ne.call(e), ie = (e) => re(e).slice(8, -1), F = (e) => re(e) === "[object Object]", I = (e) => M(e) && e !== "NaN" && e[0] !== "-" && "" + parseInt(e, 10) === e, L = ((e) => {
|
|
165
173
|
let t = /* @__PURE__ */ Object.create(null);
|
|
166
174
|
return ((n) => t[n] || (t[n] = e(n)));
|
|
167
|
-
})((e) => e.charAt(0).toUpperCase() + e.slice(1)),
|
|
175
|
+
})((e) => e.charAt(0).toUpperCase() + e.slice(1)), R = (e, t) => !Object.is(e, t), ae = (e, t, n, r = !1) => {
|
|
168
176
|
Object.defineProperty(e, t, {
|
|
169
177
|
configurable: !0,
|
|
170
178
|
enumerable: !1,
|
|
171
179
|
writable: r,
|
|
172
180
|
value: n
|
|
173
181
|
});
|
|
174
|
-
},
|
|
175
|
-
function
|
|
182
|
+
}, oe, se = () => oe ||= typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {};
|
|
183
|
+
function ce(e) {
|
|
176
184
|
if (k(e)) {
|
|
177
185
|
let t = {};
|
|
178
186
|
for (let n = 0; n < e.length; n++) {
|
|
179
|
-
let r = e[n], i =
|
|
187
|
+
let r = e[n], i = M(r) ? de(r) : ce(r);
|
|
180
188
|
if (i) for (let e in i) t[e] = i[e];
|
|
181
189
|
}
|
|
182
190
|
return t;
|
|
183
|
-
} else if (
|
|
191
|
+
} else if (M(e) || N(e)) return e;
|
|
184
192
|
}
|
|
185
|
-
var
|
|
186
|
-
function
|
|
193
|
+
var le = /;(?![^(]*\))/g, ue = /:([^]+)/, z = /\/\*[^]*?\*\//g;
|
|
194
|
+
function de(e) {
|
|
187
195
|
let t = {};
|
|
188
|
-
return e.replace(
|
|
196
|
+
return e.replace(z, "").split(le).forEach((e) => {
|
|
189
197
|
if (e) {
|
|
190
|
-
let n = e.split(
|
|
198
|
+
let n = e.split(ue);
|
|
191
199
|
n.length > 1 && (t[n[0].trim()] = n[1].trim());
|
|
192
200
|
}
|
|
193
201
|
}), t;
|
|
194
202
|
}
|
|
195
|
-
function
|
|
203
|
+
function B(e) {
|
|
196
204
|
let t = "";
|
|
197
|
-
if (
|
|
205
|
+
if (M(e)) t = e;
|
|
198
206
|
else if (k(e)) for (let n = 0; n < e.length; n++) {
|
|
199
|
-
let r =
|
|
207
|
+
let r = B(e[n]);
|
|
200
208
|
r && (t += r + " ");
|
|
201
209
|
}
|
|
202
|
-
else if (
|
|
210
|
+
else if (N(e)) for (let n in e) e[n] && (t += n + " ");
|
|
203
211
|
return t.trim();
|
|
204
212
|
}
|
|
205
213
|
//#endregion
|
|
206
214
|
//#region node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js
|
|
207
|
-
function
|
|
215
|
+
function V(e, ...t) {
|
|
208
216
|
console.warn(`[Vue warn] ${e}`, ...t);
|
|
209
217
|
}
|
|
210
|
-
var
|
|
211
|
-
function
|
|
212
|
-
return
|
|
218
|
+
var fe;
|
|
219
|
+
function pe() {
|
|
220
|
+
return fe;
|
|
213
221
|
}
|
|
214
|
-
var
|
|
222
|
+
var H, me = /* @__PURE__ */ new WeakSet(), he = class {
|
|
215
223
|
constructor(e) {
|
|
216
|
-
this.fn = e, this.deps = void 0, this.depsTail = void 0, this.flags = 5, this.next = void 0, this.cleanup = void 0, this.scheduler = void 0,
|
|
224
|
+
this.fn = e, this.deps = void 0, this.depsTail = void 0, this.flags = 5, this.next = void 0, this.cleanup = void 0, this.scheduler = void 0, fe && (fe.active ? fe.effects.push(this) : this.flags &= -2);
|
|
217
225
|
}
|
|
218
226
|
pause() {
|
|
219
227
|
this.flags |= 64;
|
|
220
228
|
}
|
|
221
229
|
resume() {
|
|
222
|
-
this.flags & 64 && (this.flags &= -65,
|
|
230
|
+
this.flags & 64 && (this.flags &= -65, me.has(this) && (me.delete(this), this.trigger()));
|
|
223
231
|
}
|
|
224
232
|
notify() {
|
|
225
|
-
this.flags & 2 && !(this.flags & 32) || this.flags & 8 ||
|
|
233
|
+
this.flags & 2 && !(this.flags & 32) || this.flags & 8 || U(this);
|
|
226
234
|
}
|
|
227
235
|
run() {
|
|
228
236
|
if (!(this.flags & 1)) return this.fn();
|
|
229
|
-
this.flags |= 2,
|
|
230
|
-
let e =
|
|
231
|
-
|
|
237
|
+
this.flags |= 2, ke(this), xe(this);
|
|
238
|
+
let e = H, t = G;
|
|
239
|
+
H = this, G = !0;
|
|
232
240
|
try {
|
|
233
241
|
return this.fn();
|
|
234
242
|
} finally {
|
|
235
|
-
process.env.NODE_ENV !== "production" &&
|
|
243
|
+
process.env.NODE_ENV !== "production" && H !== this && V("Active effect was not restored correctly - this is likely a Vue internal bug."), Se(this), H = e, G = t, this.flags &= -3;
|
|
236
244
|
}
|
|
237
245
|
}
|
|
238
246
|
stop() {
|
|
239
247
|
if (this.flags & 1) {
|
|
240
|
-
for (let e = this.deps; e; e = e.nextDep)
|
|
241
|
-
this.deps = this.depsTail = void 0,
|
|
248
|
+
for (let e = this.deps; e; e = e.nextDep) Te(e);
|
|
249
|
+
this.deps = this.depsTail = void 0, ke(this), this.onStop && this.onStop(), this.flags &= -2;
|
|
242
250
|
}
|
|
243
251
|
}
|
|
244
252
|
trigger() {
|
|
245
|
-
this.flags & 64 ?
|
|
253
|
+
this.flags & 64 ? me.add(this) : this.scheduler ? this.scheduler() : this.runIfDirty();
|
|
246
254
|
}
|
|
247
255
|
runIfDirty() {
|
|
248
|
-
|
|
256
|
+
Ce(this) && this.run();
|
|
249
257
|
}
|
|
250
258
|
get dirty() {
|
|
251
|
-
return
|
|
259
|
+
return Ce(this);
|
|
252
260
|
}
|
|
253
|
-
},
|
|
254
|
-
function
|
|
261
|
+
}, ge = 0, _e, ve;
|
|
262
|
+
function U(e, t = !1) {
|
|
255
263
|
if (e.flags |= 8, t) {
|
|
256
|
-
e.next =
|
|
264
|
+
e.next = ve, ve = e;
|
|
257
265
|
return;
|
|
258
266
|
}
|
|
259
|
-
e.next =
|
|
267
|
+
e.next = _e, _e = e;
|
|
260
268
|
}
|
|
261
|
-
function
|
|
262
|
-
|
|
269
|
+
function ye() {
|
|
270
|
+
ge++;
|
|
263
271
|
}
|
|
264
|
-
function
|
|
265
|
-
if (--
|
|
266
|
-
if (
|
|
267
|
-
let e =
|
|
268
|
-
for (
|
|
272
|
+
function be() {
|
|
273
|
+
if (--ge > 0) return;
|
|
274
|
+
if (ve) {
|
|
275
|
+
let e = ve;
|
|
276
|
+
for (ve = void 0; e;) {
|
|
269
277
|
let t = e.next;
|
|
270
278
|
e.next = void 0, e.flags &= -9, e = t;
|
|
271
279
|
}
|
|
272
280
|
}
|
|
273
281
|
let e;
|
|
274
|
-
for (;
|
|
275
|
-
let t =
|
|
276
|
-
for (
|
|
282
|
+
for (; _e;) {
|
|
283
|
+
let t = _e;
|
|
284
|
+
for (_e = void 0; t;) {
|
|
277
285
|
let n = t.next;
|
|
278
286
|
if (t.next = void 0, t.flags &= -9, t.flags & 1) try {
|
|
279
287
|
t.trigger();
|
|
@@ -285,127 +293,127 @@ function xe() {
|
|
|
285
293
|
}
|
|
286
294
|
if (e) throw e;
|
|
287
295
|
}
|
|
288
|
-
function
|
|
296
|
+
function xe(e) {
|
|
289
297
|
for (let t = e.deps; t; t = t.nextDep) t.version = -1, t.prevActiveLink = t.dep.activeLink, t.dep.activeLink = t;
|
|
290
298
|
}
|
|
291
|
-
function
|
|
299
|
+
function Se(e) {
|
|
292
300
|
let t, n = e.depsTail, r = n;
|
|
293
301
|
for (; r;) {
|
|
294
302
|
let e = r.prevDep;
|
|
295
|
-
r.version === -1 ? (r === n && (n = e),
|
|
303
|
+
r.version === -1 ? (r === n && (n = e), Te(r), W(r)) : t = r, r.dep.activeLink = r.prevActiveLink, r.prevActiveLink = void 0, r = e;
|
|
296
304
|
}
|
|
297
305
|
e.deps = t, e.depsTail = n;
|
|
298
306
|
}
|
|
299
|
-
function
|
|
300
|
-
for (let t = e.deps; t; t = t.nextDep) if (t.dep.version !== t.version || t.dep.computed && (
|
|
307
|
+
function Ce(e) {
|
|
308
|
+
for (let t = e.deps; t; t = t.nextDep) if (t.dep.version !== t.version || t.dep.computed && (we(t.dep.computed) || t.dep.version !== t.version)) return !0;
|
|
301
309
|
return !!e._dirty;
|
|
302
310
|
}
|
|
303
|
-
function
|
|
304
|
-
if (e.flags & 4 && !(e.flags & 16) || (e.flags &= -17, e.globalVersion ===
|
|
311
|
+
function we(e) {
|
|
312
|
+
if (e.flags & 4 && !(e.flags & 16) || (e.flags &= -17, e.globalVersion === Ae) || (e.globalVersion = Ae, !e.isSSR && e.flags & 128 && (!e.deps && !e._dirty || !Ce(e)))) return;
|
|
305
313
|
e.flags |= 2;
|
|
306
|
-
let t = e.dep, n =
|
|
307
|
-
|
|
314
|
+
let t = e.dep, n = H, r = G;
|
|
315
|
+
H = e, G = !0;
|
|
308
316
|
try {
|
|
309
|
-
|
|
317
|
+
xe(e);
|
|
310
318
|
let n = e.fn(e._value);
|
|
311
|
-
(t.version === 0 ||
|
|
319
|
+
(t.version === 0 || R(n, e._value)) && (e.flags |= 128, e._value = n, t.version++);
|
|
312
320
|
} catch (e) {
|
|
313
321
|
throw t.version++, e;
|
|
314
322
|
} finally {
|
|
315
|
-
|
|
323
|
+
H = n, G = r, Se(e), e.flags &= -3;
|
|
316
324
|
}
|
|
317
325
|
}
|
|
318
|
-
function
|
|
326
|
+
function Te(e, t = !1) {
|
|
319
327
|
let { dep: n, prevSub: r, nextSub: i } = e;
|
|
320
328
|
if (r && (r.nextSub = i, e.prevSub = void 0), i && (i.prevSub = r, e.nextSub = void 0), process.env.NODE_ENV !== "production" && n.subsHead === e && (n.subsHead = i), n.subs === e && (n.subs = r, !r && n.computed)) {
|
|
321
329
|
n.computed.flags &= -5;
|
|
322
|
-
for (let e = n.computed.deps; e; e = e.nextDep)
|
|
330
|
+
for (let e = n.computed.deps; e; e = e.nextDep) Te(e, !0);
|
|
323
331
|
}
|
|
324
332
|
!t && !--n.sc && n.map && n.map.delete(n.key);
|
|
325
333
|
}
|
|
326
|
-
function
|
|
334
|
+
function W(e) {
|
|
327
335
|
let { prevDep: t, nextDep: n } = e;
|
|
328
336
|
t && (t.nextDep = n, e.prevDep = void 0), n && (n.prevDep = t, e.nextDep = void 0);
|
|
329
337
|
}
|
|
330
|
-
var
|
|
331
|
-
function
|
|
332
|
-
|
|
338
|
+
var G = !0, Ee = [];
|
|
339
|
+
function De() {
|
|
340
|
+
Ee.push(G), G = !1;
|
|
333
341
|
}
|
|
334
|
-
function
|
|
335
|
-
let e =
|
|
336
|
-
|
|
342
|
+
function Oe() {
|
|
343
|
+
let e = Ee.pop();
|
|
344
|
+
G = e === void 0 || e;
|
|
337
345
|
}
|
|
338
|
-
function
|
|
346
|
+
function ke(e) {
|
|
339
347
|
let { cleanup: t } = e;
|
|
340
348
|
if (e.cleanup = void 0, t) {
|
|
341
|
-
let e =
|
|
342
|
-
|
|
349
|
+
let e = H;
|
|
350
|
+
H = void 0;
|
|
343
351
|
try {
|
|
344
352
|
t();
|
|
345
353
|
} finally {
|
|
346
|
-
|
|
354
|
+
H = e;
|
|
347
355
|
}
|
|
348
356
|
}
|
|
349
357
|
}
|
|
350
|
-
var
|
|
358
|
+
var Ae = 0, je = class {
|
|
351
359
|
constructor(e, t) {
|
|
352
360
|
this.sub = e, this.dep = t, this.version = t.version, this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;
|
|
353
361
|
}
|
|
354
|
-
},
|
|
362
|
+
}, Me = class {
|
|
355
363
|
constructor(e) {
|
|
356
364
|
this.computed = e, this.version = 0, this.activeLink = void 0, this.subs = void 0, this.map = void 0, this.key = void 0, this.sc = 0, this.__v_skip = !0, process.env.NODE_ENV !== "production" && (this.subsHead = void 0);
|
|
357
365
|
}
|
|
358
366
|
track(e) {
|
|
359
|
-
if (!
|
|
367
|
+
if (!H || !G || H === this.computed) return;
|
|
360
368
|
let t = this.activeLink;
|
|
361
|
-
if (t === void 0 || t.sub !==
|
|
369
|
+
if (t === void 0 || t.sub !== H) t = this.activeLink = new je(H, this), H.deps ? (t.prevDep = H.depsTail, H.depsTail.nextDep = t, H.depsTail = t) : H.deps = H.depsTail = t, Ne(t);
|
|
362
370
|
else if (t.version === -1 && (t.version = this.version, t.nextDep)) {
|
|
363
371
|
let e = t.nextDep;
|
|
364
|
-
e.prevDep = t.prevDep, t.prevDep && (t.prevDep.nextDep = e), t.prevDep =
|
|
372
|
+
e.prevDep = t.prevDep, t.prevDep && (t.prevDep.nextDep = e), t.prevDep = H.depsTail, t.nextDep = void 0, H.depsTail.nextDep = t, H.depsTail = t, H.deps === t && (H.deps = e);
|
|
365
373
|
}
|
|
366
|
-
return process.env.NODE_ENV !== "production" &&
|
|
374
|
+
return process.env.NODE_ENV !== "production" && H.onTrack && H.onTrack(T({ effect: H }, e)), t;
|
|
367
375
|
}
|
|
368
376
|
trigger(e) {
|
|
369
|
-
this.version++,
|
|
377
|
+
this.version++, Ae++, this.notify(e);
|
|
370
378
|
}
|
|
371
379
|
notify(e) {
|
|
372
|
-
|
|
380
|
+
ye();
|
|
373
381
|
try {
|
|
374
382
|
if (process.env.NODE_ENV !== "production") for (let t = this.subsHead; t; t = t.nextSub) t.sub.onTrigger && !(t.sub.flags & 8) && t.sub.onTrigger(T({ effect: t.sub }, e));
|
|
375
383
|
for (let e = this.subs; e; e = e.prevSub) e.sub.notify() && e.sub.dep.notify();
|
|
376
384
|
} finally {
|
|
377
|
-
|
|
385
|
+
be();
|
|
378
386
|
}
|
|
379
387
|
}
|
|
380
388
|
};
|
|
381
|
-
function
|
|
389
|
+
function Ne(e) {
|
|
382
390
|
if (e.dep.sc++, e.sub.flags & 4) {
|
|
383
391
|
let t = e.dep.computed;
|
|
384
392
|
if (t && !e.dep.subs) {
|
|
385
393
|
t.flags |= 20;
|
|
386
|
-
for (let e = t.deps; e; e = e.nextDep)
|
|
394
|
+
for (let e = t.deps; e; e = e.nextDep) Ne(e);
|
|
387
395
|
}
|
|
388
396
|
let n = e.dep.subs;
|
|
389
397
|
n !== e && (e.prevSub = n, n && (n.nextSub = e)), process.env.NODE_ENV !== "production" && e.dep.subsHead === void 0 && (e.dep.subsHead = e), e.dep.subs = e;
|
|
390
398
|
}
|
|
391
399
|
}
|
|
392
|
-
var
|
|
393
|
-
function
|
|
394
|
-
if (
|
|
395
|
-
let r =
|
|
396
|
-
r ||
|
|
400
|
+
var Pe = /* @__PURE__ */ new WeakMap(), Fe = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Object iterate"), Ie = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Map keys iterate"), Le = /* @__PURE__ */ Symbol(process.env.NODE_ENV === "production" ? "" : "Array iterate");
|
|
401
|
+
function K(e, t, n) {
|
|
402
|
+
if (G && H) {
|
|
403
|
+
let r = Pe.get(e);
|
|
404
|
+
r || Pe.set(e, r = /* @__PURE__ */ new Map());
|
|
397
405
|
let i = r.get(n);
|
|
398
|
-
i || (r.set(n, i = new
|
|
406
|
+
i || (r.set(n, i = new Me()), i.map = r, i.key = n), process.env.NODE_ENV === "production" ? i.track() : i.track({
|
|
399
407
|
target: e,
|
|
400
408
|
type: t,
|
|
401
409
|
key: n
|
|
402
410
|
});
|
|
403
411
|
}
|
|
404
412
|
}
|
|
405
|
-
function
|
|
406
|
-
let o =
|
|
413
|
+
function Re(e, t, n, r, i, a) {
|
|
414
|
+
let o = Pe.get(e);
|
|
407
415
|
if (!o) {
|
|
408
|
-
|
|
416
|
+
Ae++;
|
|
409
417
|
return;
|
|
410
418
|
}
|
|
411
419
|
let s = (o) => {
|
|
@@ -418,173 +426,173 @@ function ze(e, t, n, r, i, a) {
|
|
|
418
426
|
oldTarget: a
|
|
419
427
|
}));
|
|
420
428
|
};
|
|
421
|
-
if (
|
|
429
|
+
if (ye(), t === "clear") o.forEach(s);
|
|
422
430
|
else {
|
|
423
|
-
let i = k(e), a = i &&
|
|
431
|
+
let i = k(e), a = i && I(n);
|
|
424
432
|
if (i && n === "length") {
|
|
425
433
|
let e = Number(r);
|
|
426
434
|
o.forEach((t, n) => {
|
|
427
|
-
(n === "length" || n ===
|
|
435
|
+
(n === "length" || n === Le || !te(n) && n >= e) && s(t);
|
|
428
436
|
});
|
|
429
|
-
} else switch ((n !== void 0 || o.has(void 0)) && s(o.get(n)), a && s(o.get(
|
|
437
|
+
} else switch ((n !== void 0 || o.has(void 0)) && s(o.get(n)), a && s(o.get(Le)), t) {
|
|
430
438
|
case "add":
|
|
431
|
-
i ? a && s(o.get("length")) : (s(o.get(
|
|
439
|
+
i ? a && s(o.get("length")) : (s(o.get(Fe)), A(e) && s(o.get(Ie)));
|
|
432
440
|
break;
|
|
433
441
|
case "delete":
|
|
434
|
-
i || (s(o.get(
|
|
442
|
+
i || (s(o.get(Fe)), A(e) && s(o.get(Ie)));
|
|
435
443
|
break;
|
|
436
444
|
case "set":
|
|
437
|
-
A(e) && s(o.get(
|
|
445
|
+
A(e) && s(o.get(Fe));
|
|
438
446
|
break;
|
|
439
447
|
}
|
|
440
448
|
}
|
|
441
|
-
|
|
449
|
+
be();
|
|
442
450
|
}
|
|
443
|
-
function
|
|
444
|
-
let t = /* @__PURE__ */
|
|
445
|
-
return t === e ? t : (
|
|
451
|
+
function ze(e) {
|
|
452
|
+
let t = /* @__PURE__ */ J(e);
|
|
453
|
+
return t === e ? t : (K(t, "iterate", Le), /* @__PURE__ */ wt(e) ? t : t.map(Dt));
|
|
446
454
|
}
|
|
447
|
-
function
|
|
448
|
-
return
|
|
455
|
+
function Be(e) {
|
|
456
|
+
return K(e = /* @__PURE__ */ J(e), "iterate", Le), e;
|
|
449
457
|
}
|
|
450
|
-
function
|
|
451
|
-
return /* @__PURE__ */
|
|
458
|
+
function Ve(e, t) {
|
|
459
|
+
return /* @__PURE__ */ Ct(e) ? Ot(/* @__PURE__ */ St(e) ? Dt(t) : t) : Dt(t);
|
|
452
460
|
}
|
|
453
|
-
var
|
|
461
|
+
var He = {
|
|
454
462
|
__proto__: null,
|
|
455
463
|
[Symbol.iterator]() {
|
|
456
|
-
return
|
|
464
|
+
return Ue(this, Symbol.iterator, (e) => Ve(this, e));
|
|
457
465
|
},
|
|
458
466
|
concat(...e) {
|
|
459
|
-
return
|
|
467
|
+
return ze(this).concat(...e.map((e) => k(e) ? ze(e) : e));
|
|
460
468
|
},
|
|
461
469
|
entries() {
|
|
462
|
-
return
|
|
470
|
+
return Ue(this, "entries", (e) => (e[1] = Ve(this, e[1]), e));
|
|
463
471
|
},
|
|
464
472
|
every(e, t) {
|
|
465
|
-
return
|
|
473
|
+
return Ge(this, "every", e, t, void 0, arguments);
|
|
466
474
|
},
|
|
467
475
|
filter(e, t) {
|
|
468
|
-
return
|
|
476
|
+
return Ge(this, "filter", e, t, (e) => e.map((e) => Ve(this, e)), arguments);
|
|
469
477
|
},
|
|
470
478
|
find(e, t) {
|
|
471
|
-
return
|
|
479
|
+
return Ge(this, "find", e, t, (e) => Ve(this, e), arguments);
|
|
472
480
|
},
|
|
473
481
|
findIndex(e, t) {
|
|
474
|
-
return
|
|
482
|
+
return Ge(this, "findIndex", e, t, void 0, arguments);
|
|
475
483
|
},
|
|
476
484
|
findLast(e, t) {
|
|
477
|
-
return
|
|
485
|
+
return Ge(this, "findLast", e, t, (e) => Ve(this, e), arguments);
|
|
478
486
|
},
|
|
479
487
|
findLastIndex(e, t) {
|
|
480
|
-
return
|
|
488
|
+
return Ge(this, "findLastIndex", e, t, void 0, arguments);
|
|
481
489
|
},
|
|
482
490
|
forEach(e, t) {
|
|
483
|
-
return
|
|
491
|
+
return Ge(this, "forEach", e, t, void 0, arguments);
|
|
484
492
|
},
|
|
485
493
|
includes(...e) {
|
|
486
|
-
return
|
|
494
|
+
return qe(this, "includes", e);
|
|
487
495
|
},
|
|
488
496
|
indexOf(...e) {
|
|
489
|
-
return
|
|
497
|
+
return qe(this, "indexOf", e);
|
|
490
498
|
},
|
|
491
499
|
join(e) {
|
|
492
|
-
return
|
|
500
|
+
return ze(this).join(e);
|
|
493
501
|
},
|
|
494
502
|
lastIndexOf(...e) {
|
|
495
|
-
return
|
|
503
|
+
return qe(this, "lastIndexOf", e);
|
|
496
504
|
},
|
|
497
505
|
map(e, t) {
|
|
498
|
-
return
|
|
506
|
+
return Ge(this, "map", e, t, void 0, arguments);
|
|
499
507
|
},
|
|
500
508
|
pop() {
|
|
501
|
-
return
|
|
509
|
+
return Je(this, "pop");
|
|
502
510
|
},
|
|
503
511
|
push(...e) {
|
|
504
|
-
return
|
|
512
|
+
return Je(this, "push", e);
|
|
505
513
|
},
|
|
506
514
|
reduce(e, ...t) {
|
|
507
|
-
return
|
|
515
|
+
return Ke(this, "reduce", e, t);
|
|
508
516
|
},
|
|
509
517
|
reduceRight(e, ...t) {
|
|
510
|
-
return
|
|
518
|
+
return Ke(this, "reduceRight", e, t);
|
|
511
519
|
},
|
|
512
520
|
shift() {
|
|
513
|
-
return
|
|
521
|
+
return Je(this, "shift");
|
|
514
522
|
},
|
|
515
523
|
some(e, t) {
|
|
516
|
-
return
|
|
524
|
+
return Ge(this, "some", e, t, void 0, arguments);
|
|
517
525
|
},
|
|
518
526
|
splice(...e) {
|
|
519
|
-
return
|
|
527
|
+
return Je(this, "splice", e);
|
|
520
528
|
},
|
|
521
529
|
toReversed() {
|
|
522
|
-
return
|
|
530
|
+
return ze(this).toReversed();
|
|
523
531
|
},
|
|
524
532
|
toSorted(e) {
|
|
525
|
-
return
|
|
533
|
+
return ze(this).toSorted(e);
|
|
526
534
|
},
|
|
527
535
|
toSpliced(...e) {
|
|
528
|
-
return
|
|
536
|
+
return ze(this).toSpliced(...e);
|
|
529
537
|
},
|
|
530
538
|
unshift(...e) {
|
|
531
|
-
return
|
|
539
|
+
return Je(this, "unshift", e);
|
|
532
540
|
},
|
|
533
541
|
values() {
|
|
534
|
-
return
|
|
542
|
+
return Ue(this, "values", (e) => Ve(this, e));
|
|
535
543
|
}
|
|
536
544
|
};
|
|
537
|
-
function
|
|
538
|
-
let r =
|
|
539
|
-
return r !== e && !/* @__PURE__ */
|
|
545
|
+
function Ue(e, t, n) {
|
|
546
|
+
let r = Be(e), i = r[t]();
|
|
547
|
+
return r !== e && !/* @__PURE__ */ wt(e) && (i._next = i.next, i.next = () => {
|
|
540
548
|
let e = i._next();
|
|
541
549
|
return e.done || (e.value = n(e.value)), e;
|
|
542
550
|
}), i;
|
|
543
551
|
}
|
|
544
|
-
var
|
|
545
|
-
function
|
|
546
|
-
let o =
|
|
547
|
-
if (c !==
|
|
552
|
+
var We = Array.prototype;
|
|
553
|
+
function Ge(e, t, n, r, i, a) {
|
|
554
|
+
let o = Be(e), s = o !== e && !/* @__PURE__ */ wt(e), c = o[t];
|
|
555
|
+
if (c !== We[t]) {
|
|
548
556
|
let t = c.apply(e, a);
|
|
549
|
-
return s ?
|
|
557
|
+
return s ? Dt(t) : t;
|
|
550
558
|
}
|
|
551
559
|
let l = n;
|
|
552
560
|
o !== e && (s ? l = function(t, r) {
|
|
553
|
-
return n.call(this,
|
|
561
|
+
return n.call(this, Ve(e, t), r, e);
|
|
554
562
|
} : n.length > 2 && (l = function(t, r) {
|
|
555
563
|
return n.call(this, t, r, e);
|
|
556
564
|
}));
|
|
557
565
|
let u = c.call(o, l, r);
|
|
558
566
|
return s && i ? i(u) : u;
|
|
559
567
|
}
|
|
560
|
-
function
|
|
561
|
-
let i =
|
|
568
|
+
function Ke(e, t, n, r) {
|
|
569
|
+
let i = Be(e), a = i !== e && !/* @__PURE__ */ wt(e), o = n, s = !1;
|
|
562
570
|
i !== e && (a ? (s = r.length === 0, o = function(t, r, i) {
|
|
563
|
-
return s && (s = !1, t =
|
|
571
|
+
return s && (s = !1, t = Ve(e, t)), n.call(this, t, Ve(e, r), i, e);
|
|
564
572
|
}) : n.length > 3 && (o = function(t, r, i) {
|
|
565
573
|
return n.call(this, t, r, i, e);
|
|
566
574
|
}));
|
|
567
575
|
let c = i[t](o, ...r);
|
|
568
|
-
return s ?
|
|
576
|
+
return s ? Ve(e, c) : c;
|
|
569
577
|
}
|
|
570
|
-
function
|
|
571
|
-
let r = /* @__PURE__ */
|
|
572
|
-
|
|
578
|
+
function qe(e, t, n) {
|
|
579
|
+
let r = /* @__PURE__ */ J(e);
|
|
580
|
+
K(r, "iterate", Le);
|
|
573
581
|
let i = r[t](...n);
|
|
574
|
-
return (i === -1 || i === !1) && /* @__PURE__ */
|
|
582
|
+
return (i === -1 || i === !1) && /* @__PURE__ */ Tt(n[0]) ? (n[0] = /* @__PURE__ */ J(n[0]), r[t](...n)) : i;
|
|
575
583
|
}
|
|
576
|
-
function
|
|
577
|
-
|
|
578
|
-
let r = (/* @__PURE__ */
|
|
579
|
-
return
|
|
584
|
+
function Je(e, t, n = []) {
|
|
585
|
+
De(), ye();
|
|
586
|
+
let r = (/* @__PURE__ */ J(e))[t].apply(e, n);
|
|
587
|
+
return be(), Oe(), r;
|
|
580
588
|
}
|
|
581
|
-
var
|
|
582
|
-
function
|
|
583
|
-
|
|
584
|
-
let t = /* @__PURE__ */
|
|
585
|
-
return
|
|
589
|
+
var Ye = /* @__PURE__ */ b("__proto__,__v_isRef,__isVue"), Xe = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((e) => e !== "arguments" && e !== "caller").map((e) => Symbol[e]).filter(te));
|
|
590
|
+
function Ze(e) {
|
|
591
|
+
te(e) || (e = String(e));
|
|
592
|
+
let t = /* @__PURE__ */ J(this);
|
|
593
|
+
return K(t, "has", e), t.hasOwnProperty(e);
|
|
586
594
|
}
|
|
587
|
-
var
|
|
595
|
+
var Qe = class {
|
|
588
596
|
constructor(e = !1, t = !1) {
|
|
589
597
|
this._isReadonly = e, this._isShallow = t;
|
|
590
598
|
}
|
|
@@ -594,60 +602,60 @@ var $e = class {
|
|
|
594
602
|
if (t === "__v_isReactive") return !r;
|
|
595
603
|
if (t === "__v_isReadonly") return r;
|
|
596
604
|
if (t === "__v_isShallow") return i;
|
|
597
|
-
if (t === "__v_raw") return n === (r ? i ?
|
|
605
|
+
if (t === "__v_raw") return n === (r ? i ? gt : ht : i ? mt : pt).get(e) || Object.getPrototypeOf(e) === Object.getPrototypeOf(n) ? e : void 0;
|
|
598
606
|
let a = k(e);
|
|
599
607
|
if (!r) {
|
|
600
608
|
let e;
|
|
601
|
-
if (a && (e =
|
|
602
|
-
if (t === "hasOwnProperty") return
|
|
609
|
+
if (a && (e = He[t])) return e;
|
|
610
|
+
if (t === "hasOwnProperty") return Ze;
|
|
603
611
|
}
|
|
604
|
-
let o = Reflect.get(e, t, /* @__PURE__ */
|
|
605
|
-
if ((
|
|
606
|
-
if (/* @__PURE__ */
|
|
607
|
-
let e = a &&
|
|
608
|
-
return r &&
|
|
612
|
+
let o = Reflect.get(e, t, /* @__PURE__ */ kt(e) ? e : n);
|
|
613
|
+
if ((te(t) ? Xe.has(t) : Ye(t)) || (r || K(e, "get", t), i)) return o;
|
|
614
|
+
if (/* @__PURE__ */ kt(o)) {
|
|
615
|
+
let e = a && I(t) ? o : o.value;
|
|
616
|
+
return r && N(e) ? /* @__PURE__ */ yt(e) : e;
|
|
609
617
|
}
|
|
610
|
-
return
|
|
618
|
+
return N(o) ? r ? /* @__PURE__ */ yt(o) : /* @__PURE__ */ vt(o) : o;
|
|
611
619
|
}
|
|
612
|
-
},
|
|
620
|
+
}, $e = class extends Qe {
|
|
613
621
|
constructor(e = !1) {
|
|
614
622
|
super(!1, e);
|
|
615
623
|
}
|
|
616
624
|
set(e, t, n, r) {
|
|
617
|
-
let i = e[t], a = k(e) &&
|
|
625
|
+
let i = e[t], a = k(e) && I(t);
|
|
618
626
|
if (!this._isShallow) {
|
|
619
|
-
let r = /* @__PURE__ */
|
|
620
|
-
if (!/* @__PURE__ */
|
|
627
|
+
let r = /* @__PURE__ */ Ct(i);
|
|
628
|
+
if (!/* @__PURE__ */ wt(n) && !/* @__PURE__ */ Ct(n) && (i = /* @__PURE__ */ J(i), n = /* @__PURE__ */ J(n)), !a && /* @__PURE__ */ kt(i) && !/* @__PURE__ */ kt(n)) return r ? (process.env.NODE_ENV !== "production" && V(`Set operation on key "${String(t)}" failed: target is readonly.`, e[t]), !0) : (i.value = n, !0);
|
|
621
629
|
}
|
|
622
|
-
let o = a ? Number(t) < e.length : O(e, t), s = Reflect.set(e, t, n, /* @__PURE__ */
|
|
623
|
-
return e === /* @__PURE__ */
|
|
630
|
+
let o = a ? Number(t) < e.length : O(e, t), s = Reflect.set(e, t, n, /* @__PURE__ */ kt(e) ? e : r);
|
|
631
|
+
return e === /* @__PURE__ */ J(r) && s && (o ? R(n, i) && Re(e, "set", t, n, i) : Re(e, "add", t, n)), s;
|
|
624
632
|
}
|
|
625
633
|
deleteProperty(e, t) {
|
|
626
634
|
let n = O(e, t), r = e[t], i = Reflect.deleteProperty(e, t);
|
|
627
|
-
return i && n &&
|
|
635
|
+
return i && n && Re(e, "delete", t, void 0, r), i;
|
|
628
636
|
}
|
|
629
637
|
has(e, t) {
|
|
630
638
|
let n = Reflect.has(e, t);
|
|
631
|
-
return (!
|
|
639
|
+
return (!te(t) || !Xe.has(t)) && K(e, "has", t), n;
|
|
632
640
|
}
|
|
633
641
|
ownKeys(e) {
|
|
634
|
-
return
|
|
642
|
+
return K(e, "iterate", k(e) ? "length" : Fe), Reflect.ownKeys(e);
|
|
635
643
|
}
|
|
636
|
-
},
|
|
644
|
+
}, et = class extends Qe {
|
|
637
645
|
constructor(e = !1) {
|
|
638
646
|
super(!0, e);
|
|
639
647
|
}
|
|
640
648
|
set(e, t) {
|
|
641
|
-
return process.env.NODE_ENV !== "production" &&
|
|
649
|
+
return process.env.NODE_ENV !== "production" && V(`Set operation on key "${String(t)}" failed: target is readonly.`, e), !0;
|
|
642
650
|
}
|
|
643
651
|
deleteProperty(e, t) {
|
|
644
|
-
return process.env.NODE_ENV !== "production" &&
|
|
652
|
+
return process.env.NODE_ENV !== "production" && V(`Delete operation on key "${String(t)}" failed: target is readonly.`, e), !0;
|
|
645
653
|
}
|
|
646
|
-
},
|
|
647
|
-
function
|
|
654
|
+
}, tt = /* @__PURE__ */ new $e(), nt = /* @__PURE__ */ new et(), rt = /* @__PURE__ */ new et(!0), it = (e) => e, q = (e) => Reflect.getPrototypeOf(e);
|
|
655
|
+
function at(e, t, n) {
|
|
648
656
|
return function(...r) {
|
|
649
|
-
let i = this.__v_raw, a = /* @__PURE__ */
|
|
650
|
-
return !t &&
|
|
657
|
+
let i = this.__v_raw, a = /* @__PURE__ */ J(i), o = A(a), s = e === "entries" || e === Symbol.iterator && o, c = e === "keys" && o, l = i[e](...r), u = n ? it : t ? Ot : Dt;
|
|
658
|
+
return !t && K(a, "iterate", c ? Ie : Fe), T(Object.create(l), { next() {
|
|
651
659
|
let { value: e, done: t } = l.next();
|
|
652
660
|
return t ? {
|
|
653
661
|
value: e,
|
|
@@ -659,64 +667,64 @@ function ot(e, t, n) {
|
|
|
659
667
|
} });
|
|
660
668
|
};
|
|
661
669
|
}
|
|
662
|
-
function
|
|
670
|
+
function ot(e) {
|
|
663
671
|
return function(...t) {
|
|
664
672
|
if (process.env.NODE_ENV !== "production") {
|
|
665
673
|
let n = t[0] ? `on key "${t[0]}" ` : "";
|
|
666
|
-
|
|
674
|
+
V(`${L(e)} operation ${n}failed: target is readonly.`, /* @__PURE__ */ J(this));
|
|
667
675
|
}
|
|
668
676
|
return e === "delete" ? !1 : e === "clear" ? void 0 : this;
|
|
669
677
|
};
|
|
670
678
|
}
|
|
671
|
-
function
|
|
679
|
+
function st(e, t) {
|
|
672
680
|
let n = {
|
|
673
681
|
get(n) {
|
|
674
|
-
let r = this.__v_raw, i = /* @__PURE__ */
|
|
675
|
-
e || (
|
|
676
|
-
let { has: o } =
|
|
682
|
+
let r = this.__v_raw, i = /* @__PURE__ */ J(r), a = /* @__PURE__ */ J(n);
|
|
683
|
+
e || (R(n, a) && K(i, "get", n), K(i, "get", a));
|
|
684
|
+
let { has: o } = q(i), s = t ? it : e ? Ot : Dt;
|
|
677
685
|
if (o.call(i, n)) return s(r.get(n));
|
|
678
686
|
if (o.call(i, a)) return s(r.get(a));
|
|
679
687
|
r !== i && r.get(n);
|
|
680
688
|
},
|
|
681
689
|
get size() {
|
|
682
690
|
let t = this.__v_raw;
|
|
683
|
-
return !e &&
|
|
691
|
+
return !e && K(/* @__PURE__ */ J(t), "iterate", Fe), t.size;
|
|
684
692
|
},
|
|
685
693
|
has(t) {
|
|
686
|
-
let n = this.__v_raw, r = /* @__PURE__ */
|
|
687
|
-
return e || (
|
|
694
|
+
let n = this.__v_raw, r = /* @__PURE__ */ J(n), i = /* @__PURE__ */ J(t);
|
|
695
|
+
return e || (R(t, i) && K(r, "has", t), K(r, "has", i)), t === i ? n.has(t) : n.has(t) || n.has(i);
|
|
688
696
|
},
|
|
689
697
|
forEach(n, r) {
|
|
690
|
-
let i = this, a = i.__v_raw, o = /* @__PURE__ */
|
|
691
|
-
return !e &&
|
|
698
|
+
let i = this, a = i.__v_raw, o = /* @__PURE__ */ J(a), s = t ? it : e ? Ot : Dt;
|
|
699
|
+
return !e && K(o, "iterate", Fe), a.forEach((e, t) => n.call(r, s(e), s(t), i));
|
|
692
700
|
}
|
|
693
701
|
};
|
|
694
702
|
return T(n, e ? {
|
|
695
|
-
add:
|
|
696
|
-
set:
|
|
697
|
-
delete:
|
|
698
|
-
clear:
|
|
703
|
+
add: ot("add"),
|
|
704
|
+
set: ot("set"),
|
|
705
|
+
delete: ot("delete"),
|
|
706
|
+
clear: ot("clear")
|
|
699
707
|
} : {
|
|
700
708
|
add(e) {
|
|
701
|
-
let n = /* @__PURE__ */
|
|
702
|
-
return r.has.call(n, a) ||
|
|
709
|
+
let n = /* @__PURE__ */ J(this), r = q(n), i = /* @__PURE__ */ J(e), a = !t && !/* @__PURE__ */ wt(e) && !/* @__PURE__ */ Ct(e) ? i : e;
|
|
710
|
+
return r.has.call(n, a) || R(e, a) && r.has.call(n, e) || R(i, a) && r.has.call(n, i) || (n.add(a), Re(n, "add", a, a)), this;
|
|
703
711
|
},
|
|
704
712
|
set(e, n) {
|
|
705
|
-
!t && !/* @__PURE__ */
|
|
706
|
-
let r = /* @__PURE__ */
|
|
707
|
-
o ? process.env.NODE_ENV !== "production" &&
|
|
713
|
+
!t && !/* @__PURE__ */ wt(n) && !/* @__PURE__ */ Ct(n) && (n = /* @__PURE__ */ J(n));
|
|
714
|
+
let r = /* @__PURE__ */ J(this), { has: i, get: a } = q(r), o = i.call(r, e);
|
|
715
|
+
o ? process.env.NODE_ENV !== "production" && ft(r, i, e) : (e = /* @__PURE__ */ J(e), o = i.call(r, e));
|
|
708
716
|
let s = a.call(r, e);
|
|
709
|
-
return r.set(e, n), o ?
|
|
717
|
+
return r.set(e, n), o ? R(n, s) && Re(r, "set", e, n, s) : Re(r, "add", e, n), this;
|
|
710
718
|
},
|
|
711
719
|
delete(e) {
|
|
712
|
-
let t = /* @__PURE__ */
|
|
713
|
-
i ? process.env.NODE_ENV !== "production" &&
|
|
720
|
+
let t = /* @__PURE__ */ J(this), { has: n, get: r } = q(t), i = n.call(t, e);
|
|
721
|
+
i ? process.env.NODE_ENV !== "production" && ft(t, n, e) : (e = /* @__PURE__ */ J(e), i = n.call(t, e));
|
|
714
722
|
let a = r ? r.call(t, e) : void 0, o = t.delete(e);
|
|
715
|
-
return i &&
|
|
723
|
+
return i && Re(t, "delete", e, void 0, a), o;
|
|
716
724
|
},
|
|
717
725
|
clear() {
|
|
718
|
-
let e = /* @__PURE__ */
|
|
719
|
-
return t &&
|
|
726
|
+
let e = /* @__PURE__ */ J(this), t = e.size !== 0, n = process.env.NODE_ENV === "production" ? void 0 : A(e) ? new Map(e) : new Set(e), r = e.clear();
|
|
727
|
+
return t && Re(e, "clear", void 0, void 0, n), r;
|
|
720
728
|
}
|
|
721
729
|
}), [
|
|
722
730
|
"keys",
|
|
@@ -724,23 +732,23 @@ function ct(e, t) {
|
|
|
724
732
|
"entries",
|
|
725
733
|
Symbol.iterator
|
|
726
734
|
].forEach((r) => {
|
|
727
|
-
n[r] =
|
|
735
|
+
n[r] = at(r, e, t);
|
|
728
736
|
}), n;
|
|
729
737
|
}
|
|
730
|
-
function
|
|
731
|
-
let n =
|
|
738
|
+
function ct(e, t) {
|
|
739
|
+
let n = st(e, t);
|
|
732
740
|
return (t, r, i) => r === "__v_isReactive" ? !e : r === "__v_isReadonly" ? e : r === "__v_raw" ? t : Reflect.get(O(n, r) && r in t ? n : t, r, i);
|
|
733
741
|
}
|
|
734
|
-
var
|
|
735
|
-
function
|
|
736
|
-
let r = /* @__PURE__ */
|
|
742
|
+
var lt = { get: /* @__PURE__ */ ct(!1, !1) }, ut = { get: /* @__PURE__ */ ct(!0, !1) }, dt = { get: /* @__PURE__ */ ct(!0, !0) };
|
|
743
|
+
function ft(e, t, n) {
|
|
744
|
+
let r = /* @__PURE__ */ J(n);
|
|
737
745
|
if (r !== n && t.call(e, r)) {
|
|
738
|
-
let t =
|
|
739
|
-
|
|
746
|
+
let t = ie(e);
|
|
747
|
+
V(`Reactive ${t} contains both the raw and reactive versions of the same object${t === "Map" ? " as keys" : ""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
|
|
740
748
|
}
|
|
741
749
|
}
|
|
742
|
-
var
|
|
743
|
-
function
|
|
750
|
+
var pt = /* @__PURE__ */ new WeakMap(), mt = /* @__PURE__ */ new WeakMap(), ht = /* @__PURE__ */ new WeakMap(), gt = /* @__PURE__ */ new WeakMap();
|
|
751
|
+
function _t(e) {
|
|
744
752
|
switch (e) {
|
|
745
753
|
case "Object":
|
|
746
754
|
case "Array": return 1;
|
|
@@ -752,54 +760,54 @@ function vt(e) {
|
|
|
752
760
|
}
|
|
753
761
|
}
|
|
754
762
|
// @__NO_SIDE_EFFECTS__
|
|
755
|
-
function
|
|
756
|
-
return /* @__PURE__ */
|
|
763
|
+
function vt(e) {
|
|
764
|
+
return /* @__PURE__ */ Ct(e) ? e : xt(e, !1, tt, lt, pt);
|
|
757
765
|
}
|
|
758
766
|
// @__NO_SIDE_EFFECTS__
|
|
759
|
-
function
|
|
760
|
-
return
|
|
767
|
+
function yt(e) {
|
|
768
|
+
return xt(e, !0, nt, ut, ht);
|
|
761
769
|
}
|
|
762
770
|
// @__NO_SIDE_EFFECTS__
|
|
763
|
-
function
|
|
764
|
-
return
|
|
771
|
+
function bt(e) {
|
|
772
|
+
return xt(e, !0, rt, dt, gt);
|
|
765
773
|
}
|
|
766
|
-
function
|
|
767
|
-
if (!
|
|
774
|
+
function xt(e, t, n, r, i) {
|
|
775
|
+
if (!N(e)) return process.env.NODE_ENV !== "production" && V(`value cannot be made ${t ? "readonly" : "reactive"}: ${String(e)}`), e;
|
|
768
776
|
if (e.__v_raw && !(t && e.__v_isReactive) || e.__v_skip || !Object.isExtensible(e)) return e;
|
|
769
777
|
let a = i.get(e);
|
|
770
778
|
if (a) return a;
|
|
771
|
-
let o =
|
|
779
|
+
let o = _t(ie(e));
|
|
772
780
|
if (o === 0) return e;
|
|
773
781
|
let s = new Proxy(e, o === 2 ? r : n);
|
|
774
782
|
return i.set(e, s), s;
|
|
775
783
|
}
|
|
776
784
|
// @__NO_SIDE_EFFECTS__
|
|
777
|
-
function
|
|
778
|
-
return /* @__PURE__ */
|
|
785
|
+
function St(e) {
|
|
786
|
+
return /* @__PURE__ */ Ct(e) ? /* @__PURE__ */ St(e.__v_raw) : !!(e && e.__v_isReactive);
|
|
779
787
|
}
|
|
780
788
|
// @__NO_SIDE_EFFECTS__
|
|
781
|
-
function
|
|
789
|
+
function Ct(e) {
|
|
782
790
|
return !!(e && e.__v_isReadonly);
|
|
783
791
|
}
|
|
784
792
|
// @__NO_SIDE_EFFECTS__
|
|
785
|
-
function
|
|
793
|
+
function wt(e) {
|
|
786
794
|
return !!(e && e.__v_isShallow);
|
|
787
795
|
}
|
|
788
796
|
// @__NO_SIDE_EFFECTS__
|
|
789
|
-
function
|
|
797
|
+
function Tt(e) {
|
|
790
798
|
return e ? !!e.__v_raw : !1;
|
|
791
799
|
}
|
|
792
800
|
// @__NO_SIDE_EFFECTS__
|
|
793
|
-
function
|
|
801
|
+
function J(e) {
|
|
794
802
|
let t = e && e.__v_raw;
|
|
795
|
-
return t ? /* @__PURE__ */
|
|
803
|
+
return t ? /* @__PURE__ */ J(t) : e;
|
|
796
804
|
}
|
|
797
|
-
function
|
|
798
|
-
return !O(e, "__v_skip") && Object.isExtensible(e) &&
|
|
805
|
+
function Et(e) {
|
|
806
|
+
return !O(e, "__v_skip") && Object.isExtensible(e) && ae(e, "__v_skip", !0), e;
|
|
799
807
|
}
|
|
800
|
-
var
|
|
808
|
+
var Dt = (e) => N(e) ? /* @__PURE__ */ vt(e) : e, Ot = (e) => N(e) ? /* @__PURE__ */ yt(e) : e;
|
|
801
809
|
// @__NO_SIDE_EFFECTS__
|
|
802
|
-
function
|
|
810
|
+
function kt(e) {
|
|
803
811
|
return e ? e.__v_isRef === !0 : !1;
|
|
804
812
|
}
|
|
805
813
|
// @__NO_SIDE_EFFECTS__
|
|
@@ -811,11 +819,11 @@ function jt(e) {
|
|
|
811
819
|
return Mt(e, !0);
|
|
812
820
|
}
|
|
813
821
|
function Mt(e, t) {
|
|
814
|
-
return /* @__PURE__ */
|
|
822
|
+
return /* @__PURE__ */ kt(e) ? e : new Nt(e, t);
|
|
815
823
|
}
|
|
816
824
|
var Nt = class {
|
|
817
825
|
constructor(e, t) {
|
|
818
|
-
this.dep = new
|
|
826
|
+
this.dep = new Me(), this.__v_isRef = !0, this.__v_isShallow = !1, this._rawValue = t ? e : /* @__PURE__ */ J(e), this._value = t ? e : Dt(e), this.__v_isShallow = t;
|
|
819
827
|
}
|
|
820
828
|
get value() {
|
|
821
829
|
return process.env.NODE_ENV === "production" ? this.dep.track() : this.dep.track({
|
|
@@ -825,8 +833,8 @@ var Nt = class {
|
|
|
825
833
|
}), this._value;
|
|
826
834
|
}
|
|
827
835
|
set value(e) {
|
|
828
|
-
let t = this._rawValue, n = this.__v_isShallow || /* @__PURE__ */
|
|
829
|
-
e = n ? e : /* @__PURE__ */
|
|
836
|
+
let t = this._rawValue, n = this.__v_isShallow || /* @__PURE__ */ wt(e) || /* @__PURE__ */ Ct(e);
|
|
837
|
+
e = n ? e : /* @__PURE__ */ J(e), R(e, t) && (this._rawValue = e, this._value = n ? e : Dt(e), process.env.NODE_ENV === "production" ? this.dep.trigger() : this.dep.trigger({
|
|
830
838
|
target: this,
|
|
831
839
|
type: "set",
|
|
832
840
|
key: "value",
|
|
@@ -844,24 +852,24 @@ function Pt(e) {
|
|
|
844
852
|
}));
|
|
845
853
|
}
|
|
846
854
|
function Ft(e) {
|
|
847
|
-
return /* @__PURE__ */
|
|
855
|
+
return /* @__PURE__ */ kt(e) ? e.value : e;
|
|
848
856
|
}
|
|
849
857
|
var It = {
|
|
850
858
|
get: (e, t, n) => t === "__v_raw" ? e : Ft(Reflect.get(e, t, n)),
|
|
851
859
|
set: (e, t, n, r) => {
|
|
852
860
|
let i = e[t];
|
|
853
|
-
return /* @__PURE__ */
|
|
861
|
+
return /* @__PURE__ */ kt(i) && !/* @__PURE__ */ kt(n) ? (i.value = n, !0) : Reflect.set(e, t, n, r);
|
|
854
862
|
}
|
|
855
863
|
};
|
|
856
864
|
function Lt(e) {
|
|
857
|
-
return /* @__PURE__ */
|
|
865
|
+
return /* @__PURE__ */ St(e) ? e : new Proxy(e, It);
|
|
858
866
|
}
|
|
859
867
|
var Rt = class {
|
|
860
868
|
constructor(e, t, n) {
|
|
861
|
-
this.fn = e, this.setter = t, this._value = void 0, this.dep = new
|
|
869
|
+
this.fn = e, this.setter = t, this._value = void 0, this.dep = new Me(this), this.__v_isRef = !0, this.deps = void 0, this.depsTail = void 0, this.flags = 16, this.globalVersion = Ae - 1, this.next = void 0, this.effect = this, this.__v_isReadonly = !t, this.isSSR = n;
|
|
862
870
|
}
|
|
863
871
|
notify() {
|
|
864
|
-
if (this.flags |= 16, !(this.flags & 8) &&
|
|
872
|
+
if (this.flags |= 16, !(this.flags & 8) && H !== this) return U(this, !0), !0;
|
|
865
873
|
process.env.NODE_ENV;
|
|
866
874
|
}
|
|
867
875
|
get value() {
|
|
@@ -870,10 +878,10 @@ var Rt = class {
|
|
|
870
878
|
type: "get",
|
|
871
879
|
key: "value"
|
|
872
880
|
});
|
|
873
|
-
return
|
|
881
|
+
return we(this), e && (e.version = this.dep.version), this._value;
|
|
874
882
|
}
|
|
875
883
|
set value(e) {
|
|
876
|
-
this.setter ? this.setter(e) : process.env.NODE_ENV !== "production" &&
|
|
884
|
+
this.setter ? this.setter(e) : process.env.NODE_ENV !== "production" && V("Write operation failed: computed value is readonly");
|
|
877
885
|
}
|
|
878
886
|
};
|
|
879
887
|
// @__NO_SIDE_EFFECTS__
|
|
@@ -888,24 +896,24 @@ function Ut(e, t = !1, n = Ht) {
|
|
|
888
896
|
if (n) {
|
|
889
897
|
let t = Vt.get(n);
|
|
890
898
|
t || Vt.set(n, t = []), t.push(e);
|
|
891
|
-
} else process.env.NODE_ENV !== "production" && !t &&
|
|
899
|
+
} else process.env.NODE_ENV !== "production" && !t && V("onWatcherCleanup() was called when there was no active watcher to associate with.");
|
|
892
900
|
}
|
|
893
901
|
function Wt(e, t, n = x) {
|
|
894
902
|
let { immediate: r, deep: i, once: a, scheduler: o, augmentJob: s, call: c } = n, l = (e) => {
|
|
895
|
-
(n.onWarn ||
|
|
896
|
-
}, u = (e) => i ? e : /* @__PURE__ */
|
|
897
|
-
if (/* @__PURE__ */
|
|
898
|
-
if (/* @__PURE__ */
|
|
899
|
-
if (/* @__PURE__ */
|
|
903
|
+
(n.onWarn || V)("Invalid watch source: ", e, "A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.");
|
|
904
|
+
}, u = (e) => i ? e : /* @__PURE__ */ wt(e) || i === !1 || i === 0 ? Gt(e, 1) : Gt(e), d, f, p, m, h = !1, g = !1;
|
|
905
|
+
if (/* @__PURE__ */ kt(e) ? (f = () => e.value, h = /* @__PURE__ */ wt(e)) : /* @__PURE__ */ St(e) ? (f = () => u(e), h = !0) : k(e) ? (g = !0, h = e.some((e) => /* @__PURE__ */ St(e) || /* @__PURE__ */ wt(e)), f = () => e.map((e) => {
|
|
906
|
+
if (/* @__PURE__ */ kt(e)) return e.value;
|
|
907
|
+
if (/* @__PURE__ */ St(e)) return u(e);
|
|
900
908
|
if (j(e)) return c ? c(e, 2) : e();
|
|
901
909
|
process.env.NODE_ENV !== "production" && l(e);
|
|
902
910
|
})) : j(e) ? f = t ? c ? () => c(e, 2) : e : () => {
|
|
903
911
|
if (p) {
|
|
904
|
-
|
|
912
|
+
De();
|
|
905
913
|
try {
|
|
906
914
|
p();
|
|
907
915
|
} finally {
|
|
908
|
-
|
|
916
|
+
Oe();
|
|
909
917
|
}
|
|
910
918
|
}
|
|
911
919
|
let t = Ht;
|
|
@@ -919,7 +927,7 @@ function Wt(e, t, n = x) {
|
|
|
919
927
|
let e = f, t = i === !0 ? Infinity : i;
|
|
920
928
|
f = () => Gt(e(), t);
|
|
921
929
|
}
|
|
922
|
-
let _ =
|
|
930
|
+
let _ = pe(), v = () => {
|
|
923
931
|
d.stop(), _ && _.active && E(_.effects, d);
|
|
924
932
|
};
|
|
925
933
|
if (a && t) {
|
|
@@ -932,7 +940,7 @@ function Wt(e, t, n = x) {
|
|
|
932
940
|
let y = g ? Array(e.length).fill(Bt) : Bt, b = (e) => {
|
|
933
941
|
if (!(!(d.flags & 1) || !d.dirty && !e)) if (t) {
|
|
934
942
|
let n = d.run();
|
|
935
|
-
if (e || i || h || (g ? n.some((e, t) =>
|
|
943
|
+
if (e || i || h || (g ? n.some((e, t) => R(e, y[t])) : R(n, y))) {
|
|
936
944
|
p && p();
|
|
937
945
|
let e = Ht;
|
|
938
946
|
Ht = d;
|
|
@@ -949,7 +957,7 @@ function Wt(e, t, n = x) {
|
|
|
949
957
|
}
|
|
950
958
|
} else d.run();
|
|
951
959
|
};
|
|
952
|
-
return s && s(b), d = new
|
|
960
|
+
return s && s(b), d = new he(f), d.scheduler = o ? () => o(b, !1) : b, m = (e) => Ut(e, !1, d), p = d.onStop = () => {
|
|
953
961
|
let e = Vt.get(d);
|
|
954
962
|
if (e) {
|
|
955
963
|
if (c) c(e, 4);
|
|
@@ -959,13 +967,13 @@ function Wt(e, t, n = x) {
|
|
|
959
967
|
}, process.env.NODE_ENV !== "production" && (d.onTrack = n.onTrack, d.onTrigger = n.onTrigger), t ? r ? b(!0) : y = d.run() : o ? o(b.bind(null, !0), !0) : d.run(), v.pause = d.pause.bind(d), v.resume = d.resume.bind(d), v.stop = v, v;
|
|
960
968
|
}
|
|
961
969
|
function Gt(e, t = Infinity, n) {
|
|
962
|
-
if (t <= 0 || !
|
|
963
|
-
if (n.set(e, t), t--, /* @__PURE__ */
|
|
970
|
+
if (t <= 0 || !N(e) || e.__v_skip || (n ||= /* @__PURE__ */ new Map(), (n.get(e) || 0) >= t)) return e;
|
|
971
|
+
if (n.set(e, t), t--, /* @__PURE__ */ kt(e)) Gt(e.value, t, n);
|
|
964
972
|
else if (k(e)) for (let r = 0; r < e.length; r++) Gt(e[r], t, n);
|
|
965
973
|
else if (ee(e) || A(e)) e.forEach((e) => {
|
|
966
974
|
Gt(e, t, n);
|
|
967
975
|
});
|
|
968
|
-
else if (
|
|
976
|
+
else if (F(e)) {
|
|
969
977
|
for (let r in e) Gt(e[r], t, n);
|
|
970
978
|
for (let r of Object.getOwnPropertySymbols(e)) Object.prototype.propertyIsEnumerable.call(e, r) && Gt(e[r], t, n);
|
|
971
979
|
}
|
|
@@ -983,7 +991,7 @@ function Jt() {
|
|
|
983
991
|
var Yt = !1;
|
|
984
992
|
function Xt(e, ...t) {
|
|
985
993
|
if (Yt) return;
|
|
986
|
-
Yt = !0,
|
|
994
|
+
Yt = !0, De();
|
|
987
995
|
let n = Kt.length ? Kt[Kt.length - 1].component : null, r = n && n.appContext.config.warnHandler, i = Zt();
|
|
988
996
|
if (r) rn(r, n, 11, [
|
|
989
997
|
e + t.map((e) => e.toString?.call(e) ?? JSON.stringify(e)).join(""),
|
|
@@ -995,7 +1003,7 @@ function Xt(e, ...t) {
|
|
|
995
1003
|
let n = [`[Vue warn]: ${e}`, ...t];
|
|
996
1004
|
i.length && n.push("\n", ...Qt(i)), console.warn(...n);
|
|
997
1005
|
}
|
|
998
|
-
|
|
1006
|
+
Oe(), Yt = !1;
|
|
999
1007
|
}
|
|
1000
1008
|
function Zt() {
|
|
1001
1009
|
let e = Kt[Kt.length - 1];
|
|
@@ -1033,11 +1041,11 @@ function en(e) {
|
|
|
1033
1041
|
}), n.length > 3 && t.push(" ..."), t;
|
|
1034
1042
|
}
|
|
1035
1043
|
function tn(e, t, n) {
|
|
1036
|
-
return
|
|
1044
|
+
return M(t) ? (t = JSON.stringify(t), n ? t : [`${e}=${t}`]) : typeof t == "number" || typeof t == "boolean" || t == null ? n ? t : [`${e}=${t}`] : /* @__PURE__ */ kt(t) ? (t = tn(e, /* @__PURE__ */ J(t.value), !0), n ? t : [
|
|
1037
1045
|
`${e}=Ref<`,
|
|
1038
1046
|
t,
|
|
1039
1047
|
">"
|
|
1040
|
-
]) : j(t) ? [`${e}=fn${t.name ? `<${t.name}>` : ""}`] : (t = /* @__PURE__ */
|
|
1048
|
+
]) : j(t) ? [`${e}=fn${t.name ? `<${t.name}>` : ""}`] : (t = /* @__PURE__ */ J(t), n ? t : [`${e}=`, t]);
|
|
1041
1049
|
}
|
|
1042
1050
|
var nn = {
|
|
1043
1051
|
sp: "serverPrefetch hook",
|
|
@@ -1082,7 +1090,7 @@ function rn(e, t, n, r) {
|
|
|
1082
1090
|
function an(e, t, n, r) {
|
|
1083
1091
|
if (j(e)) {
|
|
1084
1092
|
let i = rn(e, t, n, r);
|
|
1085
|
-
return i &&
|
|
1093
|
+
return i && P(i) && i.catch((e) => {
|
|
1086
1094
|
on(e, t, n);
|
|
1087
1095
|
}), i;
|
|
1088
1096
|
}
|
|
@@ -1104,11 +1112,11 @@ function on(e, t, n, r = !0) {
|
|
|
1104
1112
|
r = r.parent;
|
|
1105
1113
|
}
|
|
1106
1114
|
if (a) {
|
|
1107
|
-
|
|
1115
|
+
De(), rn(a, null, 10, [
|
|
1108
1116
|
e,
|
|
1109
1117
|
i,
|
|
1110
1118
|
o
|
|
1111
|
-
]),
|
|
1119
|
+
]), Oe();
|
|
1112
1120
|
return;
|
|
1113
1121
|
}
|
|
1114
1122
|
}
|
|
@@ -1190,7 +1198,7 @@ function wn(e, t) {
|
|
|
1190
1198
|
return e.set(t, n + 1), !1;
|
|
1191
1199
|
}
|
|
1192
1200
|
var Tn = /* @__PURE__ */ new Map();
|
|
1193
|
-
process.env.NODE_ENV !== "production" && (
|
|
1201
|
+
process.env.NODE_ENV !== "production" && (se().__VUE_HMR_RUNTIME__ = {
|
|
1194
1202
|
createRecord: Mn(Dn),
|
|
1195
1203
|
rerender: Mn(kn),
|
|
1196
1204
|
reload: Mn(An)
|
|
@@ -1292,7 +1300,7 @@ function Vn(e, t, n = x) {
|
|
|
1292
1300
|
return Lr && (l ? l.push(f) : c && f()), f;
|
|
1293
1301
|
}
|
|
1294
1302
|
function Hn(e, t, n) {
|
|
1295
|
-
let r = this.proxy, i =
|
|
1303
|
+
let r = this.proxy, i = M(e) ? e.includes(".") ? Un(r, e) : () => r[e] : e.bind(r, r), a;
|
|
1296
1304
|
j(t) ? a = t : (a = t.handler, n = t);
|
|
1297
1305
|
let o = Fr(this), s = Vn(i, a.bind(r), n);
|
|
1298
1306
|
return o(), s;
|
|
@@ -1309,15 +1317,15 @@ var Wn = (e) => e.__isTeleport;
|
|
|
1309
1317
|
function Gn(e, t) {
|
|
1310
1318
|
e.shapeFlag & 6 && e.component ? (e.transition = t, Gn(e.component.subTree, t)) : e.shapeFlag & 128 ? (e.ssContent.transition = t.clone(e.ssContent), e.ssFallback.transition = t.clone(e.ssFallback)) : e.transition = t;
|
|
1311
1319
|
}
|
|
1312
|
-
|
|
1320
|
+
se().requestIdleCallback, se().cancelIdleCallback;
|
|
1313
1321
|
var Kn = /* @__PURE__ */ Symbol.for("v-ndc"), qn = (e) => e ? Ir(e) ? Rr(e) : qn(e.parent) : null, Jn = /* @__PURE__ */ T(/* @__PURE__ */ Object.create(null), {
|
|
1314
1322
|
$: (e) => e,
|
|
1315
1323
|
$el: (e) => e.vnode.el,
|
|
1316
1324
|
$data: (e) => e.data,
|
|
1317
|
-
$props: (e) => process.env.NODE_ENV === "production" ? e.props : /* @__PURE__ */
|
|
1318
|
-
$attrs: (e) => process.env.NODE_ENV === "production" ? e.attrs : /* @__PURE__ */
|
|
1319
|
-
$slots: (e) => process.env.NODE_ENV === "production" ? e.slots : /* @__PURE__ */
|
|
1320
|
-
$refs: (e) => process.env.NODE_ENV === "production" ? e.refs : /* @__PURE__ */
|
|
1325
|
+
$props: (e) => process.env.NODE_ENV === "production" ? e.props : /* @__PURE__ */ bt(e.props),
|
|
1326
|
+
$attrs: (e) => process.env.NODE_ENV === "production" ? e.attrs : /* @__PURE__ */ bt(e.attrs),
|
|
1327
|
+
$slots: (e) => process.env.NODE_ENV === "production" ? e.slots : /* @__PURE__ */ bt(e.slots),
|
|
1328
|
+
$refs: (e) => process.env.NODE_ENV === "production" ? e.refs : /* @__PURE__ */ bt(e.refs),
|
|
1321
1329
|
$parent: (e) => qn(e.parent),
|
|
1322
1330
|
$root: (e) => qn(e.root),
|
|
1323
1331
|
$host: (e) => e.ce,
|
|
@@ -1348,7 +1356,7 @@ var Kn = /* @__PURE__ */ Symbol.for("v-ndc"), qn = (e) => e ? Ir(e) ? Rr(e) : qn
|
|
|
1348
1356
|
else Qn && (o[t] = 0);
|
|
1349
1357
|
}
|
|
1350
1358
|
let l = Jn[t], u, d;
|
|
1351
|
-
if (l) return t === "$attrs" ? (
|
|
1359
|
+
if (l) return t === "$attrs" ? (K(e.attrs, "get", ""), process.env.NODE_ENV) : process.env.NODE_ENV !== "production" && t === "$slots" && K(e, "get", t), l(e);
|
|
1352
1360
|
if ((u = s.__cssModules) && (u = u[t])) return u;
|
|
1353
1361
|
if (n !== x && O(n, t)) return o[t] = 4, n[t];
|
|
1354
1362
|
if (d = c.config.globalProperties, O(d, t)) return d[t];
|
|
@@ -1377,7 +1385,7 @@ function Zn(e) {
|
|
|
1377
1385
|
var Qn = !0;
|
|
1378
1386
|
function $n(e) {
|
|
1379
1387
|
let t = e.type, { mixins: n, extends: r } = t, { mixins: i, optionsCache: a, config: { optionMergeStrategies: o } } = e.appContext, s = a.get(t), c;
|
|
1380
|
-
return s ? c = s : !i.length && !n && !r ? c = t : (c = {}, i.length && i.forEach((e) => er(c, e, o, !0)), er(c, t, o)),
|
|
1388
|
+
return s ? c = s : !i.length && !n && !r ? c = t : (c = {}, i.length && i.forEach((e) => er(c, e, o, !0)), er(c, t, o)), N(t) && a.set(t, c), c;
|
|
1381
1389
|
}
|
|
1382
1390
|
function er(e, t, n, r = !1) {
|
|
1383
1391
|
let { mixins: i, extends: a } = t;
|
|
@@ -1455,7 +1463,7 @@ var hr = /* @__PURE__ */ Symbol.for("v-fgt"), gr = /* @__PURE__ */ Symbol.for("v
|
|
|
1455
1463
|
function vr(e) {
|
|
1456
1464
|
return e ? e.__v_isVNode === !0 : !1;
|
|
1457
1465
|
}
|
|
1458
|
-
var yr, br = (...e) => Tr(...yr ? yr(e, In) : e), xr = ({ key: e }) => e ?? null, Sr = ({ ref: e, ref_key: t, ref_for: n }) => (typeof e == "number" && (e = "" + e), e == null ? null :
|
|
1466
|
+
var yr, br = (...e) => Tr(...yr ? yr(e, In) : e), xr = ({ key: e }) => e ?? null, Sr = ({ ref: e, ref_key: t, ref_for: n }) => (typeof e == "number" && (e = "" + e), e == null ? null : M(e) || /* @__PURE__ */ kt(e) || j(e) ? {
|
|
1459
1467
|
i: In,
|
|
1460
1468
|
r: e,
|
|
1461
1469
|
k: t,
|
|
@@ -1491,7 +1499,7 @@ function Cr(e, t = null, n = null, r = 0, i = null, a = e === hr ? 0 : 1, o = !1
|
|
|
1491
1499
|
appContext: null,
|
|
1492
1500
|
ctx: In
|
|
1493
1501
|
};
|
|
1494
|
-
return s ? (Ar(c, n), a & 128 && e.normalize(c)) : n && (c.shapeFlag |=
|
|
1502
|
+
return s ? (Ar(c, n), a & 128 && e.normalize(c)) : n && (c.shapeFlag |= M(n) ? 8 : 16), process.env.NODE_ENV !== "production" && c.key !== c.key && Xt("VNode created with invalid key (NaN). VNode type:", c.type), c;
|
|
1495
1503
|
}
|
|
1496
1504
|
var wr = process.env.NODE_ENV === "production" ? Tr : br;
|
|
1497
1505
|
function Tr(e, t = null, n = null, r = 0, i = null, a = !1) {
|
|
@@ -1502,13 +1510,13 @@ function Tr(e, t = null, n = null, r = 0, i = null, a = !1) {
|
|
|
1502
1510
|
if (Ur(e) && (e = e.__vccOpts), t) {
|
|
1503
1511
|
t = Er(t);
|
|
1504
1512
|
let { class: e, style: n } = t;
|
|
1505
|
-
e && !
|
|
1513
|
+
e && !M(e) && (t.class = B(e)), N(n) && (/* @__PURE__ */ Tt(n) && !k(n) && (n = T({}, n)), t.style = ce(n));
|
|
1506
1514
|
}
|
|
1507
|
-
let o =
|
|
1508
|
-
return process.env.NODE_ENV !== "production" && o & 4 && /* @__PURE__ */
|
|
1515
|
+
let o = M(e) ? 1 : pr(e) ? 128 : Wn(e) ? 64 : N(e) ? 4 : j(e) ? 2 : 0;
|
|
1516
|
+
return process.env.NODE_ENV !== "production" && o & 4 && /* @__PURE__ */ Tt(e) && (e = /* @__PURE__ */ J(e), Xt("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.", "\nComponent that was made reactive: ", e)), Cr(e, t, n, r, i, o, a, !0);
|
|
1509
1517
|
}
|
|
1510
1518
|
function Er(e) {
|
|
1511
|
-
return e ? /* @__PURE__ */
|
|
1519
|
+
return e ? /* @__PURE__ */ Tt(e) || dr(e) ? T({}, e) : e : null;
|
|
1512
1520
|
}
|
|
1513
1521
|
function Dr(e, t, n = !1, r = !1) {
|
|
1514
1522
|
let { props: i, ref: a, patchFlag: o, children: s, transition: c } = e, l = t ? jr(i || {}, t) : i, u = {
|
|
@@ -1576,8 +1584,8 @@ function jr(...e) {
|
|
|
1576
1584
|
let t = {};
|
|
1577
1585
|
for (let n = 0; n < e.length; n++) {
|
|
1578
1586
|
let r = e[n];
|
|
1579
|
-
for (let e in r) if (e === "class") t.class !== r.class && (t.class =
|
|
1580
|
-
else if (e === "style") t.style =
|
|
1587
|
+
for (let e in r) if (e === "class") t.class !== r.class && (t.class = B([t.class, r.class]));
|
|
1588
|
+
else if (e === "style") t.style = ce([t.style, r.style]);
|
|
1581
1589
|
else if (C(e)) {
|
|
1582
1590
|
let n = t[e], i = r[e];
|
|
1583
1591
|
i && n !== i && !(k(n) && n.includes(i)) ? t[e] = n ? [].concat(n, i) : i : i == null && n == null && !w(e) && (t[e] = i);
|
|
@@ -1587,7 +1595,7 @@ function jr(...e) {
|
|
|
1587
1595
|
}
|
|
1588
1596
|
var Mr = null, Nr = () => Mr || In, Pr;
|
|
1589
1597
|
{
|
|
1590
|
-
let e =
|
|
1598
|
+
let e = se(), t = (t, n) => {
|
|
1591
1599
|
let r;
|
|
1592
1600
|
return (r = e[t]) || (r = e[t] = []), r.push(n), (e) => {
|
|
1593
1601
|
r.length > 1 ? r.forEach((t) => t(e)) : r[0](e);
|
|
@@ -1607,7 +1615,7 @@ function Ir(e) {
|
|
|
1607
1615
|
var Lr = !1;
|
|
1608
1616
|
process.env.NODE_ENV;
|
|
1609
1617
|
function Rr(e) {
|
|
1610
|
-
return e.exposed ? e.exposeProxy ||= new Proxy(Lt(
|
|
1618
|
+
return e.exposed ? e.exposeProxy ||= new Proxy(Lt(Et(e.exposed)), {
|
|
1611
1619
|
get(t, n) {
|
|
1612
1620
|
if (n in t) return t[n];
|
|
1613
1621
|
if (n in Jn) return Jn[n](e);
|
|
@@ -1651,16 +1659,16 @@ function Gr() {
|
|
|
1651
1659
|
let e = { style: "color:#3ba776" }, t = { style: "color:#1677ff" }, n = { style: "color:#f5222d" }, r = { style: "color:#eb2f96" }, i = {
|
|
1652
1660
|
__vue_custom_formatter: !0,
|
|
1653
1661
|
header(t) {
|
|
1654
|
-
if (!
|
|
1662
|
+
if (!N(t)) return null;
|
|
1655
1663
|
if (t.__isVue) return [
|
|
1656
1664
|
"div",
|
|
1657
1665
|
e,
|
|
1658
1666
|
"VueInstance"
|
|
1659
1667
|
];
|
|
1660
|
-
if (/* @__PURE__ */
|
|
1661
|
-
|
|
1668
|
+
if (/* @__PURE__ */ kt(t)) {
|
|
1669
|
+
De();
|
|
1662
1670
|
let n = t.value;
|
|
1663
|
-
return
|
|
1671
|
+
return Oe(), [
|
|
1664
1672
|
"div",
|
|
1665
1673
|
{},
|
|
1666
1674
|
[
|
|
@@ -1672,25 +1680,25 @@ function Gr() {
|
|
|
1672
1680
|
s(n),
|
|
1673
1681
|
">"
|
|
1674
1682
|
];
|
|
1675
|
-
} else if (/* @__PURE__ */
|
|
1683
|
+
} else if (/* @__PURE__ */ St(t)) return [
|
|
1676
1684
|
"div",
|
|
1677
1685
|
{},
|
|
1678
1686
|
[
|
|
1679
1687
|
"span",
|
|
1680
1688
|
e,
|
|
1681
|
-
/* @__PURE__ */
|
|
1689
|
+
/* @__PURE__ */ wt(t) ? "ShallowReactive" : "Reactive"
|
|
1682
1690
|
],
|
|
1683
1691
|
"<",
|
|
1684
1692
|
s(t),
|
|
1685
|
-
`>${/* @__PURE__ */
|
|
1693
|
+
`>${/* @__PURE__ */ Ct(t) ? " (readonly)" : ""}`
|
|
1686
1694
|
];
|
|
1687
|
-
else if (/* @__PURE__ */
|
|
1695
|
+
else if (/* @__PURE__ */ Ct(t)) return [
|
|
1688
1696
|
"div",
|
|
1689
1697
|
{},
|
|
1690
1698
|
[
|
|
1691
1699
|
"span",
|
|
1692
1700
|
e,
|
|
1693
|
-
/* @__PURE__ */
|
|
1701
|
+
/* @__PURE__ */ wt(t) ? "ShallowReadonly" : "Readonly"
|
|
1694
1702
|
],
|
|
1695
1703
|
"<",
|
|
1696
1704
|
s(t),
|
|
@@ -1711,7 +1719,7 @@ function Gr() {
|
|
|
1711
1719
|
};
|
|
1712
1720
|
function a(e) {
|
|
1713
1721
|
let t = [];
|
|
1714
|
-
e.type.props && e.props && t.push(o("props", /* @__PURE__ */
|
|
1722
|
+
e.type.props && e.props && t.push(o("props", /* @__PURE__ */ J(e.props))), e.setupState !== x && t.push(o("setup", e.setupState)), e.data !== x && t.push(o("data", /* @__PURE__ */ J(e.data)));
|
|
1715
1723
|
let n = c(e, "computed");
|
|
1716
1724
|
n && t.push(o("computed", n));
|
|
1717
1725
|
let i = c(e, "inject");
|
|
@@ -1764,7 +1772,7 @@ function Gr() {
|
|
|
1764
1772
|
"span",
|
|
1765
1773
|
r,
|
|
1766
1774
|
e
|
|
1767
|
-
] :
|
|
1775
|
+
] : N(e) ? ["object", { object: i ? /* @__PURE__ */ J(e) : e }] : [
|
|
1768
1776
|
"span",
|
|
1769
1777
|
n,
|
|
1770
1778
|
String(e)
|
|
@@ -1779,10 +1787,10 @@ function Gr() {
|
|
|
1779
1787
|
}
|
|
1780
1788
|
function l(e, t, n) {
|
|
1781
1789
|
let r = e[n];
|
|
1782
|
-
if (k(r) && r.includes(t) ||
|
|
1790
|
+
if (k(r) && r.includes(t) || N(r) && t in r || e.extends && l(e.extends, t, n) || e.mixins && e.mixins.some((e) => l(e, t, n))) return !0;
|
|
1783
1791
|
}
|
|
1784
1792
|
function u(e) {
|
|
1785
|
-
return /* @__PURE__ */
|
|
1793
|
+
return /* @__PURE__ */ wt(e) ? "ShallowRef" : e.effect ? "ComputedRef" : "Ref";
|
|
1786
1794
|
}
|
|
1787
1795
|
window.devtoolsFormatters ? window.devtoolsFormatters.push(i) : window.devtoolsFormatters = [i];
|
|
1788
1796
|
}
|
|
@@ -2376,32 +2384,32 @@ function Ui(e) {
|
|
|
2376
2384
|
return Array.isArray(r) && r.length && r[0] && typeof r[0].jsonPath == "string" ? r[0].jsonPath : "";
|
|
2377
2385
|
}
|
|
2378
2386
|
function Wi(e) {
|
|
2379
|
-
let { apiKey: t, baseUrl: r, model: c = "gpt-3.5-turbo", temperature: l = .7, maxTokens: u, extraBody: p, extraConfig: m, systemPrompt: v, tools: b = [], middleware: x = [], maxToolRounds: S, maxIterations: C, maxRetries: w = 2, retryDelayMs: T = 500, stallMs: E = _i, maxParallelTools: D = 1, maxVerifyAttempts: O = 0, roundTokenBudget: k = 0, onLog: A, onSpan: ee, onTrace: j, onLlmChange:
|
|
2380
|
-
(!Number.isFinite(
|
|
2381
|
-
let
|
|
2387
|
+
let { apiKey: t, baseUrl: r, model: c = "gpt-3.5-turbo", temperature: l = .7, maxTokens: u, extraBody: p, extraConfig: m, systemPrompt: v, tools: b = [], middleware: x = [], maxToolRounds: S, maxIterations: C, maxRetries: w = 2, retryDelayMs: T = 500, stallMs: E = _i, maxParallelTools: D = 1, maxVerifyAttempts: O = 0, roundTokenBudget: k = 0, onLog: A, onSpan: ee, onTrace: j, onLlmChange: M, debug: te = !1 } = e, N = S ?? Li;
|
|
2388
|
+
(!Number.isFinite(N) || N < 1) && (console.warn(`[page-agent-sdk] maxToolRounds=${N} 非法(须 ≥1 正整数),已 clamp 到 1(0/负数致主循环 while 不进 → agent 不调 LLM 静默返回兜底文案)`), N = 1), D > 1 && console.warn(`[page-agent-sdk] maxParallelTools=${D}:并发工具下 dataOps 写工具不互锁(同轮并发两写都在 await handleConflict 让出前取旧基线 → 均通过乐观锁 → 后写覆盖前写,无 VERSION_CONFLICT 回灌);如需精确乐观锁保持 maxParallelTools=1 或写时显式传 expectedHash`);
|
|
2389
|
+
let P = oi({
|
|
2382
2390
|
model: c,
|
|
2383
2391
|
contextWindow: e.contextWindow,
|
|
2384
2392
|
maxOutputTokens: e.maxOutputTokens
|
|
2385
|
-
}),
|
|
2386
|
-
function
|
|
2387
|
-
|
|
2393
|
+
}), ne = u ?? P.maxOutputTokens, re = si(P.contextWindow), ie = ci(P.contextWindow);
|
|
2394
|
+
function F(e) {
|
|
2395
|
+
P = e, re = si(P.contextWindow), ie = ci(P.contextWindow);
|
|
2388
2396
|
}
|
|
2389
|
-
let
|
|
2390
|
-
function
|
|
2397
|
+
let I = /* @__PURE__ */ jt([]);
|
|
2398
|
+
function L(e, t) {
|
|
2391
2399
|
let n = {
|
|
2392
2400
|
timestamp: Date.now(),
|
|
2393
2401
|
type: e,
|
|
2394
2402
|
data: t
|
|
2395
2403
|
};
|
|
2396
|
-
|
|
2404
|
+
I.value.push(n), I.value.length > Ri && I.value.splice(0, I.value.length - Ri), Pt(I), A?.(n), te && console.log(`%c[Agent] ${e}`, "color:#667eea;font-weight:bold", t);
|
|
2397
2405
|
}
|
|
2398
|
-
let
|
|
2399
|
-
|
|
2400
|
-
},
|
|
2401
|
-
function
|
|
2402
|
-
if (!
|
|
2406
|
+
let R = (e) => {
|
|
2407
|
+
I.value.push(e), I.value.length > Ri && I.value.splice(0, I.value.length - Ri), Pt(I);
|
|
2408
|
+
}, ae = /* @__PURE__ */ jt([]), oe = 0, se = !!ee || !!j;
|
|
2409
|
+
function ce(e, t, n, r = {}) {
|
|
2410
|
+
if (!se) return null;
|
|
2403
2411
|
let i = {
|
|
2404
|
-
id: `span-${++
|
|
2412
|
+
id: `span-${++oe}`,
|
|
2405
2413
|
parentId: e,
|
|
2406
2414
|
name: n,
|
|
2407
2415
|
type: t,
|
|
@@ -2409,66 +2417,66 @@ function Wi(e) {
|
|
|
2409
2417
|
status: "ok",
|
|
2410
2418
|
attributes: r
|
|
2411
2419
|
};
|
|
2412
|
-
return
|
|
2420
|
+
return ae.value.push(i), ae.value.length > Ri && ae.value.splice(0, ae.value.length - Ri), Pt(ae), i;
|
|
2413
2421
|
}
|
|
2414
|
-
function
|
|
2415
|
-
!e || !
|
|
2422
|
+
function le(e, t = "ok", n) {
|
|
2423
|
+
!e || !se || (e.endTs = Date.now(), e.durationMs = e.endTs - e.startTs, e.status = t, n && Object.assign(e.attributes, n), Pt(ae), ee?.(e));
|
|
2416
2424
|
}
|
|
2417
|
-
let
|
|
2425
|
+
let ue = [...x.flatMap((e) => e.tools || []), ...b], z = e.llm ?? new n({
|
|
2418
2426
|
apiKey: t,
|
|
2419
2427
|
model: c,
|
|
2420
2428
|
temperature: l,
|
|
2421
|
-
maxTokens:
|
|
2429
|
+
maxTokens: ne,
|
|
2422
2430
|
configuration: {
|
|
2423
2431
|
...r ? { baseURL: f(r) } : {},
|
|
2424
2432
|
fetch: d,
|
|
2425
2433
|
...m
|
|
2426
2434
|
},
|
|
2427
2435
|
...p ? { modelKwargs: p } : {}
|
|
2428
|
-
}),
|
|
2429
|
-
function
|
|
2430
|
-
|
|
2436
|
+
}), de = ue.length > 0 ? z.bindTools?.(ue) ?? z : z;
|
|
2437
|
+
function B() {
|
|
2438
|
+
de = ue.length > 0 ? z.bindTools?.(ue) ?? z : z;
|
|
2431
2439
|
}
|
|
2432
|
-
let
|
|
2433
|
-
function
|
|
2440
|
+
let V = ui(), fe = .25, pe = /* @__PURE__ */ new Set(["mission", "workingMemory"]);
|
|
2441
|
+
function H() {
|
|
2434
2442
|
let e = v || "你是一个智能助手。", t = [];
|
|
2435
2443
|
for (let e of x) if (e.augmentPrompt) {
|
|
2436
|
-
let n = e.augmentPrompt(
|
|
2444
|
+
let n = e.augmentPrompt(V);
|
|
2437
2445
|
n && t.push({
|
|
2438
2446
|
name: e.name,
|
|
2439
2447
|
text: n,
|
|
2440
2448
|
tokens: X(n),
|
|
2441
|
-
pin:
|
|
2449
|
+
pin: pe.has(e.name)
|
|
2442
2450
|
});
|
|
2443
2451
|
}
|
|
2444
|
-
let n = Math.max(2e3, Math.round(
|
|
2452
|
+
let n = Math.max(2e3, Math.round(P.contextWindow * fe)), r = X(e) + t.reduce((e, t) => e + t.tokens, 0);
|
|
2445
2453
|
if (r > n) {
|
|
2446
2454
|
let e = r, i = [];
|
|
2447
2455
|
for (let e of t.filter((e) => !e.pin).sort((e, t) => t.tokens - e.tokens)) {
|
|
2448
2456
|
if (r <= n) break;
|
|
2449
2457
|
i.push(`${e.name}(${e.tokens})`), r -= e.tokens, e.text = "";
|
|
2450
2458
|
}
|
|
2451
|
-
i.length && console.warn(`[page-agent-sdk] 系统段超预算(${e} > ${n} tokens,窗口 ${
|
|
2459
|
+
i.length && console.warn(`[page-agent-sdk] 系统段超预算(${e} > ${n} tokens,窗口 ${P.contextWindow} 的 ${fe * 100}%),drop 非核心段:${i.join(", ")}(保 base/mission/workingMemory)`);
|
|
2452
2460
|
}
|
|
2453
2461
|
return [e, ...t.filter((e) => e.text).map((e) => e.text)].join("\n\n");
|
|
2454
2462
|
}
|
|
2455
|
-
function
|
|
2456
|
-
let t = [new o(
|
|
2463
|
+
function me(e) {
|
|
2464
|
+
let t = [new o(H())];
|
|
2457
2465
|
for (let n of e) n.role === "user" ? t.push(new a(n.content)) : n.role === "assistant" ? t.push(new i(n.content)) : n.role === "system" && t.push(new o(n.content));
|
|
2458
2466
|
return t;
|
|
2459
2467
|
}
|
|
2460
|
-
function
|
|
2461
|
-
let t = e[0] &&
|
|
2462
|
-
return [new o(
|
|
2468
|
+
function he(e) {
|
|
2469
|
+
let t = e[0] && ve(e[0]) === "system" ? e.slice(1) : e.slice();
|
|
2470
|
+
return [new o(H()), ...t];
|
|
2463
2471
|
}
|
|
2464
|
-
async function
|
|
2465
|
-
let a = r ??
|
|
2472
|
+
async function ge(e, t, n, r) {
|
|
2473
|
+
let a = r ?? de, o = {
|
|
2466
2474
|
signal: n,
|
|
2467
2475
|
maxRetries: w,
|
|
2468
2476
|
baseDelayMs: T,
|
|
2469
2477
|
onRetry: ({ attempt: e, error: t, waitMs: n }) => {
|
|
2470
2478
|
let r = t?.message ?? String(t);
|
|
2471
|
-
|
|
2479
|
+
L("error", {
|
|
2472
2480
|
stage: "model_retry",
|
|
2473
2481
|
attempt: e,
|
|
2474
2482
|
waitMs: n,
|
|
@@ -2500,14 +2508,14 @@ function Wi(e) {
|
|
|
2500
2508
|
};
|
|
2501
2509
|
if (yi(a) && !e._ctxRetry) {
|
|
2502
2510
|
e._ctxRetry = !0;
|
|
2503
|
-
let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o =
|
|
2504
|
-
return
|
|
2511
|
+
let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = U(e.messages, Math.round(P.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
|
|
2512
|
+
return L("error", {
|
|
2505
2513
|
stage: "context_overflow_retry",
|
|
2506
2514
|
at: "launch",
|
|
2507
2515
|
beforeTokens: a,
|
|
2508
2516
|
afterTokens: s,
|
|
2509
|
-
window:
|
|
2510
|
-
}), console.warn(`[page-agent-sdk] 上下文超限(启动)→ 激进 trim 重试:${a} → ${s} tokens`),
|
|
2517
|
+
window: P.contextWindow
|
|
2518
|
+
}), console.warn(`[page-agent-sdk] 上下文超限(启动)→ 激进 trim 重试:${a} → ${s} tokens`), ge({
|
|
2511
2519
|
...e,
|
|
2512
2520
|
messages: o
|
|
2513
2521
|
}, t, n, r);
|
|
@@ -2536,7 +2544,7 @@ function Wi(e) {
|
|
|
2536
2544
|
});
|
|
2537
2545
|
}
|
|
2538
2546
|
} catch (a) {
|
|
2539
|
-
if (a instanceof gi) throw s.abort(),
|
|
2547
|
+
if (a instanceof gi) throw s.abort(), L("error", {
|
|
2540
2548
|
stage: "stream_stalled",
|
|
2541
2549
|
waitedMs: a.waitedMs,
|
|
2542
2550
|
stallMs: E
|
|
@@ -2549,13 +2557,13 @@ function Wi(e) {
|
|
|
2549
2557
|
};
|
|
2550
2558
|
if (yi(a) && l === null && u === "" && !e._ctxRetry) {
|
|
2551
2559
|
e._ctxRetry = !0;
|
|
2552
|
-
let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o =
|
|
2553
|
-
return
|
|
2560
|
+
let i = (e) => X(typeof e.content == "string" ? e.content : JSON.stringify(e.content)), a = e.messages.reduce((e, t) => e + i(t), 0), o = U(e.messages, Math.round(P.contextWindow * .3)), s = o.reduce((e, t) => e + i(t), 0);
|
|
2561
|
+
return L("error", {
|
|
2554
2562
|
stage: "context_overflow_retry",
|
|
2555
2563
|
beforeTokens: a,
|
|
2556
2564
|
afterTokens: s,
|
|
2557
|
-
window:
|
|
2558
|
-
}), console.warn(`[page-agent-sdk] 上下文超限 → 激进 trim 重试:${a} → ${s} tokens(窗口 ${
|
|
2565
|
+
window: P.contextWindow
|
|
2566
|
+
}), console.warn(`[page-agent-sdk] 上下文超限 → 激进 trim 重试:${a} → ${s} tokens(窗口 ${P.contextWindow})`), ge({
|
|
2559
2567
|
...e,
|
|
2560
2568
|
messages: o
|
|
2561
2569
|
}, t, n, r);
|
|
@@ -2569,22 +2577,25 @@ function Wi(e) {
|
|
|
2569
2577
|
content: u
|
|
2570
2578
|
};
|
|
2571
2579
|
}
|
|
2572
|
-
async function
|
|
2573
|
-
let t =
|
|
2580
|
+
async function _e(e) {
|
|
2581
|
+
let t = ue.find((t) => t.name === e.name);
|
|
2574
2582
|
if (!t) return {
|
|
2575
2583
|
content: `工具 "${e.name}" 不存在`,
|
|
2576
2584
|
status: "error"
|
|
2577
2585
|
};
|
|
2578
2586
|
try {
|
|
2579
|
-
let n =
|
|
2580
|
-
|
|
2587
|
+
let n = {
|
|
2588
|
+
__pgDataScope: "",
|
|
2589
|
+
...e.callConfig ?? {}
|
|
2590
|
+
}, r = await t.invoke(e.args, { configurable: n }), i = typeof r == "string" ? r : JSON.stringify(r);
|
|
2591
|
+
return i = ti(i, {
|
|
2581
2592
|
files: e.state.files,
|
|
2582
|
-
vfsAvailable:
|
|
2593
|
+
vfsAvailable: ue.some((e) => e.name === "vfs_read"),
|
|
2583
2594
|
toolName: e.name,
|
|
2584
|
-
threshold:
|
|
2585
|
-
passThroughChars:
|
|
2595
|
+
threshold: re,
|
|
2596
|
+
passThroughChars: ie
|
|
2586
2597
|
}).content, {
|
|
2587
|
-
content:
|
|
2598
|
+
content: i,
|
|
2588
2599
|
status: "done"
|
|
2589
2600
|
};
|
|
2590
2601
|
} catch (e) {
|
|
@@ -2594,15 +2605,15 @@ function Wi(e) {
|
|
|
2594
2605
|
};
|
|
2595
2606
|
}
|
|
2596
2607
|
}
|
|
2597
|
-
function
|
|
2608
|
+
function ve(e) {
|
|
2598
2609
|
return e instanceof a ? "human" : e instanceof i ? "ai" : e instanceof o ? "system" : e instanceof s ? "tool" : "unknown";
|
|
2599
2610
|
}
|
|
2600
|
-
function
|
|
2611
|
+
function U(e, t) {
|
|
2601
2612
|
return Bi(e, t);
|
|
2602
2613
|
}
|
|
2603
|
-
function
|
|
2604
|
-
return !
|
|
2605
|
-
let t =
|
|
2614
|
+
function ye(e) {
|
|
2615
|
+
return !te && !A ? [] : e.map((e) => {
|
|
2616
|
+
let t = ve(e), n = { role: t === "human" ? "user" : t === "ai" ? "assistant" : t }, r = typeof e.content == "string" ? e.content : JSON.stringify(e.content);
|
|
2606
2617
|
r && (n.content = r.length > zi ? r.slice(0, zi) + `…(截断 ${r.length - zi} 字符)` : r);
|
|
2607
2618
|
let i = e.tool_calls;
|
|
2608
2619
|
Array.isArray(i) && i.length && (n.tool_calls = i.map((e) => ({
|
|
@@ -2617,20 +2628,20 @@ function Wi(e) {
|
|
|
2617
2628
|
return a && (n.tool_call_id = a), n;
|
|
2618
2629
|
});
|
|
2619
2630
|
}
|
|
2620
|
-
async function
|
|
2621
|
-
|
|
2631
|
+
async function be(e, t, n) {
|
|
2632
|
+
I.value = [], ae.value = [], oe = 0, V = ui(), V.messages = e, V = await xi(x, V);
|
|
2622
2633
|
let r = e;
|
|
2623
2634
|
for (let e of x) if (e.compressInput) {
|
|
2624
|
-
let t =
|
|
2625
|
-
r = Array.isArray(n) ? n : n.messages, n && !Array.isArray(n) && n.stats ? (
|
|
2626
|
-
...
|
|
2635
|
+
let t = ce(void 0, "compression", `compress:${e.name}`, {}), n = await e.compressInput(r);
|
|
2636
|
+
r = Array.isArray(n) ? n : n.messages, n && !Array.isArray(n) && n.stats ? (V = {
|
|
2637
|
+
...V,
|
|
2627
2638
|
lastCompression: n.stats
|
|
2628
|
-
},
|
|
2639
|
+
}, le(t, "ok", { stats: n.stats })) : le(t);
|
|
2629
2640
|
}
|
|
2630
2641
|
{
|
|
2631
|
-
let e = X(v || "你是一个智能助手。"), n = Math.max(2e3, Math.round(
|
|
2642
|
+
let e = X(v || "你是一个智能助手。"), n = Math.max(2e3, Math.round(P.contextWindow * fe));
|
|
2632
2643
|
if (e > n) {
|
|
2633
|
-
let r = `[page-agent-sdk] systemPrompt 本身(${e} tokens)超过系统段预算(${n} tokens,窗口 ${
|
|
2644
|
+
let r = `[page-agent-sdk] systemPrompt 本身(${e} tokens)超过系统段预算(${n} tokens,窗口 ${P.contextWindow} 的 ${fe * 100}%);请缩减 systemPrompt 或换更大窗口模型`;
|
|
2634
2645
|
return console.error(r), t({
|
|
2635
2646
|
type: "error",
|
|
2636
2647
|
message: r,
|
|
@@ -2642,15 +2653,15 @@ function Wi(e) {
|
|
|
2642
2653
|
}), "";
|
|
2643
2654
|
}
|
|
2644
2655
|
}
|
|
2645
|
-
let i =
|
|
2646
|
-
|
|
2656
|
+
let i = me(r);
|
|
2657
|
+
L("context", {
|
|
2647
2658
|
model: c,
|
|
2648
|
-
tools:
|
|
2659
|
+
tools: ue.map((e) => e.name),
|
|
2649
2660
|
middleware: x.map((e) => e.name)
|
|
2650
2661
|
});
|
|
2651
|
-
let l = Ei(x, (e) =>
|
|
2662
|
+
let l = Ei(x, (e) => ge(e, t, n)), u = Di(x, _e), d = {
|
|
2652
2663
|
rounds: 0,
|
|
2653
|
-
maxToolRounds:
|
|
2664
|
+
maxToolRounds: N,
|
|
2654
2665
|
invokeUsage: {
|
|
2655
2666
|
prompt_tokens: 0,
|
|
2656
2667
|
completion_tokens: 0,
|
|
@@ -2659,13 +2670,13 @@ function Wi(e) {
|
|
|
2659
2670
|
writeFailures: {},
|
|
2660
2671
|
budgetHinted: !1
|
|
2661
2672
|
};
|
|
2662
|
-
|
|
2663
|
-
let f = 0, p = 0, m = Vi(
|
|
2673
|
+
V.loopProgress = d;
|
|
2674
|
+
let f = 0, p = 0, m = Vi(N, C), h = null, g = 0, b = !1, S = 0;
|
|
2664
2675
|
try {
|
|
2665
|
-
for (; (f <
|
|
2676
|
+
for (; (f < N || b) && p < m && (p++, !n?.aborted);) {
|
|
2666
2677
|
if (k > 0 && d.invokeUsage.total_tokens > k) {
|
|
2667
2678
|
let e = `本轮 token 预算(约 ${k})已用尽:任务在 ${f} 轮工具调用后中断,已完成的部分均保留。可继续对话,指定下一步(如「继续完成」/「只改 X」/「提高预算重试」)。`;
|
|
2668
|
-
return
|
|
2679
|
+
return L("error", {
|
|
2669
2680
|
stage: "round_token_budget_exceeded",
|
|
2670
2681
|
used: d.invokeUsage.total_tokens,
|
|
2671
2682
|
budget: k,
|
|
@@ -2684,38 +2695,38 @@ function Wi(e) {
|
|
|
2684
2695
|
content: e
|
|
2685
2696
|
}), e;
|
|
2686
2697
|
}
|
|
2687
|
-
let e =
|
|
2698
|
+
let e = ce(void 0, "round", `round ${p}`, { round: p })?.id;
|
|
2688
2699
|
t({
|
|
2689
2700
|
type: "round_start",
|
|
2690
2701
|
round: p
|
|
2691
|
-
}),
|
|
2702
|
+
}), V = Si(x, {
|
|
2692
2703
|
messages: i,
|
|
2693
|
-
state:
|
|
2694
|
-
}), i =
|
|
2695
|
-
let r =
|
|
2704
|
+
state: V
|
|
2705
|
+
}), i = he(i), i = U(i, Math.round(P.contextWindow * .6));
|
|
2706
|
+
let r = ce(e, "model", c, {
|
|
2696
2707
|
round: f + 1,
|
|
2697
|
-
tools:
|
|
2708
|
+
tools: ue.map((e) => e.name)
|
|
2698
2709
|
});
|
|
2699
|
-
|
|
2710
|
+
L("llm_request", {
|
|
2700
2711
|
round: f + 1,
|
|
2701
2712
|
model: c,
|
|
2702
|
-
tools:
|
|
2703
|
-
messages:
|
|
2713
|
+
tools: ue.map((e) => e.name),
|
|
2714
|
+
messages: ye(i)
|
|
2704
2715
|
});
|
|
2705
2716
|
let o = await l({
|
|
2706
2717
|
messages: i,
|
|
2707
|
-
state:
|
|
2718
|
+
state: V
|
|
2708
2719
|
});
|
|
2709
|
-
i.push(o.message),
|
|
2720
|
+
i.push(o.message), L("llm_response", {
|
|
2710
2721
|
round: f + 1,
|
|
2711
2722
|
content: o.content,
|
|
2712
2723
|
toolCalls: o.toolCalls
|
|
2713
|
-
}),
|
|
2724
|
+
}), le(r, o.aborted ? "timeout" : "ok", { usage: _(o.message) });
|
|
2714
2725
|
{
|
|
2715
2726
|
let e = y(o.message);
|
|
2716
2727
|
e && (d.invokeUsage.prompt_tokens += e.prompt_tokens ?? 0, d.invokeUsage.completion_tokens += e.completion_tokens ?? 0, d.invokeUsage.total_tokens += e.total_tokens ?? 0);
|
|
2717
2728
|
}
|
|
2718
|
-
if (
|
|
2729
|
+
if (V = Ci(x, o, V), o.aborted) return t({
|
|
2719
2730
|
type: "done",
|
|
2720
2731
|
content: o.content
|
|
2721
2732
|
}), o.content;
|
|
@@ -2729,21 +2740,21 @@ function Wi(e) {
|
|
|
2729
2740
|
name: e.name,
|
|
2730
2741
|
args: e.args,
|
|
2731
2742
|
type: "tool_call"
|
|
2732
|
-
}))),
|
|
2743
|
+
}))), L("middleware", {
|
|
2733
2744
|
stage: "dsml_parsed",
|
|
2734
2745
|
count: n.length,
|
|
2735
2746
|
names: n.map((e) => e.name)
|
|
2736
2747
|
});
|
|
2737
2748
|
} else {
|
|
2738
2749
|
if (e && g < 2) {
|
|
2739
|
-
g += 1, b = !0,
|
|
2750
|
+
g += 1, b = !0, L("middleware", {
|
|
2740
2751
|
stage: "format_retry",
|
|
2741
2752
|
attempt: g,
|
|
2742
2753
|
content: o.content.slice(0, 200)
|
|
2743
2754
|
}), i.push(new a("⚠️ 你刚才把工具调用写成了文本(伪 XML/标签/DSML 标记,如 <|tool_calls|>、<||DSML||>、<invoke name=...>),未被系统识别为工具调用,因此未执行,页面无变化。请直接用标准 function calling(工具调用)格式重新发起工具调用,不要在回复正文里输出这些标签或 JSON 文本。"));
|
|
2744
2755
|
continue;
|
|
2745
2756
|
}
|
|
2746
|
-
if (e && (
|
|
2757
|
+
if (e && (L("error", {
|
|
2747
2758
|
stage: "garbled_exhausted",
|
|
2748
2759
|
retries: g,
|
|
2749
2760
|
content: o.content.slice(0, 200)
|
|
@@ -2754,24 +2765,24 @@ function Wi(e) {
|
|
|
2754
2765
|
code: "GARBLED_TOOL_CALL_EXHAUSTED",
|
|
2755
2766
|
context: { content: o.content.slice(0, 200) }
|
|
2756
2767
|
})), !e && f > 0 && S < 2 && Mi(o.content)) {
|
|
2757
|
-
S += 1, b = !0,
|
|
2768
|
+
S += 1, b = !0, L("middleware", {
|
|
2758
2769
|
stage: "transitional_retry",
|
|
2759
2770
|
attempt: S,
|
|
2760
2771
|
content: o.content.slice(0, 160)
|
|
2761
2772
|
}), i.push(new a("⚠️ 你刚才输出的是计划/过渡性表述(如「我先看看」「稍后委派」),任务尚未完成。请立即继续执行 —— 调用所需工具把任务做完,全部完成后再给出总结回复。"));
|
|
2762
2773
|
continue;
|
|
2763
2774
|
}
|
|
2764
|
-
if (!e && O > 0 &&
|
|
2775
|
+
if (!e && O > 0 && V.verifyAttempts < O) {
|
|
2765
2776
|
let e = await Ti(x, {
|
|
2766
2777
|
messages: i,
|
|
2767
|
-
state:
|
|
2778
|
+
state: V,
|
|
2768
2779
|
response: o,
|
|
2769
|
-
log: (e, t) =>
|
|
2780
|
+
log: (e, t) => L(e, t)
|
|
2770
2781
|
});
|
|
2771
2782
|
if (e) {
|
|
2772
|
-
h = o.content,
|
|
2783
|
+
h = o.content, V.verifyAttempts += 1, i.push(new a(`⚠️ 验证未通过,请修正:${e}`)), L("middleware", {
|
|
2773
2784
|
stage: "verify_retry",
|
|
2774
|
-
attempt:
|
|
2785
|
+
attempt: V.verifyAttempts,
|
|
2775
2786
|
feedback: e
|
|
2776
2787
|
});
|
|
2777
2788
|
continue;
|
|
@@ -2799,20 +2810,20 @@ function Wi(e) {
|
|
|
2799
2810
|
id: r,
|
|
2800
2811
|
name: e.name,
|
|
2801
2812
|
args: e.args,
|
|
2802
|
-
state:
|
|
2813
|
+
state: V,
|
|
2803
2814
|
signal: n,
|
|
2804
2815
|
emit: t,
|
|
2805
|
-
logSink:
|
|
2816
|
+
logSink: R
|
|
2806
2817
|
}
|
|
2807
2818
|
};
|
|
2808
2819
|
}), v = await ni(m, D, async (r) => {
|
|
2809
2820
|
if (n?.aborted) return;
|
|
2810
|
-
let i =
|
|
2821
|
+
let i = ce(e, "tool", r.call.name, { name: r.call.name }), a = Date.now();
|
|
2811
2822
|
t({
|
|
2812
2823
|
type: "tool_call",
|
|
2813
2824
|
name: r.call.name,
|
|
2814
2825
|
args: r.call.args
|
|
2815
|
-
}),
|
|
2826
|
+
}), L("tool_call", {
|
|
2816
2827
|
round: f + 1,
|
|
2817
2828
|
name: r.call.name,
|
|
2818
2829
|
args: r.call.args,
|
|
@@ -2835,13 +2846,13 @@ function Wi(e) {
|
|
|
2835
2846
|
result: o.content,
|
|
2836
2847
|
status: o.status,
|
|
2837
2848
|
durationMs: s
|
|
2838
|
-
}),
|
|
2849
|
+
}), L("tool_result", {
|
|
2839
2850
|
round: f + 1,
|
|
2840
2851
|
name: r.call.name,
|
|
2841
2852
|
result: o.content,
|
|
2842
2853
|
status: o.status,
|
|
2843
2854
|
durationMs: s
|
|
2844
|
-
}),
|
|
2855
|
+
}), le(i, o.status === "error" ? "error" : "ok", { resultSnippet: String(o.content).slice(0, 100) }), o;
|
|
2845
2856
|
}, n);
|
|
2846
2857
|
for (let e = 0; e < m.length; e++) {
|
|
2847
2858
|
let t = v[e];
|
|
@@ -2868,19 +2879,19 @@ function Wi(e) {
|
|
|
2868
2879
|
content: h
|
|
2869
2880
|
}), h;
|
|
2870
2881
|
let e = i[i.length - 1];
|
|
2871
|
-
if (e &&
|
|
2872
|
-
let e = i[0] &&
|
|
2873
|
-
|
|
2882
|
+
if (e && ve(e) === "tool") {
|
|
2883
|
+
let e = i[0] && ve(i[0]) === "system" ? i.slice(1) : i.slice(), r = [new o(H() + "\n\n工具调用次数已达上限,请基于已有工具结果直接给出最终回答,不要再调用工具。"), ...e];
|
|
2884
|
+
L("llm_request", {
|
|
2874
2885
|
round: "wrap_up",
|
|
2875
2886
|
model: c,
|
|
2876
2887
|
tools: [],
|
|
2877
|
-
messages:
|
|
2888
|
+
messages: ye(r)
|
|
2878
2889
|
});
|
|
2879
|
-
let a = await Ei(x, (e) =>
|
|
2890
|
+
let a = await Ei(x, (e) => ge(e, t, n, z))({
|
|
2880
2891
|
messages: r,
|
|
2881
|
-
state:
|
|
2892
|
+
state: V
|
|
2882
2893
|
});
|
|
2883
|
-
if (
|
|
2894
|
+
if (V = Ci(x, a, V), L("llm_response", {
|
|
2884
2895
|
round: "wrap_up",
|
|
2885
2896
|
content: a.content
|
|
2886
2897
|
}), a.aborted) return t({
|
|
@@ -2891,7 +2902,7 @@ function Wi(e) {
|
|
|
2891
2902
|
let e = a.content;
|
|
2892
2903
|
if (Oi(e)) {
|
|
2893
2904
|
let n = ki(e);
|
|
2894
|
-
|
|
2905
|
+
L("error", {
|
|
2895
2906
|
stage: "garbled_wrapup",
|
|
2896
2907
|
content: e.slice(0, 200)
|
|
2897
2908
|
}), t({
|
|
@@ -2915,41 +2926,41 @@ function Wi(e) {
|
|
|
2915
2926
|
}), r;
|
|
2916
2927
|
} finally {
|
|
2917
2928
|
try {
|
|
2918
|
-
await wi(x,
|
|
2929
|
+
await wi(x, V);
|
|
2919
2930
|
} catch (e) {
|
|
2920
2931
|
let t = Zr(e, "observable");
|
|
2921
2932
|
console.warn("[Agent] afterAgent 清理出错(observable,已忽略):", t.message);
|
|
2922
2933
|
}
|
|
2923
|
-
if (
|
|
2924
|
-
j(
|
|
2934
|
+
if (se && j) try {
|
|
2935
|
+
j(ae.value, li(ae.value));
|
|
2925
2936
|
} catch {}
|
|
2926
2937
|
}
|
|
2927
2938
|
}
|
|
2928
|
-
async function
|
|
2939
|
+
async function xe(e, t, n) {
|
|
2929
2940
|
let r = "";
|
|
2930
|
-
return await
|
|
2941
|
+
return await be(e, (e) => {
|
|
2931
2942
|
e.type === "done" && (r = e.content), n?.(e);
|
|
2932
2943
|
}, t), r;
|
|
2933
2944
|
}
|
|
2934
|
-
function
|
|
2935
|
-
|
|
2945
|
+
function Se(e) {
|
|
2946
|
+
ue = [...x.flatMap((e) => e.tools || []), ...e], B();
|
|
2936
2947
|
}
|
|
2937
|
-
function
|
|
2938
|
-
|
|
2948
|
+
function Ce(e) {
|
|
2949
|
+
z = e, B(), M?.(e);
|
|
2939
2950
|
}
|
|
2940
2951
|
return {
|
|
2941
|
-
invoke:
|
|
2942
|
-
stream:
|
|
2943
|
-
getState: () =>
|
|
2952
|
+
invoke: xe,
|
|
2953
|
+
stream: be,
|
|
2954
|
+
getState: () => V,
|
|
2944
2955
|
get allTools() {
|
|
2945
|
-
return
|
|
2946
|
-
},
|
|
2947
|
-
setTools:
|
|
2948
|
-
setLlm:
|
|
2949
|
-
setModelCaps:
|
|
2950
|
-
debugLogs:
|
|
2951
|
-
spans:
|
|
2952
|
-
getEffectiveSystemPrompt: () =>
|
|
2956
|
+
return ue;
|
|
2957
|
+
},
|
|
2958
|
+
setTools: Se,
|
|
2959
|
+
setLlm: Ce,
|
|
2960
|
+
setModelCaps: F,
|
|
2961
|
+
debugLogs: I,
|
|
2962
|
+
spans: ae,
|
|
2963
|
+
getEffectiveSystemPrompt: () => H()
|
|
2953
2964
|
};
|
|
2954
2965
|
}
|
|
2955
2966
|
//#endregion
|
|
@@ -4874,12 +4885,12 @@ function Ss(e, t) {
|
|
|
4874
4885
|
return t.some((t) => e === t || e.startsWith(t + ".") || e.startsWith(t + "["));
|
|
4875
4886
|
}
|
|
4876
4887
|
function Cs(e, t) {
|
|
4877
|
-
let n = e.invoke.bind(e), r = async (e) => {
|
|
4888
|
+
let n = e.invoke.bind(e), r = async (e, r) => {
|
|
4878
4889
|
if (Array.isArray(e?.patches) && e.patches.some((e) => !e || typeof e.jsonPath != "string" || !e.jsonPath)) return `PATH_OUT_OF_SCOPE:patches 含无 jsonPath 项(作用于根),子 agent 仅可写 ${t.join(", ")} 范围内子路径。请为每个 patch 指定 jsonPath。`;
|
|
4879
|
-
let
|
|
4880
|
-
if (!
|
|
4881
|
-
for (let e of
|
|
4882
|
-
return n(e);
|
|
4890
|
+
let i = xs(e);
|
|
4891
|
+
if (!i.length) return `PATH_OUT_OF_SCOPE:子 agent 仅可增量 patch(writablePaths: ${t.join(", ")}),不能整体替换(无 jsonPath)。用 write({patch:{jsonPath,...}}) 增量改。`;
|
|
4892
|
+
for (let e of i) if (!Ss(e, t)) return `PATH_OUT_OF_SCOPE:子 agent 写 "${e}" 越界(仅可写 ${t.join(", ")})。`;
|
|
4893
|
+
return r === void 0 ? n(e) : n(e, r);
|
|
4883
4894
|
};
|
|
4884
4895
|
return new Proxy(e, { get(e, t, n) {
|
|
4885
4896
|
return t === "invoke" ? r : Reflect.get(e, t, n);
|
|
@@ -8627,12 +8638,12 @@ function Pu(e, n = {}) {
|
|
|
8627
8638
|
resourceStore: p.resourceStore
|
|
8628
8639
|
}));
|
|
8629
8640
|
let a = $(s);
|
|
8630
|
-
return b(a, n), i === void 0 ? `主数据${r ? ` @ ${r}` : ""} = (undefined) (hash=${a})` : `主数据${r ? ` @ ${r}` : ""} = ${Q(i)} (hash=${a})
|
|
8641
|
+
return b(a, n), i === void 0 ? `主数据${r ? ` @ ${r}` : ""} = (undefined) (hash=${a})` : (i = ku(i, n === "", C, S), `主数据${r ? ` @ ${r}` : ""} = ${Q(i)} (hash=${a})`);
|
|
8631
8642
|
}, {
|
|
8632
8643
|
name: "get_data",
|
|
8633
8644
|
description: "@deprecated(改用 read,等价且支持 fields/depth/分页)。读取主数据当前值(返回含 hash 供乐观锁);jsonPath 可选读子路径。大结果自动外存 vfs。",
|
|
8634
8645
|
schema: t.object({ jsonPath: t.string().optional().describe("相对主数据根的点号路径(如 components.0.text);不传则读整个主数据") })
|
|
8635
|
-
}),
|
|
8646
|
+
}), M = r(async ({ value: e, expectedHash: t }, n) => {
|
|
8636
8647
|
let r = v(n), i = await k("set", t || (x ? y(r) : void 0));
|
|
8637
8648
|
if (i !== null) return i;
|
|
8638
8649
|
let c = Ia(e);
|
|
@@ -8658,8 +8669,8 @@ function Pu(e, n = {}) {
|
|
|
8658
8669
|
expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝写入防覆盖。不传则自动用你最后读到的 hash(autoLock)")
|
|
8659
8670
|
})
|
|
8660
8671
|
});
|
|
8661
|
-
A(
|
|
8662
|
-
let
|
|
8672
|
+
A(M);
|
|
8673
|
+
let te = r(async (e, t) => {
|
|
8663
8674
|
let n = v(t), r = e.op ?? e.patch?.op, i = e.jsonPath ?? e.patch?.jsonPath, c = e.value ?? e.patch?.value, u = e.expectedHash;
|
|
8664
8675
|
if (!r) return Y({
|
|
8665
8676
|
code: "MISSING_VALUE",
|
|
@@ -8734,8 +8745,8 @@ function Pu(e, n = {}) {
|
|
|
8734
8745
|
}).optional().describe("容错:误传 write 的 {patch:{op,jsonPath,value}} 形式时从此取值(顶层优先)。正常用顶层 op/jsonPath/value 即可")
|
|
8735
8746
|
})
|
|
8736
8747
|
});
|
|
8737
|
-
A(
|
|
8738
|
-
let
|
|
8748
|
+
A(te);
|
|
8749
|
+
let N = r(async ({ jsonPath: e, expectedHash: t }, n) => {
|
|
8739
8750
|
let r = v(n);
|
|
8740
8751
|
if (!e) return Y({
|
|
8741
8752
|
code: "MISSING_VALUE",
|
|
@@ -8777,8 +8788,8 @@ function Pu(e, n = {}) {
|
|
|
8777
8788
|
expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝删除防覆盖")
|
|
8778
8789
|
})
|
|
8779
8790
|
});
|
|
8780
|
-
A(
|
|
8781
|
-
let
|
|
8791
|
+
A(N);
|
|
8792
|
+
let P = r(async ({ id: e }, t) => {
|
|
8782
8793
|
let n = v(t);
|
|
8783
8794
|
if (!m.length) return Y({
|
|
8784
8795
|
code: "NO_SNAPSHOT",
|
|
@@ -8807,8 +8818,8 @@ function Pu(e, n = {}) {
|
|
|
8807
8818
|
description: "把主数据回退到某个快照(就地还原,保留响应式)。不传 id 则回退最近一次(快速回退)。可用 history_data({list:true}) 查看快照列表。",
|
|
8808
8819
|
schema: t.object({ id: t.number().int().optional().describe("指定快照序号;不传则回退最近一次") })
|
|
8809
8820
|
});
|
|
8810
|
-
A(
|
|
8811
|
-
let
|
|
8821
|
+
A(P);
|
|
8822
|
+
let ne = r(async ({ id: e, jsonPath: t, list: n }) => {
|
|
8812
8823
|
if (n) {
|
|
8813
8824
|
if (!m.length) return "无快照。set/edit/delete 会自动存快照。";
|
|
8814
8825
|
let e = m.map((e) => {
|
|
@@ -8853,15 +8864,16 @@ function Pu(e, n = {}) {
|
|
|
8853
8864
|
jsonPath: t.string().optional().describe("只看快照的某子路径(相对主数据根);不传则整个快照"),
|
|
8854
8865
|
list: t.boolean().optional().describe("true 则列出快照时间线元信息(序号/操作/标签/时间/大小);不传则查看单条快照内容")
|
|
8855
8866
|
})
|
|
8856
|
-
}),
|
|
8867
|
+
}), re = r(async ({ expr: e, limit: t }, n) => {
|
|
8868
|
+
let r = v(n);
|
|
8857
8869
|
if (typeof s != "object" || !s) return Y({
|
|
8858
8870
|
code: "NOT_OBJECT",
|
|
8859
8871
|
message: `主数据不是对象/数组,无法查询(当前为 ${s === void 0 ? "undefined" : typeof s})`,
|
|
8860
8872
|
hint: "query 仅适用于对象/数组;叶子用 get_data 读"
|
|
8861
8873
|
});
|
|
8862
|
-
let
|
|
8874
|
+
let i = l ? ea(s, o) : s, a;
|
|
8863
8875
|
try {
|
|
8864
|
-
|
|
8876
|
+
a = eu(i, e);
|
|
8865
8877
|
} catch (t) {
|
|
8866
8878
|
return Y({
|
|
8867
8879
|
code: "JSONPATH_SYNTAX",
|
|
@@ -8870,8 +8882,8 @@ function Pu(e, n = {}) {
|
|
|
8870
8882
|
details: { expr: e }
|
|
8871
8883
|
});
|
|
8872
8884
|
}
|
|
8873
|
-
let
|
|
8874
|
-
return `{"matched":${
|
|
8885
|
+
let c = t ?? 50, u = a.slice(0, c), d = u.map((e) => `{"path":${JSON.stringify(e.path)},"index":${e.index === void 0 ? "null" : e.index},"value":${Q(ku(e.value, r === "", C, S))}}`);
|
|
8886
|
+
return `{"matched":${a.length},"returned":${u.length},"truncated":${a.length > c},"results":[${d.join(",")}]}`;
|
|
8875
8887
|
}, {
|
|
8876
8888
|
name: "query_data",
|
|
8877
8889
|
description: "用 JSONPath 查询主数据(只读):$ 根/.key/[n]/[*]/[?(==/!=/</<=/>/>=,&&/||)]/..key 递归。返回匹配元素 path/index/value(path 可作 write patch 的 jsonPath);大数组筛选定位用它。",
|
|
@@ -8879,7 +8891,7 @@ function Pu(e, n = {}) {
|
|
|
8879
8891
|
expr: t.string().describe("JSONPath 表达式,如 $.components[?(@.type==\"card\" && @.price<100)] 或 $..title(递归找所有 title)"),
|
|
8880
8892
|
limit: t.number().int().min(1).max(200).optional().describe("返回结果上限,默认 50")
|
|
8881
8893
|
})
|
|
8882
|
-
}),
|
|
8894
|
+
}), ie = r(async ({ query: e, mode: t, fuzzyThreshold: n, matchKey: r, limit: i }) => {
|
|
8883
8895
|
if (s == null) return Y({
|
|
8884
8896
|
code: "EMPTY",
|
|
8885
8897
|
message: "主数据为空,无可搜索内容"
|
|
@@ -8917,7 +8929,7 @@ function Pu(e, n = {}) {
|
|
|
8917
8929
|
matchKey: t.boolean().optional().describe("是否同时匹配 key 名,默认 true"),
|
|
8918
8930
|
limit: t.number().int().min(1).max(200).optional().describe("返回上限,默认 50")
|
|
8919
8931
|
})
|
|
8920
|
-
}),
|
|
8932
|
+
}), F = r(async ({ script: e, mode: t, jsonPath: n }, r) => {
|
|
8921
8933
|
let i = v(r);
|
|
8922
8934
|
if (e.length > 8e3) return Y({
|
|
8923
8935
|
code: "SCRIPT_TOO_LARGE",
|
|
@@ -9039,33 +9051,34 @@ function Pu(e, n = {}) {
|
|
|
9039
9051
|
jsonPath: t.string().optional().describe("子树模式:仅对 jsonPath 指向的子树执行(降低大 JSON 成本);transform 时返回值作为该子树新值")
|
|
9040
9052
|
})
|
|
9041
9053
|
});
|
|
9042
|
-
A(
|
|
9043
|
-
let
|
|
9054
|
+
A(F, (e) => e?.mode === "transform");
|
|
9055
|
+
let I = r(async ({ jsonPath: e, jsonPaths: t, fields: r, depth: i, offset: a, limit: u }, d) => {
|
|
9044
9056
|
let f = v(d), m = $(s);
|
|
9045
|
-
if (
|
|
9046
|
-
let e = t.map((
|
|
9047
|
-
let
|
|
9048
|
-
if (!Ki(
|
|
9049
|
-
|
|
9050
|
-
|
|
9057
|
+
if (t && t.length) {
|
|
9058
|
+
let e = !1, a = t.map((t) => {
|
|
9059
|
+
let a = t || "";
|
|
9060
|
+
if (!Ki(a, o, l)) return `- ${a || "(根)"}: [PATH_DENIED: 不在 schema 声明字段内]`;
|
|
9061
|
+
e = !0;
|
|
9062
|
+
let c = a ? Z(s, a) : s;
|
|
9063
|
+
if (!a && l) c = ea(c, o);
|
|
9051
9064
|
else if (l) {
|
|
9052
|
-
let e = Ji(o,
|
|
9053
|
-
e && (
|
|
9065
|
+
let e = Ji(o, a);
|
|
9066
|
+
e && (c = ea(c, e));
|
|
9054
9067
|
}
|
|
9055
|
-
let
|
|
9056
|
-
if (p && (
|
|
9057
|
-
jp:
|
|
9058
|
-
resolved:
|
|
9068
|
+
let u = c;
|
|
9069
|
+
if (p && (u = gu({
|
|
9070
|
+
jp: a,
|
|
9071
|
+
resolved: u,
|
|
9059
9072
|
resourcesByPath: p.resourcesByPath,
|
|
9060
9073
|
resourceStore: p.resourceStore
|
|
9061
9074
|
})), n.interceptors?.read) try {
|
|
9062
|
-
|
|
9075
|
+
u = n.interceptors.read(u);
|
|
9063
9076
|
} catch (e) {
|
|
9064
|
-
return `- ${
|
|
9077
|
+
return `- ${a}: [READ_INTERCEPT: ${e.message}]`;
|
|
9065
9078
|
}
|
|
9066
|
-
return r && r.length && (
|
|
9079
|
+
return r && r.length && (u = La(u, r)), i != null && (u = Ra(u, i)), u = ku(u, f === "", C, S), u === void 0 ? `- ${a} = (undefined)` : `- ${a} = ${Q(u)}`;
|
|
9067
9080
|
});
|
|
9068
|
-
return `多路径读取(共 ${t.length} 项,hash=${m}):\n${
|
|
9081
|
+
return e && b(m, f), `多路径读取(共 ${t.length} 项,hash=${m}):\n${a.join("\n")}`;
|
|
9069
9082
|
}
|
|
9070
9083
|
let h = e || "";
|
|
9071
9084
|
if (ja(h)) return Y({
|
|
@@ -9098,7 +9111,7 @@ function Pu(e, n = {}) {
|
|
|
9098
9111
|
message: `read 拦截器抛错: ${e.message}`
|
|
9099
9112
|
});
|
|
9100
9113
|
}
|
|
9101
|
-
r && r.length && (_ = La(_, r)), i != null && (_ = Ra(_, i)), _ = ku(_, f === "", C, S);
|
|
9114
|
+
b(m, f), r && r.length && (_ = La(_, r)), i != null && (_ = Ra(_, i)), _ = ku(_, f === "", C, S);
|
|
9102
9115
|
let y = e ? "" : `主数据说明: ${c}\n格式: 写入值需为 JSON,且通过声明的 schema 校验(校验失败时 write 会返回结构化错误)。字段约束(类型/min/max/enum/必填/默认)见 systemPrompt「可操作数据」段,或用 schema_data({ jsonPath }) 按需查。\n\n`, x = r && r.length ? `(字段裁剪:${r.join(",")})` : "", w = i == null ? "" : `(深度≤${i})`, T = x || w ? ` ${x}${w}` : "";
|
|
9103
9116
|
if ((a !== void 0 || u !== void 0) && Array.isArray(_)) {
|
|
9104
9117
|
let e = _.length, t = Math.max(0, a ?? 0), n = Math.min(200, Math.max(1, u ?? 50)), r = _.slice(t, t + n), i = t + n < e;
|
|
@@ -9116,7 +9129,7 @@ function Pu(e, n = {}) {
|
|
|
9116
9129
|
offset: t.number().int().min(0).optional().describe("数组分页起始偏移(仅当读取目标是数组时生效,默认 0),配合 limit 分页读大数组"),
|
|
9117
9130
|
limit: t.number().int().min(1).max(200).optional().describe("数组分页每页条数(默认 50,上限 200;仅数组时生效),返回切片 + total/hasMore")
|
|
9118
9131
|
})
|
|
9119
|
-
}),
|
|
9132
|
+
}), L = r(async ({ value: e, patch: t, patches: r, del: i, dryRun: c }, u) => {
|
|
9120
9133
|
let d = v(u), f = "set";
|
|
9121
9134
|
i ? f = "delete" : (r && r.length || t) && (f = "edit");
|
|
9122
9135
|
let g = t?.value === void 0 ? e : t.value, _;
|
|
@@ -9276,8 +9289,8 @@ function Pu(e, n = {}) {
|
|
|
9276
9289
|
dryRun: t.boolean().optional().describe("预检模式:走完整校验链(schema + 白名单 + patch 应用到 clone)但不落盘、不入快照,返回预览。四意图(value/patch/patches/del)均支持;乐观锁冲突照常检测(返回 VERSION_CONFLICT 不挂起)")
|
|
9277
9290
|
})
|
|
9278
9291
|
});
|
|
9279
|
-
A(
|
|
9280
|
-
let
|
|
9292
|
+
A(L);
|
|
9293
|
+
let R = r(async ({ jsonPath: e }) => {
|
|
9281
9294
|
let t = e || "", n = t ? Ji(o, t) : o;
|
|
9282
9295
|
return n ? `schema${t ? ` @ ${t}` : ""} = ${Q(sa(n))}` : Y({
|
|
9283
9296
|
code: "PATH_DENIED",
|
|
@@ -9288,7 +9301,7 @@ function Pu(e, n = {}) {
|
|
|
9288
9301
|
name: "schema_data",
|
|
9289
9302
|
description: "查看主数据(或子路径)的字段约束:类型/min/max/enum/必填/默认值/嵌套 shape。写前查约束,避免写错重试。不传 jsonPath 查根;传子路径(如 components.0)查该位置约束。",
|
|
9290
9303
|
schema: t.object({ jsonPath: t.string().optional().describe("要查约束的子路径;不传查根 schema") })
|
|
9291
|
-
}),
|
|
9304
|
+
}), ae = r(async ({ snapshotId: e, against: t }) => {
|
|
9292
9305
|
let n = t != null, r, i;
|
|
9293
9306
|
if (n) {
|
|
9294
9307
|
let e = t;
|
|
@@ -9320,7 +9333,7 @@ function Pu(e, n = {}) {
|
|
|
9320
9333
|
snapshotId: t.number().int().optional().describe("对比的快照序号;不传则最近一次"),
|
|
9321
9334
|
against: t.unknown().optional().describe("对比的一段 JSON 值(与 snapshotId 互斥;传则忽略快照)")
|
|
9322
9335
|
})
|
|
9323
|
-
}),
|
|
9336
|
+
}), oe = [];
|
|
9324
9337
|
if (n.vfsStore) {
|
|
9325
9338
|
let e = n.vfsStore, i = (e) => `drafts/${e}.json`, c = r(({ draftId: t, chunk: n, mode: r }) => {
|
|
9326
9339
|
let a = i(t), o = e.files[a], s = r === "append" && o, c = s ? o.content + n : n;
|
|
@@ -9385,9 +9398,9 @@ function Pu(e, n = {}) {
|
|
|
9385
9398
|
expectedHash: t.string().optional().describe("乐观锁:改前 read/get 返回的 hash;传入则校验,不一致拒绝写入防覆盖。不传则自动用你最后读到的 hash(autoLock)")
|
|
9386
9399
|
})
|
|
9387
9400
|
});
|
|
9388
|
-
A(u),
|
|
9401
|
+
A(u), oe.push(c, u);
|
|
9389
9402
|
}
|
|
9390
|
-
let
|
|
9403
|
+
let se = [];
|
|
9391
9404
|
if (e.resources?.length && d) {
|
|
9392
9405
|
let e = r(async ({ path: e, handle: t }) => {
|
|
9393
9406
|
let n = e;
|
|
@@ -9491,38 +9504,38 @@ function Pu(e, n = {}) {
|
|
|
9491
9504
|
handle: t.string().optional().describe("占位符句柄(与 path 二选一)")
|
|
9492
9505
|
})
|
|
9493
9506
|
});
|
|
9494
|
-
A(a),
|
|
9507
|
+
A(a), se.push(e, n, i, a);
|
|
9495
9508
|
}
|
|
9496
|
-
let
|
|
9509
|
+
let ce = [
|
|
9497
9510
|
ee,
|
|
9498
9511
|
j,
|
|
9499
|
-
te,
|
|
9500
|
-
ne,
|
|
9501
9512
|
M,
|
|
9513
|
+
te,
|
|
9502
9514
|
N,
|
|
9515
|
+
P,
|
|
9516
|
+
ne,
|
|
9503
9517
|
re,
|
|
9504
9518
|
ie,
|
|
9505
|
-
ae,
|
|
9506
|
-
P,
|
|
9507
9519
|
F,
|
|
9508
9520
|
I,
|
|
9509
9521
|
L,
|
|
9510
|
-
|
|
9511
|
-
|
|
9512
|
-
...
|
|
9522
|
+
R,
|
|
9523
|
+
ae,
|
|
9524
|
+
...oe,
|
|
9525
|
+
...se
|
|
9513
9526
|
];
|
|
9514
|
-
Object.defineProperty(
|
|
9527
|
+
Object.defineProperty(ce, "controller", {
|
|
9515
9528
|
value: E,
|
|
9516
9529
|
enumerable: !1,
|
|
9517
9530
|
configurable: !1,
|
|
9518
9531
|
writable: !1
|
|
9519
9532
|
});
|
|
9520
|
-
for (let e of
|
|
9533
|
+
for (let e of ce) Object.defineProperty(e, "__dataOpsScoped", {
|
|
9521
9534
|
value: !0,
|
|
9522
9535
|
enumerable: !1,
|
|
9523
9536
|
configurable: !1
|
|
9524
9537
|
});
|
|
9525
|
-
return
|
|
9538
|
+
return ce;
|
|
9526
9539
|
}
|
|
9527
9540
|
//#endregion
|
|
9528
9541
|
//#region src/core/tools/fetchDoc.ts
|
|
@@ -9990,23 +10003,23 @@ function Cd(e, n) {
|
|
|
9990
10003
|
prompt_tokens: 0,
|
|
9991
10004
|
completion_tokens: 0,
|
|
9992
10005
|
total_tokens: 0
|
|
9993
|
-
}, a = ll(() =>
|
|
10006
|
+
}, a = ll(() => q), o = /* @__PURE__ */ At(0), s = Fl(e.storage);
|
|
9994
10007
|
e.debug && s && s.onEvent((e) => console.log("[page-agent-sdk][storage]", e));
|
|
9995
10008
|
let { modelCaps: c, summaryLlmInvoke: l, titleLlmInvoke: u, compressDecisionInvoke: d } = cl(e), f = c;
|
|
9996
10009
|
if (e.debug && console.log("[page-agent-sdk][modelCaps]", f), f.contextWindow < 2e5) throw Error(`[page-agent-sdk] 模型上下文窗口 ${f.contextWindow} 小于最小支持 ${ai}(需 ≥200K 窗口模型,如 GLM-5.2/Claude/Kimi/Qwen-1M/DeepSeek-v4)`);
|
|
9997
10010
|
let h = Hl(e, f.contextWindow), g = h.enableLLMSummary !== !1, _ = (e.contextOptions && e.contextOptions.preserveLastToolResults) ?? Vl[e.contextPreset ?? "auto"], v = new Set(_), y = e.llm;
|
|
9998
10011
|
e.debug && !l && console.warn("[page-agent-sdk][summarization] 未构造 llmInvoke(apiKey 缺失?),摘要回退零成本索引摘要");
|
|
9999
|
-
let b = /* @__PURE__ */
|
|
10012
|
+
let b = /* @__PURE__ */ vt([]), x = cc(e.vfs?.initialFiles, {
|
|
10000
10013
|
persist: s ? { save: (e) => {
|
|
10001
|
-
|
|
10014
|
+
Ft({ vfs: e });
|
|
10002
10015
|
} } : void 0,
|
|
10003
10016
|
maxBytes: e.vfs?.maxBytes,
|
|
10004
10017
|
poolBytes: e.vfs?.poolBytes
|
|
10005
10018
|
}), S = Ta([], { maxPlanRevisions: e.maxPlanRevisions }), C = ka(), w = Qa({
|
|
10006
|
-
getSchema: () =>
|
|
10007
|
-
getBind: () =>
|
|
10019
|
+
getSchema: () => B()?.schema,
|
|
10020
|
+
getBind: () => B()?.bind,
|
|
10008
10021
|
unfocusGuidance: e.toolMode === "advanced" ? "tool" : "ask-user",
|
|
10009
|
-
onChange: (e) =>
|
|
10022
|
+
onChange: (e) => q({
|
|
10010
10023
|
type: "focus_change",
|
|
10011
10024
|
focuses: e
|
|
10012
10025
|
})
|
|
@@ -10023,58 +10036,58 @@ function Cd(e, n) {
|
|
|
10023
10036
|
let t = $i(O?.schema, e._codeAsset.codeField);
|
|
10024
10037
|
t.length ? (e._codeAsset.writablePaths = t, Array.isArray(e.writablePaths) && (e.writablePaths = t), e._rebuildCodeAssetPaths?.(t[0]), console.info(`[page-agent-sdk][createHtmlSubagent] 未传 writablePaths,已从 schema 推断: [${t.map((e) => `'${e}'`).join(", ")}]`)) : (console.warn("[page-agent-sdk][createHtmlSubagent] 未能从 schema 推断 writablePaths(开放 schema(z.any()/z.record())/嵌套容器(如 sections[].children[])/点路径 codeField(如 props.html_code)不支持自动推断),已跳过该 html 子 agent(整体不受影响);如确需代码资产机制(vfs + 格式校验 + 增量 commit),请显式传 writablePaths(代码组件 data 区,如 ['components'])"), j.add(e));
|
|
10025
10038
|
}
|
|
10026
|
-
let
|
|
10027
|
-
getData: () =>
|
|
10028
|
-
consumeDataDirty: () =>
|
|
10039
|
+
let M = j.size ? ee.filter((e) => !j.has(e)) : ee, te = j.size ? (A ?? []).filter((e) => !j.has(e)) : A, N = M.length > 0, P = M.flatMap((e) => e._codeAsset.writablePaths), ne = M.flatMap((e) => e._codeAsset.writablePaths.map((t) => `${t}.${e._codeAsset.codeField}`)), re = e.checkpoint, ie = re !== void 0 && re !== !1, F = ie ? Bo({
|
|
10040
|
+
getData: () => B()?.bind,
|
|
10041
|
+
consumeDataDirty: () => z?.consumeDataDirty?.() ?? !0,
|
|
10029
10042
|
slotPaths: O ? [""] : [],
|
|
10030
10043
|
vfsStore: x,
|
|
10031
10044
|
todosMw: S,
|
|
10032
10045
|
getTodos: () => D.current?.getState?.()?.todos ?? [],
|
|
10033
10046
|
messages: b,
|
|
10034
|
-
maxCheckpoints:
|
|
10035
|
-
}) : null,
|
|
10036
|
-
if (
|
|
10037
|
-
let e =
|
|
10038
|
-
e && (
|
|
10039
|
-
} else O?.schema && Qi(O.schema) && (
|
|
10040
|
-
let
|
|
10047
|
+
maxCheckpoints: re && typeof re == "object" ? re.maxCheckpoints : void 0
|
|
10048
|
+
}) : null, I = !re || typeof re != "object" || re.auto !== !1, L = Rl(e.capabilities), R = L.dataOps, ae = L.draftWrite, oe = L.tracing, se = L.automation, ce = ic(e);
|
|
10049
|
+
if (N) {
|
|
10050
|
+
let e = M.map((e) => e._codeAsset.orchestratorPrompt).filter(Boolean).join("\n\n");
|
|
10051
|
+
e && (ce += "\n\n" + e);
|
|
10052
|
+
} else O?.schema && Qi(O.schema) && (ce += "\n\n" + ga.htmlDirectWriteFallback, console.warn("[page-agent-sdk] 检测到 schema 含 code 字段但未注册 html 子 agent:已自动注入「主 agent 自己写 HTML」编排(code 作普通字段直接 write,无 vfs 工作副本 / 无格式校验门禁)。如需代码资产机制(vfs + 格式校验 + 增量 commit + 主上下文 code 摘要),注册 createHtmlSubagent;若确为降级意图可忽略。"));
|
|
10053
|
+
let le = R && O ? Pu(O, {
|
|
10041
10054
|
onAudit: e.onAudit ?? (e.debug ? (e) => console.log("[page-agent-sdk][data audit]", e) : void 0),
|
|
10042
10055
|
maxSnapshots: e.maxSnapshots,
|
|
10043
10056
|
onConflict: a.set,
|
|
10044
10057
|
autoLock: e.autoLock,
|
|
10045
10058
|
interceptors: e.interceptors,
|
|
10046
|
-
vfsStore:
|
|
10047
|
-
...
|
|
10048
|
-
...
|
|
10049
|
-
}) : [],
|
|
10050
|
-
getResourcesSnapshot: () =>
|
|
10059
|
+
vfsStore: ae || O?.resources?.length ? x : void 0,
|
|
10060
|
+
...P.length ? { pgIdPaths: P } : {},
|
|
10061
|
+
...ne.length ? { largeTextPaths: ne } : {}
|
|
10062
|
+
}) : [], ue = R ? Tu(le, e.toolMode) : [], z = R && O ? le.controller ?? null : null, de = R && O?.resources?.length && z?.getResourcesSnapshot ? sd({
|
|
10063
|
+
getResourcesSnapshot: () => z?.getResourcesSnapshot?.() ?? [],
|
|
10051
10064
|
toolsExposed: e.toolMode === "advanced"
|
|
10052
|
-
}) : void 0,
|
|
10053
|
-
|
|
10054
|
-
let
|
|
10055
|
-
|
|
10056
|
-
let
|
|
10057
|
-
|
|
10058
|
-
let
|
|
10059
|
-
|
|
10060
|
-
let
|
|
10061
|
-
let e =
|
|
10062
|
-
return e.length ?
|
|
10065
|
+
}) : void 0, B = () => z?.get() ?? O, V = /* @__PURE__ */ new Map(), fe = rd(L, ue, Iu, Hu, Yu);
|
|
10066
|
+
fe.forEach((e) => V.set(e.name, "builtin"));
|
|
10067
|
+
let pe = [...e.tools || []];
|
|
10068
|
+
pe.forEach((e) => V.set(e.name, "user"));
|
|
10069
|
+
let H = Qu(e.actions ?? {});
|
|
10070
|
+
H.forEach((e) => V.set(e.name, "action"));
|
|
10071
|
+
let me = [], he = !1, ge = e.humanConfirm !== !1 && (!e.approval || e.approval.humanConfirmTool !== !1), _e = ge ? Mo() : null;
|
|
10072
|
+
_e && V.set(Ao, "builtin");
|
|
10073
|
+
let ve = ie && F ? [r(async () => {
|
|
10074
|
+
let e = F.list();
|
|
10075
|
+
return e.length ? F.restore() ? `已回退到最近一次正常状态(checkpoint #${e[e.length - 1].id})。对话历史、主数据、vfs、todos 已整体还原。请基于回退后的状态重新判断并继续。` : "回退失败:无可用 checkpoint。" : "无可用 checkpoint,无法回退。";
|
|
10063
10076
|
}, {
|
|
10064
10077
|
name: "restore_last_checkpoint",
|
|
10065
10078
|
description: "回退到最近一次正常状态(整体还原对话历史 + 主数据 + vfs + todos)。当本轮操作出错、页面被改坏、或走偏时调用,回到本轮起点重新来过。不传参数即回退最近一次。",
|
|
10066
10079
|
schema: t.object({}).optional()
|
|
10067
10080
|
}), r(async () => {
|
|
10068
|
-
let e =
|
|
10081
|
+
let e = F.list();
|
|
10069
10082
|
return e.length ? "可用 checkpoint:\n" + e.map((e) => `#${e.id} [${e.label ?? "auto"}] 消息数=${e.messageCount} 时间=${new Date(e.timestamp).toLocaleTimeString()}`).join("\n") : "无可用 checkpoint。";
|
|
10070
10083
|
}, {
|
|
10071
10084
|
name: "list_checkpoints",
|
|
10072
10085
|
description: "列出可用会话 checkpoint(回退点)。",
|
|
10073
10086
|
schema: t.object({}).optional()
|
|
10074
10087
|
})] : [];
|
|
10075
|
-
|
|
10076
|
-
let
|
|
10077
|
-
let n =
|
|
10088
|
+
ve.forEach((e) => V.set(e.name, "builtin"));
|
|
10089
|
+
let U = L.focus, ye = r(async ({ path: e, label: t }) => {
|
|
10090
|
+
let n = B()?.schema;
|
|
10078
10091
|
return n ? Ji(n, e) ? (w.setFocus({
|
|
10079
10092
|
path: e,
|
|
10080
10093
|
...t ? { label: t } : {}
|
|
@@ -10086,12 +10099,12 @@ function Cd(e, n) {
|
|
|
10086
10099
|
path: t.string().describe("要聚焦的组件 jsonPath,如 components.3"),
|
|
10087
10100
|
label: t.string().optional().describe("人类可读标签,如「导航栏」")
|
|
10088
10101
|
})
|
|
10089
|
-
}),
|
|
10102
|
+
}), be = r(async () => (w.clearFocus(), "已清除聚焦,恢复全量可操作范围(可读写所有组件)。"), {
|
|
10090
10103
|
name: "clear_focus",
|
|
10091
10104
|
description: "清除当前聚焦,退出精修模式,恢复对全部组件的读写权限。",
|
|
10092
10105
|
schema: t.object({}).optional()
|
|
10093
|
-
}),
|
|
10094
|
-
let n =
|
|
10106
|
+
}), xe = r(async ({ path: e, label: t }) => {
|
|
10107
|
+
let n = B()?.schema;
|
|
10095
10108
|
if (!n) return "聚焦失败:当前无主数据 schema,无法聚焦。";
|
|
10096
10109
|
if (!Ji(n, e)) return `PATH_DENIED · 聚焦失败:path "${e}" 不在 schema 内。请先用 read 查看可操作路径再聚焦。`;
|
|
10097
10110
|
w.addFocus({
|
|
@@ -10107,7 +10120,7 @@ function Cd(e, n) {
|
|
|
10107
10120
|
path: t.string().describe("要追加聚焦的组件 jsonPath,如 components.3"),
|
|
10108
10121
|
label: t.string().optional().describe("人类可读标签")
|
|
10109
10122
|
})
|
|
10110
|
-
}),
|
|
10123
|
+
}), Se = r(async ({ path: e }) => {
|
|
10111
10124
|
let t = w.getFocuses().length;
|
|
10112
10125
|
w.removeFocus(e);
|
|
10113
10126
|
let n = w.getFocuses();
|
|
@@ -10116,81 +10129,81 @@ function Cd(e, n) {
|
|
|
10116
10129
|
name: "remove_focus",
|
|
10117
10130
|
description: "移除单个聚焦焦点(by path),保留其他焦点。移除最后一个等价退出精修。全部退出用 clear_focus。",
|
|
10118
10131
|
schema: t.object({ path: t.string().describe("要移除的焦点 jsonPath") })
|
|
10119
|
-
}),
|
|
10132
|
+
}), Ce = U && e.toolMode === "advanced" ? [
|
|
10133
|
+
ye,
|
|
10120
10134
|
be,
|
|
10121
10135
|
xe,
|
|
10122
|
-
Se
|
|
10123
|
-
Ce
|
|
10136
|
+
Se
|
|
10124
10137
|
] : [];
|
|
10125
|
-
|
|
10126
|
-
let
|
|
10127
|
-
function
|
|
10138
|
+
Ce.forEach((e) => V.set(e.name, "builtin"));
|
|
10139
|
+
let we = [], Te = /* @__PURE__ */ new Map(), W = G();
|
|
10140
|
+
function G() {
|
|
10128
10141
|
let { tools: e, collisions: t } = id([
|
|
10129
10142
|
{
|
|
10130
10143
|
label: "builtin",
|
|
10131
|
-
tools:
|
|
10144
|
+
tools: fe
|
|
10132
10145
|
},
|
|
10133
10146
|
{
|
|
10134
10147
|
label: "user",
|
|
10135
|
-
tools:
|
|
10148
|
+
tools: pe
|
|
10136
10149
|
},
|
|
10137
10150
|
{
|
|
10138
10151
|
label: "action",
|
|
10139
|
-
tools:
|
|
10152
|
+
tools: H
|
|
10140
10153
|
},
|
|
10141
10154
|
{
|
|
10142
10155
|
label: "humanConfirm",
|
|
10143
|
-
tools:
|
|
10156
|
+
tools: _e ? [_e] : []
|
|
10144
10157
|
},
|
|
10145
10158
|
{
|
|
10146
10159
|
label: "checkpoint",
|
|
10147
|
-
tools:
|
|
10160
|
+
tools: ve
|
|
10148
10161
|
},
|
|
10149
10162
|
{
|
|
10150
10163
|
label: "focus",
|
|
10151
|
-
tools:
|
|
10164
|
+
tools: Ce
|
|
10152
10165
|
},
|
|
10153
10166
|
{
|
|
10154
10167
|
label: "mcp",
|
|
10155
|
-
tools:
|
|
10168
|
+
tools: me
|
|
10156
10169
|
},
|
|
10157
10170
|
{
|
|
10158
10171
|
label: "skill",
|
|
10159
|
-
tools:
|
|
10172
|
+
tools: we
|
|
10160
10173
|
}
|
|
10161
10174
|
]);
|
|
10162
10175
|
return t.length && console.warn("[page-agent-sdk] 工具重名,后注册覆盖先注册:", t.map((e) => `${e.name}(${e.loser}→${e.winner})`).join(", ")), e;
|
|
10163
10176
|
}
|
|
10164
|
-
let
|
|
10165
|
-
if (
|
|
10166
|
-
if (
|
|
10167
|
-
let
|
|
10168
|
-
e.debug &&
|
|
10169
|
-
let
|
|
10170
|
-
|
|
10171
|
-
let
|
|
10172
|
-
llm:
|
|
10173
|
-
allTools: () =>
|
|
10174
|
-
allowedTools:
|
|
10175
|
-
systemPrompt:
|
|
10176
|
-
temperature:
|
|
10177
|
-
maxTokens:
|
|
10178
|
-
skills:
|
|
10179
|
-
maxDepth:
|
|
10180
|
-
maxParallel:
|
|
10177
|
+
let Ee = L.planning, De = L.missionAnchor, Oe = L.workingMemory, ke = L.skills, Ae = L.vfs || N;
|
|
10178
|
+
if (Ae) for (let e of hc) V.set(e, "builtin");
|
|
10179
|
+
if (Ee) for (let e of S.tools ?? []) V.set(e.name, "builtin");
|
|
10180
|
+
let je = L.summarization, Me = L.agentCompression && !!d;
|
|
10181
|
+
e.debug && L.agentCompression && !d && console.warn("[page-agent-sdk][agentCompression] agentCompression 开启但 summaryLlm 不可用(或缺 apiKey / 模型不支持工具),压缩决策不启用,回退静态压缩");
|
|
10182
|
+
let Ne = L.memory, Pe = L.subagent, Fe = Pe ? us() : void 0, Ie = e.verify?.maxAttempts ?? 2, Le = !!(e.verify?.check || e.verify?.maxAttempts || e.verify?.adversarial), K = e.capabilities?.verify === !1, Re = (L.verify || Le && !K) && e.verify?.enabled !== !1 && Ie > 0, ze = L.contextInspector;
|
|
10183
|
+
Le && !Re && e.verify?.enabled !== !1 && console.warn("[page-agent-sdk][verify] 检测到 verify 配置(check/maxAttempts/adversarial)但未装载(capabilities.verify:false 显式关闭 或 maxAttempts≤0)");
|
|
10184
|
+
let Be = e.subagent, Ve = Be?.allowedTools ?? [], He = e.permissions?.length ? Oo(e.permissions) : void 0, Ue = e.approval && (e.approval.tools !== void 0 || e.approval.confirm) ? ko(e.approval) : void 0, We = [...He ? [He] : [], ...Ue ? [Ue] : []], Ge = !Pe || Be?.enabled === !1 ? void 0 : Es({
|
|
10185
|
+
llm: Be?.llm ?? e.llm,
|
|
10186
|
+
allTools: () => J.agent?.allTools ?? W,
|
|
10187
|
+
allowedTools: Ve.length ? Ve : void 0,
|
|
10188
|
+
systemPrompt: Be?.systemPrompt,
|
|
10189
|
+
temperature: Be?.temperature,
|
|
10190
|
+
maxTokens: Be?.maxTokens,
|
|
10191
|
+
skills: Be?.skills,
|
|
10192
|
+
maxDepth: Be?.maxDepth,
|
|
10193
|
+
maxParallel: Be?.maxParallel,
|
|
10181
10194
|
debug: e.debug,
|
|
10182
10195
|
getFocuses: () => w.getFocuses(),
|
|
10183
|
-
getSchema: () =>
|
|
10184
|
-
tracker:
|
|
10185
|
-
guardMiddleware:
|
|
10186
|
-
getVfsFiles:
|
|
10187
|
-
enterDataScope:
|
|
10188
|
-
exitDataScope:
|
|
10196
|
+
getSchema: () => B()?.schema ?? null,
|
|
10197
|
+
tracker: Fe,
|
|
10198
|
+
guardMiddleware: We.length ? We : void 0,
|
|
10199
|
+
getVfsFiles: Ae ? () => x.files : void 0,
|
|
10200
|
+
enterDataScope: z?.enterScope ? (e) => z.enterScope(e) : void 0,
|
|
10201
|
+
exitDataScope: z?.exitScope ? (e) => z.exitScope(e) : void 0,
|
|
10189
10202
|
onUsage: (e) => {
|
|
10190
10203
|
i.prompt_tokens = (i.prompt_tokens ?? 0) + (e.prompt_tokens ?? 0), i.completion_tokens = (i.completion_tokens ?? 0) + (e.completion_tokens ?? 0), i.total_tokens = (i.total_tokens ?? 0) + (e.total_tokens ?? 0);
|
|
10191
10204
|
},
|
|
10192
|
-
timeoutMs:
|
|
10193
|
-
}),
|
|
10205
|
+
timeoutMs: Be?.timeoutMs
|
|
10206
|
+
}), Ke = te?.map((e) => {
|
|
10194
10207
|
if (!e._codeAsset) return e;
|
|
10195
10208
|
let t = e._codeAsset, n = Nc({
|
|
10196
10209
|
writablePaths: t.writablePaths,
|
|
@@ -10199,165 +10212,165 @@ function Cd(e, n) {
|
|
|
10199
10212
|
codeField: t.codeField,
|
|
10200
10213
|
craftNotes: t.craftNotes,
|
|
10201
10214
|
onWarning: (e) => console.warn(`[page-agent-sdk][code-asset] ${e}`),
|
|
10202
|
-
getController: () =>
|
|
10215
|
+
getController: () => z,
|
|
10203
10216
|
vfsStore: x
|
|
10204
10217
|
}), r = [...e.middleware ?? [], n];
|
|
10205
|
-
for (let e of r) e && typeof e == "object" && typeof e._setGetController == "function" && e._setGetController(() =>
|
|
10218
|
+
for (let e of r) e && typeof e == "object" && typeof e._setGetController == "function" && e._setGetController(() => z);
|
|
10206
10219
|
return {
|
|
10207
10220
|
...e,
|
|
10208
10221
|
middleware: r
|
|
10209
10222
|
};
|
|
10210
|
-
}),
|
|
10211
|
-
getBind: () =>
|
|
10212
|
-
writablePaths:
|
|
10213
|
-
getLocked: () =>
|
|
10214
|
-
tools:
|
|
10215
|
-
}) : void 0,
|
|
10223
|
+
}), qe = N && Pe ? Pc() : void 0, Je = qe ? Bc({
|
|
10224
|
+
getBind: () => B()?.bind,
|
|
10225
|
+
writablePaths: P,
|
|
10226
|
+
getLocked: () => qe.locked(),
|
|
10227
|
+
tools: W
|
|
10228
|
+
}) : void 0, Ye = Pe && Ke !== void 0 ? ks(Ke, {
|
|
10216
10229
|
llm: e.llm,
|
|
10217
|
-
allTools: () =>
|
|
10230
|
+
allTools: () => J.agent?.allTools ?? W,
|
|
10218
10231
|
debug: e.debug,
|
|
10219
10232
|
getFocuses: () => w.getFocuses(),
|
|
10220
|
-
getSchema: () =>
|
|
10221
|
-
getBind: () =>
|
|
10222
|
-
tracker:
|
|
10223
|
-
guardMiddleware:
|
|
10224
|
-
getVfsFiles:
|
|
10225
|
-
enterDataScope:
|
|
10226
|
-
exitDataScope:
|
|
10233
|
+
getSchema: () => B()?.schema ?? null,
|
|
10234
|
+
getBind: () => B()?.bind,
|
|
10235
|
+
tracker: Fe,
|
|
10236
|
+
guardMiddleware: We.length ? We : void 0,
|
|
10237
|
+
getVfsFiles: Ae ? () => x.files : void 0,
|
|
10238
|
+
enterDataScope: z?.enterScope ? (e) => z.enterScope(e) : void 0,
|
|
10239
|
+
exitDataScope: z?.exitScope ? (e) => z.exitScope(e) : void 0,
|
|
10227
10240
|
onUsage: (e) => {
|
|
10228
10241
|
i.prompt_tokens = (i.prompt_tokens ?? 0) + (e.prompt_tokens ?? 0), i.completion_tokens = (i.completion_tokens ?? 0) + (e.completion_tokens ?? 0), i.total_tokens = (i.total_tokens ?? 0) + (e.total_tokens ?? 0);
|
|
10229
10242
|
},
|
|
10230
10243
|
timeoutMs: e.subagent?.timeoutMs,
|
|
10231
|
-
...
|
|
10232
|
-
componentLock:
|
|
10233
|
-
resolveComponents: (e) => Fc(e, kc(
|
|
10244
|
+
...qe ? {
|
|
10245
|
+
componentLock: qe,
|
|
10246
|
+
resolveComponents: (e) => Fc(e, kc(B()?.bind, P))
|
|
10234
10247
|
} : {}
|
|
10235
|
-
}) : void 0,
|
|
10248
|
+
}) : void 0, Xe = Ye ? Ye.controller : null, Ze = [
|
|
10236
10249
|
"get_data",
|
|
10237
10250
|
"describe_data",
|
|
10238
10251
|
"read",
|
|
10239
10252
|
"fetch_document"
|
|
10240
|
-
],
|
|
10253
|
+
], Qe = W.filter((e) => Ze.includes(e.name)), $e = Re ? As({
|
|
10241
10254
|
check: e.verify.check ?? Is({
|
|
10242
|
-
schemas: () =>
|
|
10243
|
-
root: () =>
|
|
10255
|
+
schemas: () => B() ? { "": B().schema } : {},
|
|
10256
|
+
root: () => B()?.bind
|
|
10244
10257
|
}),
|
|
10245
10258
|
adversarial: e.verify?.adversarial ? {
|
|
10246
10259
|
llm: e.llm,
|
|
10247
|
-
tools:
|
|
10260
|
+
tools: Qe
|
|
10248
10261
|
} : void 0
|
|
10249
|
-
}) : void 0,
|
|
10262
|
+
}) : void 0, et = ze ? Xs({
|
|
10250
10263
|
contextWindow: f.contextWindow,
|
|
10251
10264
|
thresholdRatio: Hl(e, f.contextWindow).summaryThresholdRatio
|
|
10252
|
-
}) : void 0,
|
|
10253
|
-
...
|
|
10254
|
-
humanConfirm:
|
|
10255
|
-
subagents:
|
|
10265
|
+
}) : void 0, tt = od({
|
|
10266
|
+
...L,
|
|
10267
|
+
humanConfirm: ge,
|
|
10268
|
+
subagents: te?.map((e) => ({
|
|
10256
10269
|
id: e.id,
|
|
10257
10270
|
description: e.description,
|
|
10258
10271
|
temperature: e.temperature
|
|
10259
10272
|
}))
|
|
10260
|
-
},
|
|
10273
|
+
}, R && !!O, e.toolMode, !!O?.resources?.length, { promptSoftCap: as(f.contextWindow, h.promptSoftCapTokens) }), nt = O ? {
|
|
10261
10274
|
name: "dataHint",
|
|
10262
|
-
augmentPrompt: () => rc(
|
|
10263
|
-
} : null,
|
|
10275
|
+
augmentPrompt: () => rc(B(), e.schemaHint) || void 0
|
|
10276
|
+
} : null, rt = e.augmentSystem ? {
|
|
10264
10277
|
name: "augmentSystem",
|
|
10265
10278
|
augmentPrompt: (t) => {
|
|
10266
10279
|
try {
|
|
10267
10280
|
return e.augmentSystem({
|
|
10268
10281
|
state: t,
|
|
10269
|
-
data:
|
|
10282
|
+
data: B()
|
|
10270
10283
|
});
|
|
10271
10284
|
} catch (t) {
|
|
10272
10285
|
e.debug && console.log("[page-agent-sdk][augmentSystem] 回调抛错,降级跳过:", t.message);
|
|
10273
10286
|
return;
|
|
10274
10287
|
}
|
|
10275
10288
|
}
|
|
10276
|
-
} : null,
|
|
10289
|
+
} : null, it = zl(e.onEvent), q = it.emit, at, ot = [], st = (e) => ({
|
|
10277
10290
|
name: e.name,
|
|
10278
10291
|
description: e.description,
|
|
10279
10292
|
content: typeof e.getContent == "function" ? e.getContent() : ""
|
|
10280
|
-
}),
|
|
10293
|
+
}), ct = (e) => ({
|
|
10281
10294
|
name: e.name,
|
|
10282
10295
|
description: e.description,
|
|
10283
10296
|
getContent: () => e.content
|
|
10284
|
-
}),
|
|
10297
|
+
}), lt = e.skillStorage === !1 ? null : fd({
|
|
10285
10298
|
...typeof e.skillStorage == "object" ? e.skillStorage : {},
|
|
10286
10299
|
id: e.skillStorage && typeof e.skillStorage == "object" && e.skillStorage.id ? e.skillStorage.id : `agent::${n}`
|
|
10287
|
-
}),
|
|
10288
|
-
let t =
|
|
10300
|
+
}), ut = () => {
|
|
10301
|
+
let t = at ? at.controller : null;
|
|
10289
10302
|
if (t) {
|
|
10290
|
-
let n = (e.skills || []).filter((e) => !
|
|
10291
|
-
t.set([...n, ...
|
|
10303
|
+
let n = (e.skills || []).filter((e) => !ot.some((t) => t.name === e.name));
|
|
10304
|
+
t.set([...n, ...ot]);
|
|
10292
10305
|
}
|
|
10293
|
-
|
|
10294
|
-
},
|
|
10295
|
-
if (
|
|
10296
|
-
let t = await
|
|
10306
|
+
J.infoTick.value++;
|
|
10307
|
+
}, dt = async () => {
|
|
10308
|
+
if (lt) try {
|
|
10309
|
+
let t = await lt.list();
|
|
10297
10310
|
if (t.length) {
|
|
10298
|
-
|
|
10299
|
-
let n =
|
|
10311
|
+
ot = t.map(ct);
|
|
10312
|
+
let n = at ? at.controller : null;
|
|
10300
10313
|
if (n) {
|
|
10301
|
-
let t = (e.skills || []).filter((e) => !
|
|
10302
|
-
n.set([...t, ...
|
|
10314
|
+
let t = (e.skills || []).filter((e) => !ot.some((t) => t.name === e.name));
|
|
10315
|
+
n.set([...t, ...ot]);
|
|
10303
10316
|
}
|
|
10304
|
-
|
|
10317
|
+
J.infoTick.value++;
|
|
10305
10318
|
}
|
|
10306
10319
|
} catch {}
|
|
10307
|
-
},
|
|
10320
|
+
}, ft = je ? ls({
|
|
10308
10321
|
...h,
|
|
10309
10322
|
llmInvoke: l,
|
|
10310
|
-
getRegisteredData: () =>
|
|
10323
|
+
getRegisteredData: () => B() ? [{ description: B().description ?? "主数据对象" }] : [],
|
|
10311
10324
|
preserveLastToolResults: _,
|
|
10312
|
-
...
|
|
10325
|
+
...Me ? {
|
|
10313
10326
|
decideInvoke: d,
|
|
10314
|
-
getSnapshot: () =>
|
|
10327
|
+
getSnapshot: () => et?.getSnapshot()
|
|
10315
10328
|
} : {}
|
|
10316
|
-
}) : void 0,
|
|
10317
|
-
...
|
|
10318
|
-
|
|
10319
|
-
...
|
|
10320
|
-
...
|
|
10321
|
-
...
|
|
10322
|
-
readVfs:
|
|
10323
|
-
hostScriptEnabled:
|
|
10329
|
+
}) : void 0, pt = Wl([
|
|
10330
|
+
...nt ? [nt] : [],
|
|
10331
|
+
tt,
|
|
10332
|
+
...De ? [C] : [],
|
|
10333
|
+
...Ee ? [S] : [],
|
|
10334
|
+
...ke ? [at = xo(e.skills || [], {
|
|
10335
|
+
readVfs: Ae ? (e) => x.files[e]?.content : void 0,
|
|
10336
|
+
hostScriptEnabled: L.skillHostScript,
|
|
10324
10337
|
onToolsReady: (e, t) => {
|
|
10325
10338
|
for (let n of t) {
|
|
10326
|
-
let t =
|
|
10327
|
-
t >= 0 &&
|
|
10339
|
+
let t = we.findIndex((e) => e.name === n.name);
|
|
10340
|
+
t >= 0 && we.splice(t, 1), we.push(n), Te.set(n.name, e), V.set(n.name, `skill:${e}`);
|
|
10328
10341
|
}
|
|
10329
|
-
|
|
10342
|
+
W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
|
|
10330
10343
|
}
|
|
10331
10344
|
})] : [],
|
|
10332
|
-
...
|
|
10333
|
-
...
|
|
10334
|
-
...
|
|
10335
|
-
...
|
|
10336
|
-
...
|
|
10337
|
-
...
|
|
10345
|
+
...Ae ? [_c(x)] : [],
|
|
10346
|
+
...ft ? [ft] : [],
|
|
10347
|
+
...Oe ? [T] : [],
|
|
10348
|
+
...U ? [w] : [],
|
|
10349
|
+
...de ? [de] : [],
|
|
10350
|
+
...Ne ? [E] : [],
|
|
10351
|
+
...He ? [He] : [],
|
|
10352
|
+
...ie && I && F ? [Vo(F)] : [],
|
|
10353
|
+
...ge ? [No()] : [],
|
|
10338
10354
|
...Ue ? [Ue] : [],
|
|
10339
|
-
|
|
10340
|
-
...
|
|
10341
|
-
...We ? [We] : [],
|
|
10342
|
-
...et ? [et] : [],
|
|
10343
|
-
...Ke ? [Ke] : [],
|
|
10344
|
-
...Xe ? [Xe] : [],
|
|
10355
|
+
...$e ? [$e] : [],
|
|
10356
|
+
...Ge ? [Ge] : [],
|
|
10345
10357
|
...Ye ? [Ye] : [],
|
|
10346
|
-
...
|
|
10347
|
-
...
|
|
10358
|
+
...Je ? [Je] : [],
|
|
10359
|
+
...rt ? [rt] : [],
|
|
10360
|
+
...et ? [et] : [],
|
|
10348
10361
|
...e.middleware || [],
|
|
10349
|
-
...
|
|
10362
|
+
...se ? [Xu(i, {
|
|
10350
10363
|
tokenBudget: e.tokenBudget,
|
|
10351
10364
|
timeBudgetMs: e.timeBudgetMs
|
|
10352
|
-
},
|
|
10353
|
-
xd(
|
|
10354
|
-
]),
|
|
10355
|
-
function
|
|
10356
|
-
if (
|
|
10365
|
+
}, q)] : [],
|
|
10366
|
+
xd(q, b, B, i)
|
|
10367
|
+
]), mt = e.maxMemoryRounds ?? _d, ht = e.approval?.timeoutMs, gt = ht === void 0 || ht === 0 ? 3e4 : !Number.isFinite(ht) || ht < 0 ? 0 : ht;
|
|
10368
|
+
function _t(e) {
|
|
10369
|
+
if (gt) return (t) => {
|
|
10357
10370
|
if (t.type !== "approval_request") return;
|
|
10358
10371
|
let n = Date.now(), r = t.toolName;
|
|
10359
10372
|
setTimeout(() => {
|
|
10360
|
-
e?.aborted || (t.resolve(!1),
|
|
10373
|
+
e?.aborted || (t.resolve(!1), q({
|
|
10361
10374
|
type: "error",
|
|
10362
10375
|
message: `确认请求(${r})${Math.round((Date.now() - n) / 1e3)}s 无响应已自动拒绝 —— send/batch 路径无 UI 响应方;可传 approval.timeoutMs 调整(Infinity = 无限等)`,
|
|
10363
10376
|
severity: "observable",
|
|
@@ -10367,37 +10380,43 @@ function Cd(e, n) {
|
|
|
10367
10380
|
waitedMs: Date.now() - n
|
|
10368
10381
|
}
|
|
10369
10382
|
}));
|
|
10370
|
-
},
|
|
10383
|
+
}, gt);
|
|
10371
10384
|
};
|
|
10372
10385
|
}
|
|
10373
|
-
function
|
|
10374
|
-
let t =
|
|
10386
|
+
function yt(e) {
|
|
10387
|
+
let t = _t(e);
|
|
10375
10388
|
return (e) => {
|
|
10376
|
-
t?.(e), e.type === "error" &&
|
|
10389
|
+
t?.(e), e.type === "error" && q(e);
|
|
10377
10390
|
};
|
|
10378
10391
|
}
|
|
10379
|
-
let
|
|
10380
|
-
async function
|
|
10381
|
-
|
|
10392
|
+
let bt = /* @__PURE__ */ At([]);
|
|
10393
|
+
async function xt() {
|
|
10394
|
+
if (s) try {
|
|
10395
|
+
bt.value = (await s.listSessions(n)).sort((e, t) => t.lastAccessed - e.lastAccessed);
|
|
10396
|
+
} catch (t) {
|
|
10397
|
+
e.debug && console.warn("[page-agent-sdk][persist] refreshSessions 失败(已吞):", t);
|
|
10398
|
+
}
|
|
10382
10399
|
}
|
|
10383
|
-
let
|
|
10384
|
-
function
|
|
10385
|
-
let t = new AbortController();
|
|
10386
|
-
return e && (e.aborted ? t.abort() : e.addEventListener("abort",
|
|
10400
|
+
let St = gd(), Ct = /* @__PURE__ */ new Set();
|
|
10401
|
+
function wt(e) {
|
|
10402
|
+
let t = new AbortController(), n = () => t.abort();
|
|
10403
|
+
return e && (e.aborted ? t.abort() : e.addEventListener("abort", n, { once: !0 })), Ct.add(t), {
|
|
10387
10404
|
controller: t,
|
|
10388
|
-
untrack: () =>
|
|
10405
|
+
untrack: () => {
|
|
10406
|
+
Ct.delete(t), e?.removeEventListener("abort", n);
|
|
10407
|
+
}
|
|
10389
10408
|
};
|
|
10390
10409
|
}
|
|
10391
|
-
function
|
|
10392
|
-
for (let e of
|
|
10393
|
-
|
|
10410
|
+
function Tt() {
|
|
10411
|
+
for (let e of Ct) e.abort();
|
|
10412
|
+
Ct.clear();
|
|
10394
10413
|
}
|
|
10395
|
-
let
|
|
10414
|
+
let J = {
|
|
10396
10415
|
agentId: n,
|
|
10397
10416
|
store: s,
|
|
10398
10417
|
messages: b,
|
|
10399
10418
|
vfsStore: x,
|
|
10400
|
-
listeners:
|
|
10419
|
+
listeners: it.listeners,
|
|
10401
10420
|
todosMw: S,
|
|
10402
10421
|
memoryMw: E,
|
|
10403
10422
|
missionMw: C,
|
|
@@ -10409,56 +10428,56 @@ function Cd(e, n) {
|
|
|
10409
10428
|
refCount: 0,
|
|
10410
10429
|
mcpClosers: [],
|
|
10411
10430
|
mcpServers: [],
|
|
10412
|
-
checkpoint:
|
|
10413
|
-
dataOpsController:
|
|
10414
|
-
skillsController:
|
|
10431
|
+
checkpoint: F,
|
|
10432
|
+
dataOpsController: z,
|
|
10433
|
+
skillsController: at ? at.controller : null,
|
|
10415
10434
|
infoTick: o,
|
|
10416
10435
|
pendingConflict: a.pendingConflict,
|
|
10417
|
-
sessions:
|
|
10418
|
-
refreshSessions:
|
|
10419
|
-
liveData:
|
|
10436
|
+
sessions: bt,
|
|
10437
|
+
refreshSessions: xt,
|
|
10438
|
+
liveData: B,
|
|
10420
10439
|
usage: i,
|
|
10421
|
-
emit:
|
|
10422
|
-
runSerial:
|
|
10423
|
-
trackActive:
|
|
10424
|
-
abortAllActive:
|
|
10440
|
+
emit: q,
|
|
10441
|
+
runSerial: St,
|
|
10442
|
+
trackActive: wt,
|
|
10443
|
+
abortAllActive: Tt,
|
|
10425
10444
|
unloadSkillTools(e) {
|
|
10426
10445
|
if (e) {
|
|
10427
|
-
let t =
|
|
10428
|
-
if (
|
|
10446
|
+
let t = we.length;
|
|
10447
|
+
if (we = we.filter((t) => Te.get(t.name) === e ? (V.delete(t.name), Te.delete(t.name), !1) : !0), we.length === t) return;
|
|
10429
10448
|
} else {
|
|
10430
|
-
if (!
|
|
10431
|
-
for (let e of
|
|
10432
|
-
|
|
10449
|
+
if (!we.length) return;
|
|
10450
|
+
for (let e of we) V.delete(e.name), Te.delete(e.name);
|
|
10451
|
+
we = [];
|
|
10433
10452
|
}
|
|
10434
|
-
|
|
10453
|
+
W = G(), J.agent && J.agent.setTools(W);
|
|
10435
10454
|
},
|
|
10436
10455
|
applySnapshot(t) {
|
|
10437
|
-
if (t.messages?.length && b.push(...t.messages), t.vfs && x.hydrate && x.hydrate(t.vfs), t.todos?.length && S.reset(t.todos), t.memory && !e.memory && E.reset(t.memory), t.checkpoints?.length &&
|
|
10456
|
+
if (t.messages?.length && b.push(...t.messages), t.vfs && x.hydrate && x.hydrate(t.vfs), t.todos?.length && S.reset(t.todos), t.memory && !e.memory && E.reset(t.memory), t.checkpoints?.length && F && F.importStack(t.checkpoints), t.usage && Object.assign(i, t.usage), t.mission && De && C.setMission(t.mission), t.workingMemory && Oe && T.restore(t.workingMemory), U) {
|
|
10438
10457
|
let n = t.focus, r = n ? Array.isArray(n) ? n : [n] : [];
|
|
10439
10458
|
if (r.length) {
|
|
10440
|
-
let t =
|
|
10459
|
+
let t = B()?.schema, n = t ? r.filter((e) => Ji(t, e.path)) : [];
|
|
10441
10460
|
if (n.length && (w.setFocus(null), n.forEach((e) => w.addFocus(e))), e.debug && n.length < r.length) {
|
|
10442
10461
|
let e = r.filter((e) => !n.includes(e)).map((e) => e.path);
|
|
10443
10462
|
console.warn("[page-agent-sdk][focus] 恢复的焦点部分 path 已失效(schema 变化/无 schema),剔除:", e);
|
|
10444
10463
|
}
|
|
10445
10464
|
}
|
|
10446
10465
|
}
|
|
10447
|
-
|
|
10466
|
+
kt();
|
|
10448
10467
|
},
|
|
10449
10468
|
addSkill(e) {
|
|
10450
|
-
let t =
|
|
10451
|
-
t >= 0 ?
|
|
10469
|
+
let t = ot.findIndex((t) => t.name === e.name);
|
|
10470
|
+
t >= 0 ? ot[t] = e : ot.push(e), ut(), lt && lt.put(st(e));
|
|
10452
10471
|
},
|
|
10453
10472
|
removeSkill(e) {
|
|
10454
|
-
let t =
|
|
10455
|
-
return t < 0 ? !1 : (
|
|
10473
|
+
let t = ot.findIndex((t) => t.name === e);
|
|
10474
|
+
return t < 0 ? !1 : (ot.splice(t, 1), ut(), lt && lt.remove(e), !0);
|
|
10456
10475
|
},
|
|
10457
10476
|
listUserSkills() {
|
|
10458
|
-
return
|
|
10477
|
+
return ot.map((e) => e.name);
|
|
10459
10478
|
},
|
|
10460
10479
|
getUserSkill(e) {
|
|
10461
|
-
let t =
|
|
10480
|
+
let t = ot.find((t) => t.name === e);
|
|
10462
10481
|
if (t) return {
|
|
10463
10482
|
name: t.name,
|
|
10464
10483
|
description: t.description,
|
|
@@ -10466,16 +10485,17 @@ function Cd(e, n) {
|
|
|
10466
10485
|
};
|
|
10467
10486
|
},
|
|
10468
10487
|
afterRound() {
|
|
10469
|
-
jt(),
|
|
10488
|
+
jt(), Lt();
|
|
10470
10489
|
},
|
|
10471
10490
|
async send(e, t) {
|
|
10472
|
-
await
|
|
10491
|
+
if (await J.initDone, J.refCount <= 0) throw Error("page-agent-sdk: agent 已释放(unmount),拒绝排队中的 send");
|
|
10492
|
+
t ??= {}, t?.mission && De && C.setMission(t.mission);
|
|
10473
10493
|
let n = e;
|
|
10474
10494
|
if (t.interceptors?.input) try {
|
|
10475
10495
|
let r = t.interceptors.input(e);
|
|
10476
10496
|
typeof r == "string" && (n = r);
|
|
10477
10497
|
} catch {}
|
|
10478
|
-
let r =
|
|
10498
|
+
let r = se ? t.maxAutoRetries ?? 1 : 0, i = 0, a = !1, o = yt(t.signal), c = J.sessionId;
|
|
10479
10499
|
for (;;) {
|
|
10480
10500
|
a ||= (b.push({
|
|
10481
10501
|
role: "user",
|
|
@@ -10483,7 +10503,17 @@ function Cd(e, n) {
|
|
|
10483
10503
|
timestamp: Date.now()
|
|
10484
10504
|
}), !0);
|
|
10485
10505
|
try {
|
|
10486
|
-
let e = await
|
|
10506
|
+
let e = await J.agent.invoke(b, t.signal, o);
|
|
10507
|
+
if (t.signal?.aborted || J.sessionId !== c || J.refCount <= 0) return J.agent?.debugLogs?.value?.push({
|
|
10508
|
+
timestamp: Date.now(),
|
|
10509
|
+
type: "middleware",
|
|
10510
|
+
data: {
|
|
10511
|
+
stage: "orphan_round_dropped",
|
|
10512
|
+
fromSession: c,
|
|
10513
|
+
aborted: !!t.signal?.aborted,
|
|
10514
|
+
sessionChanged: J.sessionId !== c
|
|
10515
|
+
}
|
|
10516
|
+
}), e;
|
|
10487
10517
|
if (t.interceptors?.output) try {
|
|
10488
10518
|
let n = t.interceptors.output(e);
|
|
10489
10519
|
typeof n == "string" && (e = n);
|
|
@@ -10492,12 +10522,12 @@ function Cd(e, n) {
|
|
|
10492
10522
|
role: "assistant",
|
|
10493
10523
|
content: e,
|
|
10494
10524
|
timestamp: Date.now()
|
|
10495
|
-
}),
|
|
10525
|
+
}), J.afterRound(), s && await s.flush(), e;
|
|
10496
10526
|
} catch (e) {
|
|
10497
10527
|
if (di(e, t.signal)) throw e;
|
|
10498
10528
|
let n = Zr(e, "fatal");
|
|
10499
|
-
if (i < r &&
|
|
10500
|
-
i += 1,
|
|
10529
|
+
if (i < r && F?.canRestore()) {
|
|
10530
|
+
i += 1, F.restore(), a = !0, q({
|
|
10501
10531
|
type: "error",
|
|
10502
10532
|
message: `致命错误自动恢复(${i}/${r}):${n.message},已回退 checkpoint 重试`,
|
|
10503
10533
|
severity: "observable",
|
|
@@ -10509,7 +10539,7 @@ function Cd(e, n) {
|
|
|
10509
10539
|
});
|
|
10510
10540
|
continue;
|
|
10511
10541
|
}
|
|
10512
|
-
throw
|
|
10542
|
+
throw q({
|
|
10513
10543
|
type: "error",
|
|
10514
10544
|
message: n.message,
|
|
10515
10545
|
severity: n.severity,
|
|
@@ -10520,8 +10550,9 @@ function Cd(e, n) {
|
|
|
10520
10550
|
}
|
|
10521
10551
|
},
|
|
10522
10552
|
async batch(e, t, n) {
|
|
10523
|
-
if (await
|
|
10524
|
-
|
|
10553
|
+
if (await J.initDone, !e.length) return [];
|
|
10554
|
+
if (J.refCount <= 0) throw Error("page-agent-sdk: agent 已释放(unmount),拒绝排队中的 batch");
|
|
10555
|
+
let r = [], i = yt(n);
|
|
10525
10556
|
for (let a = 0; a < e.length; a++) {
|
|
10526
10557
|
if (n?.aborted) {
|
|
10527
10558
|
for (let t = a; t < e.length; t++) r.push({
|
|
@@ -10533,7 +10564,7 @@ function Cd(e, n) {
|
|
|
10533
10564
|
break;
|
|
10534
10565
|
}
|
|
10535
10566
|
let o = e[a];
|
|
10536
|
-
|
|
10567
|
+
F && F.save(`batch:${a}`);
|
|
10537
10568
|
let c = b.length;
|
|
10538
10569
|
try {
|
|
10539
10570
|
b.push({
|
|
@@ -10541,12 +10572,12 @@ function Cd(e, n) {
|
|
|
10541
10572
|
content: o,
|
|
10542
10573
|
timestamp: Date.now()
|
|
10543
10574
|
});
|
|
10544
|
-
let c = await
|
|
10575
|
+
let c = await J.agent.invoke(b, n, i);
|
|
10545
10576
|
b.push({
|
|
10546
10577
|
role: "assistant",
|
|
10547
10578
|
content: c,
|
|
10548
10579
|
timestamp: Date.now()
|
|
10549
|
-
}),
|
|
10580
|
+
}), J.afterRound(), s && await s.flush(), r.push({
|
|
10550
10581
|
index: a,
|
|
10551
10582
|
task: o,
|
|
10552
10583
|
reply: c,
|
|
@@ -10574,7 +10605,7 @@ function Cd(e, n) {
|
|
|
10574
10605
|
break;
|
|
10575
10606
|
}
|
|
10576
10607
|
let s = Zr(i, "fatal");
|
|
10577
|
-
|
|
10608
|
+
q({
|
|
10578
10609
|
type: "error",
|
|
10579
10610
|
message: `批量任务 ${a + 1}/${e.length} 失败:${s.message}`,
|
|
10580
10611
|
severity: "observable",
|
|
@@ -10599,70 +10630,72 @@ function Cd(e, n) {
|
|
|
10599
10630
|
return r;
|
|
10600
10631
|
},
|
|
10601
10632
|
async switchSession(t) {
|
|
10602
|
-
if (await
|
|
10603
|
-
if (a.resolve("keep_external"),
|
|
10604
|
-
if (
|
|
10633
|
+
if (await J.initDone, !s) throw Error("page-agent-sdk: storage 未开启,无法切换会话(请传 storage 选项)");
|
|
10634
|
+
if (a.resolve("keep_external"), J.sessionId && s) {
|
|
10635
|
+
if (De) {
|
|
10605
10636
|
let e = C.getMission();
|
|
10606
|
-
e &&
|
|
10637
|
+
e && Ft({ mission: e });
|
|
10607
10638
|
}
|
|
10608
|
-
if (
|
|
10639
|
+
if (Oe) {
|
|
10609
10640
|
let e = T.getWorkingMemory();
|
|
10610
|
-
e &&
|
|
10641
|
+
e && Ft({ workingMemory: e });
|
|
10611
10642
|
}
|
|
10612
|
-
if (
|
|
10643
|
+
if (U) {
|
|
10613
10644
|
let e = w.getFocuses();
|
|
10614
|
-
|
|
10645
|
+
Ft({ focus: e.length ? e : null });
|
|
10615
10646
|
}
|
|
10616
10647
|
}
|
|
10617
10648
|
x.flush?.(), await s.flush();
|
|
10618
10649
|
let r = t ?? "", i;
|
|
10619
|
-
return r ? (i = await s.load(n, r), i || await s.createSession(n, e.session?.title, r)) : r = await s.createSession(n, e.session?.title),
|
|
10650
|
+
return r ? (i = await s.load(n, r), i || await s.createSession(n, e.session?.title, r)) : r = await s.createSession(n, e.session?.title), J.sessionId = r, b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), F && F.importStack([]), J.agent.debugLogs.value = [], i ||= await s.load(n, r), i && (J.applySnapshot(i), q({
|
|
10620
10651
|
type: "session_restored",
|
|
10621
10652
|
sessionId: r,
|
|
10622
10653
|
rounds: i.messages?.length ?? 0
|
|
10623
|
-
})), e.memory &&
|
|
10654
|
+
})), e.memory && Ft({ memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), xt(), Mt = void 0, Nt = !1, J.infoTick.value++, r;
|
|
10624
10655
|
},
|
|
10625
10656
|
resetSession: () => {
|
|
10626
|
-
|
|
10657
|
+
Tt(), a.resolve("keep_external"), J.sessionId = ul(), b.splice(0, b.length), x.clear?.(), S.reset([]), e.memory || E.reset(""), C.reset(), T.reset(), w.reset(), F && F.importStack([]), J.agent && (J.agent.debugLogs.value = []), s && s.createSession(J.agentId, e.session?.title, J.sessionId).catch((t) => {
|
|
10658
|
+
e.debug && console.warn("[page-agent-sdk][persist] createSession 失败(已吞):", t);
|
|
10659
|
+
}), q({
|
|
10627
10660
|
type: "session_restored",
|
|
10628
|
-
sessionId:
|
|
10661
|
+
sessionId: J.sessionId,
|
|
10629
10662
|
rounds: 0
|
|
10630
|
-
}),
|
|
10663
|
+
}), J.infoTick.value++, xt(), Mt = void 0, Nt = !1;
|
|
10631
10664
|
},
|
|
10632
10665
|
stream: (e, t, n) => {
|
|
10633
|
-
if (!
|
|
10666
|
+
if (!J.agent) throw Error("page-agent-sdk: agent 尚未初始化完成,请先 await mount()");
|
|
10634
10667
|
x?.setProtectedRefs?.(md(e));
|
|
10635
10668
|
let r = (e) => {
|
|
10636
|
-
t?.(e),
|
|
10669
|
+
t?.(e), q(e), e.type === "subagent" && (e.kind === "tool_call" || e.kind === "tool_result") && J.infoTick.value++;
|
|
10637
10670
|
};
|
|
10638
10671
|
if (n) {
|
|
10639
10672
|
let e = () => a.resolve("keep_external");
|
|
10640
10673
|
n.aborted ? e() : n.addEventListener("abort", e, { once: !0 });
|
|
10641
10674
|
}
|
|
10642
|
-
let { controller: i, untrack: o } =
|
|
10643
|
-
return
|
|
10675
|
+
let { controller: i, untrack: o } = wt(n);
|
|
10676
|
+
return J.agent.stream(e, r, i.signal).finally(o);
|
|
10644
10677
|
},
|
|
10645
10678
|
release() {
|
|
10646
|
-
if (
|
|
10647
|
-
|
|
10648
|
-
let e =
|
|
10679
|
+
if (J.refCount--, J.refCount <= 0) {
|
|
10680
|
+
Tt(), he = !0, s && (x.flush?.(), s.flush(), s.dispose()), lt && lt.dispose();
|
|
10681
|
+
let e = J.mcpClosers.splice(0);
|
|
10649
10682
|
e.length && Promise.allSettled(e.map((e) => e())), vd.delete(n);
|
|
10650
10683
|
}
|
|
10651
10684
|
},
|
|
10652
10685
|
resolveConflict: a.resolve,
|
|
10653
10686
|
setTools(e) {
|
|
10654
|
-
|
|
10655
|
-
|
|
10656
|
-
}),
|
|
10687
|
+
pe.length = 0, e.forEach((e) => {
|
|
10688
|
+
pe.push(e), V.set(e.name, "user");
|
|
10689
|
+
}), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
|
|
10657
10690
|
},
|
|
10658
10691
|
addTool(e) {
|
|
10659
|
-
|
|
10660
|
-
for (let t =
|
|
10661
|
-
|
|
10692
|
+
W.some((t) => t.name === e.name) && console.warn(`[page-agent-sdk] 工具 "${e.name}" 已存在,新工具覆盖(后注册覆盖先注册)`);
|
|
10693
|
+
for (let t = pe.length - 1; t >= 0; t--) pe[t].name === e.name && pe.splice(t, 1);
|
|
10694
|
+
pe.push(e), V.set(e.name, "user"), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++;
|
|
10662
10695
|
},
|
|
10663
10696
|
removeTool(e) {
|
|
10664
|
-
let t =
|
|
10665
|
-
return t < 0 ? !1 : (
|
|
10697
|
+
let t = pe.findIndex((t) => t.name === e);
|
|
10698
|
+
return t < 0 ? !1 : (pe.splice(t, 1), V.delete(e), W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++, !0);
|
|
10666
10699
|
},
|
|
10667
10700
|
setLlm(t) {
|
|
10668
10701
|
let n;
|
|
@@ -10679,58 +10712,58 @@ function Cd(e, n) {
|
|
|
10679
10712
|
contextWindow: e.contextWindow ?? r?.contextWindow,
|
|
10680
10713
|
maxOutputTokens: e.maxOutputTokens ?? r?.maxOutputTokens
|
|
10681
10714
|
}), f.contextWindow < 2e5) throw Error(`[page-agent-sdk][setLlm] 新模型上下文窗口 ${f.contextWindow} 小于最小支持 ${ai}(需 ≥200K 窗口模型)`);
|
|
10682
|
-
|
|
10715
|
+
J.agent && (J.agent.setLlm(n), J.agent.setModelCaps?.(f)), ft?.setContextWindow?.(f.contextWindow), et?.setContextWindow?.(f.contextWindow), J.infoTick.value++, e.debug && console.log("[page-agent-sdk][setLlm] 重解析 modelCaps + 回灌:", f);
|
|
10683
10716
|
},
|
|
10684
10717
|
setMemory(e) {
|
|
10685
|
-
E.reset(e), typeof e == "function" && E.refresh(),
|
|
10718
|
+
E.reset(e), typeof e == "function" && E.refresh(), J.infoTick.value++;
|
|
10686
10719
|
},
|
|
10687
10720
|
refreshMemory() {
|
|
10688
10721
|
return E.refresh();
|
|
10689
10722
|
},
|
|
10690
10723
|
setSubagents(t) {
|
|
10691
|
-
if (!
|
|
10724
|
+
if (!Xe) {
|
|
10692
10725
|
e.debug && console.warn("[page-agent-sdk][setSubagents] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略");
|
|
10693
10726
|
return;
|
|
10694
10727
|
}
|
|
10695
|
-
|
|
10728
|
+
Xe.set(t), J.infoTick.value++;
|
|
10696
10729
|
},
|
|
10697
10730
|
addSubagent(t) {
|
|
10698
|
-
if (!
|
|
10731
|
+
if (!Xe) {
|
|
10699
10732
|
e.debug && console.warn("[page-agent-sdk][addSubagent] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略");
|
|
10700
10733
|
return;
|
|
10701
10734
|
}
|
|
10702
|
-
|
|
10735
|
+
Xe.add(t), J.infoTick.value++;
|
|
10703
10736
|
},
|
|
10704
10737
|
removeSubagent(t) {
|
|
10705
|
-
if (!
|
|
10706
|
-
let n =
|
|
10707
|
-
return n &&
|
|
10738
|
+
if (!Xe) return e.debug && console.warn("[page-agent-sdk][removeSubagent] 未配 subagents:[] 或 capabilities.subagent 关闭,忽略"), !1;
|
|
10739
|
+
let n = Xe.remove(t);
|
|
10740
|
+
return n && J.infoTick.value++, n;
|
|
10708
10741
|
},
|
|
10709
10742
|
getActiveSubagents() {
|
|
10710
|
-
return
|
|
10743
|
+
return Fe?.getActive() ?? [];
|
|
10711
10744
|
},
|
|
10712
10745
|
get subagentHistory() {
|
|
10713
|
-
return
|
|
10746
|
+
return Fe?.getHistory() ?? [];
|
|
10714
10747
|
},
|
|
10715
10748
|
getInfo() {
|
|
10716
10749
|
return {
|
|
10717
10750
|
id: n,
|
|
10718
|
-
sessionId:
|
|
10751
|
+
sessionId: J.sessionId,
|
|
10719
10752
|
model: $c(y) ? y.model ?? y.modelName : y.model,
|
|
10720
|
-
systemPrompt:
|
|
10721
|
-
tools: (
|
|
10753
|
+
systemPrompt: J.agent?.getEffectiveSystemPrompt?.() ?? ce + rc(B(), e.schemaHint),
|
|
10754
|
+
tools: (J.agent?.allTools ?? W).map((e) => ({
|
|
10722
10755
|
name: e.name,
|
|
10723
10756
|
description: e.description,
|
|
10724
10757
|
schema: e.schema,
|
|
10725
|
-
source:
|
|
10758
|
+
source: V.get(e.name) || "user"
|
|
10726
10759
|
})),
|
|
10727
|
-
skills: (
|
|
10760
|
+
skills: (at ? at.controller.get() : e.skills ?? []).map((e) => ({
|
|
10728
10761
|
name: e.name,
|
|
10729
10762
|
description: e.description
|
|
10730
10763
|
})),
|
|
10731
|
-
data:
|
|
10732
|
-
description:
|
|
10733
|
-
schema:
|
|
10764
|
+
data: B() ? {
|
|
10765
|
+
description: B().description,
|
|
10766
|
+
schema: B().schema
|
|
10734
10767
|
} : void 0,
|
|
10735
10768
|
contextPreset: e.contextPreset ?? "auto",
|
|
10736
10769
|
compression: {
|
|
@@ -10739,8 +10772,8 @@ function Cd(e, n) {
|
|
|
10739
10772
|
promptSoftCap: as(f.contextWindow, h.promptSoftCapTokens)
|
|
10740
10773
|
},
|
|
10741
10774
|
memory: E.get(),
|
|
10742
|
-
middleware:
|
|
10743
|
-
todos: (
|
|
10775
|
+
middleware: pt.map((e) => e.name),
|
|
10776
|
+
todos: (J.agent?.getState?.()?.todos ?? []).map((e) => ({
|
|
10744
10777
|
id: e.id,
|
|
10745
10778
|
content: e.content,
|
|
10746
10779
|
status: e.status,
|
|
@@ -10750,111 +10783,111 @@ function Cd(e, n) {
|
|
|
10750
10783
|
...e.evidence === void 0 ? {} : { evidence: e.evidence }
|
|
10751
10784
|
})),
|
|
10752
10785
|
planPhase: S.getPlanPhase(),
|
|
10753
|
-
mission:
|
|
10754
|
-
workingMemory:
|
|
10755
|
-
focus:
|
|
10756
|
-
focuses:
|
|
10757
|
-
trace:
|
|
10758
|
-
spans:
|
|
10759
|
-
metrics: li(
|
|
10786
|
+
mission: De ? C.getMission() : void 0,
|
|
10787
|
+
workingMemory: Oe ? T.getWorkingMemory() : void 0,
|
|
10788
|
+
focus: U ? w.getFocus() : void 0,
|
|
10789
|
+
focuses: U ? w.getFocuses() : [],
|
|
10790
|
+
trace: oe && J.agent?.spans ? {
|
|
10791
|
+
spans: J.agent.spans.value,
|
|
10792
|
+
metrics: li(J.agent.spans.value)
|
|
10760
10793
|
} : void 0,
|
|
10761
10794
|
actions: $u(e.actions ?? {}),
|
|
10762
10795
|
subagent: {
|
|
10763
|
-
enabled: !!
|
|
10796
|
+
enabled: !!Ge,
|
|
10764
10797
|
maxDepth: e.subagent?.maxDepth ?? 1,
|
|
10765
10798
|
maxParallel: e.subagent?.maxParallel ?? 4,
|
|
10766
10799
|
allowedTools: e.subagent?.allowedTools ?? [],
|
|
10767
|
-
subagents:
|
|
10768
|
-
active:
|
|
10769
|
-
history:
|
|
10770
|
-
lockedComponents:
|
|
10800
|
+
subagents: Xe?.get() ?? [],
|
|
10801
|
+
active: Fe?.getActive() ?? [],
|
|
10802
|
+
history: Fe?.getHistory() ?? [],
|
|
10803
|
+
lockedComponents: qe?.locked() ?? {}
|
|
10771
10804
|
},
|
|
10772
10805
|
verify: {
|
|
10773
|
-
enabled:
|
|
10774
|
-
maxAttempts:
|
|
10775
|
-
adversarial:
|
|
10806
|
+
enabled: !!$e,
|
|
10807
|
+
maxAttempts: Re ? Ie : 0,
|
|
10808
|
+
adversarial: Re && !!e.verify?.adversarial
|
|
10776
10809
|
},
|
|
10777
10810
|
context: (() => {
|
|
10778
|
-
let e =
|
|
10811
|
+
let e = et?.getSnapshot();
|
|
10779
10812
|
if (e) {
|
|
10780
|
-
let t =
|
|
10813
|
+
let t = J.agent?.getState?.()?.lastCompression;
|
|
10781
10814
|
t && (e.compression = t);
|
|
10782
10815
|
}
|
|
10783
10816
|
return e;
|
|
10784
10817
|
})(),
|
|
10785
|
-
mcp: { servers:
|
|
10786
|
-
lastCompression:
|
|
10787
|
-
checkpoints:
|
|
10818
|
+
mcp: { servers: J.mcpServers },
|
|
10819
|
+
lastCompression: J.agent?.getState?.()?.lastCompression,
|
|
10820
|
+
checkpoints: F ? {
|
|
10788
10821
|
enabled: !0,
|
|
10789
|
-
auto:
|
|
10790
|
-
list:
|
|
10822
|
+
auto: I,
|
|
10823
|
+
list: F.list()
|
|
10791
10824
|
} : void 0
|
|
10792
10825
|
};
|
|
10793
10826
|
},
|
|
10794
10827
|
getMission() {
|
|
10795
|
-
return
|
|
10828
|
+
return De ? C.getMission() : void 0;
|
|
10796
10829
|
},
|
|
10797
10830
|
setMission(t) {
|
|
10798
|
-
if (!
|
|
10831
|
+
if (!De) {
|
|
10799
10832
|
e.debug && console.warn("[page-agent-sdk][mission] capabilities.missionAnchor 关闭,setMission 忽略");
|
|
10800
10833
|
return;
|
|
10801
10834
|
}
|
|
10802
|
-
C.setMission(t),
|
|
10835
|
+
C.setMission(t), J.infoTick.value++;
|
|
10803
10836
|
},
|
|
10804
10837
|
getFocus() {
|
|
10805
|
-
return
|
|
10838
|
+
return U ? w.getFocus() : void 0;
|
|
10806
10839
|
},
|
|
10807
10840
|
getFocuses() {
|
|
10808
|
-
return
|
|
10841
|
+
return U ? w.getFocuses() : [];
|
|
10809
10842
|
},
|
|
10810
10843
|
setFocus(t) {
|
|
10811
|
-
let n = Sd(t, "setFocus",
|
|
10812
|
-
return n.ok ? (w.setFocus(t),
|
|
10844
|
+
let n = Sd(t, "setFocus", U, () => B()?.schema, e.debug);
|
|
10845
|
+
return n.ok ? (w.setFocus(t), J.infoTick.value++, { ok: !0 }) : n;
|
|
10813
10846
|
},
|
|
10814
10847
|
addFocus(t) {
|
|
10815
|
-
let n = Sd(t, "addFocus",
|
|
10848
|
+
let n = Sd(t, "addFocus", U, () => B()?.schema, e.debug);
|
|
10816
10849
|
return n.ok ? w.getFocuses().length >= 8 ? (e.debug && console.warn("[page-agent-sdk][focus] addFocus 拒绝:焦点数已达上限 8(augmentPrompt 注入每焦点子树 schema,过多致 system prompt 超预算)"), {
|
|
10817
10850
|
ok: !1,
|
|
10818
10851
|
error: "焦点数上限 8(避免 system prompt 撑爆)"
|
|
10819
|
-
}) : (w.addFocus(t),
|
|
10852
|
+
}) : (w.addFocus(t), J.infoTick.value++, { ok: !0 }) : n;
|
|
10820
10853
|
},
|
|
10821
10854
|
removeFocus(e) {
|
|
10822
|
-
|
|
10855
|
+
U && (w.removeFocus(e), J.infoTick.value++);
|
|
10823
10856
|
},
|
|
10824
10857
|
clearFocus() {
|
|
10825
|
-
|
|
10858
|
+
U && (w.clearFocus(), J.infoTick.value++);
|
|
10826
10859
|
}
|
|
10827
10860
|
};
|
|
10828
|
-
async function
|
|
10861
|
+
async function Et() {
|
|
10829
10862
|
if (!s) return;
|
|
10830
10863
|
await s.ready;
|
|
10831
10864
|
let t = e.session || {};
|
|
10832
10865
|
if (t.id) {
|
|
10833
|
-
|
|
10834
|
-
let e = await s.load(n,
|
|
10835
|
-
e ? (
|
|
10866
|
+
J.sessionId = t.id;
|
|
10867
|
+
let e = await s.load(n, J.sessionId);
|
|
10868
|
+
e ? (J.applySnapshot(e), q({
|
|
10836
10869
|
type: "session_restored",
|
|
10837
|
-
sessionId:
|
|
10870
|
+
sessionId: J.sessionId,
|
|
10838
10871
|
rounds: e.messages?.length ?? 0
|
|
10839
|
-
})) : await s.createSession(n, t.title,
|
|
10872
|
+
})) : await s.createSession(n, t.title, J.sessionId);
|
|
10840
10873
|
} else if (t.autoResume !== !1) {
|
|
10841
10874
|
let r = await s.listSessions(n);
|
|
10842
10875
|
if (e.debug && console.log("[page-agent-sdk][restore] listSessions", n, r.length, r.map((e) => e.sessionId)), r.length) {
|
|
10843
|
-
|
|
10844
|
-
let t = await s.load(n,
|
|
10845
|
-
t ? (
|
|
10876
|
+
J.sessionId = r[0].sessionId;
|
|
10877
|
+
let t = await s.load(n, J.sessionId);
|
|
10878
|
+
t ? (J.applySnapshot(t), q({
|
|
10846
10879
|
type: "session_restored",
|
|
10847
|
-
sessionId:
|
|
10880
|
+
sessionId: J.sessionId,
|
|
10848
10881
|
rounds: t.messages?.length ?? 0
|
|
10849
|
-
}), e.debug && console.log("[page-agent-sdk][restore] 恢复会话",
|
|
10850
|
-
} else
|
|
10851
|
-
} else
|
|
10852
|
-
e.memory &&
|
|
10882
|
+
}), e.debug && console.log("[page-agent-sdk][restore] 恢复会话", J.sessionId, `${t.messages?.length ?? 0} msgs`)) : e.debug && console.log("[page-agent-sdk][restore] 会话 meta 存在但快照为空", J.sessionId);
|
|
10883
|
+
} else J.sessionId = await s.createSession(n, t.title), e.debug && console.log("[page-agent-sdk][restore] 新建会话(无历史)", J.sessionId);
|
|
10884
|
+
} else J.sessionId = await s.createSession(n, t.title);
|
|
10885
|
+
e.memory && Ft({ memory: E.get() || (typeof e.memory == "string" ? e.memory : "") }), xt();
|
|
10853
10886
|
}
|
|
10854
|
-
async function
|
|
10855
|
-
await
|
|
10887
|
+
async function Dt() {
|
|
10888
|
+
await dt();
|
|
10856
10889
|
}
|
|
10857
|
-
function
|
|
10890
|
+
function Ot(e) {
|
|
10858
10891
|
let t = {};
|
|
10859
10892
|
for (let n of md(e)) {
|
|
10860
10893
|
let e = x.files[n];
|
|
@@ -10862,15 +10895,15 @@ function Cd(e, n) {
|
|
|
10862
10895
|
}
|
|
10863
10896
|
return t;
|
|
10864
10897
|
}
|
|
10865
|
-
function
|
|
10898
|
+
function kt() {
|
|
10866
10899
|
let e = hd(x.files, md(b));
|
|
10867
10900
|
for (let t of e) delete x.files[t];
|
|
10868
10901
|
}
|
|
10869
10902
|
function jt() {
|
|
10870
|
-
let e = Xo(b,
|
|
10903
|
+
let e = Xo(b, mt);
|
|
10871
10904
|
if (!e.trimmed) return;
|
|
10872
10905
|
let { older: t, summary: n } = e;
|
|
10873
|
-
if (
|
|
10906
|
+
if (q({
|
|
10874
10907
|
type: "context_trimmed",
|
|
10875
10908
|
dropped: t.map((e) => ({
|
|
10876
10909
|
round: e.round,
|
|
@@ -10878,61 +10911,91 @@ function Cd(e, n) {
|
|
|
10878
10911
|
assistant: e.assistantMsgs.map((e) => e.content),
|
|
10879
10912
|
steps: e.assistantMsgs.flatMap((e) => e.steps ?? [])
|
|
10880
10913
|
})),
|
|
10881
|
-
vfsResults:
|
|
10914
|
+
vfsResults: Ot(t.flatMap((e) => [e.userMsg, ...e.assistantMsgs])),
|
|
10882
10915
|
summary: n.content,
|
|
10883
10916
|
reason: "max_memory_rounds"
|
|
10884
|
-
}), b.splice(e.deleteFrom, e.deleteCount, n),
|
|
10917
|
+
}), b.splice(e.deleteFrom, e.deleteCount, n), kt(), g && l) {
|
|
10885
10918
|
let n = e.summary, { prevSeg: r } = e;
|
|
10886
10919
|
(async () => {
|
|
10887
10920
|
try {
|
|
10888
10921
|
let e = await l(ts(t, v)), i = b.indexOf(n);
|
|
10889
10922
|
if (i < 0) return;
|
|
10890
|
-
b[i].content = Yo(t, r, e),
|
|
10923
|
+
b[i].content = Yo(t, r, e), Lt();
|
|
10891
10924
|
} catch {}
|
|
10892
10925
|
})();
|
|
10893
10926
|
}
|
|
10894
10927
|
}
|
|
10895
10928
|
let Mt, Nt = !1;
|
|
10896
|
-
function Pt() {
|
|
10897
|
-
|
|
10898
|
-
let
|
|
10899
|
-
|
|
10900
|
-
|
|
10901
|
-
|
|
10929
|
+
function Pt(t, n) {
|
|
10930
|
+
e.debug && console.warn(`[page-agent-sdk][persist] ${t} 失败(已吞):`, n);
|
|
10931
|
+
let r = J.agent?.debugLogs;
|
|
10932
|
+
r && r.value.push({
|
|
10933
|
+
timestamp: Date.now(),
|
|
10934
|
+
type: "middleware",
|
|
10935
|
+
data: {
|
|
10936
|
+
stage: "persist_save_failed",
|
|
10937
|
+
kind: t,
|
|
10938
|
+
error: String(n).slice(0, 160)
|
|
10939
|
+
}
|
|
10940
|
+
});
|
|
10941
|
+
}
|
|
10942
|
+
function Ft(e) {
|
|
10943
|
+
!J.sessionId || !s || s.save(n, J.sessionId, e).catch((e) => Pt("save", e));
|
|
10944
|
+
}
|
|
10945
|
+
function It(e, t) {
|
|
10946
|
+
s && s.updateTitle(n, e, t).catch((e) => Pt("updateTitle", e));
|
|
10947
|
+
}
|
|
10948
|
+
function Lt() {
|
|
10949
|
+
if (!J.sessionId || !s) return;
|
|
10950
|
+
if (Ft({ messages: JSON.parse(JSON.stringify(b)) }), Ft({ todos: J.agent?.getState?.()?.todos ?? [] }), De) {
|
|
10902
10951
|
let e = C.getMission();
|
|
10903
|
-
e &&
|
|
10952
|
+
e && Ft({ mission: e });
|
|
10904
10953
|
}
|
|
10905
|
-
if (
|
|
10954
|
+
if (Oe) {
|
|
10906
10955
|
let e = T.getWorkingMemory();
|
|
10907
|
-
e &&
|
|
10956
|
+
e && Ft({ workingMemory: e });
|
|
10908
10957
|
}
|
|
10909
|
-
if (
|
|
10958
|
+
if (U) {
|
|
10910
10959
|
let e = w.getFocuses();
|
|
10911
|
-
|
|
10960
|
+
Ft({ focus: e.length ? e : null });
|
|
10961
|
+
}
|
|
10962
|
+
se && F && (Ft({ checkpoints: F.exportStack() }), Ft({ usage: i }));
|
|
10963
|
+
let t = Qc(b);
|
|
10964
|
+
if (t && t !== Mt && (Mt = t, It(J.sessionId, t)), e.autoTitle !== !1 && u && !Nt && b.some((e) => e.role === "user") && b.some((e) => e.role === "assistant")) {
|
|
10965
|
+
Nt = !0;
|
|
10966
|
+
let e = J.sessionId;
|
|
10967
|
+
(async () => {
|
|
10968
|
+
try {
|
|
10969
|
+
let t = await u(b);
|
|
10970
|
+
if (t && J.refCount > 0 && J.sessionId === e) {
|
|
10971
|
+
try {
|
|
10972
|
+
await s.updateTitle(n, e, t);
|
|
10973
|
+
} catch (e) {
|
|
10974
|
+
Pt("updateTitle", e);
|
|
10975
|
+
}
|
|
10976
|
+
await xt();
|
|
10977
|
+
}
|
|
10978
|
+
} catch {}
|
|
10979
|
+
})();
|
|
10912
10980
|
}
|
|
10913
|
-
|
|
10914
|
-
let a = Qc(b);
|
|
10915
|
-
a && a !== Mt && (Mt = a, s.updateTitle(n, q.sessionId, a)), e.autoTitle !== !1 && u && !Nt && b.some((e) => e.role === "user") && b.some((e) => e.role === "assistant") && (Nt = !0, (async () => {
|
|
10916
|
-
let e = await u(b);
|
|
10917
|
-
e && (await s.updateTitle(n, q.sessionId, e), await St());
|
|
10918
|
-
})()), e.debug && console.log("[page-agent-sdk][persist] save", q.sessionId, `${b.length} msgs`);
|
|
10981
|
+
e.debug && console.log("[page-agent-sdk][persist] save", J.sessionId, `${b.length} msgs`);
|
|
10919
10982
|
}
|
|
10920
|
-
return
|
|
10921
|
-
await
|
|
10983
|
+
return J.initDone = (async () => {
|
|
10984
|
+
await Et(), await Dt(), e.mcp?.length && (async () => {
|
|
10922
10985
|
let t = await Promise.allSettled(e.mcp.map((e) => tc(e))), n = t.flatMap((e) => e.status === "fulfilled" ? [e.value.close] : []);
|
|
10923
|
-
if (
|
|
10986
|
+
if (he) {
|
|
10924
10987
|
Promise.allSettled(n.map((e) => e()));
|
|
10925
10988
|
return;
|
|
10926
10989
|
}
|
|
10927
|
-
|
|
10990
|
+
J.mcpClosers = n, J.mcpServers = [];
|
|
10928
10991
|
let r = /* @__PURE__ */ new Set();
|
|
10929
|
-
for (let e of
|
|
10930
|
-
let t =
|
|
10992
|
+
for (let e of W) {
|
|
10993
|
+
let t = V.get(e.name);
|
|
10931
10994
|
t && !t.startsWith("mcp:") && r.add(e.name);
|
|
10932
10995
|
}
|
|
10933
10996
|
t.forEach((t, n) => {
|
|
10934
10997
|
let i = e.mcp[n], a = i.name ?? i.url;
|
|
10935
|
-
t.status === "fulfilled" ? (
|
|
10998
|
+
t.status === "fulfilled" ? (J.mcpServers.push({
|
|
10936
10999
|
name: a,
|
|
10937
11000
|
url: i.url,
|
|
10938
11001
|
toolCount: t.value.tools.length
|
|
@@ -10941,30 +11004,30 @@ function Cd(e, n) {
|
|
|
10941
11004
|
console.warn(`[page-agent-sdk][mcp] 工具 "${e.name}" 与内置工具重名,已拒绝注入(安全保留字保护)`);
|
|
10942
11005
|
return;
|
|
10943
11006
|
}
|
|
10944
|
-
|
|
11007
|
+
V.set(e.name, `mcp:${a}`), me.push(e);
|
|
10945
11008
|
})) : console.warn(`[page-agent-sdk][mcp] server ${a} 连接失败:`, t.reason);
|
|
10946
|
-
}),
|
|
11009
|
+
}), me.length && (W = G(), J.agent && J.agent.setTools(W), J.infoTick.value++), e.debug && console.log(`[page-agent-sdk][mcp] 注入 ${me.length} 个工具,${J.mcpServers.length} 个 server`);
|
|
10947
11010
|
})();
|
|
10948
11011
|
let t = $c(e.llm) ? e.llm : await m(e.llm);
|
|
10949
|
-
|
|
11012
|
+
J.agent = Wi({
|
|
10950
11013
|
llm: t,
|
|
10951
|
-
systemPrompt:
|
|
10952
|
-
tools:
|
|
10953
|
-
middleware:
|
|
11014
|
+
systemPrompt: ce,
|
|
11015
|
+
tools: W,
|
|
11016
|
+
middleware: pt,
|
|
10954
11017
|
maxToolRounds: e.maxToolRounds,
|
|
10955
11018
|
maxRetries: e.maxRetries,
|
|
10956
11019
|
stallMs: e.streamStallMs ?? 9e4,
|
|
10957
11020
|
maxParallelTools: e.maxParallelTools,
|
|
10958
11021
|
contextWindow: f.contextWindow,
|
|
10959
11022
|
maxOutputTokens: f.maxOutputTokens,
|
|
10960
|
-
maxVerifyAttempts:
|
|
11023
|
+
maxVerifyAttempts: Re ? Ie : 0,
|
|
10961
11024
|
roundTokenBudget: e.roundTokenBudget ?? 0,
|
|
10962
11025
|
onLlmChange: (e) => {
|
|
10963
11026
|
y = e;
|
|
10964
11027
|
},
|
|
10965
|
-
onTrace:
|
|
11028
|
+
onTrace: oe ? (e, t) => {
|
|
10966
11029
|
try {
|
|
10967
|
-
|
|
11030
|
+
q({
|
|
10968
11031
|
type: "trace",
|
|
10969
11032
|
spans: e,
|
|
10970
11033
|
metrics: t
|
|
@@ -10972,10 +11035,10 @@ function Cd(e, n) {
|
|
|
10972
11035
|
} catch {}
|
|
10973
11036
|
} : void 0,
|
|
10974
11037
|
debug: e.debug
|
|
10975
|
-
}), D.current =
|
|
10976
|
-
|
|
11038
|
+
}), D.current = J.agent, Ye && Ye.setReconfigureHook && Ye.setReconfigureHook(() => {
|
|
11039
|
+
J.agent && J.agent.setTools(G());
|
|
10977
11040
|
});
|
|
10978
|
-
})(),
|
|
11041
|
+
})(), J;
|
|
10979
11042
|
}
|
|
10980
11043
|
function wd(e, t) {
|
|
10981
11044
|
let n = e.id ?? ul();
|
|
@@ -11312,7 +11375,7 @@ async function jd(e) {
|
|
|
11312
11375
|
//#region src/core/composables/useChat.ts
|
|
11313
11376
|
var Md = 4e3;
|
|
11314
11377
|
function Nd(e = {}) {
|
|
11315
|
-
let { fetchResponse: t, fetchStream: n, onPersist: r, onClear: i, onQueuedCleared: a } = e, o = /* @__PURE__ */
|
|
11378
|
+
let { fetchResponse: t, fetchStream: n, onPersist: r, onClear: i, onQueuedCleared: a } = e, o = /* @__PURE__ */ vt({
|
|
11316
11379
|
messages: e.messages ?? [],
|
|
11317
11380
|
loading: !1,
|
|
11318
11381
|
error: null
|
|
@@ -11338,7 +11401,7 @@ function Nd(e = {}) {
|
|
|
11338
11401
|
}
|
|
11339
11402
|
async function g(e) {
|
|
11340
11403
|
if (c.value = !0, n) {
|
|
11341
|
-
let t = /* @__PURE__ */
|
|
11404
|
+
let t = /* @__PURE__ */ vt({
|
|
11342
11405
|
role: "assistant",
|
|
11343
11406
|
content: "",
|
|
11344
11407
|
timestamp: Date.now(),
|