arceus-s 1.6.5 → 1.6.7
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 +126 -318
- package/dist/_shared/integrations/understand-quickly.js +1 -1
- package/dist/cli/analyze.js +0 -10
- package/dist/cli/serve.js +1 -1
- package/dist/core/embeddings/config.js +1 -3
- package/dist/core/lbug/lbug-adapter.d.ts +2 -1
- package/dist/core/lbug/lbug-adapter.js +6 -6
- package/dist/core/lbug/lbug-config.js +19 -0
- package/dist/core/lbug/pool-adapter.js +24 -0
- package/dist/server/api.js +28 -12
- package/package.json +1 -1
- package/scripts/build.js +1 -1
- package/scripts/install-duckdb-extension.mjs +1 -3
- package/web/assets/__vite-browser-external-ZHh0aOLt.js +1 -0
- package/web/assets/{agent-DaYmiVrk.js → agent-D08sq62e.js} +3 -3
- package/web/assets/architecture-7EHR7CIX-6QZW5X65-Cg69mitr.js +1 -0
- package/web/assets/{architectureDiagram-UL44E2DR-613o-OfM.js → architectureDiagram-UL44E2DR-D_Kwz4GF.js} +1 -1
- package/web/assets/{blockDiagram-7IZFK4PR-BBJRt4vF.js → blockDiagram-7IZFK4PR-Rftr7I3J.js} +1 -1
- package/web/assets/{c4Diagram-Y2BXMSZH-BhR2CErx.js → c4Diagram-Y2BXMSZH-Blfibz8B.js} +1 -1
- package/web/assets/{chunk-3SSMPTDK-DWfEAoKy.js → chunk-3SSMPTDK-Dzc7Yf3M.js} +1 -1
- package/web/assets/{chunk-6764PJDD-NOXEgi3n.js → chunk-6764PJDD-y1Zhu3dl.js} +1 -1
- package/web/assets/{chunk-AZZRMDJM-DVvcxwI7.js → chunk-AZZRMDJM-Ckc7sqLz.js} +1 -1
- package/web/assets/{chunk-JQRUD6KW-CQgkrimK.js → chunk-JQRUD6KW-OwYAjIDW.js} +1 -1
- package/web/assets/{chunk-KGYTTC2M-DxOdSoAJ.js → chunk-KGYTTC2M-icDjj_dF.js} +2 -2
- package/web/assets/{chunk-KRXBNO2N-BlnQTnxv.js → chunk-KRXBNO2N-DST_NbH2.js} +1 -1
- package/web/assets/{chunk-LCXTWHL2-Dhf_u-1F.js → chunk-LCXTWHL2-HAyCqcYc.js} +1 -1
- package/web/assets/{chunk-LII3EMHJ-Cb3HLCZX.js → chunk-LII3EMHJ-CK3snkrl.js} +1 -1
- package/web/assets/{chunk-RG4AUYOV-DLCfNede.js → chunk-RG4AUYOV-Fv4PUQgU.js} +1 -1
- package/web/assets/chunk-T5OCTHI4-nCSIBvb4.js +1 -0
- package/web/assets/{chunk-W44A43WB-ZyrAMwtT.js → chunk-W44A43WB-CXihcI9p.js} +1 -1
- package/web/assets/{chunk-ZXARS5L4-B0TJPmj5.js → chunk-ZXARS5L4-BxJ5q1D9.js} +1 -1
- package/web/assets/classDiagram-KGZ6W3CR-BukzWJD4.js +1 -0
- package/web/assets/classDiagram-v2-72OJOZXJ-BukzWJD4.js +1 -0
- package/web/assets/{cose-bilkent-UX7MHV2Q-BsPIaeag.js → cose-bilkent-UX7MHV2Q-DuYon5xW.js} +1 -1
- package/web/assets/{dagre-ND4H6XIP-CV4l9vOZ.js → dagre-ND4H6XIP-CmcxqIrI.js} +1 -1
- package/web/assets/{diagram-3NCE3AQN-9kSzEbS8.js → diagram-3NCE3AQN-C1qPDs8V.js} +1 -1
- package/web/assets/{diagram-GF46GFSD-qRvqbex6.js → diagram-GF46GFSD-BGcKhccJ.js} +1 -1
- package/web/assets/{diagram-HNR7UZ2L-Dj_ye4Ua.js → diagram-HNR7UZ2L-CmQInrek.js} +1 -1
- package/web/assets/{diagram-QXG6HAR7-COwBV6B0.js → diagram-QXG6HAR7-D0COCNQM.js} +1 -1
- package/web/assets/{diagram-WEQXMOUZ-C9xjn5dU.js → diagram-WEQXMOUZ-Dp4WM6wH.js} +1 -1
- package/web/assets/{erDiagram-L5TCEMPS-fRp0t1Yd.js → erDiagram-L5TCEMPS-Bvi8O3E7.js} +1 -1
- package/web/assets/eventmodeling-FCH6USID-MREXMVOE-1KjNRBui.js +1 -0
- package/web/assets/{flowDiagram-H6V6AXG4-Ccr8FDLD.js → flowDiagram-H6V6AXG4-86waGA_9.js} +1 -1
- package/web/assets/{ganttDiagram-JCBTUEKG-DfBPqAGN.js → ganttDiagram-JCBTUEKG-CB2y4tlc.js} +1 -1
- package/web/assets/gitGraph-WXDBUCRP-R675I2BI-DpY0BgB0.js +1 -0
- package/web/assets/{gitGraphDiagram-S2ZK5IYY-CHvG_UQ0.js → gitGraphDiagram-S2ZK5IYY-CTB3Q2Jy.js} +1 -1
- package/web/assets/{index-CJJQgfSH.js → index-C_U4LtVd.js} +8 -8
- package/web/assets/index-ChWMOJVF.css +2 -0
- package/web/assets/info-J43DQDTF-KCYPFFUO-DpUIwTWQ.js +1 -0
- package/web/assets/{infoDiagram-3YFTVSEB-C7cMy-GP.js → infoDiagram-3YFTVSEB-L4P_fiuW.js} +1 -1
- package/web/assets/{ishikawaDiagram-BNXS4ZKH-C80yCPYi.js → ishikawaDiagram-BNXS4ZKH-CITb_lI_.js} +1 -1
- package/web/assets/{journeyDiagram-M6C3CM3L-BHxH1zjE.js → journeyDiagram-M6C3CM3L-C_GoTswH.js} +1 -1
- package/web/assets/{kanban-definition-75IXJCU3-DNZo1hOE.js → kanban-definition-75IXJCU3-DIO2rDwv.js} +1 -1
- package/web/assets/{katex-K3KEBU37-CbyuvTf1.js → katex-K3KEBU37-BGx8vmMI.js} +1 -1
- package/web/assets/{mindmap-definition-2TDM6QVE-Dpgl3Elt.js → mindmap-definition-2TDM6QVE-BwpfdZuv.js} +1 -1
- package/web/assets/packet-YPE3B663-LP52Z2RK-CS02eChX.js +1 -0
- package/web/assets/pie-LRSECV5Y-TCRJHUBD-MN8Lhnq1.js +1 -0
- package/web/assets/{pieDiagram-CU6KROY3-BW0mr0ek.js → pieDiagram-CU6KROY3-CJydlFN5.js} +1 -1
- package/web/assets/{quadrantDiagram-VICAPDV7-C1dCMBbk.js → quadrantDiagram-VICAPDV7-C_tHB163.js} +1 -1
- package/web/assets/radar-GUYGQ44K-RDLRG3WG-DlPHMJir.js +1 -0
- package/web/assets/{requirementDiagram-JXO7QTGE-Dyqqny4j.js → requirementDiagram-JXO7QTGE-4ugGQFD5.js} +1 -1
- package/web/assets/{sankeyDiagram-URQDO5SZ-B3FGr5SL.js → sankeyDiagram-URQDO5SZ-B22-qiwB.js} +1 -1
- package/web/assets/{sequenceDiagram-VS2MUI6T-B4LlGP9C.js → sequenceDiagram-VS2MUI6T-BxYAC7JW.js} +1 -1
- package/web/assets/{stateDiagram-7D4R322I-V9F-klBP.js → stateDiagram-7D4R322I-DtGlq52y.js} +1 -1
- package/web/assets/stateDiagram-v2-36443NZ5-DVW4TIqN.js +1 -0
- package/web/assets/{timeline-definition-O6YCAMPW-CX2WjkZA.js → timeline-definition-O6YCAMPW-BvLaVchF.js} +1 -1
- package/web/assets/treeView-BLDUP644-QA4HXRO3-BhurUJPT.js +1 -0
- package/web/assets/treemap-LRROVOQU-LLAWBHMP-CNYyLmQO.js +1 -0
- package/web/assets/{vennDiagram-MWXL3ELB-BxZPYqOF.js → vennDiagram-MWXL3ELB-DzWO4INt.js} +1 -1
- package/web/assets/wardley-L42UT6IY-5TKZOOLJ-DVYbFSZ8.js +1 -0
- package/web/assets/{wardleyDiagram-CUQ6CDDI-BLdJJYkV.js → wardleyDiagram-CUQ6CDDI-zMXmXc6p.js} +1 -1
- package/web/assets/{xychartDiagram-N2JHSOCM-DqDgigLa.js → xychartDiagram-N2JHSOCM-8TsH4zE8.js} +1 -1
- package/web/index.html +2 -2
- package/web/assets/__vite-browser-external-CLwMvL_q.js +0 -1
- package/web/assets/architecture-7EHR7CIX-6QZW5X65-aGTGQQQG.js +0 -1
- package/web/assets/chunk-T5OCTHI4-B0CGAG7q.js +0 -1
- package/web/assets/classDiagram-KGZ6W3CR-CvSnsfJD.js +0 -1
- package/web/assets/classDiagram-v2-72OJOZXJ-CvSnsfJD.js +0 -1
- package/web/assets/eventmodeling-FCH6USID-MREXMVOE-BR0Ygfrw.js +0 -1
- package/web/assets/gitGraph-WXDBUCRP-R675I2BI-CYihBz6Z.js +0 -1
- package/web/assets/index-B7cw1L6-.css +0 -2
- package/web/assets/info-J43DQDTF-KCYPFFUO-BmmoeX4D.js +0 -1
- package/web/assets/packet-YPE3B663-LP52Z2RK-7JAqDnUy.js +0 -1
- package/web/assets/pie-LRSECV5Y-TCRJHUBD-Bv9vE7io.js +0 -1
- package/web/assets/radar-GUYGQ44K-RDLRG3WG-dtZpcOZd.js +0 -1
- package/web/assets/stateDiagram-v2-36443NZ5-CKDYYzqR.js +0 -1
- package/web/assets/treeView-BLDUP644-QA4HXRO3-BQaKTdhr.js +0 -1
- package/web/assets/treemap-LRROVOQU-LLAWBHMP-Bqlxdyrq.js +0 -1
- package/web/assets/wardley-L42UT6IY-5TKZOOLJ-dofeprUr.js +0 -1
|
@@ -237,12 +237,12 @@ export const initLbug = async (dbPath) => {
|
|
|
237
237
|
* database is busy (e.g. `arc analyze` holds the write lock).
|
|
238
238
|
* Each retry waits DB_LOCK_RETRY_DELAY_MS * attempt milliseconds.
|
|
239
239
|
*/
|
|
240
|
-
export const withLbugDb = async (dbPath, operation) => {
|
|
240
|
+
export const withLbugDb = async (dbPath, operation, options) => {
|
|
241
241
|
let lastError;
|
|
242
242
|
for (let attempt = 1; attempt <= DB_LOCK_RETRY_ATTEMPTS; attempt++) {
|
|
243
243
|
try {
|
|
244
244
|
return await runWithSessionLock(async () => {
|
|
245
|
-
await ensureLbugInitialized(dbPath);
|
|
245
|
+
await ensureLbugInitialized(dbPath, options);
|
|
246
246
|
return operation();
|
|
247
247
|
});
|
|
248
248
|
}
|
|
@@ -272,14 +272,14 @@ export const withLbugDb = async (dbPath, operation) => {
|
|
|
272
272
|
// but TypeScript needs an explicit throw to satisfy the return type.
|
|
273
273
|
throw lastError;
|
|
274
274
|
};
|
|
275
|
-
const ensureLbugInitialized = async (dbPath) => {
|
|
275
|
+
const ensureLbugInitialized = async (dbPath, options) => {
|
|
276
276
|
if (conn && currentDbPath === dbPath) {
|
|
277
277
|
return { db, conn };
|
|
278
278
|
}
|
|
279
|
-
await doInitLbug(dbPath);
|
|
279
|
+
await doInitLbug(dbPath, options);
|
|
280
280
|
return { db, conn };
|
|
281
281
|
};
|
|
282
|
-
const doInitLbug = async (dbPath) => {
|
|
282
|
+
const doInitLbug = async (dbPath, options) => {
|
|
283
283
|
// Different database requested — close the old one first
|
|
284
284
|
if (conn || db) {
|
|
285
285
|
await safeClose();
|
|
@@ -316,7 +316,7 @@ const doInitLbug = async (dbPath) => {
|
|
|
316
316
|
// Ensure parent directory exists
|
|
317
317
|
const parentDir = path.dirname(dbPath);
|
|
318
318
|
await fs.mkdir(parentDir, { recursive: true });
|
|
319
|
-
const opened = await openLbugConnection(lbug, dbPath);
|
|
319
|
+
const opened = await openLbugConnection(lbug, dbPath, options);
|
|
320
320
|
db = opened.db;
|
|
321
321
|
conn = opened.conn;
|
|
322
322
|
for (const schemaQuery of SCHEMA_QUERIES) {
|
|
@@ -229,11 +229,30 @@ export async function openLbugConnection(lbugModule, databasePath, options = {})
|
|
|
229
229
|
let db;
|
|
230
230
|
try {
|
|
231
231
|
db = await openWithLockRetry(() => createLbugDatabase(lbugModule, databasePath, options), databasePath);
|
|
232
|
+
await db.init();
|
|
232
233
|
return { db, conn: new lbugModule.Connection(db) };
|
|
233
234
|
}
|
|
234
235
|
catch (err) {
|
|
235
236
|
if (db)
|
|
236
237
|
await db.close().catch(() => { });
|
|
238
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
239
|
+
if (msg.includes('replay shadow pages')) {
|
|
240
|
+
try {
|
|
241
|
+
// Open in read-write mode briefly to replay shadow pages and auto-checkpoint the WAL
|
|
242
|
+
const tempDb = await openWithLockRetry(() => createLbugDatabase(lbugModule, databasePath, { ...options, readOnly: false }), databasePath);
|
|
243
|
+
await tempDb.init();
|
|
244
|
+
await tempDb.close().catch(() => { });
|
|
245
|
+
// Re-try opening in read-only mode
|
|
246
|
+
db = await openWithLockRetry(() => createLbugDatabase(lbugModule, databasePath, options), databasePath);
|
|
247
|
+
await db.init();
|
|
248
|
+
return { db, conn: new lbugModule.Connection(db) };
|
|
249
|
+
}
|
|
250
|
+
catch (retryErr) {
|
|
251
|
+
if (db)
|
|
252
|
+
await db.close().catch(() => { });
|
|
253
|
+
throw retryErr;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
237
256
|
throw err;
|
|
238
257
|
}
|
|
239
258
|
}
|
|
@@ -217,6 +217,30 @@ async function openReadOnlyDatabase(dbPath) {
|
|
|
217
217
|
catch (err) {
|
|
218
218
|
if (db)
|
|
219
219
|
await db.close().catch(() => { });
|
|
220
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
221
|
+
if (msg.includes('replay shadow pages')) {
|
|
222
|
+
try {
|
|
223
|
+
// Open in read-write mode briefly to replay shadow pages and auto-checkpoint the WAL
|
|
224
|
+
const tempDb = createLbugDatabase(lbug, dbPath, {
|
|
225
|
+
readOnly: false,
|
|
226
|
+
throwOnWalReplayFailure: false,
|
|
227
|
+
});
|
|
228
|
+
await tempDb.init();
|
|
229
|
+
await tempDb.close().catch(() => { });
|
|
230
|
+
// Re-try opening in read-only mode
|
|
231
|
+
db = createLbugDatabase(lbug, dbPath, {
|
|
232
|
+
readOnly: true,
|
|
233
|
+
throwOnWalReplayFailure: false,
|
|
234
|
+
});
|
|
235
|
+
await db.init();
|
|
236
|
+
return db;
|
|
237
|
+
}
|
|
238
|
+
catch (retryErr) {
|
|
239
|
+
if (db)
|
|
240
|
+
await db.close().catch(() => { });
|
|
241
|
+
throw retryErr;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
220
244
|
throw err;
|
|
221
245
|
}
|
|
222
246
|
finally {
|
package/dist/server/api.js
CHANGED
|
@@ -56,7 +56,7 @@ export const isAllowedOrigin = (origin) => {
|
|
|
56
56
|
origin === 'http://127.0.0.1' ||
|
|
57
57
|
origin.startsWith('http://[::1]:') ||
|
|
58
58
|
origin === 'http://[::1]' ||
|
|
59
|
-
origin === 'https://arc.vercel.app') {
|
|
59
|
+
origin === 'https://arceus-arc.vercel.app') {
|
|
60
60
|
return true;
|
|
61
61
|
}
|
|
62
62
|
// RFC 1918 private network ranges — allow any port on these hosts.
|
|
@@ -163,7 +163,7 @@ a.ext:hover{text-decoration:underline}
|
|
|
163
163
|
<div class="terminal"><span class="prompt">$ </span><span class="cmd">cd arceus-web && npm run build</span></div>
|
|
164
164
|
<div class="link-row">
|
|
165
165
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#f59e0b" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/><polyline points="15 3 21 3 21 9"/><line x1="10" y1="14" x2="21" y2="3"/></svg>
|
|
166
|
-
<a class="ext" href="https://arc.vercel.app" target="_blank" rel="noopener noreferrer">arc.vercel.app</a>
|
|
166
|
+
<a class="ext" href="https://arceus-arc.vercel.app" target="_blank" rel="noopener noreferrer">arceus-arc.vercel.app</a>
|
|
167
167
|
<span style="color:#5a5a70">— connects to this server</span>
|
|
168
168
|
</div>
|
|
169
169
|
</div>
|
|
@@ -852,7 +852,7 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
852
852
|
res.once('finish', markFinished);
|
|
853
853
|
res.once('close', abortStreaming);
|
|
854
854
|
try {
|
|
855
|
-
await withLbugDb(lbugPath, async () => streamGraphNdjson(res, includeContent, abortController.signal));
|
|
855
|
+
await withLbugDb(lbugPath, async () => streamGraphNdjson(res, includeContent, abortController.signal), { readOnly: true });
|
|
856
856
|
if (!abortController.signal.aborted && !res.writableEnded) {
|
|
857
857
|
res.end();
|
|
858
858
|
}
|
|
@@ -864,7 +864,9 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
864
864
|
}
|
|
865
865
|
return;
|
|
866
866
|
}
|
|
867
|
-
const graph = await withLbugDb(lbugPath, async () => buildGraph(includeContent)
|
|
867
|
+
const graph = await withLbugDb(lbugPath, async () => buildGraph(includeContent), {
|
|
868
|
+
readOnly: true,
|
|
869
|
+
});
|
|
868
870
|
res.json(graph);
|
|
869
871
|
}
|
|
870
872
|
catch (err) {
|
|
@@ -904,7 +906,7 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
904
906
|
return;
|
|
905
907
|
}
|
|
906
908
|
const lbugPath = path.join(entry.storagePath, 'lbug');
|
|
907
|
-
const result = await withLbugDb(lbugPath, () => executeQuery(cypher));
|
|
909
|
+
const result = await withLbugDb(lbugPath, () => executeQuery(cypher), { readOnly: true });
|
|
908
910
|
res.json({ result });
|
|
909
911
|
}
|
|
910
912
|
catch (err) {
|
|
@@ -1031,7 +1033,7 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1031
1033
|
return { ...r, ...enrichment };
|
|
1032
1034
|
}));
|
|
1033
1035
|
return { searchResults: enriched, ftsAvailable };
|
|
1034
|
-
});
|
|
1036
|
+
}, { readOnly: true });
|
|
1035
1037
|
const response = { results: results.searchResults ?? results };
|
|
1036
1038
|
if (results.ftsAvailable === false) {
|
|
1037
1039
|
response.warning =
|
|
@@ -1098,7 +1100,7 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1098
1100
|
const results = [];
|
|
1099
1101
|
const repoRoot = path.resolve(entry.path);
|
|
1100
1102
|
const lbugPath = path.join(entry.storagePath, 'lbug');
|
|
1101
|
-
const fileRows = await withLbugDb(lbugPath, () => executeQuery(`MATCH (n:File) WHERE n.content IS NOT NULL RETURN n.filePath AS filePath`));
|
|
1103
|
+
const fileRows = await withLbugDb(lbugPath, () => executeQuery(`MATCH (n:File) WHERE n.content IS NOT NULL RETURN n.filePath AS filePath`), { readOnly: true });
|
|
1102
1104
|
for (const row of fileRows) {
|
|
1103
1105
|
if (results.length >= limit)
|
|
1104
1106
|
break;
|
|
@@ -1139,7 +1141,9 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1139
1141
|
res.json(result);
|
|
1140
1142
|
}
|
|
1141
1143
|
catch (err) {
|
|
1142
|
-
res
|
|
1144
|
+
res
|
|
1145
|
+
.status(statusFromError(err))
|
|
1146
|
+
.json({ error: err.message || 'Failed to query processes' });
|
|
1143
1147
|
}
|
|
1144
1148
|
},
|
|
1145
1149
|
},
|
|
@@ -1176,7 +1180,9 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1176
1180
|
res.json(result);
|
|
1177
1181
|
}
|
|
1178
1182
|
catch (err) {
|
|
1179
|
-
res
|
|
1183
|
+
res
|
|
1184
|
+
.status(statusFromError(err))
|
|
1185
|
+
.json({ error: err.message || 'Failed to query clusters' });
|
|
1180
1186
|
}
|
|
1181
1187
|
},
|
|
1182
1188
|
},
|
|
@@ -1276,7 +1282,9 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1276
1282
|
: [];
|
|
1277
1283
|
const forkWorker = () => {
|
|
1278
1284
|
const currentJob = jobManager.getJob(job.id);
|
|
1279
|
-
if (!currentJob ||
|
|
1285
|
+
if (!currentJob ||
|
|
1286
|
+
currentJob.status === 'complete' ||
|
|
1287
|
+
currentJob.status === 'failed')
|
|
1280
1288
|
return;
|
|
1281
1289
|
const child = fork(workerPath, [], {
|
|
1282
1290
|
execArgv: [...tsxHookArgs, '--max-old-space-size=8192'],
|
|
@@ -1451,7 +1459,11 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1451
1459
|
embedJobManager.updateJob(job.id, {
|
|
1452
1460
|
repoName: entry.name,
|
|
1453
1461
|
status: 'analyzing',
|
|
1454
|
-
progress: {
|
|
1462
|
+
progress: {
|
|
1463
|
+
phase: 'analyzing',
|
|
1464
|
+
percent: 0,
|
|
1465
|
+
message: 'Starting embedding generation...',
|
|
1466
|
+
},
|
|
1455
1467
|
});
|
|
1456
1468
|
const EMBED_TIMEOUT_MS = 30 * 60 * 1000;
|
|
1457
1469
|
const embedTimeout = setTimeout(() => {
|
|
@@ -1477,7 +1489,11 @@ export const createServer = async (port, host = '127.0.0.1') => {
|
|
|
1477
1489
|
await runEmbeddingPipeline(executeQuery, executeWithReusedStatement, (p) => {
|
|
1478
1490
|
embedJobManager.updateJob(job.id, {
|
|
1479
1491
|
progress: {
|
|
1480
|
-
phase: p.phase === 'ready'
|
|
1492
|
+
phase: p.phase === 'ready'
|
|
1493
|
+
? 'complete'
|
|
1494
|
+
: p.phase === 'error'
|
|
1495
|
+
? 'failed'
|
|
1496
|
+
: p.phase,
|
|
1481
1497
|
percent: p.percent,
|
|
1482
1498
|
message: p.phase === 'loading-model'
|
|
1483
1499
|
? 'Loading embedding model...'
|
package/package.json
CHANGED
package/scripts/build.js
CHANGED
|
@@ -25,7 +25,7 @@ const tscCmd = path.resolve(
|
|
|
25
25
|
ROOT,
|
|
26
26
|
'node_modules',
|
|
27
27
|
'.bin',
|
|
28
|
-
process.platform === 'win32' ? 'tsc.cmd' : 'tsc'
|
|
28
|
+
process.platform === 'win32' ? 'tsc.cmd' : 'tsc',
|
|
29
29
|
);
|
|
30
30
|
execSync(tscCmd, { cwd: SHARED_ROOT, stdio: 'inherit', timeout: 120_000 });
|
|
31
31
|
|
|
@@ -22,9 +22,7 @@ async function installDuckDbExtension(extensionName) {
|
|
|
22
22
|
const require = createRequire(import.meta.url);
|
|
23
23
|
const lbugModule = require('@ladybugdb/core');
|
|
24
24
|
const lbug = lbugModule.default ?? lbugModule;
|
|
25
|
-
const lbugMaxDbSize = parseLbugMaxDbSize(
|
|
26
|
-
process.argv[3] ?? process.env.ARC_LBUG_MAX_DB_SIZE,
|
|
27
|
-
);
|
|
25
|
+
const lbugMaxDbSize = parseLbugMaxDbSize(process.argv[3] ?? process.env.ARC_LBUG_MAX_DB_SIZE);
|
|
28
26
|
|
|
29
27
|
const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), 'arc-ext-install-'));
|
|
30
28
|
const dbPath = path.join(tmpDir, 'install.lbug');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{hn as e}from"./index-C_U4LtVd.js";var t=e(((e,t)=>{t.exports={}}));export default t();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/__vite-browser-external-
|
|
2
|
-
import{dn as e,fn as t,gn as n,hn as r,un as i}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/__vite-browser-external-ZHh0aOLt.js","assets/index-C_U4LtVd.js","assets/index-ChWMOJVF.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{dn as e,fn as t,gn as n,hn as r,un as i}from"./index-C_U4LtVd.js";import{buildDynamicSystemPrompt as a}from"./context-builder-BREgwful.js";var o=Object.defineProperty,s=(e,t)=>{let n={};for(var r in e)o(n,r,{get:e[r],enumerable:!0});return t||o(n,Symbol.toStringTag,{value:`Module`}),n};function c(e){let t=Symbol.for(e);return{brand(n,r){let i=r?Symbol.for(`${e}.${r}`):t;class a extends n{[i]=!0;constructor(...e){super(...e)}static isInstance(e){return typeof e==`object`&&!!e&&i in e&&e[i]===!0}}return Object.defineProperty(a,"name",{value:n.name}),a},sub(t){return c(`${e}.${t}`)},isInstance(e){return typeof e==`object`&&!!e&&t in e&&e[t]===!0}}}var l=c(`langchain`),u=s({ContextOverflowError:()=>h,LangChainError:()=>p,ModelAbortError:()=>m,addLangChainErrorFields:()=>d,ns:()=>f});function d(e,t){return e.lc_error_code=t,e.message=`${e.message}\n\nTroubleshooting URL: https://docs.langchain.com/oss/javascript/langchain/errors/${t}/\n`,e}var f=l.sub(`error`),p=class extends f.brand(Error){name=`LangChainError`;constructor(e){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},m=class extends f.brand(p,`model-abort`){name=`ModelAbortError`;partialOutput;constructor(e,t){super(e),this.partialOutput=t}},h=class e extends f.brand(p,`context-overflow`){name=`ContextOverflowError`;cause;constructor(e){super(e??`Input exceeded the model's context window.`)}static fromError(t){let n=new e(t.message);return n.cause=t,n}};function g(e){return!!(e&&typeof e==`object`&&`type`in e&&e.type===`tool_call`)}function _(e){return!!(e&&typeof e==`object`&&`toolCall`in e&&e.toolCall!=null&&typeof e.toolCall==`object`&&`id`in e.toolCall&&typeof e.toolCall.id==`string`)}var v=class extends Error{output;constructor(e,t){super(e),this.output=t}};function y(e,t=x){e=e.trim();let n=e.indexOf("```");if(n===-1)return t(e);let r=e.substring(n+3);r.startsWith(`json
|
|
3
3
|
`)?r=r.substring(5):r.startsWith(`json`)?r=r.substring(4):r.startsWith(`
|
|
4
4
|
`)&&(r=r.substring(1));let i=r.indexOf("```"),a=r;return i!==-1&&(a=r.substring(0,i)),t(a.trim())}function b(e){try{return JSON.parse(e)}catch{}let t=e.trim();if(t.length===0)throw Error(`Unexpected end of JSON input`);let n=0;function r(){for(;n<t.length&&/\s/.test(t[n]);)n+=1}function i(){if(t[n]!==`"`)throw Error(`Expected '"' at position ${n}, got '${t[n]}'`);n+=1;let e=``,r=!1;for(;n<t.length;){let i=t[n];if(r){if(i===`n`)e+=`
|
|
5
5
|
`;else if(i===`t`)e+=` `;else if(i===`r`)e+=`\r`;else if(i===`\\`)e+=`\\`;else if(i===`"`)e+=`"`;else if(i===`b`)e+=`\b`;else if(i===`f`)e+=`\f`;else if(i===`/`)e+=`/`;else if(i===`u`){let r=t.substring(n+1,n+5);if(/^[0-9A-Fa-f]{0,4}$/.test(r))r.length===4?e+=String.fromCharCode(Number.parseInt(r,16)):e+=`u${r}`,n+=r.length;else throw Error(`Invalid unicode escape sequence '\\u${r}' at position ${n}`)}else throw Error(`Invalid escape sequence '\\${i}' at position ${n}`);r=!1}else if(i===`\\`)r=!0;else if(i===`"`)return n+=1,e;else e+=i;n+=1}return r&&(e+=`\\`),e}function a(){let e=n,r=``;if(t[n]===`-`&&(r+=`-`,n+=1),n<t.length&&t[n]===`0`&&(r+=`0`,n+=1,t[n]>=`0`&&t[n]<=`9`))throw Error(`Invalid number at position ${e}`);if(n<t.length&&t[n]>=`1`&&t[n]<=`9`)for(;n<t.length&&t[n]>=`0`&&t[n]<=`9`;)r+=t[n],n+=1;if(n<t.length&&t[n]===`.`)for(r+=`.`,n+=1;n<t.length&&t[n]>=`0`&&t[n]<=`9`;)r+=t[n],n+=1;if(n<t.length&&(t[n]===`e`||t[n]===`E`))for(r+=t[n],n+=1,n<t.length&&(t[n]===`+`||t[n]===`-`)&&(r+=t[n],n+=1);n<t.length&&t[n]>=`0`&&t[n]<=`9`;)r+=t[n],n+=1;if(r===`-`)return-0;let i=Number.parseFloat(r);if(Number.isNaN(i))throw n=e,Error(`Invalid number '${r}' at position ${e}`);return i}function o(){if(r(),n>=t.length)throw Error(`Unexpected end of input at position ${n}`);let e=t[n];if(e===`{`)return c();if(e===`[`)return s();if(e===`"`)return i();if(`null`.startsWith(t.substring(n,n+4)))return n+=Math.min(4,t.length-n),null;if(`true`.startsWith(t.substring(n,n+4)))return n+=Math.min(4,t.length-n),!0;if(`false`.startsWith(t.substring(n,n+5)))return n+=Math.min(5,t.length-n),!1;if(e===`-`||e>=`0`&&e<=`9`)return a();throw Error(`Unexpected character '${e}' at position ${n}`)}function s(){if(t[n]!==`[`)throw Error(`Expected '[' at position ${n}, got '${t[n]}'`);let e=[];if(n+=1,r(),n>=t.length)return e;if(t[n]===`]`)return n+=1,e;for(;n<t.length;){if(r(),n>=t.length||(e.push(o()),r(),n>=t.length))return e;if(t[n]===`]`)return n+=1,e;if(t[n]===`,`){n+=1;continue}throw Error(`Expected ',' or ']' at position ${n}, got '${t[n]}'`)}return e}function c(){if(t[n]!==`{`)throw Error(`Expected '{' at position ${n}, got '${t[n]}'`);let e={};if(n+=1,r(),n>=t.length)return e;if(t[n]===`}`)return n+=1,e;for(;n<t.length;){if(r(),n>=t.length)return e;let a=i();if(r(),n>=t.length)return e;if(t[n]!==`:`)throw Error(`Expected ':' at position ${n}, got '${t[n]}'`);if(n+=1,r(),n>=t.length||(e[a]=o(),r(),n>=t.length))return e;if(t[n]===`}`)return n+=1,e;if(t[n]===`,`){n+=1;continue}throw Error(`Expected ',' or '}' at position ${n}, got '${t[n]}'`)}return e}let l=o();if(r(),n<t.length)throw Error(`Unexpected character '${t[n]}' at position ${n}`);return l}function x(e){try{return e===void 0?null:b(e)}catch{return null}}var ee=/([A-Z]+)([A-Z][a-z0-9]+)/g,te=/([a-z0-9])([A-Z])/g,S=/[-_\s]+/g;function ne(e){return e.replace(ee,`$1_$2`).replace(te,`$1_$2`).replace(S,`_`).toLowerCase()}function re(e){let t=e.trim();return/[-_\s]/.test(t)?t.replace(S,`_`).toLowerCase().replace(/_+([a-z0-9])/g,(e,t)=>t.toUpperCase()):t}function ie(e,t){return t?.[e]||ne(e)}function ae(e,t){return t?.[e]||re(e)}function oe(e,t,n){let r={};for(let i in e)Object.hasOwn(e,i)&&(r[t(i,n)]=e[i]);return r}var se=`__lc_escaped__`;function ce(e){return`lc`in e||Object.keys(e).length===1&&`__lc_escaped__`in e}function C(e){return{[se]:e}}function le(e){return Object.keys(e).length===1&&`__lc_escaped__`in e}function ue(e){return typeof e==`object`&&!!e&&`lc_serializable`in e&&typeof e.toJSON==`function`}function de(e){let t;return t=typeof e==`object`&&e?`lc_id`in e&&Array.isArray(e.lc_id)?e.lc_id:[e.constructor?.name??`Object`]:[typeof e],{lc:1,type:`not_implemented`,id:t}}function fe(e,t=new WeakSet){if(typeof e==`object`&&e&&!Array.isArray(e)){if(t.has(e))return de(e);if(ue(e))return e;t.add(e);let n=e;if(ce(n))return t.delete(e),C(n);let r={};for(let[e,i]of Object.entries(n))r[e]=fe(i,t);return t.delete(e),r}return Array.isArray(e)?e.map(e=>fe(e,t)):e}function pe(e){if(typeof e==`object`&&e&&!Array.isArray(e)){let t=e;if(le(t))return t[se];let n={};for(let[e,r]of Object.entries(t))n[e]=pe(r);return n}return Array.isArray(e)?e.map(e=>pe(e)):e}var me=s({Serializable:()=>ve,get_lc_unique_name:()=>_e});function he(e){return Array.isArray(e)?[...e]:{...e}}function ge(e,t){let n=he(e);for(let[e,r]of Object.entries(t)){let[t,...i]=e.split(`.`).reverse(),a=n;for(let e of i.reverse()){if(a[e]===void 0)break;a[e]=he(a[e]),a=a[e]}a[t]!==void 0&&(a[t]={lc:1,type:`secret`,id:[r]})}return n}function _e(e){let t=Object.getPrototypeOf(e);return typeof e.lc_name==`function`&&(typeof t.lc_name!=`function`||e.lc_name()!==t.lc_name())?e.lc_name():e.name}var ve=class e{lc_serializable=!1;lc_kwargs;static lc_name(){return this.name}get lc_id(){return[...this.lc_namespace,_e(this.constructor)]}get lc_secrets(){}get lc_attributes(){}get lc_aliases(){}get lc_serializable_keys(){}constructor(e,...t){this.lc_serializable_keys===void 0?this.lc_kwargs=e??{}:this.lc_kwargs=Object.fromEntries(Object.entries(e||{}).filter(([e])=>this.lc_serializable_keys?.includes(e)))}toJSON(){if(!this.lc_serializable||this.lc_kwargs instanceof e||typeof this.lc_kwargs!=`object`||Array.isArray(this.lc_kwargs))return this.toJSONNotImplemented();let t={},n={},r=Object.keys(this.lc_kwargs).reduce((e,t)=>(e[t]=t in this?this[t]:this.lc_kwargs[t],e),{});for(let e=Object.getPrototypeOf(this);e;e=Object.getPrototypeOf(e))Object.assign(t,Reflect.get(e,`lc_aliases`,this)),Object.assign(n,Reflect.get(e,`lc_secrets`,this)),Object.assign(r,Reflect.get(e,`lc_attributes`,this));Object.keys(n).forEach(e=>{let t=this,n=r,[i,...a]=e.split(`.`).reverse();for(let e of a.reverse()){if(!(e in t)||t[e]===void 0)return;(!(e in n)||n[e]===void 0)&&(typeof t[e]==`object`&&t[e]!=null?n[e]={}:Array.isArray(t[e])&&(n[e]=[])),t=t[e],n=n[e]}i in t&&t[i]!==void 0&&(n[i]=n[i]||t[i])});let i={},a=new WeakSet;a.add(this);for(let[e,t]of Object.entries(r))i[e]=fe(t,a);let o=oe(Object.keys(n).length?ge(i,n):i,ie,t);return{lc:1,type:`constructor`,id:this.lc_id,kwargs:o}}toJSONNotImplemented(){return{lc:1,type:`not_implemented`,id:this.lc_id}}};function ye(e){return typeof e==`object`&&!!e&&`type`in e&&typeof e.type==`string`&&`source_type`in e&&(e.source_type===`url`||e.source_type===`base64`||e.source_type===`text`||e.source_type===`id`)}function be(e){return ye(e)&&e.source_type===`url`&&`url`in e&&typeof e.url==`string`}function xe(e){return ye(e)&&e.source_type===`base64`&&`data`in e&&typeof e.data==`string`}function Se(e){return ye(e)&&e.source_type===`text`&&`text`in e&&typeof e.text==`string`}function Ce(e){return ye(e)&&e.source_type===`id`&&`id`in e&&typeof e.id==`string`}function we(e){if(ye(e)){if(e.source_type===`url`)return{type:`image_url`,image_url:{url:e.url}};if(e.source_type===`base64`){if(!e.mime_type)throw Error(`mime_type key is required for base64 data.`);return{type:`image_url`,image_url:{url:`data:${e.mime_type};base64,${e.data}`}}}}throw Error(`Unsupported source type. Only 'url' and 'base64' are supported.`)}function Te(e){let t=e.split(`;`)[0].split(`/`);if(t.length!==2)throw Error(`Invalid mime type: "${e}" - does not match type/subtype format.`);let n=t[0].trim(),r=t[1].trim();if(n===``||r===``)throw Error(`Invalid mime type: "${e}" - type or subtype is empty.`);let i={};for(let t of e.split(`;`).slice(1)){let n=t.split(`=`);if(n.length!==2)throw Error(`Invalid parameter syntax in mime type: "${e}".`);let r=n[0].trim(),a=n[1].trim();if(r===``)throw Error(`Invalid parameter syntax in mime type: "${e}".`);i[r]=a}return{type:n,subtype:r,parameters:i}}function Ee({dataUrl:e,asTypedArray:t=!1}){let n=e.match(/^data:(\w+\/\w+);base64,([A-Za-z0-9+/]+=*)$/),r;if(n){r=n[1].toLowerCase();let e=t?Uint8Array.from(atob(n[2]),e=>e.charCodeAt(0)):n[2];return{mime_type:r,data:e}}}function De(e,t){if(e.type===`text`){if(!t.fromStandardTextBlock)throw Error(`Converter for ${t.providerName} does not implement \`fromStandardTextBlock\` method.`);return t.fromStandardTextBlock(e)}if(e.type===`image`){if(!t.fromStandardImageBlock)throw Error(`Converter for ${t.providerName} does not implement \`fromStandardImageBlock\` method.`);return t.fromStandardImageBlock(e)}if(e.type===`audio`){if(!t.fromStandardAudioBlock)throw Error(`Converter for ${t.providerName} does not implement \`fromStandardAudioBlock\` method.`);return t.fromStandardAudioBlock(e)}if(e.type===`file`){if(!t.fromStandardFileBlock)throw Error(`Converter for ${t.providerName} does not implement \`fromStandardFileBlock\` method.`);return t.fromStandardFileBlock(e)}throw Error(`Unable to convert content block type '${e.type}' to provider-specific format: not recognized.`)}function w(e,t){return T(e)&&e.type===t}function T(e){return typeof e==`object`&&!!e}function Oe(e){return Array.isArray(e)}function E(e){return typeof e==`string`}function D(e){return typeof e==`number`}function ke(e){return e instanceof Uint8Array}function Ae(e){try{return JSON.parse(e)}catch{return}}var je=e=>e();function Me(e){if(e.type===`char_location`&&E(e.document_title)&&D(e.start_char_index)&&D(e.end_char_index)&&E(e.cited_text)){let{document_title:t,start_char_index:n,end_char_index:r,cited_text:i,...a}=e;return{...a,type:`citation`,source:`char`,title:t??void 0,startIndex:n,endIndex:r,citedText:i}}if(e.type===`page_location`&&E(e.document_title)&&D(e.start_page_number)&&D(e.end_page_number)&&E(e.cited_text)){let{document_title:t,start_page_number:n,end_page_number:r,cited_text:i,...a}=e;return{...a,type:`citation`,source:`page`,title:t??void 0,startIndex:n,endIndex:r,citedText:i}}if(e.type===`content_block_location`&&E(e.document_title)&&D(e.start_block_index)&&D(e.end_block_index)&&E(e.cited_text)){let{document_title:t,start_block_index:n,end_block_index:r,cited_text:i,...a}=e;return{...a,type:`citation`,source:`block`,title:t??void 0,startIndex:n,endIndex:r,citedText:i}}if(e.type===`web_search_result_location`&&E(e.url)&&E(e.title)&&E(e.encrypted_index)&&E(e.cited_text)){let{url:t,title:n,encrypted_index:r,cited_text:i,...a}=e;return{...a,type:`citation`,source:`url`,url:t,title:n,startIndex:Number(r),endIndex:Number(r),citedText:i}}if(e.type===`search_result_location`&&E(e.source)&&E(e.title)&&D(e.start_block_index)&&D(e.end_block_index)&&E(e.cited_text)){let{source:t,title:n,start_block_index:r,end_block_index:i,cited_text:a,...o}=e;return{...o,type:`citation`,source:`search`,url:t,title:n??void 0,startIndex:r,endIndex:i,citedText:a}}}function Ne(e){if(w(e,`document`)&&T(e.source)&&`type`in e.source){if(e.source.type===`base64`&&E(e.source.media_type)&&E(e.source.data))return{type:`file`,mimeType:e.source.media_type,data:e.source.data};if(e.source.type===`url`&&E(e.source.url))return{type:`file`,url:e.source.url};if(e.source.type===`file`&&E(e.source.file_id))return{type:`file`,fileId:e.source.file_id};if(e.source.type===`text`&&E(e.source.data))return{type:`file`,mimeType:String(e.source.media_type??`text/plain`),data:e.source.data}}else if(w(e,`image`)&&T(e.source)&&`type`in e.source){if(e.source.type===`base64`&&E(e.source.media_type)&&E(e.source.data))return{type:`image`,mimeType:e.source.media_type,data:e.source.data};if(e.source.type===`url`&&E(e.source.url))return{type:`image`,url:e.source.url};if(e.source.type===`file`&&E(e.source.file_id))return{type:`image`,fileId:e.source.file_id}}}function Pe(e){function*t(){for(let t of e){let e=Ne(t);e?yield e:yield t}}return Array.from(t())}function Fe(e){function*t(){let t=typeof e.content==`string`?[{type:`text`,text:e.content}]:e.content;for(let n of t){if(w(n,`text`)&&E(n.text)){let{text:e,citations:t,...r}=n;if(Oe(t)&&t.length){let n=t.reduce((e,t)=>{let n=Me(t);return n?[...e,n]:e},[]);yield{...r,type:`text`,text:e,annotations:n};continue}else{yield{...r,type:`text`,text:e};continue}}else if(w(n,`thinking`)&&E(n.thinking)){let{thinking:e,signature:t,...r}=n;yield{...r,type:`reasoning`,reasoning:e,signature:t};continue}else if(w(n,`redacted_thinking`)){yield{type:`non_standard`,value:n};continue}else if(w(n,`tool_use`)&&E(n.name)&&E(n.id)){yield{type:`tool_call`,id:n.id,name:n.name,args:n.input};continue}else if(w(n,`input_json_delta`)){if(Le(e)&&e.tool_call_chunks?.length){let t=e.tool_call_chunks[0];yield{type:`tool_call_chunk`,id:t.id,name:t.name,args:t.args,index:t.index};continue}}else if(w(n,`server_tool_use`)&&E(n.name)&&E(n.id)){let{name:e,id:t}=n;if(e===`web_search`){yield{id:t,type:`server_tool_call`,name:`web_search`,args:{query:je(()=>{if(typeof n.input==`string`)return n.input;if(T(n.input)&&E(n.input.query))return n.input.query;if(E(n.partial_json)){let e=Ae(n.partial_json);if(e?.query)return e.query}return``})}};continue}else if(n.name===`code_execution`){yield{id:t,type:`server_tool_call`,name:`code_execution`,args:{code:je(()=>{if(typeof n.input==`string`)return n.input;if(T(n.input)&&E(n.input.code))return n.input.code;if(E(n.partial_json)){let e=Ae(n.partial_json);if(e?.code)return e.code}return``})}};continue}}else if(w(n,`web_search_tool_result`)&&E(n.tool_use_id)&&Oe(n.content)){let{content:e,tool_use_id:t}=n;yield{type:`server_tool_call_result`,name:`web_search`,toolCallId:t,status:`success`,output:{urls:e.reduce((e,t)=>w(t,`web_search_result`)?[...e,t.url]:e,[])}};continue}else if(w(n,`code_execution_tool_result`)&&E(n.tool_use_id)&&T(n.content)){yield{type:`server_tool_call_result`,name:`code_execution`,toolCallId:n.tool_use_id,status:`success`,output:n.content};continue}else if(w(n,`mcp_tool_use`)){yield{id:n.id,type:`server_tool_call`,name:`mcp_tool_use`,args:n.input};continue}else if(w(n,`mcp_tool_result`)&&E(n.tool_use_id)&&T(n.content)){yield{type:`server_tool_call_result`,name:`mcp_tool_use`,toolCallId:n.tool_use_id,status:`success`,output:n.content};continue}else if(w(n,`container_upload`)){yield{type:`server_tool_call`,name:`container_upload`,args:n.input};continue}else if(w(n,`search_result`)){yield{id:n.id,type:`non_standard`,value:n};continue}else if(w(n,`tool_result`)){yield{id:n.id,type:`non_standard`,value:n};continue}else{let e=Ne(n);if(e){yield e;continue}}yield{type:`non_standard`,value:n}}}return Array.from(t())}var Ie={translateContent:Fe,translateContentChunk:Fe};function Le(e){return typeof e?._getType==`function`&&typeof e.concat==`function`&&e._getType()===`ai`}function Re(e){return be(e)?{type:e.type,mimeType:e.mime_type,url:e.url,metadata:e.metadata}:xe(e)?{type:e.type,mimeType:e.mime_type??`application/octet-stream`,data:e.data,metadata:e.metadata}:Ce(e)?{type:e.type,mimeType:e.mime_type,fileId:e.id,metadata:e.metadata}:e}function ze(e){return e.map(Re)}function Be(e){return!!(w(e,`image_url`)&&T(e.image_url)||w(e,`input_audio`)&&T(e.input_audio)||w(e,`file`)&&T(e.file))}function Ve(e){if(w(e,`image_url`)&&T(e.image_url)&&E(e.image_url.url)){let t=Ee({dataUrl:e.image_url.url});return t?{type:`image`,mimeType:t.mime_type,data:t.data}:{type:`image`,url:e.image_url.url}}else if(w(e,`input_audio`)&&T(e.input_audio)&&E(e.input_audio.data)&&E(e.input_audio.format))return{type:`audio`,data:e.input_audio.data,mimeType:`audio/${e.input_audio.format}`};else if(w(e,`file`)&&T(e.file)&&E(e.file.data)){let t=Ee({dataUrl:e.file.data});if(t)return{type:`file`,data:t.data,mimeType:t.mime_type};if(E(e.file.file_id))return{type:`file`,fileId:e.file.file_id}}return e}function He(e){let t=[];typeof e.content==`string`?e.content.length>0&&t.push({type:`text`,text:e.content}):t.push(...We(e.content));for(let n of e.tool_calls??[])t.push({type:`tool_call`,id:n.id,name:n.name,args:n.args});return t}function Ue(e){let t=[];typeof e.content==`string`?e.content.length>0&&t.push({type:`text`,text:e.content}):t.push(...We(e.content));for(let n of e.tool_calls??[])t.push({type:`tool_call`,id:n.id,name:n.name,args:n.args});return t}function We(e){let t=[];for(let n of e)Be(n)?t.push(Ve(n)):t.push(n);return t}function Ge(e){if(e.type===`url_citation`){let{url:t,title:n,start_index:r,end_index:i}=e;return{type:`citation`,url:t,title:n,startIndex:r,endIndex:i}}if(e.type===`file_citation`){let{file_id:t,filename:n,index:r}=e;return{type:`citation`,title:n,startIndex:r,endIndex:r,fileId:t}}return e}function Ke(e){function*t(){T(e.additional_kwargs?.reasoning)&&Oe(e.additional_kwargs.reasoning.summary)&&(yield{type:`reasoning`,reasoning:e.additional_kwargs.reasoning.summary.reduce((e,t)=>T(t)&&E(t.text)?`${e}${t.text}`:e,``)});let t=typeof e.content==`string`?[{type:`text`,text:e.content}]:e.content;for(let e of t)if(w(e,`text`)){let{text:t,annotations:n,phase:r,extras:i,...a}=e,o=T(i)?{...i}:{};E(r)&&(o.phase=r);let s=Object.keys(o).length>0?{extras:o}:{};Array.isArray(n)?yield{...a,...s,type:`text`,text:String(t),annotations:n.map(Ge)}:yield{...a,...s,type:`text`,text:String(t)}}for(let t of e.tool_calls??[])yield{type:`tool_call`,id:t.id,name:t.name,args:t.args};if(T(e.additional_kwargs)&&Oe(e.additional_kwargs.tool_outputs))for(let t of e.additional_kwargs.tool_outputs){if(w(t,`web_search_call`)){let e={};if(T(t.action)&&E(t.action.query)&&(e.query=t.action.query),yield{id:t.id,type:`server_tool_call`,name:`web_search`,args:e},t.status===`completed`||t.status===`failed`){let e={};T(t.action)&&(e.action=t.action),yield{type:`server_tool_call_result`,toolCallId:E(t.id)?t.id:``,status:t.status===`completed`?`success`:`error`,output:e}}continue}else if(w(t,`file_search_call`)){yield{id:t.id,type:`server_tool_call`,name:`file_search`,args:{queries:Oe(t.queries)?t.queries:[]}},(t.status===`completed`||t.status===`failed`)&&(yield{type:`server_tool_call_result`,toolCallId:E(t.id)?t.id:``,status:t.status===`completed`?`success`:`error`,output:Oe(t.results)?{results:t.results}:{}});continue}else if(w(t,`computer_call`)){yield{type:`non_standard`,value:t};continue}else if(w(t,`code_interpreter_call`)){if(E(t.code)&&(yield{id:t.id,type:`server_tool_call`,name:`code_interpreter`,args:{code:t.code}}),Oe(t.outputs)){let e=je(()=>{if(t.status!==`in_progress`){if(t.status===`completed`)return 0;if(t.status===`incomplete`)return 127;if(t.status!==`interpreting`&&t.status===`failed`)return 1}});for(let n of t.outputs)if(w(n,`logs`)){yield{type:`server_tool_call_result`,toolCallId:t.id??``,status:`success`,output:{type:`code_interpreter_output`,returnCode:e??0,stderr:[0,void 0].includes(e)?void 0:String(n.logs),stdout:[0,void 0].includes(e)?String(n.logs):void 0}};continue}}continue}else if(w(t,`mcp_call`)){yield{id:t.id,type:`server_tool_call`,name:`mcp_call`,args:t.input};continue}else if(w(t,`mcp_list_tools`)){yield{id:t.id,type:`server_tool_call`,name:`mcp_list_tools`,args:t.input};continue}else if(w(t,`mcp_approval_request`)){yield{type:`non_standard`,value:t};continue}else if(w(t,`tool_search_call`)){let e={};T(t.arguments)&&Object.assign(e,t.arguments);let n={};E(t.execution)&&(n.execution=t.execution),E(t.status)&&(n.status=t.status),E(t.call_id)&&(n.call_id=t.call_id),yield{id:E(t.id)?t.id:``,type:`server_tool_call`,name:`tool_search`,args:e,...Object.keys(n).length>0?{extras:n}:{}};continue}else if(w(t,`tool_search_output`)){let e={name:`tool_search`};E(t.execution)&&(e.execution=t.execution),yield{type:`server_tool_call_result`,toolCallId:E(t.id)?t.id:``,status:t.status===`completed`?`success`:t.status===`failed`?`error`:`success`,output:{tools:Oe(t.tools)?t.tools:[]},extras:e};continue}else if(w(t,`image_generation_call`)){E(t.result)&&(yield{type:`image`,mimeType:`image/png`,data:t.result,id:E(t.id)?t.id:void 0,metadata:{status:E(t.status)?t.status:void 0}}),yield{type:`non_standard`,value:t};continue}T(t)&&(yield{type:`non_standard`,value:t})}}return Array.from(t())}function qe(e){function*t(){yield*Ke(e);for(let t of e.tool_call_chunks??[])yield{type:`tool_call_chunk`,id:t.id,name:t.name,args:t.args}}return Array.from(t())}var Je={translateContent:e=>typeof e.content==`string`?He(e):Ke(e),translateContentChunk:e=>typeof e.content==`string`?Ue(e):qe(e)};function Ye(e){return typeof e==`object`&&!!e&&`type`in e&&`content`in e&&(typeof e.content==`string`||Array.isArray(e.content))}function Xe(e,t=`pretty`){return t===`pretty`?Ze(e):JSON.stringify(e)}function Ze(e){let t=[],n=` ${e.type.charAt(0).toUpperCase()+e.type.slice(1)} Message `,r=Math.floor((80-n.length)/2),i=`=`.repeat(r),a=n.length%2==0?i:`${i}=`;if(t.push(`${i}${n}${a}`),e.type===`ai`){let n=e;if(n.tool_calls&&n.tool_calls.length>0){t.push(`Tool Calls:`);for(let e of n.tool_calls){t.push(` ${e.name} (${e.id})`),t.push(` Call ID: ${e.id}`),t.push(` Args:`);for(let[n,r]of Object.entries(e.args))t.push(` ${n}: ${typeof r==`object`?JSON.stringify(r):r}`)}}}if(e.type===`tool`){let n=e;n.name&&t.push(`Name: ${n.name}`)}return typeof e.content==`string`&&e.content.trim()&&(t.length>1&&t.push(``),t.push(e.content)),t.join(`
|
|
@@ -177,7 +177,7 @@ https://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety
|
|
|
177
177
|
|
|
178
178
|
`))}if(n.protocol===`http:`||n.protocol===`https:`)return{type:`url`,url:e};throw Error([`Invalid image URL protocol: ${JSON.stringify(n.protocol)}. Anthropic only supports images as http, https, or base64-encoded data URLs on 'image_url' content blocks.`,`Example: data:image/png;base64,/9j/4AAQSk...`,`Example: https://example.com/image.jpg`].join(`
|
|
179
179
|
|
|
180
|
-
`))}function fq(e){let t=[];for(let n of e)if(n._getType()===`tool`)if(typeof n.content==`string`){let e=t[t.length-1];e?._getType()===`human`&&Array.isArray(e.content)&&`type`in e.content[0]&&e.content[0].type===`tool_result`?e.content.push({type:`tool_result`,content:n.content,tool_use_id:n.tool_call_id}):t.push(new fn({content:[{type:`tool_result`,content:n.content,tool_use_id:n.tool_call_id}]}))}else t.push(new fn({content:[{type:`tool_result`,...n.content==null?{}:{content:hq(n)},tool_use_id:n.tool_call_id}]}));else t.push(n);return t}function pq(e){if(e.id===void 0)throw Error(`Anthropic requires all tool calls to have an "id".`);return{type:`tool_use`,id:e.id,name:e.name,input:e.args}}function*mq(e,t){let n=[`bash_code_execution_tool_result`,`input_json_delta`,`server_tool_use`,`text_editor_code_execution_tool_result`,`tool_result`,`tool_use`,`web_search_result`,`web_search_tool_result`],r=[`text`,`text_delta`];for(let i of e){ye(i)&&(yield De(i,$K));let a=`cache_control`in i?i.cache_control:void 0;if(i.type===`image_url`){let e;typeof i.image_url==`string`?e=dq(i.image_url):typeof i.image_url==`object`&&i.image_url!==null&&`url`in i.image_url&&typeof i.image_url.url==`string`&&(e=dq(i.image_url.url)),e&&(yield{type:`image`,source:e,...a?{cache_control:a}:{}})}else if(QK(i))yield i;else if(i.type===`image`){let e;`url`in i&&typeof i.url==`string`?e=dq(i.url):`data`in i&&(typeof i.data==`string`||i.data instanceof Uint8Array)?e={type:`base64`,media_type:`mimeType`in i&&typeof i.mimeType==`string`?i.mimeType:`image/jpeg`,data:typeof i.data==`string`?i.data:Buffer.from(i.data).toString(`base64`)}:`fileId`in i&&typeof i.fileId==`string`&&(e={type:`file`,file_id:i.fileId}),e&&(yield{type:`image`,source:e,...a?{cache_control:a}:{}})}else if(i.type===`file`){let e;`url`in i&&typeof i.url==`string`?e={type:`url`,url:i.url}:`data`in i&&(typeof i.data==`string`||i.data instanceof Uint8Array)?e={type:`base64`,media_type:`mimeType`in i&&typeof i.mimeType==`string`?i.mimeType:`application/pdf`,data:typeof i.data==`string`?i.data:Buffer.from(i.data).toString(`base64`)}:`fileId`in i&&typeof i.fileId==`string`&&(e={type:`file`,file_id:i.fileId}),e&&(yield{type:`document`,source:e,...a?{cache_control:a}:{}})}else if(i.type===`document`)yield{...i,...a?{cache_control:a}:{}};else if(JK(i))yield{type:`thinking`,thinking:i.thinking,signature:i.signature,...a?{cache_control:a}:{}};else if(YK(i))yield{type:`redacted_thinking`,data:i.data,...a?{cache_control:a}:{}};else if(XK(i))yield{type:`compaction`,content:i.content,...a?{cache_control:a}:{}};else if(ZK(i))yield{type:`search_result`,title:i.title,source:i.source,...`cache_control`in i&&i.cache_control?{cache_control:i.cache_control}:{},...`citations`in i&&i.citations?{citations:i.citations}:{},content:i.content};else if(r.find(e=>e===i.type)&&`text`in i)yield{type:`text`,text:i.text,...a?{cache_control:a}:{},...`citations`in i&&i.citations?{citations:i.citations}:{}};else if(n.find(e=>e===i.type)){let n={...i};if(n.type===`input_json_delta`)continue;if(n.type===`tool_use`&&typeof n.input==`string`){let r=t?.find(e=>e.id===n.id);r?n.input=r.args:n.input=e.filter(e=>e.index===n.index&&e.type===`input_json_delta`&&typeof e.input==`string`).reduce((e,t)=>e+t.input,n.input)}if(`index`in n&&delete n.index,`input`in n&&typeof n.input==`string`)try{n.input=JSON.parse(n.input)}catch{n.input={}}yield{...n,...a?{cache_control:a}:{}}}else i.type===`container_upload`&&(yield{...i,...a?{cache_control:a}:{}})}}function hq(e,t){let{content:n}=e;return typeof n==`string`?n:Array.from(mq(n,t))}function gq(e){let t=fq(e),n;return t.length>0&&t[0]._getType()===`system`&&(n=e[0].content),{messages:_q((n===void 0?t:t.slice(1)).map(e=>{let t;if(e._getType()===`human`)t=`user`;else if(e._getType()===`ai`)t=`assistant`;else if(e._getType()===`tool`)t=`user`;else if(e._getType()===`system`)throw Error(`System messages are only permitted as the first passed message.`);else throw Error(`Message type "${e.type}" is not supported.`);if($t.isInstance(e)&&e.response_metadata?.output_version===`v1`)return{role:t,content:uq(e)};if($t.isInstance(e)&&e.tool_calls?.length){if(typeof e.content==`string`)return e.content===``?{role:t,content:e.tool_calls.map(pq)}:{role:t,content:[{type:`text`,text:e.content},...e.tool_calls.map(pq)]};{let{content:n}=e,r=hq(e,e.tool_calls),i=Array.isArray(r)?r:[{type:`text`,text:r}],a=e.tool_calls.filter(e=>!n.find(t=>(t.type===`tool_use`||t.type===`input_json_delta`||t.type===`server_tool_use`)&&t.id===e.id));return{role:t,content:[...i,...a.map(pq)]}}}else return{role:t,content:hq(e,$t.isInstance(e)?e.tool_calls:void 0)}})),system:n}}function _q(e){if(!e||e.length<=1)return e;let t=[],n=e[0],r=e=>typeof e==`string`?[{type:`text`,text:e}]:e,i=e=>e.role!==`user`||typeof e.content==`string`?!1:Array.isArray(e.content)&&e.content.every(e=>e.type===`tool_result`);for(let a=1;a<e.length;a+=1){let o=e[a];i(n)&&i(o)?n={...n,content:[...r(n.content),...r(o.content)]}:(t.push(n),n=o)}return t.push(n),t}function vq(e){return e.type===`enabled`||e.type===`adaptive`}function yq(e){return e?.startsWith(`claude-opus-4-7`)??!1}function bq(e,t){let n=t&&typeof t==`object`&&`task_budget`in t&&t.task_budget!=null;return yq(e)&&n?[`task-budgets-2026-03-13`]:[]}function xq(e){let{model:t,thinking:n,topK:r,topP:i,temperature:a}=e,o=yq(t);if(o&&n.type===`enabled`)throw Error(`thinking.type="enabled" is not supported for claude-opus-4-7; use thinking.type="adaptive" instead`);if(o&&typeof n==`object`&&n&&`budget_tokens`in n)throw Error(`thinking.budget_tokens is not supported for claude-opus-4-7; use outputConfig.effort instead`);if(o){if(r!==void 0)throw Error(`topK is not supported for claude-opus-4-7; omit topK/topP/temperature or use model prompting instead`);if(i!==void 0&&i!==1)throw Error(`topP is not supported for claude-opus-4-7 when set to non-default values`);if(a!==void 0&&a!==1)throw Error(`temperature is not supported for claude-opus-4-7 when set to non-default values`)}if(vq(n)){if(r!==void 0)throw Error(`topK is not supported when thinking is enabled`);if(i!==void 0)throw Error(`topP is not supported when thinking is enabled`);if(a!==void 0&&a!==1)throw Error(`temperature is not supported when thinking is enabled`)}}function Sq(e){let{model:t,thinking:n,topK:r,topP:i,temperature:a}=e,o={};return vq(n)||yq(t)?o:(a!==void 0&&(o.temperature=a),r!==void 0&&(o.top_k=r),i!==void 0&&(o.top_p=i),o)}function Cq(e,t){let n={model_provider:`anthropic`};if(e.type===`message_start`){let{content:r,usage:i,...a}=e.message,o={};for(let[e,t]of Object.entries(a))t!=null&&(o[e]=t);let{input_tokens:s,output_tokens:c,...l}=i??{},u=Tq(i);return{chunk:new nn({content:t.coerceContentToString?``:[],additional_kwargs:o,usage_metadata:t.streamUsage?u:void 0,response_metadata:{...n,usage:{...l}},id:e.message.id})}}else if(e.type===`message_delta`){let n={input_tokens:0,output_tokens:e.usage.output_tokens,total_tokens:e.usage.output_tokens},r=`context_management`in e.delta?{context_management:e.delta.context_management}:void 0;return{chunk:new nn({content:t.coerceContentToString?``:[],response_metadata:r,additional_kwargs:{...e.delta},usage_metadata:t.streamUsage?n:void 0})}}else if(e.type===`content_block_start`&&[`tool_use`,`document`,`server_tool_use`,`web_search_tool_result`].includes(e.content_block.type)){let r=e.content_block,i;return i=r.type===`tool_use`?[{id:r.id,index:e.index,name:r.name,args:``}]:[],{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block,input:r.type===`server_tool_use`||r.type===`tool_use`?``:void 0}],response_metadata:n,additional_kwargs:{},tool_call_chunks:i})}}else if(e.type===`content_block_delta`&&[`text_delta`,`citations_delta`,`thinking_delta`,`signature_delta`].includes(e.delta.type)){if(t.coerceContentToString&&`text`in e.delta)return{chunk:new nn({content:e.delta.text})};{let t=e.delta;return`citation`in t&&(t.citations=[t.citation],delete t.citation),t.type===`thinking_delta`||t.type===`signature_delta`?{chunk:new nn({content:[{index:e.index,...t,type:`thinking`}],response_metadata:n})}:{chunk:new nn({content:[{index:e.index,...t,type:`text`}],response_metadata:n})}}}else if(e.type===`content_block_delta`&&e.delta.type===`input_json_delta`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,input:e.delta.partial_json,type:e.delta.type}],response_metadata:n,additional_kwargs:{},tool_call_chunks:[{index:e.index,args:e.delta.partial_json}]})};else if(e.type===`content_block_start`&&e.content_block.type===`text`){let r=e.content_block?.text;if(r!==void 0)return{chunk:new nn({content:t.coerceContentToString?r:[{index:e.index,...e.content_block}],response_metadata:n,additional_kwargs:{}})}}else if(e.type===`content_block_start`&&e.content_block.type===`redacted_thinking`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block}],response_metadata:n})};else if(e.type===`content_block_start`&&e.content_block.type===`thinking`){let r=e.content_block.thinking;return{chunk:new nn({content:t.coerceContentToString?r:[{index:e.index,...e.content_block}],response_metadata:n})}}else if(e.type===`content_block_start`&&XK(e.content_block))return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block}],response_metadata:n})};else if(e.type===`content_block_delta`&&e.delta.type===`compaction_delta`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.delta,type:`compaction`}],response_metadata:n})};return null}function wq(e,t){let n={...t,model_provider:`anthropic`},r=t.usage,i=r==null?void 0:Tq(r);return e.length===1&&e[0].type===`text`?[{text:e[0].text,message:new $t({content:e[0].text,additional_kwargs:t,usage_metadata:i,response_metadata:n,id:t.id})}]:[{text:``,message:new $t({content:e,additional_kwargs:t,tool_calls:WK(e),usage_metadata:i,response_metadata:n,id:t.id})}]}function Tq(e){let t=e.cache_creation_input_tokens??0,n=e.cache_read_input_tokens??0,r=e.input_tokens+t+n;return{input_tokens:r,output_tokens:e.output_tokens,total_tokens:r+e.output_tokens,input_token_details:{cache_creation:t,cache_read:n}}}function Eq(e,t){return e.lc_error_code=t,e.message=`${e.message}\n\nTroubleshooting URL: https://docs.langchain.com/oss/javascript/langchain/errors/${t}/\n`,e}function Dq(e){let t;return t=e.status===400&&typeof e.message==`string`&&e.message.includes(`prompt is too long`)?Eq(h.fromError(e),`CONTEXT_OVERFLOW`):e.status===400&&e.message.includes(`tool`)?Eq(e,`INVALID_TOOL_RESULTS`):e.status===401?Eq(e,`MODEL_AUTHENTICATION`):e.status===404?Eq(e,`MODEL_NOT_FOUND`):e.status===429?Eq(e,`MODEL_RATE_LIMIT`):e,t}var Oq={"claude-3-sonnet-20240229":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-haiku-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-5-20251101":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-opus-20240229":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-haiku-20241022":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-sonnet-20241022":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-6":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-0":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-7":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:128e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-haiku-20240307":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-5-20250929":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-haiku-latest":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-1":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-0":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-sonnet-20240620":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-1-20250805":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-haiku-4-5-20251001":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-20250514":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-6":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:128e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-7-sonnet-20250219":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-20250514":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0}};async function*kq(e,t={}){let n=t.streamUsage??!0,r=new Map,i,a=null;for await(let t of e)switch(t.type){case`message_start`:{let{usage:e,id:r,model:a}=t.message;e&&n&&(i=jq(e)),yield{event:`message-start`,id:r,...i?{usage:i}:{}},yield{event:`provider`,provider:`anthropic`,name:`message_start`,payload:{model:a,id:r}};break}case`message_delta`:a=t.delta.stop_reason,n&&t.usage&&(i=i?{...i,output_tokens:i.output_tokens+t.usage.output_tokens,total_tokens:i.input_tokens+i.output_tokens+t.usage.output_tokens}:{input_tokens:0,output_tokens:t.usage.output_tokens,total_tokens:t.usage.output_tokens},yield{event:`usage`,usage:i}),`context_management`in t.delta&&t.delta.context_management&&(yield{event:`provider`,provider:`anthropic`,name:`context_management`,payload:t.delta.context_management});break;case`message_stop`:yield{event:`message-finish`,reason:Aq(a),...i?{usage:i}:{},metadata:{model_provider:`anthropic`}};break;case`content_block_start`:{let{index:e,content_block:n}=t,i=Mq(n,e);r.set(e,{...i}),yield{event:`content-block-start`,index:e,content:i};break}case`content_block_delta`:{let{index:e,delta:n}=t,i=r.get(e);if(!i)break;let{contentDelta:a,accumulated:o}=Nq(i,n);r.set(e,o),yield{event:`content-block-delta`,index:e,delta:a};break}case`content_block_stop`:{let{index:e}=t,n=r.get(e);if(!n)break;yield{event:`content-block-finish`,index:e,content:Pq(n)},r.delete(e);break}default:yield{event:`provider`,provider:`anthropic`,name:t.type,payload:t};break}}function Aq(e){switch(e){case`end_turn`:case`stop_sequence`:return`stop`;case`tool_use`:return`tool_use`;case`max_tokens`:return`length`;default:return`stop`}}function jq(e){let t=e.cache_creation_input_tokens??0,n=e.cache_read_input_tokens??0,r=e.input_tokens+t+n;return{input_tokens:r,output_tokens:e.output_tokens,total_tokens:r+e.output_tokens,input_token_details:{cache_creation:t,cache_read:n}}}function Mq(e,t){switch(e.type){case`text`:return{type:`text`,text:e.text??``,index:t};case`thinking`:return{type:`reasoning`,reasoning:e.thinking??``,index:t};case`redacted_thinking`:return{type:`non_standard`,value:{...e},index:t};case`tool_use`:return{type:`tool_call_chunk`,id:e.id,name:e.name,args:``,index:t};case`server_tool_use`:return{type:`server_tool_call_chunk`,id:e.id,name:e.name,args:``,index:t};default:return{type:`non_standard`,value:{...e},index:t}}}function Nq(e,t){switch(t.type){case`text_delta`:return{contentDelta:{type:`text-delta`,text:t.text},accumulated:{...e,text:(e.text??``)+t.text}};case`thinking_delta`:return{contentDelta:{type:`reasoning-delta`,reasoning:t.thinking},accumulated:{...e,reasoning:(e.reasoning??``)+t.thinking}};case`input_json_delta`:{let n=(e.args??``)+t.partial_json;return{contentDelta:{type:`block-delta`,fields:{type:e.type,args:n}},accumulated:{...e,args:n}}}case`citations_delta`:{let n=[...e.annotations??[],t.citation];return{contentDelta:{type:`block-delta`,fields:{type:e.type,annotations:n}},accumulated:{...e,annotations:n}}}case`signature_delta`:return{contentDelta:{type:`block-delta`,fields:{type:e.type,signature:t.signature}},accumulated:{...e,signature:t.signature}};case`compaction_delta`:return{contentDelta:{type:`block-delta`,fields:{type:`non_standard`,value:{...e.value??{},compaction:t}}},accumulated:{...e,value:{...e.value??{},compaction:t}}};default:return{contentDelta:{type:`block-delta`,fields:{type:e.type,...t}},accumulated:e}}}function Pq(e){if(e.type===`tool_call_chunk`||e.type===`server_tool_call_chunk`){let t=e.type===`tool_call_chunk`?`tool_call`:`server_tool_call`,n;try{n=JSON.parse(e.args||`{}`)}catch{return{type:`invalid_tool_call`,id:e.id,name:e.name,args:e.args,error:`Failed to parse tool call arguments as JSON`}}return{type:t,id:e.id,name:e.name,args:n}}let{index:t,...n}=e;return n}function Y(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function X(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var Fq=function(){let{crypto:e}=globalThis;if(e?.randomUUID)return Fq=e.randomUUID.bind(e),e.randomUUID();let t=new Uint8Array(1),n=e?()=>e.getRandomValues(t)[0]:()=>Math.random()*255&255;return`10000000-1000-4000-8000-100000000000`.replace(/[018]/g,e=>(e^n()&15>>e/4).toString(16))};function Iq(e){return typeof e==`object`&&!!e&&(`name`in e&&e.name===`AbortError`||`message`in e&&String(e.message).includes(`FetchRequestCanceledException`))}var Lq=e=>{if(e instanceof Error)return e;if(typeof e==`object`&&e){try{if(Object.prototype.toString.call(e)===`[object Error]`){let t=Error(e.message,e.cause?{cause:e.cause}:{});return e.stack&&(t.stack=e.stack),e.cause&&!t.cause&&(t.cause=e.cause),e.name&&(t.name=e.name),t}}catch{}try{return Error(JSON.stringify(e))}catch{}}return Error(e)},Z=class extends Error{},Rq=class e extends Z{constructor(t,n,r,i,a){super(`${e.makeMessage(t,n,r)}`),this.status=t,this.headers=i,this.requestID=i?.get(`request-id`),this.error=n,this.type=a??null}static makeMessage(e,t,n){let r=t?.message?typeof t.message==`string`?t.message:JSON.stringify(t.message):t?JSON.stringify(t):n;return e&&r?`${e} ${r}`:e?`${e} status code (no body)`:r||`(no status code or body)`}static generate(t,n,r,i){if(!t||!i)return new Bq({message:r,cause:Lq(n)});let a=n,o=a?.error?.type;return t===400?new Hq(t,a,r,i,o):t===401?new Uq(t,a,r,i,o):t===403?new Wq(t,a,r,i,o):t===404?new Gq(t,a,r,i,o):t===409?new Kq(t,a,r,i,o):t===422?new qq(t,a,r,i,o):t===429?new Jq(t,a,r,i,o):t>=500?new Yq(t,a,r,i,o):new e(t,a,r,i,o)}},zq=class extends Rq{constructor({message:e}={}){super(void 0,void 0,e||`Request was aborted.`,void 0)}},Bq=class extends Rq{constructor({message:e,cause:t}){super(void 0,void 0,e||`Connection error.`,void 0),t&&(this.cause=t)}},Vq=class extends Bq{constructor({message:e}={}){super({message:e??`Request timed out.`})}},Hq=class extends Rq{},Uq=class extends Rq{},Wq=class extends Rq{},Gq=class extends Rq{},Kq=class extends Rq{},qq=class extends Rq{},Jq=class extends Rq{},Yq=class extends Rq{},Xq=/^[a-z][a-z0-9+.-]*:/i,Zq=e=>Xq.test(e),Qq=e=>(Qq=Array.isArray,Qq(e)),$q=Qq;function eJ(e){return typeof e==`object`?e??{}:{}}function tJ(e){if(!e)return!0;for(let t in e)return!1;return!0}function nJ(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var rJ=(e,t)=>{if(typeof t!=`number`||!Number.isInteger(t))throw new Z(`${e} must be an integer`);if(t<0)throw new Z(`${e} must be a positive integer`);return t},iJ=e=>{try{return JSON.parse(e)}catch{return}},aJ=(e,t)=>{let n=e[t];return delete e[t],n},oJ=e=>new Promise(t=>setTimeout(t,e)),sJ=`0.95.2`,cJ=()=>typeof window<`u`&&window.document!==void 0&&typeof navigator<`u`;function lJ(){return typeof Deno<`u`&&Deno.build!=null?`deno`:typeof EdgeRuntime<`u`?`edge`:Object.prototype.toString.call(globalThis.process===void 0?0:globalThis.process)===`[object process]`?`node`:`unknown`}var uJ=()=>{let e=lJ();if(e===`deno`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":pJ(Deno.build.os),"X-Stainless-Arch":fJ(Deno.build.arch),"X-Stainless-Runtime":`deno`,"X-Stainless-Runtime-Version":typeof Deno.version==`string`?Deno.version:Deno.version?.deno??`unknown`};if(typeof EdgeRuntime<`u`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":`edge`,"X-Stainless-Runtime-Version":globalThis.process.version};if(e===`node`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":pJ(globalThis.process.platform??`unknown`),"X-Stainless-Arch":fJ(globalThis.process.arch??`unknown`),"X-Stainless-Runtime":`node`,"X-Stainless-Runtime-Version":globalThis.process.version??`unknown`};let t=dJ();return t?{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`browser:${t.browser}`,"X-Stainless-Runtime-Version":t.version}:{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`unknown`,"X-Stainless-Runtime-Version":`unknown`}};function dJ(){if(typeof navigator>`u`||!navigator)return null;for(let{key:e,pattern:t}of[{key:`edge`,pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`ie`,pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`ie`,pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`chrome`,pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`firefox`,pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`safari`,pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}]){let n=t.exec(navigator.userAgent);if(n)return{browser:e,version:`${n[1]||0}.${n[2]||0}.${n[3]||0}`}}return null}var fJ=e=>e===`x32`?`x32`:e===`x86_64`||e===`x64`?`x64`:e===`arm`?`arm`:e===`aarch64`||e===`arm64`?`arm64`:e?`other:${e}`:`unknown`,pJ=e=>(e=e.toLowerCase(),e.includes(`ios`)?`iOS`:e===`android`?`Android`:e===`darwin`?`MacOS`:e===`win32`?`Windows`:e===`freebsd`?`FreeBSD`:e===`openbsd`?`OpenBSD`:e===`linux`?`Linux`:e?`Other:${e}`:`Unknown`),mJ,hJ=()=>mJ??=uJ();function gJ(){if(typeof fetch<`u`)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function _J(...e){let t=globalThis.ReadableStream;if(t===void 0)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new t(...e)}function vJ(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():e[Symbol.iterator]();return _J({start(){},async pull(e){let{done:n,value:r}=await t.next();n?e.close():e.enqueue(r)},async cancel(){await t.return?.()}})}function yJ(e){if(e[Symbol.asyncIterator])return e;let t=e.getReader();return{async next(){try{let e=await t.read();return e?.done&&t.releaseLock(),e}catch(e){throw t.releaseLock(),e}},async return(){let e=t.cancel();return t.releaseLock(),await e,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function bJ(e){if(typeof e!=`object`||!e)return;if(e[Symbol.asyncIterator]){await e[Symbol.asyncIterator]().return?.();return}let t=e.getReader(),n=t.cancel();t.releaseLock(),await n}var xJ=({headers:e,body:t})=>({bodyHeaders:{"content-type":`application/json`},body:JSON.stringify(t)}),SJ=`RFC3986`,CJ=e=>String(e),wJ={RFC1738:e=>String(e).replace(/%20/g,`+`),RFC3986:CJ},TJ=(e,t)=>(TJ=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),TJ(e,t)),EJ=(()=>{let e=[];for(let t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e})(),DJ=1024,OJ=(e,t,n,r,i)=>{if(e.length===0)return e;let a=e;if(typeof e==`symbol`?a=Symbol.prototype.toString.call(e):typeof e!=`string`&&(a=String(e)),n===`iso-8859-1`)return escape(a).replace(/%u[0-9a-f]{4}/gi,function(e){return`%26%23`+parseInt(e.slice(2),16)+`%3B`});let o=``;for(let e=0;e<a.length;e+=DJ){let t=a.length>=DJ?a.slice(e,e+DJ):a,n=[];for(let e=0;e<t.length;++e){let r=t.charCodeAt(e);if(r===45||r===46||r===95||r===126||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||i===`RFC1738`&&(r===40||r===41)){n[n.length]=t.charAt(e);continue}if(r<128){n[n.length]=EJ[r];continue}if(r<2048){n[n.length]=EJ[192|r>>6]+EJ[128|r&63];continue}if(r<55296||r>=57344){n[n.length]=EJ[224|r>>12]+EJ[128|r>>6&63]+EJ[128|r&63];continue}e+=1,r=65536+((r&1023)<<10|t.charCodeAt(e)&1023),n[n.length]=EJ[240|r>>18]+EJ[128|r>>12&63]+EJ[128|r>>6&63]+EJ[128|r&63]}o+=n.join(``)}return o};function kJ(e){return!e||typeof e!=`object`?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))}function AJ(e,t){if(Qq(e)){let n=[];for(let r=0;r<e.length;r+=1)n.push(t(e[r]));return n}return t(e)}var jJ={brackets(e){return String(e)+`[]`},comma:`comma`,indices(e,t){return String(e)+`[`+t+`]`},repeat(e){return String(e)}},MJ=function(e,t){Array.prototype.push.apply(e,Qq(t)?t:[t])},NJ,PJ={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:OJ,encodeValuesOnly:!1,format:SJ,formatter:CJ,indices:!1,serializeDate(e){return(NJ??=Function.prototype.call.bind(Date.prototype.toISOString))(e)},skipNulls:!1,strictNullHandling:!1};function FJ(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`}var IJ={};function LJ(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_){let v=e,y=_,b=0,x=!1;for(;(y=y.get(IJ))!==void 0&&!x;){let t=y.get(e);if(b+=1,t!==void 0){if(t===b)throw RangeError(`Cyclic object value`);x=!0}y.get(IJ)===void 0&&(b=0)}if(typeof l==`function`?v=l(t,v):v instanceof Date?v=f?.(v):n===`comma`&&Qq(v)&&(v=AJ(v,function(e){return e instanceof Date?f?.(e):e})),v===null){if(a)return c&&!h?c(t,PJ.encoder,g,`key`,p):t;v=``}if(FJ(v)||kJ(v)){if(c){let e=h?t:c(t,PJ.encoder,g,`key`,p);return[m?.(e)+`=`+m?.(c(v,PJ.encoder,g,`value`,p))]}return[m?.(t)+`=`+m?.(String(v))]}let ee=[];if(v===void 0)return ee;let te;if(n===`comma`&&Qq(v))h&&c&&(v=AJ(v,c)),te=[{value:v.length>0?v.join(`,`)||null:void 0}];else if(Qq(l))te=l;else{let e=Object.keys(v);te=u?e.sort(u):e}let S=s?String(t).replace(/\./g,`%2E`):String(t),ne=r&&Qq(v)&&v.length===1?S+`[]`:S;if(i&&Qq(v)&&v.length===0)return ne+`[]`;for(let t=0;t<te.length;++t){let y=te[t],x=typeof y==`object`&&y.value!==void 0?y.value:v[y];if(o&&x===null)continue;let S=d&&s?y.replace(/\./g,`%2E`):y,re=Qq(v)?typeof n==`function`?n(ne,S):ne:ne+(d?`.`+S:`[`+S+`]`);_.set(e,b);let ie=new WeakMap;ie.set(IJ,_),MJ(ee,LJ(x,re,n,r,i,a,o,s,n===`comma`&&h&&Qq(v)?null:c,l,u,d,f,p,m,h,g,ie))}return ee}function RJ(e=PJ){if(e.allowEmptyArrays!==void 0&&typeof e.allowEmptyArrays!=`boolean`)throw TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(e.encodeDotInKeys!==void 0&&typeof e.encodeDotInKeys!=`boolean`)throw TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&e.encoder!==void 0&&typeof e.encoder!=`function`)throw TypeError(`Encoder has to be a function.`);let t=e.charset||PJ.charset;if(e.charset!==void 0&&e.charset!==`utf-8`&&e.charset!==`iso-8859-1`)throw TypeError(`The charset option must be either utf-8, iso-8859-1, or undefined`);let n=SJ;if(e.format!==void 0){if(!TJ(wJ,e.format))throw TypeError(`Unknown format option provided.`);n=e.format}let r=wJ[n],i=PJ.filter;(typeof e.filter==`function`||Qq(e.filter))&&(i=e.filter);let a;if(a=e.arrayFormat&&e.arrayFormat in jJ?e.arrayFormat:`indices`in e?e.indices?`indices`:`repeat`:PJ.arrayFormat,`commaRoundTrip`in e&&typeof e.commaRoundTrip!=`boolean`)throw TypeError("`commaRoundTrip` must be a boolean, or absent");let o=e.allowDots===void 0?e.encodeDotInKeys?!0:PJ.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix==`boolean`?e.addQueryPrefix:PJ.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays==`boolean`?!!e.allowEmptyArrays:PJ.allowEmptyArrays,arrayFormat:a,charset:t,charsetSentinel:typeof e.charsetSentinel==`boolean`?e.charsetSentinel:PJ.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:e.delimiter===void 0?PJ.delimiter:e.delimiter,encode:typeof e.encode==`boolean`?e.encode:PJ.encode,encodeDotInKeys:typeof e.encodeDotInKeys==`boolean`?e.encodeDotInKeys:PJ.encodeDotInKeys,encoder:typeof e.encoder==`function`?e.encoder:PJ.encoder,encodeValuesOnly:typeof e.encodeValuesOnly==`boolean`?e.encodeValuesOnly:PJ.encodeValuesOnly,filter:i,format:n,formatter:r,serializeDate:typeof e.serializeDate==`function`?e.serializeDate:PJ.serializeDate,skipNulls:typeof e.skipNulls==`boolean`?e.skipNulls:PJ.skipNulls,sort:typeof e.sort==`function`?e.sort:null,strictNullHandling:typeof e.strictNullHandling==`boolean`?e.strictNullHandling:PJ.strictNullHandling}}function zJ(e,t={}){let n=e,r=RJ(t),i,a;typeof r.filter==`function`?(a=r.filter,n=a(``,n)):Qq(r.filter)&&(a=r.filter,i=a);let o=[];if(typeof n!=`object`||!n)return``;let s=jJ[r.arrayFormat],c=s===`comma`&&r.commaRoundTrip;i||=Object.keys(n),r.sort&&i.sort(r.sort);let l=new WeakMap;for(let e=0;e<i.length;++e){let t=i[e];r.skipNulls&&n[t]===null||MJ(o,LJ(n[t],t,s,c,r.allowEmptyArrays,r.strictNullHandling,r.skipNulls,r.encodeDotInKeys,r.encode?r.encoder:null,r.filter,r.sort,r.allowDots,r.serializeDate,r.format,r.formatter,r.encodeValuesOnly,r.charset,l))}let u=o.join(r.delimiter),d=r.addQueryPrefix===!0?`?`:``;return r.charsetSentinel&&(r.charset===`iso-8859-1`?d+=`utf8=%26%2310003%3B&`:d+=`utf8=%E2%9C%93&`),u.length>0?d+u:``}function BJ(e){return zJ(e,{arrayFormat:`brackets`})}var VJ=`urn:ietf:params:oauth:grant-type:jwt-bearer`,HJ=`refresh_token`,UJ=`/v1/oauth/token`,WJ=`oauth-2025-04-20`,GJ=`oidc-federation-2026-04-01`,KJ=1<<20;function qJ(e){if(!e)return;let t;try{t=new URL(e)}catch(t){throw new tY(`Invalid token endpoint base URL "${e}": ${t}`)}if(t.protocol===`https:`)return;let n=t.hostname.toLowerCase().replace(/^\[|\]$/g,``);if(!(t.protocol===`http:`&&(n===`localhost`||n===`127.0.0.1`||n===`::1`)))throw new tY(`Refusing to send credential over non-https token endpoint "${e}"`)}async function JJ(e,t){let n=await eY(e),r;try{r=JSON.parse(n)}catch{throw new tY(`Token endpoint returned non-JSON response (status ${e.status})`,e.status,ZJ(n),t)}if(!r.access_token)throw new tY(`Token endpoint response missing access_token: ${JSON.stringify(ZJ(r))}`,e.status,ZJ(r),t);if(r.token_type&&r.token_type.toLowerCase()!==`bearer`)throw new tY(`Token endpoint response: unsupported token_type "${r.token_type}" (want Bearer)`,e.status,ZJ(r),t);return r}var YJ=2e3,XJ=new Set([`error`,`error_description`,`error_uri`]);function ZJ(e){if(e==null)return e;if(typeof e==`string`){let t;try{t=JSON.parse(e)}catch{return e.length<=YJ?e:e.slice(0,YJ)+`... <${e.length-YJ} more chars>`}return JSON.stringify(ZJ(t))}if(typeof e==`object`&&!Array.isArray(e)){let t={};for(let[n,r]of Object.entries(e))XJ.has(n)&&(t[n]=r);return t}return null}async function QJ(e,t=e=>console.warn(`anthropic-sdk: ${e}`)){if(typeof process>`u`||process.platform===`win32`)return;let r=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=e,o;try{a=await r.promises.realpath(e),o=await r.promises.stat(a)}catch{return}let s=o.mode&511;if(s&18)throw new tY(`Credentials file at ${a} is group/world-writable (mode 0o${s.toString(8)}); this allows other local users to plant tokens. Run \`chmod 600 ${a}\`.`);if(s&36)throw new tY(`Credentials file at ${a} is group/world-readable (mode 0o${s.toString(8)}); run \`chmod 600 ${a}\` before retrying.`);typeof process.getuid==`function`&&o.uid!==process.getuid()&&t(`credentials file at ${a} is owned by uid ${o.uid} (current process uid ${process.getuid()}); verify this is intentional.`)}async function $J(e,t){let r=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=(await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).dirname(e);await r.promises.mkdir(a,{recursive:!0,mode:448});let o=`${e}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;try{let n=await r.promises.open(o,`w`,384);try{await n.writeFile(JSON.stringify(t,null,2)),await n.sync()}finally{await n.close()}await r.promises.rename(o,e)}catch(e){throw await r.promises.unlink(o).catch(()=>{}),e}try{let e=await r.promises.open(a,`r`);try{await e.sync()}finally{await e.close()}}catch{}}async function eY(e){if(!e.body)return``;let t=e.body.getReader(),n=[],r=0;for(;;){let{done:e,value:i}=await t.read();if(e)break;if(r+i.length>KJ){let e=KJ-r;e>0&&n.push(i.subarray(0,e)),await t.cancel();break}n.push(i),r+=i.length}let i;if(n.length===1)i=n[0];else{i=new Uint8Array(n.reduce((e,t)=>e+t.length,0));let e=0;for(let t of n)i.set(t,e),e+=t.length}return new TextDecoder(`utf-8`).decode(i)}var tY=class extends Z{constructor(e,t=null,n=null,r=null){super(e),this.statusCode=t,this.body=n,this.requestId=r}};function nY(){return Math.floor(Date.now()/1e3)}var rY=class{constructor(e,t){this.cached=null,this.pendingRefresh=null,this.nextForce=!1,this.lastAdvisoryError=0,this.provider=e,this.onAdvisoryRefreshError=t}async getToken(){let e=this.nextForce;this.nextForce=!1;let t=this.cached;if(e||t==null)return(await this.refresh(e)).token;if(t.expiresAt==null)return t.token;let n=t.expiresAt-nY();return n>120?t.token:n>30?(this.backgroundRefresh(),t.token):(await this.refresh()).token}invalidate(){this.cached=null,this.nextForce=!0}refresh(e=!1){return this.pendingRefresh&&!e?this.pendingRefresh:this.doRefresh(e)}backgroundRefresh(){this.pendingRefresh||nY()-this.lastAdvisoryError<5||this.doRefresh().catch(e=>{this.lastAdvisoryError=nY(),this.onAdvisoryRefreshError?.(e)})}doRefresh(e=!1){return this.pendingRefresh=this.provider(e?{forceRefresh:!0}:void 0).then(e=>(this.cached=e,this.pendingRefresh=null,e),e=>{throw this.pendingRefresh=null,e}),this.pendingRefresh}},iY=e=>{if(globalThis.process!==void 0)return{}[e]?.trim()||void 0;if(globalThis.Deno!==void 0)return globalThis.Deno.env?.get?.(e)?.trim()||void 0};function aY(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}var oY;function sY(e){let t;return(oY??=(t=new globalThis.TextEncoder,t.encode.bind(t)))(e)}var cY;function lY(e){let t;return(cY??=(t=new globalThis.TextDecoder,t.decode.bind(t)))(e)}var uY={off:0,error:200,warn:300,info:400,debug:500},dY=(e,t,n)=>{if(e){if(nJ(uY,e))return e;gY(n).warn(`${t} was set to ${JSON.stringify(e)}, expected one of ${JSON.stringify(Object.keys(uY))}`)}};function fY(){}function pY(e,t,n){return!t||uY[e]>uY[n]?fY:t[e].bind(t)}var mY={error:fY,warn:fY,info:fY,debug:fY},hY=new WeakMap;function gY(e){let t=e.logger,n=e.logLevel??`off`;if(!t)return mY;let r=hY.get(t);if(r&&r[0]===n)return r[1];let i={error:pY(`error`,t,n),warn:pY(`warn`,t,n),info:pY(`info`,t,n),debug:pY(`debug`,t,n)};return hY.set(t,[n,i]),i}var _Y=e=>(e.options&&(e.options={...e.options},delete e.options.headers),e.headers&&=Object.fromEntries((e.headers instanceof Headers?[...e.headers]:Object.entries(e.headers)).map(([e,t])=>[e,e.toLowerCase()===`authorization`||e.toLowerCase()===`api-key`||e.toLowerCase()===`x-api-key`||e.toLowerCase()===`cookie`||e.toLowerCase()===`set-cookie`?`***`:t])),`retryOfRequestLogID`in e&&(e.retryOfRequestLogID&&(e.retryOf=e.retryOfRequestLogID),delete e.retryOfRequestLogID),e),vY=/^[A-Za-z0-9_.-]+$/;function yY(e){if(!e)throw Error(`profile name is empty`);if(e===`.`||e===`..`)throw Error(`profile name "${e}" is not allowed`);if(e.includes(`/`)||e.includes(`\\`))throw Error(`profile name "${e}" must not contain path separators`);if(!vY.test(e))throw Error(`profile name "${e}" contains disallowed characters (allowed: letters, digits, '_', '.', '-')`)}var bY=async e=>{var t,r;let a=await SY();if(a===null)return null;let o=e??await wY();if(o===null)return null;yY(o);let s=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),c=(await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(a,`configs`,`${o}.json`),l;try{l=await s.promises.readFile(c,`utf-8`)}catch(e){if(e?.code!==`ENOENT`)throw Error(`failed to read config file ${c}: ${e}`);l=null}if(l===null){let e=iY(`ANTHROPIC_ORGANIZATION_ID`),t=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`),n=iY(`ANTHROPIC_FEDERATION_RULE_ID`);return n&&e?{fromFile:!1,config:{organization_id:e,workspace_id:iY(`ANTHROPIC_WORKSPACE_ID`),base_url:iY(`ANTHROPIC_BASE_URL`),authentication:{type:`oidc_federation`,federation_rule_id:n,service_account_id:iY(`ANTHROPIC_SERVICE_ACCOUNT_ID`),identity_token:t?{source:`file`,path:t}:void 0,scope:iY(`ANTHROPIC_SCOPE`)}}}:null}let u;try{u=JSON.parse(l)}catch(e){throw Error(`failed to parse config file ${c}: ${e}`)}if(!u.authentication)throw Error(`config file ${c} is missing "authentication"`);let d=u.authentication.type;if(d!==`oidc_federation`&&d!==`user_oauth`)throw Error(`authentication.type "${d}" is not a known authentication type`);if(u.organization_id??=iY(`ANTHROPIC_ORGANIZATION_ID`),u.workspace_id??=iY(`ANTHROPIC_WORKSPACE_ID`),u.base_url??=iY(`ANTHROPIC_BASE_URL`),(t=u.authentication).scope??(t.scope=iY(`ANTHROPIC_SCOPE`)),u.authentication.type===`oidc_federation`){if(!u.authentication.identity_token){let e=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`);e&&(u.authentication.identity_token={source:`file`,path:e})}u.authentication.federation_rule_id||(u.authentication.federation_rule_id=iY(`ANTHROPIC_FEDERATION_RULE_ID`)??``),(r=u.authentication).service_account_id??(r.service_account_id=iY(`ANTHROPIC_SERVICE_ACCOUNT_ID`))}return{config:u,fromFile:!0}},xY=async(e,t)=>{if(e?.authentication.credentials_path)return e.authentication.credentials_path;let r=await SY();if(!r)return null;let a=t??await wY();return a?(yY(a),(await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(r,`credentials`,`${a}.json`)):null},SY=async()=>{if(!CY())return null;let e=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),t=iY(`ANTHROPIC_CONFIG_DIR`);if(t)return t;if(hJ()[`X-Stainless-OS`]===`Windows`){let t=iY(`APPDATA`);if(t)return e.join(t,`Anthropic`);let n=iY(`USERPROFILE`);return n?e.join(n,`AppData`,`Roaming`,`Anthropic`):null}let r=iY(`XDG_CONFIG_HOME`);if(r)return e.join(r,`anthropic`);let a=iY(`HOME`);return a?e.join(a,`.config`,`anthropic`):null},CY=()=>{let e=hJ()[`X-Stainless-Runtime`];return e===`node`||e===`deno`},wY=async()=>{let e=await SY();if(!e)return null;let t=iY(`ANTHROPIC_PROFILE`);if(t)return t;let r=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=(await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(e,`active_config`);try{return(await r.promises.readFile(a,`utf-8`)).trim()||`default`}catch(e){if(e?.code!==`ENOENT`)throw Error(`failed to read ${a}: ${e}`);return`default`}};function TY(e){if(!e)throw new Z(`Identity token file path is empty`);return async()=>{let t=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),r;try{r=await t.promises.readFile(e,`utf-8`)}catch(t){throw new Z(`Failed to read identity token file at ${e}: ${t}`)}let a=r.trim();if(!a)throw new Z(`Identity token file at ${e} is empty`);return a}}function EY(e){if(!e)throw new Z(`Identity token value is empty`);return()=>e}function DY(e){return async()=>{qJ(e.baseURL);let t=await e.identityTokenProvider();if(t.length>16*1024)throw new tY(`Identity token is ${Math.ceil(t.length/1024)} KiB, exceeds the 16 KiB assertion limit`);let n={grant_type:VJ,assertion:t,federation_rule_id:e.federationRuleId,organization_id:e.organizationId};e.serviceAccountId&&(n.service_account_id=e.serviceAccountId),e.workspaceId&&(n.workspace_id=e.workspaceId);let r=`${e.baseURL}${UJ}`,i;try{i=await e.fetch(r,{method:`POST`,headers:{"Content-Type":`application/json`,"anthropic-beta":`${WJ},${GJ}`,"User-Agent":e.userAgent||`anthropic-sdk-typescript/0.95.2 oidcFederationProvider`},body:JSON.stringify(n)})}catch(e){throw new tY(`Failed to reach token endpoint ${r}: ${e}`)}let a=i.headers.get(`Request-Id`);if(!i.ok){let t=ZJ(await i.text().catch(()=>``)),n=``;throw i.status===401&&(n=` Ensure your federation rule matches your identity token. ${e.workspaceId?``:"If your federation rule is scoped to multiple workspaces, set the ANTHROPIC_WORKSPACE_ID environment variable, the 'workspace_id' config key, or the `workspaceId` option. "}View your authentication events in the Workload identity page of Claude Console for more details.`),new tY(`Token exchange failed with status ${i.status}${a?` (request-id ${a})`:``}: ${t}${n}`,i.status,t,a)}let o=await JJ(i,a),s=Number(o.expires_in);if(!Number.isFinite(s))throw new tY(`Token endpoint response missing required fields: ${JSON.stringify(ZJ(o))}`,i.status,ZJ(o),a);return{token:o.access_token,expiresAt:nY()+s}}}function OY(e){return async t=>{let r=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]));await QJ(e.credentialsPath,e.onSafetyWarning);let a;try{a=await r.promises.readFile(e.credentialsPath,`utf-8`)}catch(t){throw new tY(`Credentials file not found at ${e.credentialsPath}: ${t}`)}let o;try{o=JSON.parse(a)}catch(t){throw new tY(`Credentials file at ${e.credentialsPath} is not valid JSON: ${t}`)}let s=o.access_token;if(!s)throw new tY(`Credentials file at ${e.credentialsPath} must include 'access_token'`);let c=o.expires_at;if(!t?.forceRefresh&&(c==null||nY()<c-30))return{token:s,expiresAt:c??null};let l=o.refresh_token;if(!e.clientId||!l)throw new tY(`Access token at ${e.credentialsPath} has expired and no refresh is available (client_id ${e.clientId?`set`:`empty`}, refresh_token ${l?`set`:`empty`})`);qJ(e.baseURL);let u={grant_type:HJ,refresh_token:l,client_id:e.clientId},d=`${e.baseURL}${UJ}`,f;try{f=await e.fetch(d,{method:`POST`,headers:{"Content-Type":`application/json`,"anthropic-beta":WJ,"User-Agent":e.userAgent||`anthropic-sdk-typescript/0.95.2 userOAuthProvider`},body:JSON.stringify(u)})}catch(e){throw new tY(`User OAuth refresh failed to reach token endpoint: ${e}`)}let p=f.headers.get(`Request-Id`);if(!f.ok){let e=await f.text().catch(()=>``);throw new tY(`User OAuth refresh failed (HTTP ${f.status}): ${ZJ(e)}`,f.status,ZJ(e),p)}let m=await JJ(f,p),h=Number(m.expires_in);if(!Number.isFinite(h))throw new tY(`User OAuth refresh response missing or invalid expires_in: ${JSON.stringify(ZJ(m))}`,f.status,ZJ(m),p);let g=nY()+h,_=m.refresh_token||l;return await $J(e.credentialsPath,{...o,version:`1.0`,type:`oauth_token`,access_token:m.access_token,expires_at:g,refresh_token:_}),{token:m.access_token,expiresAt:g}}}function kY(e,t){let n=jY(e,e.authentication.credentials_path??null,(e.base_url||t.baseURL).replace(/\/+$/,``),t),r={};return e.workspace_id&&e.authentication.type===`user_oauth`&&(r[`anthropic-workspace-id`]=e.workspace_id),{provider:n,extraHeaders:r,baseURL:e.base_url||void 0}}async function AY(e,t){let n=await bY(t);if(!n)return null;let{config:r,fromFile:i}=n;return kY(r.authentication.credentials_path||!i?r:{...r,authentication:{...r.authentication,credentials_path:await xY(r,t)??void 0}},e)}function jY(e,t,n,r){switch(e.authentication.type){case`oidc_federation`:{let i=e.authentication,a=MY(i);if(!a)throw new tY(`oidc_federation config requires an identity token (set authentication.identity_token, ANTHROPIC_IDENTITY_TOKEN_FILE, or ANTHROPIC_IDENTITY_TOKEN)`);if(!i.federation_rule_id)throw new tY(`oidc_federation config requires 'federation_rule_id'. Set it in authentication.federation_rule_id in your profile, or via ANTHROPIC_FEDERATION_RULE_ID (profile takes precedence).`);if(!e.organization_id)throw new tY(`oidc_federation config requires organization_id (set ANTHROPIC_ORGANIZATION_ID or config.organization_id)`);let o=DY({identityTokenProvider:a,federationRuleId:i.federation_rule_id,organizationId:e.organization_id,serviceAccountId:i.service_account_id,workspaceId:e.workspace_id,baseURL:n,fetch:r.fetch,userAgent:r.userAgent});return t?NY(o,t,r.onCacheWriteError,r.onSafetyWarning):o}case`user_oauth`:if(!t)throw new tY(`user_oauth config requires authentication.credentials_path (or load via a profile so it defaults to <config_dir>/credentials/<profile>.json)`);return OY({credentialsPath:t,clientId:e.authentication.client_id,baseURL:n,fetch:r.fetch,userAgent:r.userAgent,onSafetyWarning:r.onSafetyWarning});default:{let t=e.authentication.type;throw new tY(`authentication.type "${t}" is not a known authentication type`)}}}function MY(e){if(e.identity_token){let t=e.identity_token.source;if(t!==`file`)throw new tY(`identity_token.source "${t}" is not supported by this SDK version (only "file")`);if(!e.identity_token.path)throw new tY(`identity_token.source "file" requires a non-empty path`);return TY(e.identity_token.path)}let t=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`);if(t)return TY(t);let n=iY(`ANTHROPIC_IDENTITY_TOKEN`);return n?EY(n):null}function NY(e,t,r,a){return async o=>{let s=await i(()=>import(`./__vite-browser-external-CLwMvL_q.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]));await QJ(t,a);let c;try{let e=await s.promises.readFile(t,`utf-8`);c=JSON.parse(e);let n=c?.access_token;if(n&&!o?.forceRefresh){let e=c?.expires_at;if(e==null||nY()<e-30)return{token:n,expiresAt:e??null}}}catch(e){e?.code!==`ENOENT`&&!(e instanceof SyntaxError)&&r?.(e)}let l=await e(o);try{await $J(t,{...c??{},version:`1.0`,type:`oauth_token`,access_token:l.token,expires_at:l.expiresAt})}catch(e){r?.(e)}return l}}var PY,FY,IY=class{constructor(){PY.set(this,void 0),FY.set(this,void 0),Y(this,PY,new Uint8Array,`f`),Y(this,FY,null,`f`)}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e==`string`?sY(e):e;Y(this,PY,aY([X(this,PY,`f`),t]),`f`);let n=[],r;for(;(r=LY(X(this,PY,`f`),X(this,FY,`f`)))!=null;){if(r.carriage&&X(this,FY,`f`)==null){Y(this,FY,r.index,`f`);continue}if(X(this,FY,`f`)!=null&&(r.index!==X(this,FY,`f`)+1||r.carriage)){n.push(lY(X(this,PY,`f`).subarray(0,X(this,FY,`f`)-1))),Y(this,PY,X(this,PY,`f`).subarray(X(this,FY,`f`)),`f`),Y(this,FY,null,`f`);continue}let e=X(this,FY,`f`)===null?r.preceding:r.preceding-1,t=lY(X(this,PY,`f`).subarray(0,e));n.push(t),Y(this,PY,X(this,PY,`f`).subarray(r.index),`f`),Y(this,FY,null,`f`)}return n}flush(){return X(this,PY,`f`).length?this.decode(`
|
|
180
|
+
`))}function fq(e){let t=[];for(let n of e)if(n._getType()===`tool`)if(typeof n.content==`string`){let e=t[t.length-1];e?._getType()===`human`&&Array.isArray(e.content)&&`type`in e.content[0]&&e.content[0].type===`tool_result`?e.content.push({type:`tool_result`,content:n.content,tool_use_id:n.tool_call_id}):t.push(new fn({content:[{type:`tool_result`,content:n.content,tool_use_id:n.tool_call_id}]}))}else t.push(new fn({content:[{type:`tool_result`,...n.content==null?{}:{content:hq(n)},tool_use_id:n.tool_call_id}]}));else t.push(n);return t}function pq(e){if(e.id===void 0)throw Error(`Anthropic requires all tool calls to have an "id".`);return{type:`tool_use`,id:e.id,name:e.name,input:e.args}}function*mq(e,t){let n=[`bash_code_execution_tool_result`,`input_json_delta`,`server_tool_use`,`text_editor_code_execution_tool_result`,`tool_result`,`tool_use`,`web_search_result`,`web_search_tool_result`],r=[`text`,`text_delta`];for(let i of e){ye(i)&&(yield De(i,$K));let a=`cache_control`in i?i.cache_control:void 0;if(i.type===`image_url`){let e;typeof i.image_url==`string`?e=dq(i.image_url):typeof i.image_url==`object`&&i.image_url!==null&&`url`in i.image_url&&typeof i.image_url.url==`string`&&(e=dq(i.image_url.url)),e&&(yield{type:`image`,source:e,...a?{cache_control:a}:{}})}else if(QK(i))yield i;else if(i.type===`image`){let e;`url`in i&&typeof i.url==`string`?e=dq(i.url):`data`in i&&(typeof i.data==`string`||i.data instanceof Uint8Array)?e={type:`base64`,media_type:`mimeType`in i&&typeof i.mimeType==`string`?i.mimeType:`image/jpeg`,data:typeof i.data==`string`?i.data:Buffer.from(i.data).toString(`base64`)}:`fileId`in i&&typeof i.fileId==`string`&&(e={type:`file`,file_id:i.fileId}),e&&(yield{type:`image`,source:e,...a?{cache_control:a}:{}})}else if(i.type===`file`){let e;`url`in i&&typeof i.url==`string`?e={type:`url`,url:i.url}:`data`in i&&(typeof i.data==`string`||i.data instanceof Uint8Array)?e={type:`base64`,media_type:`mimeType`in i&&typeof i.mimeType==`string`?i.mimeType:`application/pdf`,data:typeof i.data==`string`?i.data:Buffer.from(i.data).toString(`base64`)}:`fileId`in i&&typeof i.fileId==`string`&&(e={type:`file`,file_id:i.fileId}),e&&(yield{type:`document`,source:e,...a?{cache_control:a}:{}})}else if(i.type===`document`)yield{...i,...a?{cache_control:a}:{}};else if(JK(i))yield{type:`thinking`,thinking:i.thinking,signature:i.signature,...a?{cache_control:a}:{}};else if(YK(i))yield{type:`redacted_thinking`,data:i.data,...a?{cache_control:a}:{}};else if(XK(i))yield{type:`compaction`,content:i.content,...a?{cache_control:a}:{}};else if(ZK(i))yield{type:`search_result`,title:i.title,source:i.source,...`cache_control`in i&&i.cache_control?{cache_control:i.cache_control}:{},...`citations`in i&&i.citations?{citations:i.citations}:{},content:i.content};else if(r.find(e=>e===i.type)&&`text`in i)yield{type:`text`,text:i.text,...a?{cache_control:a}:{},...`citations`in i&&i.citations?{citations:i.citations}:{}};else if(n.find(e=>e===i.type)){let n={...i};if(n.type===`input_json_delta`)continue;if(n.type===`tool_use`&&typeof n.input==`string`){let r=t?.find(e=>e.id===n.id);r?n.input=r.args:n.input=e.filter(e=>e.index===n.index&&e.type===`input_json_delta`&&typeof e.input==`string`).reduce((e,t)=>e+t.input,n.input)}if(`index`in n&&delete n.index,`input`in n&&typeof n.input==`string`)try{n.input=JSON.parse(n.input)}catch{n.input={}}yield{...n,...a?{cache_control:a}:{}}}else i.type===`container_upload`&&(yield{...i,...a?{cache_control:a}:{}})}}function hq(e,t){let{content:n}=e;return typeof n==`string`?n:Array.from(mq(n,t))}function gq(e){let t=fq(e),n;return t.length>0&&t[0]._getType()===`system`&&(n=e[0].content),{messages:_q((n===void 0?t:t.slice(1)).map(e=>{let t;if(e._getType()===`human`)t=`user`;else if(e._getType()===`ai`)t=`assistant`;else if(e._getType()===`tool`)t=`user`;else if(e._getType()===`system`)throw Error(`System messages are only permitted as the first passed message.`);else throw Error(`Message type "${e.type}" is not supported.`);if($t.isInstance(e)&&e.response_metadata?.output_version===`v1`)return{role:t,content:uq(e)};if($t.isInstance(e)&&e.tool_calls?.length){if(typeof e.content==`string`)return e.content===``?{role:t,content:e.tool_calls.map(pq)}:{role:t,content:[{type:`text`,text:e.content},...e.tool_calls.map(pq)]};{let{content:n}=e,r=hq(e,e.tool_calls),i=Array.isArray(r)?r:[{type:`text`,text:r}],a=e.tool_calls.filter(e=>!n.find(t=>(t.type===`tool_use`||t.type===`input_json_delta`||t.type===`server_tool_use`)&&t.id===e.id));return{role:t,content:[...i,...a.map(pq)]}}}else return{role:t,content:hq(e,$t.isInstance(e)?e.tool_calls:void 0)}})),system:n}}function _q(e){if(!e||e.length<=1)return e;let t=[],n=e[0],r=e=>typeof e==`string`?[{type:`text`,text:e}]:e,i=e=>e.role!==`user`||typeof e.content==`string`?!1:Array.isArray(e.content)&&e.content.every(e=>e.type===`tool_result`);for(let a=1;a<e.length;a+=1){let o=e[a];i(n)&&i(o)?n={...n,content:[...r(n.content),...r(o.content)]}:(t.push(n),n=o)}return t.push(n),t}function vq(e){return e.type===`enabled`||e.type===`adaptive`}function yq(e){return e?.startsWith(`claude-opus-4-7`)??!1}function bq(e,t){let n=t&&typeof t==`object`&&`task_budget`in t&&t.task_budget!=null;return yq(e)&&n?[`task-budgets-2026-03-13`]:[]}function xq(e){let{model:t,thinking:n,topK:r,topP:i,temperature:a}=e,o=yq(t);if(o&&n.type===`enabled`)throw Error(`thinking.type="enabled" is not supported for claude-opus-4-7; use thinking.type="adaptive" instead`);if(o&&typeof n==`object`&&n&&`budget_tokens`in n)throw Error(`thinking.budget_tokens is not supported for claude-opus-4-7; use outputConfig.effort instead`);if(o){if(r!==void 0)throw Error(`topK is not supported for claude-opus-4-7; omit topK/topP/temperature or use model prompting instead`);if(i!==void 0&&i!==1)throw Error(`topP is not supported for claude-opus-4-7 when set to non-default values`);if(a!==void 0&&a!==1)throw Error(`temperature is not supported for claude-opus-4-7 when set to non-default values`)}if(vq(n)){if(r!==void 0)throw Error(`topK is not supported when thinking is enabled`);if(i!==void 0)throw Error(`topP is not supported when thinking is enabled`);if(a!==void 0&&a!==1)throw Error(`temperature is not supported when thinking is enabled`)}}function Sq(e){let{model:t,thinking:n,topK:r,topP:i,temperature:a}=e,o={};return vq(n)||yq(t)?o:(a!==void 0&&(o.temperature=a),r!==void 0&&(o.top_k=r),i!==void 0&&(o.top_p=i),o)}function Cq(e,t){let n={model_provider:`anthropic`};if(e.type===`message_start`){let{content:r,usage:i,...a}=e.message,o={};for(let[e,t]of Object.entries(a))t!=null&&(o[e]=t);let{input_tokens:s,output_tokens:c,...l}=i??{},u=Tq(i);return{chunk:new nn({content:t.coerceContentToString?``:[],additional_kwargs:o,usage_metadata:t.streamUsage?u:void 0,response_metadata:{...n,usage:{...l}},id:e.message.id})}}else if(e.type===`message_delta`){let n={input_tokens:0,output_tokens:e.usage.output_tokens,total_tokens:e.usage.output_tokens},r=`context_management`in e.delta?{context_management:e.delta.context_management}:void 0;return{chunk:new nn({content:t.coerceContentToString?``:[],response_metadata:r,additional_kwargs:{...e.delta},usage_metadata:t.streamUsage?n:void 0})}}else if(e.type===`content_block_start`&&[`tool_use`,`document`,`server_tool_use`,`web_search_tool_result`].includes(e.content_block.type)){let r=e.content_block,i;return i=r.type===`tool_use`?[{id:r.id,index:e.index,name:r.name,args:``}]:[],{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block,input:r.type===`server_tool_use`||r.type===`tool_use`?``:void 0}],response_metadata:n,additional_kwargs:{},tool_call_chunks:i})}}else if(e.type===`content_block_delta`&&[`text_delta`,`citations_delta`,`thinking_delta`,`signature_delta`].includes(e.delta.type)){if(t.coerceContentToString&&`text`in e.delta)return{chunk:new nn({content:e.delta.text})};{let t=e.delta;return`citation`in t&&(t.citations=[t.citation],delete t.citation),t.type===`thinking_delta`||t.type===`signature_delta`?{chunk:new nn({content:[{index:e.index,...t,type:`thinking`}],response_metadata:n})}:{chunk:new nn({content:[{index:e.index,...t,type:`text`}],response_metadata:n})}}}else if(e.type===`content_block_delta`&&e.delta.type===`input_json_delta`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,input:e.delta.partial_json,type:e.delta.type}],response_metadata:n,additional_kwargs:{},tool_call_chunks:[{index:e.index,args:e.delta.partial_json}]})};else if(e.type===`content_block_start`&&e.content_block.type===`text`){let r=e.content_block?.text;if(r!==void 0)return{chunk:new nn({content:t.coerceContentToString?r:[{index:e.index,...e.content_block}],response_metadata:n,additional_kwargs:{}})}}else if(e.type===`content_block_start`&&e.content_block.type===`redacted_thinking`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block}],response_metadata:n})};else if(e.type===`content_block_start`&&e.content_block.type===`thinking`){let r=e.content_block.thinking;return{chunk:new nn({content:t.coerceContentToString?r:[{index:e.index,...e.content_block}],response_metadata:n})}}else if(e.type===`content_block_start`&&XK(e.content_block))return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.content_block}],response_metadata:n})};else if(e.type===`content_block_delta`&&e.delta.type===`compaction_delta`)return{chunk:new nn({content:t.coerceContentToString?``:[{index:e.index,...e.delta,type:`compaction`}],response_metadata:n})};return null}function wq(e,t){let n={...t,model_provider:`anthropic`},r=t.usage,i=r==null?void 0:Tq(r);return e.length===1&&e[0].type===`text`?[{text:e[0].text,message:new $t({content:e[0].text,additional_kwargs:t,usage_metadata:i,response_metadata:n,id:t.id})}]:[{text:``,message:new $t({content:e,additional_kwargs:t,tool_calls:WK(e),usage_metadata:i,response_metadata:n,id:t.id})}]}function Tq(e){let t=e.cache_creation_input_tokens??0,n=e.cache_read_input_tokens??0,r=e.input_tokens+t+n;return{input_tokens:r,output_tokens:e.output_tokens,total_tokens:r+e.output_tokens,input_token_details:{cache_creation:t,cache_read:n}}}function Eq(e,t){return e.lc_error_code=t,e.message=`${e.message}\n\nTroubleshooting URL: https://docs.langchain.com/oss/javascript/langchain/errors/${t}/\n`,e}function Dq(e){let t;return t=e.status===400&&typeof e.message==`string`&&e.message.includes(`prompt is too long`)?Eq(h.fromError(e),`CONTEXT_OVERFLOW`):e.status===400&&e.message.includes(`tool`)?Eq(e,`INVALID_TOOL_RESULTS`):e.status===401?Eq(e,`MODEL_AUTHENTICATION`):e.status===404?Eq(e,`MODEL_NOT_FOUND`):e.status===429?Eq(e,`MODEL_RATE_LIMIT`):e,t}var Oq={"claude-3-sonnet-20240229":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-haiku-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-5-20251101":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-opus-20240229":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-haiku-20241022":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-sonnet-20241022":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-6":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-0":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-7":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:128e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-haiku-20240307":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:4096,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-5-20250929":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-haiku-latest":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-1":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-0":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-5-sonnet-20240620":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:8192,reasoningOutput:!1,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-1-20250805":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-haiku-4-5-20251001":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-20250514":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-6":{maxInputTokens:1e6,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:128e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-3-7-sonnet-20250219":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-sonnet-4-5":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:64e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0},"claude-opus-4-20250514":{maxInputTokens:2e5,imageInputs:!0,audioInputs:!1,pdfInputs:!0,videoInputs:!1,maxOutputTokens:32e3,reasoningOutput:!0,imageOutputs:!1,audioOutputs:!1,videoOutputs:!1,toolCalling:!0,structuredOutput:!1,imageUrlInputs:!0,pdfToolMessage:!0,imageToolMessage:!0}};async function*kq(e,t={}){let n=t.streamUsage??!0,r=new Map,i,a=null;for await(let t of e)switch(t.type){case`message_start`:{let{usage:e,id:r,model:a}=t.message;e&&n&&(i=jq(e)),yield{event:`message-start`,id:r,...i?{usage:i}:{}},yield{event:`provider`,provider:`anthropic`,name:`message_start`,payload:{model:a,id:r}};break}case`message_delta`:a=t.delta.stop_reason,n&&t.usage&&(i=i?{...i,output_tokens:i.output_tokens+t.usage.output_tokens,total_tokens:i.input_tokens+i.output_tokens+t.usage.output_tokens}:{input_tokens:0,output_tokens:t.usage.output_tokens,total_tokens:t.usage.output_tokens},yield{event:`usage`,usage:i}),`context_management`in t.delta&&t.delta.context_management&&(yield{event:`provider`,provider:`anthropic`,name:`context_management`,payload:t.delta.context_management});break;case`message_stop`:yield{event:`message-finish`,reason:Aq(a),...i?{usage:i}:{},metadata:{model_provider:`anthropic`}};break;case`content_block_start`:{let{index:e,content_block:n}=t,i=Mq(n,e);r.set(e,{...i}),yield{event:`content-block-start`,index:e,content:i};break}case`content_block_delta`:{let{index:e,delta:n}=t,i=r.get(e);if(!i)break;let{contentDelta:a,accumulated:o}=Nq(i,n);r.set(e,o),yield{event:`content-block-delta`,index:e,delta:a};break}case`content_block_stop`:{let{index:e}=t,n=r.get(e);if(!n)break;yield{event:`content-block-finish`,index:e,content:Pq(n)},r.delete(e);break}default:yield{event:`provider`,provider:`anthropic`,name:t.type,payload:t};break}}function Aq(e){switch(e){case`end_turn`:case`stop_sequence`:return`stop`;case`tool_use`:return`tool_use`;case`max_tokens`:return`length`;default:return`stop`}}function jq(e){let t=e.cache_creation_input_tokens??0,n=e.cache_read_input_tokens??0,r=e.input_tokens+t+n;return{input_tokens:r,output_tokens:e.output_tokens,total_tokens:r+e.output_tokens,input_token_details:{cache_creation:t,cache_read:n}}}function Mq(e,t){switch(e.type){case`text`:return{type:`text`,text:e.text??``,index:t};case`thinking`:return{type:`reasoning`,reasoning:e.thinking??``,index:t};case`redacted_thinking`:return{type:`non_standard`,value:{...e},index:t};case`tool_use`:return{type:`tool_call_chunk`,id:e.id,name:e.name,args:``,index:t};case`server_tool_use`:return{type:`server_tool_call_chunk`,id:e.id,name:e.name,args:``,index:t};default:return{type:`non_standard`,value:{...e},index:t}}}function Nq(e,t){switch(t.type){case`text_delta`:return{contentDelta:{type:`text-delta`,text:t.text},accumulated:{...e,text:(e.text??``)+t.text}};case`thinking_delta`:return{contentDelta:{type:`reasoning-delta`,reasoning:t.thinking},accumulated:{...e,reasoning:(e.reasoning??``)+t.thinking}};case`input_json_delta`:{let n=(e.args??``)+t.partial_json;return{contentDelta:{type:`block-delta`,fields:{type:e.type,args:n}},accumulated:{...e,args:n}}}case`citations_delta`:{let n=[...e.annotations??[],t.citation];return{contentDelta:{type:`block-delta`,fields:{type:e.type,annotations:n}},accumulated:{...e,annotations:n}}}case`signature_delta`:return{contentDelta:{type:`block-delta`,fields:{type:e.type,signature:t.signature}},accumulated:{...e,signature:t.signature}};case`compaction_delta`:return{contentDelta:{type:`block-delta`,fields:{type:`non_standard`,value:{...e.value??{},compaction:t}}},accumulated:{...e,value:{...e.value??{},compaction:t}}};default:return{contentDelta:{type:`block-delta`,fields:{type:e.type,...t}},accumulated:e}}}function Pq(e){if(e.type===`tool_call_chunk`||e.type===`server_tool_call_chunk`){let t=e.type===`tool_call_chunk`?`tool_call`:`server_tool_call`,n;try{n=JSON.parse(e.args||`{}`)}catch{return{type:`invalid_tool_call`,id:e.id,name:e.name,args:e.args,error:`Failed to parse tool call arguments as JSON`}}return{type:t,id:e.id,name:e.name,args:n}}let{index:t,...n}=e;return n}function Y(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function X(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var Fq=function(){let{crypto:e}=globalThis;if(e?.randomUUID)return Fq=e.randomUUID.bind(e),e.randomUUID();let t=new Uint8Array(1),n=e?()=>e.getRandomValues(t)[0]:()=>Math.random()*255&255;return`10000000-1000-4000-8000-100000000000`.replace(/[018]/g,e=>(e^n()&15>>e/4).toString(16))};function Iq(e){return typeof e==`object`&&!!e&&(`name`in e&&e.name===`AbortError`||`message`in e&&String(e.message).includes(`FetchRequestCanceledException`))}var Lq=e=>{if(e instanceof Error)return e;if(typeof e==`object`&&e){try{if(Object.prototype.toString.call(e)===`[object Error]`){let t=Error(e.message,e.cause?{cause:e.cause}:{});return e.stack&&(t.stack=e.stack),e.cause&&!t.cause&&(t.cause=e.cause),e.name&&(t.name=e.name),t}}catch{}try{return Error(JSON.stringify(e))}catch{}}return Error(e)},Z=class extends Error{},Rq=class e extends Z{constructor(t,n,r,i,a){super(`${e.makeMessage(t,n,r)}`),this.status=t,this.headers=i,this.requestID=i?.get(`request-id`),this.error=n,this.type=a??null}static makeMessage(e,t,n){let r=t?.message?typeof t.message==`string`?t.message:JSON.stringify(t.message):t?JSON.stringify(t):n;return e&&r?`${e} ${r}`:e?`${e} status code (no body)`:r||`(no status code or body)`}static generate(t,n,r,i){if(!t||!i)return new Bq({message:r,cause:Lq(n)});let a=n,o=a?.error?.type;return t===400?new Hq(t,a,r,i,o):t===401?new Uq(t,a,r,i,o):t===403?new Wq(t,a,r,i,o):t===404?new Gq(t,a,r,i,o):t===409?new Kq(t,a,r,i,o):t===422?new qq(t,a,r,i,o):t===429?new Jq(t,a,r,i,o):t>=500?new Yq(t,a,r,i,o):new e(t,a,r,i,o)}},zq=class extends Rq{constructor({message:e}={}){super(void 0,void 0,e||`Request was aborted.`,void 0)}},Bq=class extends Rq{constructor({message:e,cause:t}){super(void 0,void 0,e||`Connection error.`,void 0),t&&(this.cause=t)}},Vq=class extends Bq{constructor({message:e}={}){super({message:e??`Request timed out.`})}},Hq=class extends Rq{},Uq=class extends Rq{},Wq=class extends Rq{},Gq=class extends Rq{},Kq=class extends Rq{},qq=class extends Rq{},Jq=class extends Rq{},Yq=class extends Rq{},Xq=/^[a-z][a-z0-9+.-]*:/i,Zq=e=>Xq.test(e),Qq=e=>(Qq=Array.isArray,Qq(e)),$q=Qq;function eJ(e){return typeof e==`object`?e??{}:{}}function tJ(e){if(!e)return!0;for(let t in e)return!1;return!0}function nJ(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var rJ=(e,t)=>{if(typeof t!=`number`||!Number.isInteger(t))throw new Z(`${e} must be an integer`);if(t<0)throw new Z(`${e} must be a positive integer`);return t},iJ=e=>{try{return JSON.parse(e)}catch{return}},aJ=(e,t)=>{let n=e[t];return delete e[t],n},oJ=e=>new Promise(t=>setTimeout(t,e)),sJ=`0.95.2`,cJ=()=>typeof window<`u`&&window.document!==void 0&&typeof navigator<`u`;function lJ(){return typeof Deno<`u`&&Deno.build!=null?`deno`:typeof EdgeRuntime<`u`?`edge`:Object.prototype.toString.call(globalThis.process===void 0?0:globalThis.process)===`[object process]`?`node`:`unknown`}var uJ=()=>{let e=lJ();if(e===`deno`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":pJ(Deno.build.os),"X-Stainless-Arch":fJ(Deno.build.arch),"X-Stainless-Runtime":`deno`,"X-Stainless-Runtime-Version":typeof Deno.version==`string`?Deno.version:Deno.version?.deno??`unknown`};if(typeof EdgeRuntime<`u`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":`edge`,"X-Stainless-Runtime-Version":globalThis.process.version};if(e===`node`)return{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":pJ(globalThis.process.platform??`unknown`),"X-Stainless-Arch":fJ(globalThis.process.arch??`unknown`),"X-Stainless-Runtime":`node`,"X-Stainless-Runtime-Version":globalThis.process.version??`unknown`};let t=dJ();return t?{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`browser:${t.browser}`,"X-Stainless-Runtime-Version":t.version}:{"X-Stainless-Lang":`js`,"X-Stainless-Package-Version":sJ,"X-Stainless-OS":`Unknown`,"X-Stainless-Arch":`unknown`,"X-Stainless-Runtime":`unknown`,"X-Stainless-Runtime-Version":`unknown`}};function dJ(){if(typeof navigator>`u`||!navigator)return null;for(let{key:e,pattern:t}of[{key:`edge`,pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`ie`,pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`ie`,pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`chrome`,pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`firefox`,pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:`safari`,pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}]){let n=t.exec(navigator.userAgent);if(n)return{browser:e,version:`${n[1]||0}.${n[2]||0}.${n[3]||0}`}}return null}var fJ=e=>e===`x32`?`x32`:e===`x86_64`||e===`x64`?`x64`:e===`arm`?`arm`:e===`aarch64`||e===`arm64`?`arm64`:e?`other:${e}`:`unknown`,pJ=e=>(e=e.toLowerCase(),e.includes(`ios`)?`iOS`:e===`android`?`Android`:e===`darwin`?`MacOS`:e===`win32`?`Windows`:e===`freebsd`?`FreeBSD`:e===`openbsd`?`OpenBSD`:e===`linux`?`Linux`:e?`Other:${e}`:`Unknown`),mJ,hJ=()=>mJ??=uJ();function gJ(){if(typeof fetch<`u`)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function _J(...e){let t=globalThis.ReadableStream;if(t===void 0)throw Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new t(...e)}function vJ(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():e[Symbol.iterator]();return _J({start(){},async pull(e){let{done:n,value:r}=await t.next();n?e.close():e.enqueue(r)},async cancel(){await t.return?.()}})}function yJ(e){if(e[Symbol.asyncIterator])return e;let t=e.getReader();return{async next(){try{let e=await t.read();return e?.done&&t.releaseLock(),e}catch(e){throw t.releaseLock(),e}},async return(){let e=t.cancel();return t.releaseLock(),await e,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function bJ(e){if(typeof e!=`object`||!e)return;if(e[Symbol.asyncIterator]){await e[Symbol.asyncIterator]().return?.();return}let t=e.getReader(),n=t.cancel();t.releaseLock(),await n}var xJ=({headers:e,body:t})=>({bodyHeaders:{"content-type":`application/json`},body:JSON.stringify(t)}),SJ=`RFC3986`,CJ=e=>String(e),wJ={RFC1738:e=>String(e).replace(/%20/g,`+`),RFC3986:CJ},TJ=(e,t)=>(TJ=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),TJ(e,t)),EJ=(()=>{let e=[];for(let t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e})(),DJ=1024,OJ=(e,t,n,r,i)=>{if(e.length===0)return e;let a=e;if(typeof e==`symbol`?a=Symbol.prototype.toString.call(e):typeof e!=`string`&&(a=String(e)),n===`iso-8859-1`)return escape(a).replace(/%u[0-9a-f]{4}/gi,function(e){return`%26%23`+parseInt(e.slice(2),16)+`%3B`});let o=``;for(let e=0;e<a.length;e+=DJ){let t=a.length>=DJ?a.slice(e,e+DJ):a,n=[];for(let e=0;e<t.length;++e){let r=t.charCodeAt(e);if(r===45||r===46||r===95||r===126||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||i===`RFC1738`&&(r===40||r===41)){n[n.length]=t.charAt(e);continue}if(r<128){n[n.length]=EJ[r];continue}if(r<2048){n[n.length]=EJ[192|r>>6]+EJ[128|r&63];continue}if(r<55296||r>=57344){n[n.length]=EJ[224|r>>12]+EJ[128|r>>6&63]+EJ[128|r&63];continue}e+=1,r=65536+((r&1023)<<10|t.charCodeAt(e)&1023),n[n.length]=EJ[240|r>>18]+EJ[128|r>>12&63]+EJ[128|r>>6&63]+EJ[128|r&63]}o+=n.join(``)}return o};function kJ(e){return!e||typeof e!=`object`?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))}function AJ(e,t){if(Qq(e)){let n=[];for(let r=0;r<e.length;r+=1)n.push(t(e[r]));return n}return t(e)}var jJ={brackets(e){return String(e)+`[]`},comma:`comma`,indices(e,t){return String(e)+`[`+t+`]`},repeat(e){return String(e)}},MJ=function(e,t){Array.prototype.push.apply(e,Qq(t)?t:[t])},NJ,PJ={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:OJ,encodeValuesOnly:!1,format:SJ,formatter:CJ,indices:!1,serializeDate(e){return(NJ??=Function.prototype.call.bind(Date.prototype.toISOString))(e)},skipNulls:!1,strictNullHandling:!1};function FJ(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`}var IJ={};function LJ(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_){let v=e,y=_,b=0,x=!1;for(;(y=y.get(IJ))!==void 0&&!x;){let t=y.get(e);if(b+=1,t!==void 0){if(t===b)throw RangeError(`Cyclic object value`);x=!0}y.get(IJ)===void 0&&(b=0)}if(typeof l==`function`?v=l(t,v):v instanceof Date?v=f?.(v):n===`comma`&&Qq(v)&&(v=AJ(v,function(e){return e instanceof Date?f?.(e):e})),v===null){if(a)return c&&!h?c(t,PJ.encoder,g,`key`,p):t;v=``}if(FJ(v)||kJ(v)){if(c){let e=h?t:c(t,PJ.encoder,g,`key`,p);return[m?.(e)+`=`+m?.(c(v,PJ.encoder,g,`value`,p))]}return[m?.(t)+`=`+m?.(String(v))]}let ee=[];if(v===void 0)return ee;let te;if(n===`comma`&&Qq(v))h&&c&&(v=AJ(v,c)),te=[{value:v.length>0?v.join(`,`)||null:void 0}];else if(Qq(l))te=l;else{let e=Object.keys(v);te=u?e.sort(u):e}let S=s?String(t).replace(/\./g,`%2E`):String(t),ne=r&&Qq(v)&&v.length===1?S+`[]`:S;if(i&&Qq(v)&&v.length===0)return ne+`[]`;for(let t=0;t<te.length;++t){let y=te[t],x=typeof y==`object`&&y.value!==void 0?y.value:v[y];if(o&&x===null)continue;let S=d&&s?y.replace(/\./g,`%2E`):y,re=Qq(v)?typeof n==`function`?n(ne,S):ne:ne+(d?`.`+S:`[`+S+`]`);_.set(e,b);let ie=new WeakMap;ie.set(IJ,_),MJ(ee,LJ(x,re,n,r,i,a,o,s,n===`comma`&&h&&Qq(v)?null:c,l,u,d,f,p,m,h,g,ie))}return ee}function RJ(e=PJ){if(e.allowEmptyArrays!==void 0&&typeof e.allowEmptyArrays!=`boolean`)throw TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(e.encodeDotInKeys!==void 0&&typeof e.encodeDotInKeys!=`boolean`)throw TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&e.encoder!==void 0&&typeof e.encoder!=`function`)throw TypeError(`Encoder has to be a function.`);let t=e.charset||PJ.charset;if(e.charset!==void 0&&e.charset!==`utf-8`&&e.charset!==`iso-8859-1`)throw TypeError(`The charset option must be either utf-8, iso-8859-1, or undefined`);let n=SJ;if(e.format!==void 0){if(!TJ(wJ,e.format))throw TypeError(`Unknown format option provided.`);n=e.format}let r=wJ[n],i=PJ.filter;(typeof e.filter==`function`||Qq(e.filter))&&(i=e.filter);let a;if(a=e.arrayFormat&&e.arrayFormat in jJ?e.arrayFormat:`indices`in e?e.indices?`indices`:`repeat`:PJ.arrayFormat,`commaRoundTrip`in e&&typeof e.commaRoundTrip!=`boolean`)throw TypeError("`commaRoundTrip` must be a boolean, or absent");let o=e.allowDots===void 0?e.encodeDotInKeys?!0:PJ.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix==`boolean`?e.addQueryPrefix:PJ.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays==`boolean`?!!e.allowEmptyArrays:PJ.allowEmptyArrays,arrayFormat:a,charset:t,charsetSentinel:typeof e.charsetSentinel==`boolean`?e.charsetSentinel:PJ.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:e.delimiter===void 0?PJ.delimiter:e.delimiter,encode:typeof e.encode==`boolean`?e.encode:PJ.encode,encodeDotInKeys:typeof e.encodeDotInKeys==`boolean`?e.encodeDotInKeys:PJ.encodeDotInKeys,encoder:typeof e.encoder==`function`?e.encoder:PJ.encoder,encodeValuesOnly:typeof e.encodeValuesOnly==`boolean`?e.encodeValuesOnly:PJ.encodeValuesOnly,filter:i,format:n,formatter:r,serializeDate:typeof e.serializeDate==`function`?e.serializeDate:PJ.serializeDate,skipNulls:typeof e.skipNulls==`boolean`?e.skipNulls:PJ.skipNulls,sort:typeof e.sort==`function`?e.sort:null,strictNullHandling:typeof e.strictNullHandling==`boolean`?e.strictNullHandling:PJ.strictNullHandling}}function zJ(e,t={}){let n=e,r=RJ(t),i,a;typeof r.filter==`function`?(a=r.filter,n=a(``,n)):Qq(r.filter)&&(a=r.filter,i=a);let o=[];if(typeof n!=`object`||!n)return``;let s=jJ[r.arrayFormat],c=s===`comma`&&r.commaRoundTrip;i||=Object.keys(n),r.sort&&i.sort(r.sort);let l=new WeakMap;for(let e=0;e<i.length;++e){let t=i[e];r.skipNulls&&n[t]===null||MJ(o,LJ(n[t],t,s,c,r.allowEmptyArrays,r.strictNullHandling,r.skipNulls,r.encodeDotInKeys,r.encode?r.encoder:null,r.filter,r.sort,r.allowDots,r.serializeDate,r.format,r.formatter,r.encodeValuesOnly,r.charset,l))}let u=o.join(r.delimiter),d=r.addQueryPrefix===!0?`?`:``;return r.charsetSentinel&&(r.charset===`iso-8859-1`?d+=`utf8=%26%2310003%3B&`:d+=`utf8=%E2%9C%93&`),u.length>0?d+u:``}function BJ(e){return zJ(e,{arrayFormat:`brackets`})}var VJ=`urn:ietf:params:oauth:grant-type:jwt-bearer`,HJ=`refresh_token`,UJ=`/v1/oauth/token`,WJ=`oauth-2025-04-20`,GJ=`oidc-federation-2026-04-01`,KJ=1<<20;function qJ(e){if(!e)return;let t;try{t=new URL(e)}catch(t){throw new tY(`Invalid token endpoint base URL "${e}": ${t}`)}if(t.protocol===`https:`)return;let n=t.hostname.toLowerCase().replace(/^\[|\]$/g,``);if(!(t.protocol===`http:`&&(n===`localhost`||n===`127.0.0.1`||n===`::1`)))throw new tY(`Refusing to send credential over non-https token endpoint "${e}"`)}async function JJ(e,t){let n=await eY(e),r;try{r=JSON.parse(n)}catch{throw new tY(`Token endpoint returned non-JSON response (status ${e.status})`,e.status,ZJ(n),t)}if(!r.access_token)throw new tY(`Token endpoint response missing access_token: ${JSON.stringify(ZJ(r))}`,e.status,ZJ(r),t);if(r.token_type&&r.token_type.toLowerCase()!==`bearer`)throw new tY(`Token endpoint response: unsupported token_type "${r.token_type}" (want Bearer)`,e.status,ZJ(r),t);return r}var YJ=2e3,XJ=new Set([`error`,`error_description`,`error_uri`]);function ZJ(e){if(e==null)return e;if(typeof e==`string`){let t;try{t=JSON.parse(e)}catch{return e.length<=YJ?e:e.slice(0,YJ)+`... <${e.length-YJ} more chars>`}return JSON.stringify(ZJ(t))}if(typeof e==`object`&&!Array.isArray(e)){let t={};for(let[n,r]of Object.entries(e))XJ.has(n)&&(t[n]=r);return t}return null}async function QJ(e,t=e=>console.warn(`anthropic-sdk: ${e}`)){if(typeof process>`u`||process.platform===`win32`)return;let r=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=e,o;try{a=await r.promises.realpath(e),o=await r.promises.stat(a)}catch{return}let s=o.mode&511;if(s&18)throw new tY(`Credentials file at ${a} is group/world-writable (mode 0o${s.toString(8)}); this allows other local users to plant tokens. Run \`chmod 600 ${a}\`.`);if(s&36)throw new tY(`Credentials file at ${a} is group/world-readable (mode 0o${s.toString(8)}); run \`chmod 600 ${a}\` before retrying.`);typeof process.getuid==`function`&&o.uid!==process.getuid()&&t(`credentials file at ${a} is owned by uid ${o.uid} (current process uid ${process.getuid()}); verify this is intentional.`)}async function $J(e,t){let r=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=(await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).dirname(e);await r.promises.mkdir(a,{recursive:!0,mode:448});let o=`${e}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;try{let n=await r.promises.open(o,`w`,384);try{await n.writeFile(JSON.stringify(t,null,2)),await n.sync()}finally{await n.close()}await r.promises.rename(o,e)}catch(e){throw await r.promises.unlink(o).catch(()=>{}),e}try{let e=await r.promises.open(a,`r`);try{await e.sync()}finally{await e.close()}}catch{}}async function eY(e){if(!e.body)return``;let t=e.body.getReader(),n=[],r=0;for(;;){let{done:e,value:i}=await t.read();if(e)break;if(r+i.length>KJ){let e=KJ-r;e>0&&n.push(i.subarray(0,e)),await t.cancel();break}n.push(i),r+=i.length}let i;if(n.length===1)i=n[0];else{i=new Uint8Array(n.reduce((e,t)=>e+t.length,0));let e=0;for(let t of n)i.set(t,e),e+=t.length}return new TextDecoder(`utf-8`).decode(i)}var tY=class extends Z{constructor(e,t=null,n=null,r=null){super(e),this.statusCode=t,this.body=n,this.requestId=r}};function nY(){return Math.floor(Date.now()/1e3)}var rY=class{constructor(e,t){this.cached=null,this.pendingRefresh=null,this.nextForce=!1,this.lastAdvisoryError=0,this.provider=e,this.onAdvisoryRefreshError=t}async getToken(){let e=this.nextForce;this.nextForce=!1;let t=this.cached;if(e||t==null)return(await this.refresh(e)).token;if(t.expiresAt==null)return t.token;let n=t.expiresAt-nY();return n>120?t.token:n>30?(this.backgroundRefresh(),t.token):(await this.refresh()).token}invalidate(){this.cached=null,this.nextForce=!0}refresh(e=!1){return this.pendingRefresh&&!e?this.pendingRefresh:this.doRefresh(e)}backgroundRefresh(){this.pendingRefresh||nY()-this.lastAdvisoryError<5||this.doRefresh().catch(e=>{this.lastAdvisoryError=nY(),this.onAdvisoryRefreshError?.(e)})}doRefresh(e=!1){return this.pendingRefresh=this.provider(e?{forceRefresh:!0}:void 0).then(e=>(this.cached=e,this.pendingRefresh=null,e),e=>{throw this.pendingRefresh=null,e}),this.pendingRefresh}},iY=e=>{if(globalThis.process!==void 0)return{}[e]?.trim()||void 0;if(globalThis.Deno!==void 0)return globalThis.Deno.env?.get?.(e)?.trim()||void 0};function aY(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}var oY;function sY(e){let t;return(oY??=(t=new globalThis.TextEncoder,t.encode.bind(t)))(e)}var cY;function lY(e){let t;return(cY??=(t=new globalThis.TextDecoder,t.decode.bind(t)))(e)}var uY={off:0,error:200,warn:300,info:400,debug:500},dY=(e,t,n)=>{if(e){if(nJ(uY,e))return e;gY(n).warn(`${t} was set to ${JSON.stringify(e)}, expected one of ${JSON.stringify(Object.keys(uY))}`)}};function fY(){}function pY(e,t,n){return!t||uY[e]>uY[n]?fY:t[e].bind(t)}var mY={error:fY,warn:fY,info:fY,debug:fY},hY=new WeakMap;function gY(e){let t=e.logger,n=e.logLevel??`off`;if(!t)return mY;let r=hY.get(t);if(r&&r[0]===n)return r[1];let i={error:pY(`error`,t,n),warn:pY(`warn`,t,n),info:pY(`info`,t,n),debug:pY(`debug`,t,n)};return hY.set(t,[n,i]),i}var _Y=e=>(e.options&&(e.options={...e.options},delete e.options.headers),e.headers&&=Object.fromEntries((e.headers instanceof Headers?[...e.headers]:Object.entries(e.headers)).map(([e,t])=>[e,e.toLowerCase()===`authorization`||e.toLowerCase()===`api-key`||e.toLowerCase()===`x-api-key`||e.toLowerCase()===`cookie`||e.toLowerCase()===`set-cookie`?`***`:t])),`retryOfRequestLogID`in e&&(e.retryOfRequestLogID&&(e.retryOf=e.retryOfRequestLogID),delete e.retryOfRequestLogID),e),vY=/^[A-Za-z0-9_.-]+$/;function yY(e){if(!e)throw Error(`profile name is empty`);if(e===`.`||e===`..`)throw Error(`profile name "${e}" is not allowed`);if(e.includes(`/`)||e.includes(`\\`))throw Error(`profile name "${e}" must not contain path separators`);if(!vY.test(e))throw Error(`profile name "${e}" contains disallowed characters (allowed: letters, digits, '_', '.', '-')`)}var bY=async e=>{var t,r;let a=await SY();if(a===null)return null;let o=e??await wY();if(o===null)return null;yY(o);let s=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),c=(await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(a,`configs`,`${o}.json`),l;try{l=await s.promises.readFile(c,`utf-8`)}catch(e){if(e?.code!==`ENOENT`)throw Error(`failed to read config file ${c}: ${e}`);l=null}if(l===null){let e=iY(`ANTHROPIC_ORGANIZATION_ID`),t=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`),n=iY(`ANTHROPIC_FEDERATION_RULE_ID`);return n&&e?{fromFile:!1,config:{organization_id:e,workspace_id:iY(`ANTHROPIC_WORKSPACE_ID`),base_url:iY(`ANTHROPIC_BASE_URL`),authentication:{type:`oidc_federation`,federation_rule_id:n,service_account_id:iY(`ANTHROPIC_SERVICE_ACCOUNT_ID`),identity_token:t?{source:`file`,path:t}:void 0,scope:iY(`ANTHROPIC_SCOPE`)}}}:null}let u;try{u=JSON.parse(l)}catch(e){throw Error(`failed to parse config file ${c}: ${e}`)}if(!u.authentication)throw Error(`config file ${c} is missing "authentication"`);let d=u.authentication.type;if(d!==`oidc_federation`&&d!==`user_oauth`)throw Error(`authentication.type "${d}" is not a known authentication type`);if(u.organization_id??=iY(`ANTHROPIC_ORGANIZATION_ID`),u.workspace_id??=iY(`ANTHROPIC_WORKSPACE_ID`),u.base_url??=iY(`ANTHROPIC_BASE_URL`),(t=u.authentication).scope??(t.scope=iY(`ANTHROPIC_SCOPE`)),u.authentication.type===`oidc_federation`){if(!u.authentication.identity_token){let e=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`);e&&(u.authentication.identity_token={source:`file`,path:e})}u.authentication.federation_rule_id||(u.authentication.federation_rule_id=iY(`ANTHROPIC_FEDERATION_RULE_ID`)??``),(r=u.authentication).service_account_id??(r.service_account_id=iY(`ANTHROPIC_SERVICE_ACCOUNT_ID`))}return{config:u,fromFile:!0}},xY=async(e,t)=>{if(e?.authentication.credentials_path)return e.authentication.credentials_path;let r=await SY();if(!r)return null;let a=t??await wY();return a?(yY(a),(await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(r,`credentials`,`${a}.json`)):null},SY=async()=>{if(!CY())return null;let e=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),t=iY(`ANTHROPIC_CONFIG_DIR`);if(t)return t;if(hJ()[`X-Stainless-OS`]===`Windows`){let t=iY(`APPDATA`);if(t)return e.join(t,`Anthropic`);let n=iY(`USERPROFILE`);return n?e.join(n,`AppData`,`Roaming`,`Anthropic`):null}let r=iY(`XDG_CONFIG_HOME`);if(r)return e.join(r,`anthropic`);let a=iY(`HOME`);return a?e.join(a,`.config`,`anthropic`):null},CY=()=>{let e=hJ()[`X-Stainless-Runtime`];return e===`node`||e===`deno`},wY=async()=>{let e=await SY();if(!e)return null;let t=iY(`ANTHROPIC_PROFILE`);if(t)return t;let r=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),a=(await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]))).join(e,`active_config`);try{return(await r.promises.readFile(a,`utf-8`)).trim()||`default`}catch(e){if(e?.code!==`ENOENT`)throw Error(`failed to read ${a}: ${e}`);return`default`}};function TY(e){if(!e)throw new Z(`Identity token file path is empty`);return async()=>{let t=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2])),r;try{r=await t.promises.readFile(e,`utf-8`)}catch(t){throw new Z(`Failed to read identity token file at ${e}: ${t}`)}let a=r.trim();if(!a)throw new Z(`Identity token file at ${e} is empty`);return a}}function EY(e){if(!e)throw new Z(`Identity token value is empty`);return()=>e}function DY(e){return async()=>{qJ(e.baseURL);let t=await e.identityTokenProvider();if(t.length>16*1024)throw new tY(`Identity token is ${Math.ceil(t.length/1024)} KiB, exceeds the 16 KiB assertion limit`);let n={grant_type:VJ,assertion:t,federation_rule_id:e.federationRuleId,organization_id:e.organizationId};e.serviceAccountId&&(n.service_account_id=e.serviceAccountId),e.workspaceId&&(n.workspace_id=e.workspaceId);let r=`${e.baseURL}${UJ}`,i;try{i=await e.fetch(r,{method:`POST`,headers:{"Content-Type":`application/json`,"anthropic-beta":`${WJ},${GJ}`,"User-Agent":e.userAgent||`anthropic-sdk-typescript/0.95.2 oidcFederationProvider`},body:JSON.stringify(n)})}catch(e){throw new tY(`Failed to reach token endpoint ${r}: ${e}`)}let a=i.headers.get(`Request-Id`);if(!i.ok){let t=ZJ(await i.text().catch(()=>``)),n=``;throw i.status===401&&(n=` Ensure your federation rule matches your identity token. ${e.workspaceId?``:"If your federation rule is scoped to multiple workspaces, set the ANTHROPIC_WORKSPACE_ID environment variable, the 'workspace_id' config key, or the `workspaceId` option. "}View your authentication events in the Workload identity page of Claude Console for more details.`),new tY(`Token exchange failed with status ${i.status}${a?` (request-id ${a})`:``}: ${t}${n}`,i.status,t,a)}let o=await JJ(i,a),s=Number(o.expires_in);if(!Number.isFinite(s))throw new tY(`Token endpoint response missing required fields: ${JSON.stringify(ZJ(o))}`,i.status,ZJ(o),a);return{token:o.access_token,expiresAt:nY()+s}}}function OY(e){return async t=>{let r=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]));await QJ(e.credentialsPath,e.onSafetyWarning);let a;try{a=await r.promises.readFile(e.credentialsPath,`utf-8`)}catch(t){throw new tY(`Credentials file not found at ${e.credentialsPath}: ${t}`)}let o;try{o=JSON.parse(a)}catch(t){throw new tY(`Credentials file at ${e.credentialsPath} is not valid JSON: ${t}`)}let s=o.access_token;if(!s)throw new tY(`Credentials file at ${e.credentialsPath} must include 'access_token'`);let c=o.expires_at;if(!t?.forceRefresh&&(c==null||nY()<c-30))return{token:s,expiresAt:c??null};let l=o.refresh_token;if(!e.clientId||!l)throw new tY(`Access token at ${e.credentialsPath} has expired and no refresh is available (client_id ${e.clientId?`set`:`empty`}, refresh_token ${l?`set`:`empty`})`);qJ(e.baseURL);let u={grant_type:HJ,refresh_token:l,client_id:e.clientId},d=`${e.baseURL}${UJ}`,f;try{f=await e.fetch(d,{method:`POST`,headers:{"Content-Type":`application/json`,"anthropic-beta":WJ,"User-Agent":e.userAgent||`anthropic-sdk-typescript/0.95.2 userOAuthProvider`},body:JSON.stringify(u)})}catch(e){throw new tY(`User OAuth refresh failed to reach token endpoint: ${e}`)}let p=f.headers.get(`Request-Id`);if(!f.ok){let e=await f.text().catch(()=>``);throw new tY(`User OAuth refresh failed (HTTP ${f.status}): ${ZJ(e)}`,f.status,ZJ(e),p)}let m=await JJ(f,p),h=Number(m.expires_in);if(!Number.isFinite(h))throw new tY(`User OAuth refresh response missing or invalid expires_in: ${JSON.stringify(ZJ(m))}`,f.status,ZJ(m),p);let g=nY()+h,_=m.refresh_token||l;return await $J(e.credentialsPath,{...o,version:`1.0`,type:`oauth_token`,access_token:m.access_token,expires_at:g,refresh_token:_}),{token:m.access_token,expiresAt:g}}}function kY(e,t){let n=jY(e,e.authentication.credentials_path??null,(e.base_url||t.baseURL).replace(/\/+$/,``),t),r={};return e.workspace_id&&e.authentication.type===`user_oauth`&&(r[`anthropic-workspace-id`]=e.workspace_id),{provider:n,extraHeaders:r,baseURL:e.base_url||void 0}}async function AY(e,t){let n=await bY(t);if(!n)return null;let{config:r,fromFile:i}=n;return kY(r.authentication.credentials_path||!i?r:{...r,authentication:{...r.authentication,credentials_path:await xY(r,t)??void 0}},e)}function jY(e,t,n,r){switch(e.authentication.type){case`oidc_federation`:{let i=e.authentication,a=MY(i);if(!a)throw new tY(`oidc_federation config requires an identity token (set authentication.identity_token, ANTHROPIC_IDENTITY_TOKEN_FILE, or ANTHROPIC_IDENTITY_TOKEN)`);if(!i.federation_rule_id)throw new tY(`oidc_federation config requires 'federation_rule_id'. Set it in authentication.federation_rule_id in your profile, or via ANTHROPIC_FEDERATION_RULE_ID (profile takes precedence).`);if(!e.organization_id)throw new tY(`oidc_federation config requires organization_id (set ANTHROPIC_ORGANIZATION_ID or config.organization_id)`);let o=DY({identityTokenProvider:a,federationRuleId:i.federation_rule_id,organizationId:e.organization_id,serviceAccountId:i.service_account_id,workspaceId:e.workspace_id,baseURL:n,fetch:r.fetch,userAgent:r.userAgent});return t?NY(o,t,r.onCacheWriteError,r.onSafetyWarning):o}case`user_oauth`:if(!t)throw new tY(`user_oauth config requires authentication.credentials_path (or load via a profile so it defaults to <config_dir>/credentials/<profile>.json)`);return OY({credentialsPath:t,clientId:e.authentication.client_id,baseURL:n,fetch:r.fetch,userAgent:r.userAgent,onSafetyWarning:r.onSafetyWarning});default:{let t=e.authentication.type;throw new tY(`authentication.type "${t}" is not a known authentication type`)}}}function MY(e){if(e.identity_token){let t=e.identity_token.source;if(t!==`file`)throw new tY(`identity_token.source "${t}" is not supported by this SDK version (only "file")`);if(!e.identity_token.path)throw new tY(`identity_token.source "file" requires a non-empty path`);return TY(e.identity_token.path)}let t=iY(`ANTHROPIC_IDENTITY_TOKEN_FILE`);if(t)return TY(t);let n=iY(`ANTHROPIC_IDENTITY_TOKEN`);return n?EY(n):null}function NY(e,t,r,a){return async o=>{let s=await i(()=>import(`./__vite-browser-external-ZHh0aOLt.js`).then(e=>n(e.default,1)),__vite__mapDeps([0,1,2]));await QJ(t,a);let c;try{let e=await s.promises.readFile(t,`utf-8`);c=JSON.parse(e);let n=c?.access_token;if(n&&!o?.forceRefresh){let e=c?.expires_at;if(e==null||nY()<e-30)return{token:n,expiresAt:e??null}}}catch(e){e?.code!==`ENOENT`&&!(e instanceof SyntaxError)&&r?.(e)}let l=await e(o);try{await $J(t,{...c??{},version:`1.0`,type:`oauth_token`,access_token:l.token,expires_at:l.expiresAt})}catch(e){r?.(e)}return l}}var PY,FY,IY=class{constructor(){PY.set(this,void 0),FY.set(this,void 0),Y(this,PY,new Uint8Array,`f`),Y(this,FY,null,`f`)}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e==`string`?sY(e):e;Y(this,PY,aY([X(this,PY,`f`),t]),`f`);let n=[],r;for(;(r=LY(X(this,PY,`f`),X(this,FY,`f`)))!=null;){if(r.carriage&&X(this,FY,`f`)==null){Y(this,FY,r.index,`f`);continue}if(X(this,FY,`f`)!=null&&(r.index!==X(this,FY,`f`)+1||r.carriage)){n.push(lY(X(this,PY,`f`).subarray(0,X(this,FY,`f`)-1))),Y(this,PY,X(this,PY,`f`).subarray(X(this,FY,`f`)),`f`),Y(this,FY,null,`f`);continue}let e=X(this,FY,`f`)===null?r.preceding:r.preceding-1,t=lY(X(this,PY,`f`).subarray(0,e));n.push(t),Y(this,PY,X(this,PY,`f`).subarray(r.index),`f`),Y(this,FY,null,`f`)}return n}flush(){return X(this,PY,`f`).length?this.decode(`
|
|
181
181
|
`):[]}};PY=new WeakMap,FY=new WeakMap,IY.NEWLINE_CHARS=new Set([`
|
|
182
182
|
`,`\r`]),IY.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function LY(e,t){for(let n=t??0;n<e.length;n++){if(e[n]===10)return{preceding:n,index:n+1,carriage:!1};if(e[n]===13)return{preceding:n,index:n+1,carriage:!0}}return null}function RY(e){for(let t=0;t<e.length-1;t++){if(e[t]===10&&e[t+1]===10||e[t]===13&&e[t+1]===13)return t+2;if(e[t]===13&&e[t+1]===10&&t+3<e.length&&e[t+2]===13&&e[t+3]===10)return t+4}return-1}var zY,BY=class e{constructor(e,t,n){this.iterator=e,zY.set(this,void 0),this.controller=t,Y(this,zY,n,`f`)}static fromSSEResponse(t,n,r){let i=!1,a=r?gY(r):console;async function*o(){if(i)throw new Z("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let e=!1;try{for await(let e of VY(t,n)){if(e.event===`completion`)try{yield JSON.parse(e.data)}catch(t){throw a.error(`Could not parse message into JSON:`,e.data),a.error(`From chunk:`,e.raw),t}if(e.event===`message_start`||e.event===`message_delta`||e.event===`message_stop`||e.event===`content_block_start`||e.event===`content_block_delta`||e.event===`content_block_stop`||e.event===`message`||e.event===`user.message`||e.event===`user.interrupt`||e.event===`user.tool_confirmation`||e.event===`user.custom_tool_result`||e.event===`agent.message`||e.event===`agent.thinking`||e.event===`agent.tool_use`||e.event===`agent.tool_result`||e.event===`agent.mcp_tool_use`||e.event===`agent.mcp_tool_result`||e.event===`agent.custom_tool_use`||e.event===`agent.thread_context_compacted`||e.event===`session.status_running`||e.event===`session.status_idle`||e.event===`session.status_rescheduled`||e.event===`session.status_terminated`||e.event===`session.error`||e.event===`session.deleted`||e.event===`span.model_request_start`||e.event===`span.model_request_end`||e.event===`span.outcome_evaluation_start`||e.event===`span.outcome_evaluation_ongoing`||e.event===`span.outcome_evaluation_end`||e.event===`user.define_outcome`||e.event===`agent.thread_message_received`||e.event===`agent.thread_message_sent`||e.event===`agent.session_thread_message_received`||e.event===`agent.session_thread_message_sent`||e.event===`session.thread_created`||e.event===`session.thread_status_created`||e.event===`session.thread_status_running`||e.event===`session.thread_status_idle`||e.event===`session.thread_status_rescheduled`||e.event===`session.thread_status_terminated`)try{yield JSON.parse(e.data)}catch(t){throw a.error(`Could not parse message into JSON:`,e.data),a.error(`From chunk:`,e.raw),t}if(e.event!==`ping`&&e.event===`error`){let n=iJ(e.data)??e.data,r=n?.error?.type;throw new Rq(void 0,n,void 0,t.headers,r)}}e=!0}catch(e){if(Iq(e))return;throw e}finally{e||n.abort()}}return new e(o,n,r)}static fromReadableStream(t,n,r){let i=!1;async function*a(){let e=new IY,n=yJ(t);for await(let t of n)for(let n of e.decode(t))yield n;for(let t of e.flush())yield t}async function*o(){if(i)throw new Z("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let e=!1;try{for await(let t of a())e||t&&(yield JSON.parse(t));e=!0}catch(e){if(Iq(e))return;throw e}finally{e||n.abort()}}return new e(o,n,r)}[(zY=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let t=[],n=[],r=this.iterator(),i=e=>({next:()=>{if(e.length===0){let e=r.next();t.push(e),n.push(e)}return e.shift()}});return[new e(()=>i(t),this.controller,X(this,zY,`f`)),new e(()=>i(n),this.controller,X(this,zY,`f`))]}toReadableStream(){let e=this,t;return _J({async start(){t=e[Symbol.asyncIterator]()},async pull(e){try{let{value:n,done:r}=await t.next();if(r)return e.close();let i=sY(JSON.stringify(n)+`
|
|
183
183
|
`);e.enqueue(i)}catch(t){e.error(t)}},async cancel(){await t.return?.()}})}};async function*VY(e,t){if(!e.body)throw t.abort(),globalThis.navigator!==void 0&&globalThis.navigator.product===`ReactNative`?new Z(`The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api`):new Z(`Attempted to iterate over a response with no body`);let n=new UY,r=new IY,i=yJ(e.body);for await(let e of HY(i))for(let t of r.decode(e)){let e=n.decode(t);e&&(yield e)}for(let e of r.flush()){let t=n.decode(e);t&&(yield t)}}async function*HY(e){let t=new Uint8Array;for await(let n of e){if(n==null)continue;let e=n instanceof ArrayBuffer?new Uint8Array(n):typeof n==`string`?sY(n):n,r=new Uint8Array(t.length+e.length);r.set(t),r.set(e,t.length),t=r;let i;for(;(i=RY(t))!==-1;)yield t.slice(0,i),t=t.slice(i)}t.length>0&&(yield t)}var UY=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith(`\r`)&&(e=e.substring(0,e.length-1)),!e){if(!this.event&&!this.data.length)return null;let e={event:this.event,data:this.data.join(`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as e}from"./chunk-KGYTTC2M-icDjj_dF.js";export{e as createArchitectureServices};
|