@tarquinen/opencode-dcp 0.4.17 → 1.0.0-beta.2
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 +58 -30
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -59
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +30 -13
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +339 -121
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/hooks.d.ts +5 -13
- package/dist/lib/hooks.d.ts.map +1 -1
- package/dist/lib/hooks.js +26 -125
- package/dist/lib/hooks.js.map +1 -1
- package/dist/lib/logger.d.ts +5 -9
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +30 -160
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/messages/index.d.ts +2 -0
- package/dist/lib/messages/index.d.ts.map +1 -0
- package/dist/lib/messages/index.js +2 -0
- package/dist/lib/messages/index.js.map +1 -0
- package/dist/lib/messages/prune.d.ts +6 -0
- package/dist/lib/messages/prune.d.ts.map +1 -0
- package/dist/lib/messages/prune.js +85 -0
- package/dist/lib/messages/prune.js.map +1 -0
- package/dist/lib/messages/utils.d.ts +10 -0
- package/dist/lib/messages/utils.d.ts.map +1 -0
- package/dist/lib/messages/utils.js +103 -0
- package/dist/lib/messages/utils.js.map +1 -0
- package/dist/lib/model-selector.js +3 -3
- package/dist/lib/model-selector.js.map +1 -1
- package/dist/lib/{core/prompt.d.ts → prompt.d.ts} +1 -1
- package/dist/lib/prompt.d.ts.map +1 -0
- package/dist/lib/{core/prompt.js → prompt.js} +2 -6
- package/dist/lib/prompt.js.map +1 -0
- package/dist/lib/prompts/pruning.txt +1 -1
- package/dist/lib/prompts/tool.txt +3 -3
- package/dist/lib/state/index.d.ts +3 -27
- package/dist/lib/state/index.d.ts.map +1 -1
- package/dist/lib/state/index.js +3 -40
- package/dist/lib/state/index.js.map +1 -1
- package/dist/lib/state/persistence.d.ts +4 -4
- package/dist/lib/state/persistence.d.ts.map +1 -1
- package/dist/lib/state/persistence.js +24 -20
- package/dist/lib/state/persistence.js.map +1 -1
- package/dist/lib/state/state.d.ts +7 -0
- package/dist/lib/state/state.d.ts.map +1 -0
- package/dist/lib/state/state.js +76 -0
- package/dist/lib/state/state.js.map +1 -0
- package/dist/lib/state/tool-cache.d.ts +4 -6
- package/dist/lib/state/tool-cache.d.ts.map +1 -1
- package/dist/lib/state/tool-cache.js +20 -46
- package/dist/lib/state/tool-cache.js.map +1 -1
- package/dist/lib/state/types.d.ts +30 -0
- package/dist/lib/state/types.d.ts.map +1 -0
- package/dist/lib/state/types.js +2 -0
- package/dist/lib/state/types.js.map +1 -0
- package/dist/lib/strategies/deduplication.d.ts +10 -0
- package/dist/lib/strategies/deduplication.d.ts.map +1 -0
- package/dist/lib/strategies/deduplication.js +89 -0
- package/dist/lib/strategies/deduplication.js.map +1 -0
- package/dist/lib/strategies/index.d.ts +4 -0
- package/dist/lib/strategies/index.d.ts.map +1 -0
- package/dist/lib/strategies/index.js +4 -0
- package/dist/lib/strategies/index.js.map +1 -0
- package/dist/lib/strategies/on-idle.d.ts +14 -0
- package/dist/lib/strategies/on-idle.d.ts.map +1 -0
- package/dist/lib/strategies/on-idle.js +216 -0
- package/dist/lib/strategies/on-idle.js.map +1 -0
- package/dist/lib/strategies/prune-tool.d.ts +17 -0
- package/dist/lib/strategies/prune-tool.d.ts.map +1 -0
- package/dist/lib/strategies/prune-tool.js +70 -0
- package/dist/lib/strategies/prune-tool.js.map +1 -0
- package/dist/lib/ui/display-utils.d.ts +3 -12
- package/dist/lib/ui/display-utils.d.ts.map +1 -1
- package/dist/lib/ui/display-utils.js +12 -79
- package/dist/lib/ui/display-utils.js.map +1 -1
- package/dist/lib/ui/notification.d.ts +7 -23
- package/dist/lib/ui/notification.d.ts.map +1 -1
- package/dist/lib/ui/notification.js +38 -47
- package/dist/lib/ui/notification.js.map +1 -1
- package/dist/lib/utils.d.ts +9 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +61 -0
- package/dist/lib/utils.js.map +1 -0
- package/package.json +1 -1
- package/dist/lib/core/janitor.d.ts +0 -38
- package/dist/lib/core/janitor.d.ts.map +0 -1
- package/dist/lib/core/janitor.js +0 -294
- package/dist/lib/core/janitor.js.map +0 -1
- package/dist/lib/core/prompt.d.ts.map +0 -1
- package/dist/lib/core/prompt.js.map +0 -1
- package/dist/lib/core/strategies/deduplication.d.ts +0 -7
- package/dist/lib/core/strategies/deduplication.d.ts.map +0 -1
- package/dist/lib/core/strategies/deduplication.js +0 -76
- package/dist/lib/core/strategies/deduplication.js.map +0 -1
- package/dist/lib/core/strategies/index.d.ts +0 -51
- package/dist/lib/core/strategies/index.d.ts.map +0 -1
- package/dist/lib/core/strategies/index.js +0 -48
- package/dist/lib/core/strategies/index.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/anthropic.d.ts +0 -8
- package/dist/lib/fetch-wrapper/formats/anthropic.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/anthropic.js +0 -96
- package/dist/lib/fetch-wrapper/formats/anthropic.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/bedrock.d.ts +0 -8
- package/dist/lib/fetch-wrapper/formats/bedrock.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/bedrock.js +0 -97
- package/dist/lib/fetch-wrapper/formats/bedrock.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/gemini.d.ts +0 -8
- package/dist/lib/fetch-wrapper/formats/gemini.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/gemini.js +0 -134
- package/dist/lib/fetch-wrapper/formats/gemini.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/index.d.ts +0 -6
- package/dist/lib/fetch-wrapper/formats/index.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/index.js +0 -6
- package/dist/lib/fetch-wrapper/formats/index.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/openai-chat.d.ts +0 -3
- package/dist/lib/fetch-wrapper/formats/openai-chat.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/openai-chat.js +0 -100
- package/dist/lib/fetch-wrapper/formats/openai-chat.js.map +0 -1
- package/dist/lib/fetch-wrapper/formats/openai-responses.d.ts +0 -3
- package/dist/lib/fetch-wrapper/formats/openai-responses.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/formats/openai-responses.js +0 -63
- package/dist/lib/fetch-wrapper/formats/openai-responses.js.map +0 -1
- package/dist/lib/fetch-wrapper/gc-tracker.d.ts +0 -4
- package/dist/lib/fetch-wrapper/gc-tracker.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/gc-tracker.js +0 -61
- package/dist/lib/fetch-wrapper/gc-tracker.js.map +0 -1
- package/dist/lib/fetch-wrapper/handler.d.ts +0 -3
- package/dist/lib/fetch-wrapper/handler.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/handler.js +0 -118
- package/dist/lib/fetch-wrapper/handler.js.map +0 -1
- package/dist/lib/fetch-wrapper/index.d.ts +0 -18
- package/dist/lib/fetch-wrapper/index.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/index.js +0 -107
- package/dist/lib/fetch-wrapper/index.js.map +0 -1
- package/dist/lib/fetch-wrapper/prunable-list.d.ts +0 -8
- package/dist/lib/fetch-wrapper/prunable-list.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/prunable-list.js +0 -38
- package/dist/lib/fetch-wrapper/prunable-list.js.map +0 -1
- package/dist/lib/fetch-wrapper/tool-tracker.d.ts +0 -9
- package/dist/lib/fetch-wrapper/tool-tracker.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/tool-tracker.js +0 -12
- package/dist/lib/fetch-wrapper/tool-tracker.js.map +0 -1
- package/dist/lib/fetch-wrapper/types.d.ts +0 -62
- package/dist/lib/fetch-wrapper/types.d.ts.map +0 -1
- package/dist/lib/fetch-wrapper/types.js +0 -7
- package/dist/lib/fetch-wrapper/types.js.map +0 -1
- package/dist/lib/pruning-tool.d.ts +0 -20
- package/dist/lib/pruning-tool.d.ts.map +0 -1
- package/dist/lib/pruning-tool.js +0 -160
- package/dist/lib/pruning-tool.js.map +0 -1
- package/dist/lib/state/id-mapping.d.ts +0 -25
- package/dist/lib/state/id-mapping.d.ts.map +0 -1
- package/dist/lib/state/id-mapping.js +0 -51
- package/dist/lib/state/id-mapping.js.map +0 -1
- package/dist/lib/tokenizer.d.ts +0 -3
- package/dist/lib/tokenizer.d.ts.map +0 -1
- package/dist/lib/tokenizer.js +0 -16
- package/dist/lib/tokenizer.js.map +0 -1
- package/dist/lib/version-checker.d.ts +0 -9
- package/dist/lib/version-checker.d.ts.map +0 -1
- package/dist/lib/version-checker.js +0 -77
- package/dist/lib/version-checker.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/anthropic.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAqB;IAC7C,IAAI,EAAE,WAAW;IAEjB,MAAM,CAAC,IAAS;QACZ,OAAO,CACH,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/B,CAAA;IACL,CAAC;IAED,YAAY,CAAC,IAAS;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAED,mBAAmB,CAAC,IAAS,EAAE,SAAiB;QAC5C,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAA;QAE5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACvD,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QACpB,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QACnD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,iBAAiB,CAAC,IAAS,EAAE,SAAiB;QAC1C,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAA;QAClF,OAAO,IAAI,CAAA;IACf,CAAC;IAED,kBAAkB,CAAC,IAAW,EAAE,KAAkB;QAC9C,MAAM,OAAO,GAAiB,EAAE,CAAA;QAEhC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACpD,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAA;wBACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;wBACpD,OAAO,CAAC,IAAI,CAAC;4BACT,EAAE,EAAE,SAAS;4BACb,QAAQ,EAAE,QAAQ,EAAE,IAAI;yBAC3B,CAAC,CAAA;oBACN,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAED,iBAAiB,CAAC,IAAW,EAAE,MAAc,EAAE,aAAqB,EAAE,MAAmB;QACrF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QACxC,IAAI,QAAQ,GAAG,KAAK,CAAA;QAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAEjB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,IAAI,eAAe,GAAG,KAAK,CAAA;gBAC3B,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;oBAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,CAAC;wBACnF,eAAe,GAAG,IAAI,CAAA;wBACtB,OAAO;4BACH,GAAG,KAAK;4BACR,OAAO,EAAE,aAAa;yBACzB,CAAA;oBACL,CAAC;oBACD,OAAO,KAAK,CAAA;gBAChB,CAAC,CAAC,CAAA;gBACF,IAAI,eAAe,EAAE,CAAC;oBAClB,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;oBACvC,QAAQ,GAAG,IAAI,CAAA;gBACnB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,cAAc,CAAC,IAAW;QACtB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;wBAAE,OAAO,IAAI,CAAA;gBACjD,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,cAAc,CAAC,IAAW,EAAE,aAAqB,EAAE,QAAgB;QAC/D,OAAO;YACH,GAAG,EAAE,QAAQ;YACb,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,MAAM;YAC1B,MAAM,EAAE,WAAW;SACtB,CAAA;IACL,CAAC;CACJ,CAAA"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { FormatDescriptor } from "../types";
|
|
2
|
-
/**
|
|
3
|
-
* Bedrock uses top-level `system` array + `inferenceConfig` (distinguishes from OpenAI/Anthropic).
|
|
4
|
-
* Tool calls: `toolUse` blocks in assistant content with `toolUseId`
|
|
5
|
-
* Tool results: `toolResult` blocks in user content with `toolUseId`
|
|
6
|
-
*/
|
|
7
|
-
export declare const bedrockFormat: FormatDescriptor;
|
|
8
|
-
//# sourceMappingURL=bedrock.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bedrock.d.ts","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/bedrock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,UAAU,CAAA;AAG5D;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,gBAwG3B,CAAA"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bedrock uses top-level `system` array + `inferenceConfig` (distinguishes from OpenAI/Anthropic).
|
|
3
|
-
* Tool calls: `toolUse` blocks in assistant content with `toolUseId`
|
|
4
|
-
* Tool results: `toolResult` blocks in user content with `toolUseId`
|
|
5
|
-
*/
|
|
6
|
-
export const bedrockFormat = {
|
|
7
|
-
name: 'bedrock',
|
|
8
|
-
detect(body) {
|
|
9
|
-
return (Array.isArray(body.system) &&
|
|
10
|
-
body.inferenceConfig !== undefined &&
|
|
11
|
-
Array.isArray(body.messages));
|
|
12
|
-
},
|
|
13
|
-
getDataArray(body) {
|
|
14
|
-
return body.messages;
|
|
15
|
-
},
|
|
16
|
-
injectSystemMessage(body, injection) {
|
|
17
|
-
if (!injection)
|
|
18
|
-
return false;
|
|
19
|
-
if (!Array.isArray(body.system)) {
|
|
20
|
-
body.system = [];
|
|
21
|
-
}
|
|
22
|
-
body.system.push({ text: injection });
|
|
23
|
-
return true;
|
|
24
|
-
},
|
|
25
|
-
appendUserMessage(body, injection) {
|
|
26
|
-
if (!injection || !body.messages)
|
|
27
|
-
return false;
|
|
28
|
-
body.messages.push({ role: 'user', content: [{ text: injection }] });
|
|
29
|
-
return true;
|
|
30
|
-
},
|
|
31
|
-
extractToolOutputs(data, state) {
|
|
32
|
-
const outputs = [];
|
|
33
|
-
for (const m of data) {
|
|
34
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
35
|
-
for (const block of m.content) {
|
|
36
|
-
if (block.toolResult && block.toolResult.toolUseId) {
|
|
37
|
-
const toolUseId = block.toolResult.toolUseId.toLowerCase();
|
|
38
|
-
const metadata = state.toolParameters.get(toolUseId);
|
|
39
|
-
outputs.push({
|
|
40
|
-
id: toolUseId,
|
|
41
|
-
toolName: metadata?.tool
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return outputs;
|
|
48
|
-
},
|
|
49
|
-
replaceToolOutput(data, toolId, prunedMessage, _state) {
|
|
50
|
-
const toolIdLower = toolId.toLowerCase();
|
|
51
|
-
let replaced = false;
|
|
52
|
-
for (let i = 0; i < data.length; i++) {
|
|
53
|
-
const m = data[i];
|
|
54
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
55
|
-
let messageModified = false;
|
|
56
|
-
const newContent = m.content.map((block) => {
|
|
57
|
-
if (block.toolResult && block.toolResult.toolUseId?.toLowerCase() === toolIdLower) {
|
|
58
|
-
messageModified = true;
|
|
59
|
-
return {
|
|
60
|
-
...block,
|
|
61
|
-
toolResult: {
|
|
62
|
-
...block.toolResult,
|
|
63
|
-
content: [{ text: prunedMessage }]
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
return block;
|
|
68
|
-
});
|
|
69
|
-
if (messageModified) {
|
|
70
|
-
data[i] = { ...m, content: newContent };
|
|
71
|
-
replaced = true;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return replaced;
|
|
76
|
-
},
|
|
77
|
-
hasToolOutputs(data) {
|
|
78
|
-
for (const m of data) {
|
|
79
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
80
|
-
for (const block of m.content) {
|
|
81
|
-
if (block.toolResult)
|
|
82
|
-
return true;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return false;
|
|
87
|
-
},
|
|
88
|
-
getLogMetadata(data, replacedCount, inputUrl) {
|
|
89
|
-
return {
|
|
90
|
-
url: inputUrl,
|
|
91
|
-
replacedCount,
|
|
92
|
-
totalMessages: data.length,
|
|
93
|
-
format: 'bedrock'
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
};
|
|
97
|
-
//# sourceMappingURL=bedrock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bedrock.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/bedrock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { FormatDescriptor } from "../types";
|
|
2
|
-
/**
|
|
3
|
-
* Gemini doesn't include tool call IDs in its native format.
|
|
4
|
-
* We use position-based correlation via state.googleToolCallMapping which maps
|
|
5
|
-
* "toolName:index" -> "toolCallId" (populated by hooks.ts from message events).
|
|
6
|
-
*/
|
|
7
|
-
export declare const geminiFormat: FormatDescriptor;
|
|
8
|
-
//# sourceMappingURL=gemini.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,UAAU,CAAA;AAG5D;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,gBAuJ1B,CAAA"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gemini doesn't include tool call IDs in its native format.
|
|
3
|
-
* We use position-based correlation via state.googleToolCallMapping which maps
|
|
4
|
-
* "toolName:index" -> "toolCallId" (populated by hooks.ts from message events).
|
|
5
|
-
*/
|
|
6
|
-
export const geminiFormat = {
|
|
7
|
-
name: 'gemini',
|
|
8
|
-
detect(body) {
|
|
9
|
-
return body.contents && Array.isArray(body.contents);
|
|
10
|
-
},
|
|
11
|
-
getDataArray(body) {
|
|
12
|
-
return body.contents;
|
|
13
|
-
},
|
|
14
|
-
injectSystemMessage(body, injection) {
|
|
15
|
-
if (!injection)
|
|
16
|
-
return false;
|
|
17
|
-
if (!body.systemInstruction) {
|
|
18
|
-
body.systemInstruction = { parts: [] };
|
|
19
|
-
}
|
|
20
|
-
if (!Array.isArray(body.systemInstruction.parts)) {
|
|
21
|
-
body.systemInstruction.parts = [];
|
|
22
|
-
}
|
|
23
|
-
body.systemInstruction.parts.push({ text: injection });
|
|
24
|
-
return true;
|
|
25
|
-
},
|
|
26
|
-
appendUserMessage(body, injection) {
|
|
27
|
-
if (!injection || !body.contents)
|
|
28
|
-
return false;
|
|
29
|
-
body.contents.push({ role: 'user', parts: [{ text: injection }] });
|
|
30
|
-
return true;
|
|
31
|
-
},
|
|
32
|
-
extractToolOutputs(data, state) {
|
|
33
|
-
const outputs = [];
|
|
34
|
-
let positionMapping;
|
|
35
|
-
for (const [_sessionId, mapping] of state.googleToolCallMapping) {
|
|
36
|
-
if (mapping && mapping.size > 0) {
|
|
37
|
-
positionMapping = mapping;
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
if (!positionMapping) {
|
|
42
|
-
return outputs;
|
|
43
|
-
}
|
|
44
|
-
const toolPositionCounters = new Map();
|
|
45
|
-
for (const content of data) {
|
|
46
|
-
if (!Array.isArray(content.parts))
|
|
47
|
-
continue;
|
|
48
|
-
for (const part of content.parts) {
|
|
49
|
-
if (part.functionResponse) {
|
|
50
|
-
const funcName = part.functionResponse.name?.toLowerCase();
|
|
51
|
-
if (funcName) {
|
|
52
|
-
const currentIndex = toolPositionCounters.get(funcName) || 0;
|
|
53
|
-
toolPositionCounters.set(funcName, currentIndex + 1);
|
|
54
|
-
const positionKey = `${funcName}:${currentIndex}`;
|
|
55
|
-
const toolCallId = positionMapping.get(positionKey);
|
|
56
|
-
if (toolCallId) {
|
|
57
|
-
const metadata = state.toolParameters.get(toolCallId.toLowerCase());
|
|
58
|
-
outputs.push({
|
|
59
|
-
id: toolCallId.toLowerCase(),
|
|
60
|
-
toolName: metadata?.tool
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
return outputs;
|
|
68
|
-
},
|
|
69
|
-
replaceToolOutput(data, toolId, prunedMessage, state) {
|
|
70
|
-
let positionMapping;
|
|
71
|
-
for (const [_sessionId, mapping] of state.googleToolCallMapping) {
|
|
72
|
-
if (mapping && mapping.size > 0) {
|
|
73
|
-
positionMapping = mapping;
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
if (!positionMapping) {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
const toolIdLower = toolId.toLowerCase();
|
|
81
|
-
const toolPositionCounters = new Map();
|
|
82
|
-
let replaced = false;
|
|
83
|
-
for (let i = 0; i < data.length; i++) {
|
|
84
|
-
const content = data[i];
|
|
85
|
-
if (!Array.isArray(content.parts))
|
|
86
|
-
continue;
|
|
87
|
-
let contentModified = false;
|
|
88
|
-
const newParts = content.parts.map((part) => {
|
|
89
|
-
if (part.functionResponse) {
|
|
90
|
-
const funcName = part.functionResponse.name?.toLowerCase();
|
|
91
|
-
if (funcName) {
|
|
92
|
-
const currentIndex = toolPositionCounters.get(funcName) || 0;
|
|
93
|
-
toolPositionCounters.set(funcName, currentIndex + 1);
|
|
94
|
-
const positionKey = `${funcName}:${currentIndex}`;
|
|
95
|
-
const mappedToolId = positionMapping.get(positionKey);
|
|
96
|
-
if (mappedToolId?.toLowerCase() === toolIdLower) {
|
|
97
|
-
contentModified = true;
|
|
98
|
-
replaced = true;
|
|
99
|
-
// Preserve thoughtSignature if present (required for Gemini 3 Pro)
|
|
100
|
-
return {
|
|
101
|
-
...part,
|
|
102
|
-
functionResponse: {
|
|
103
|
-
...part.functionResponse,
|
|
104
|
-
response: {
|
|
105
|
-
name: part.functionResponse.name,
|
|
106
|
-
content: prunedMessage
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return part;
|
|
114
|
-
});
|
|
115
|
-
if (contentModified) {
|
|
116
|
-
data[i] = { ...content, parts: newParts };
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return replaced;
|
|
120
|
-
},
|
|
121
|
-
hasToolOutputs(data) {
|
|
122
|
-
return data.some((content) => Array.isArray(content.parts) &&
|
|
123
|
-
content.parts.some((part) => part.functionResponse));
|
|
124
|
-
},
|
|
125
|
-
getLogMetadata(data, replacedCount, inputUrl) {
|
|
126
|
-
return {
|
|
127
|
-
url: inputUrl,
|
|
128
|
-
replacedCount,
|
|
129
|
-
totalContents: data.length,
|
|
130
|
-
format: 'google-gemini'
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
//# sourceMappingURL=gemini.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/gemini.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { openaiChatFormat } from './openai-chat';
|
|
2
|
-
export { openaiResponsesFormat } from './openai-responses';
|
|
3
|
-
export { geminiFormat } from './gemini';
|
|
4
|
-
export { bedrockFormat } from './bedrock';
|
|
5
|
-
export { anthropicFormat } from './anthropic';
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { openaiChatFormat } from './openai-chat';
|
|
2
|
-
export { openaiResponsesFormat } from './openai-responses';
|
|
3
|
-
export { geminiFormat } from './gemini';
|
|
4
|
-
export { bedrockFormat } from './bedrock';
|
|
5
|
-
export { anthropicFormat } from './anthropic';
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-chat.d.ts","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/openai-chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,UAAU,CAAA;AAG5D,eAAO,MAAM,gBAAgB,EAAE,gBA+G9B,CAAA"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
export const openaiChatFormat = {
|
|
2
|
-
name: 'openai-chat',
|
|
3
|
-
detect(body) {
|
|
4
|
-
return body.messages && Array.isArray(body.messages);
|
|
5
|
-
},
|
|
6
|
-
getDataArray(body) {
|
|
7
|
-
return body.messages;
|
|
8
|
-
},
|
|
9
|
-
injectSystemMessage(body, injection) {
|
|
10
|
-
if (!injection || !body.messages)
|
|
11
|
-
return false;
|
|
12
|
-
let lastSystemIndex = -1;
|
|
13
|
-
for (let i = 0; i < body.messages.length; i++) {
|
|
14
|
-
if (body.messages[i].role === 'system') {
|
|
15
|
-
lastSystemIndex = i;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
const insertIndex = lastSystemIndex + 1;
|
|
19
|
-
body.messages.splice(insertIndex, 0, { role: 'system', content: injection });
|
|
20
|
-
return true;
|
|
21
|
-
},
|
|
22
|
-
appendUserMessage(body, injection) {
|
|
23
|
-
if (!injection || !body.messages)
|
|
24
|
-
return false;
|
|
25
|
-
body.messages.push({ role: 'user', content: injection });
|
|
26
|
-
return true;
|
|
27
|
-
},
|
|
28
|
-
extractToolOutputs(data, state) {
|
|
29
|
-
const outputs = [];
|
|
30
|
-
for (const m of data) {
|
|
31
|
-
if (m.role === 'tool' && m.tool_call_id) {
|
|
32
|
-
const metadata = state.toolParameters.get(m.tool_call_id.toLowerCase());
|
|
33
|
-
outputs.push({
|
|
34
|
-
id: m.tool_call_id.toLowerCase(),
|
|
35
|
-
toolName: metadata?.tool
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
39
|
-
for (const part of m.content) {
|
|
40
|
-
if (part.type === 'tool_result' && part.tool_use_id) {
|
|
41
|
-
const metadata = state.toolParameters.get(part.tool_use_id.toLowerCase());
|
|
42
|
-
outputs.push({
|
|
43
|
-
id: part.tool_use_id.toLowerCase(),
|
|
44
|
-
toolName: metadata?.tool
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return outputs;
|
|
51
|
-
},
|
|
52
|
-
replaceToolOutput(data, toolId, prunedMessage, _state) {
|
|
53
|
-
const toolIdLower = toolId.toLowerCase();
|
|
54
|
-
let replaced = false;
|
|
55
|
-
for (let i = 0; i < data.length; i++) {
|
|
56
|
-
const m = data[i];
|
|
57
|
-
if (m.role === 'tool' && m.tool_call_id?.toLowerCase() === toolIdLower) {
|
|
58
|
-
data[i] = { ...m, content: prunedMessage };
|
|
59
|
-
replaced = true;
|
|
60
|
-
}
|
|
61
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
62
|
-
let messageModified = false;
|
|
63
|
-
const newContent = m.content.map((part) => {
|
|
64
|
-
if (part.type === 'tool_result' && part.tool_use_id?.toLowerCase() === toolIdLower) {
|
|
65
|
-
messageModified = true;
|
|
66
|
-
return { ...part, content: prunedMessage };
|
|
67
|
-
}
|
|
68
|
-
return part;
|
|
69
|
-
});
|
|
70
|
-
if (messageModified) {
|
|
71
|
-
data[i] = { ...m, content: newContent };
|
|
72
|
-
replaced = true;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
return replaced;
|
|
77
|
-
},
|
|
78
|
-
hasToolOutputs(data) {
|
|
79
|
-
for (const m of data) {
|
|
80
|
-
if (m.role === 'tool')
|
|
81
|
-
return true;
|
|
82
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
83
|
-
for (const part of m.content) {
|
|
84
|
-
if (part.type === 'tool_result')
|
|
85
|
-
return true;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return false;
|
|
90
|
-
},
|
|
91
|
-
getLogMetadata(data, replacedCount, inputUrl) {
|
|
92
|
-
return {
|
|
93
|
-
url: inputUrl,
|
|
94
|
-
replacedCount,
|
|
95
|
-
totalMessages: data.length,
|
|
96
|
-
format: 'openai-chat'
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
};
|
|
100
|
-
//# sourceMappingURL=openai-chat.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-chat.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/openai-chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-responses.d.ts","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/openai-responses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,UAAU,CAAA;AAG5D,eAAO,MAAM,qBAAqB,EAAE,gBAuEnC,CAAA"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
export const openaiResponsesFormat = {
|
|
2
|
-
name: 'openai-responses',
|
|
3
|
-
detect(body) {
|
|
4
|
-
return body.input && Array.isArray(body.input);
|
|
5
|
-
},
|
|
6
|
-
getDataArray(body) {
|
|
7
|
-
return body.input;
|
|
8
|
-
},
|
|
9
|
-
injectSystemMessage(body, injection) {
|
|
10
|
-
if (!injection)
|
|
11
|
-
return false;
|
|
12
|
-
if (body.instructions && typeof body.instructions === 'string') {
|
|
13
|
-
body.instructions = body.instructions + '\n\n' + injection;
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
body.instructions = injection;
|
|
17
|
-
}
|
|
18
|
-
return true;
|
|
19
|
-
},
|
|
20
|
-
appendUserMessage(body, injection) {
|
|
21
|
-
if (!injection || !body.input)
|
|
22
|
-
return false;
|
|
23
|
-
body.input.push({ type: 'message', role: 'user', content: injection });
|
|
24
|
-
return true;
|
|
25
|
-
},
|
|
26
|
-
extractToolOutputs(data, state) {
|
|
27
|
-
const outputs = [];
|
|
28
|
-
for (const item of data) {
|
|
29
|
-
if (item.type === 'function_call_output' && item.call_id) {
|
|
30
|
-
const metadata = state.toolParameters.get(item.call_id.toLowerCase());
|
|
31
|
-
outputs.push({
|
|
32
|
-
id: item.call_id.toLowerCase(),
|
|
33
|
-
toolName: metadata?.tool ?? item.name
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return outputs;
|
|
38
|
-
},
|
|
39
|
-
replaceToolOutput(data, toolId, prunedMessage, _state) {
|
|
40
|
-
const toolIdLower = toolId.toLowerCase();
|
|
41
|
-
let replaced = false;
|
|
42
|
-
for (let i = 0; i < data.length; i++) {
|
|
43
|
-
const item = data[i];
|
|
44
|
-
if (item.type === 'function_call_output' && item.call_id?.toLowerCase() === toolIdLower) {
|
|
45
|
-
data[i] = { ...item, output: prunedMessage };
|
|
46
|
-
replaced = true;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return replaced;
|
|
50
|
-
},
|
|
51
|
-
hasToolOutputs(data) {
|
|
52
|
-
return data.some((item) => item.type === 'function_call_output');
|
|
53
|
-
},
|
|
54
|
-
getLogMetadata(data, replacedCount, inputUrl) {
|
|
55
|
-
return {
|
|
56
|
-
url: inputUrl,
|
|
57
|
-
replacedCount,
|
|
58
|
-
totalItems: data.length,
|
|
59
|
-
format: 'openai-responses-api'
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=openai-responses.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../../../lib/fetch-wrapper/formats/openai-responses.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gc-tracker.d.ts","sourceRoot":"","sources":["../../../lib/fetch-wrapper/gc-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEvC,wBAAgB,iBAAiB,CAC7B,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EAAE,EACnB,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,GACf,IAAI,CAmBN"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
export function accumulateGCStats(state, sessionId, prunedIds, body, logger) {
|
|
2
|
-
if (prunedIds.length === 0)
|
|
3
|
-
return;
|
|
4
|
-
const toolOutputs = extractToolOutputsFromBody(body, prunedIds);
|
|
5
|
-
const tokensCollected = estimateTokensFromOutputs(toolOutputs);
|
|
6
|
-
const existing = state.gcPending.get(sessionId) ?? { tokensCollected: 0, toolsDeduped: 0 };
|
|
7
|
-
state.gcPending.set(sessionId, {
|
|
8
|
-
tokensCollected: existing.tokensCollected + tokensCollected,
|
|
9
|
-
toolsDeduped: existing.toolsDeduped + prunedIds.length
|
|
10
|
-
});
|
|
11
|
-
logger.debug("gc-tracker", "Accumulated GC stats", {
|
|
12
|
-
sessionId: sessionId.substring(0, 8),
|
|
13
|
-
newlyDeduped: prunedIds.length,
|
|
14
|
-
tokensThisCycle: tokensCollected,
|
|
15
|
-
pendingTotal: state.gcPending.get(sessionId)
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
function extractToolOutputsFromBody(body, prunedIds) {
|
|
19
|
-
const outputs = [];
|
|
20
|
-
const prunedIdSet = new Set(prunedIds.map(id => id.toLowerCase()));
|
|
21
|
-
// OpenAI Chat format
|
|
22
|
-
if (body.messages && Array.isArray(body.messages)) {
|
|
23
|
-
for (const m of body.messages) {
|
|
24
|
-
if (m.role === 'tool' && m.tool_call_id && prunedIdSet.has(m.tool_call_id.toLowerCase())) {
|
|
25
|
-
if (typeof m.content === 'string') {
|
|
26
|
-
outputs.push(m.content);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
// Anthropic format
|
|
30
|
-
if (m.role === 'user' && Array.isArray(m.content)) {
|
|
31
|
-
for (const part of m.content) {
|
|
32
|
-
if (part.type === 'tool_result' && part.tool_use_id && prunedIdSet.has(part.tool_use_id.toLowerCase())) {
|
|
33
|
-
if (typeof part.content === 'string') {
|
|
34
|
-
outputs.push(part.content);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
// OpenAI Responses format
|
|
42
|
-
if (body.input && Array.isArray(body.input)) {
|
|
43
|
-
for (const item of body.input) {
|
|
44
|
-
if (item.type === 'function_call_output' && item.call_id && prunedIdSet.has(item.call_id.toLowerCase())) {
|
|
45
|
-
if (typeof item.output === 'string') {
|
|
46
|
-
outputs.push(item.output);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return outputs;
|
|
52
|
-
}
|
|
53
|
-
// Character-based approximation (chars / 4) to avoid async tokenizer in fetch path
|
|
54
|
-
function estimateTokensFromOutputs(outputs) {
|
|
55
|
-
let totalChars = 0;
|
|
56
|
-
for (const output of outputs) {
|
|
57
|
-
totalChars += output.length;
|
|
58
|
-
}
|
|
59
|
-
return Math.round(totalChars / 4);
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=gc-tracker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gc-tracker.js","sourceRoot":"","sources":["../../../lib/fetch-wrapper/gc-tracker.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAC7B,KAAkB,EAClB,SAAiB,EACjB,SAAmB,EACnB,IAAS,EACT,MAAc;IAEd,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAM;IAElC,MAAM,WAAW,GAAG,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC/D,MAAM,eAAe,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAA;IAE9D,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAA;IAE1F,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE;QAC3B,eAAe,EAAE,QAAQ,CAAC,eAAe,GAAG,eAAe;QAC3D,YAAY,EAAE,QAAQ,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM;KACzD,CAAC,CAAA;IAEF,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,sBAAsB,EAAE;QAC/C,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;QACpC,YAAY,EAAE,SAAS,CAAC,MAAM;QAC9B,eAAe,EAAE,eAAe;QAChC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;KAC/C,CAAC,CAAA;AACN,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAS,EAAE,SAAmB;IAC9D,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAElE,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,YAAY,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBACvF,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAChC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;gBAC3B,CAAC;YACL,CAAC;YACD,mBAAmB;YACnB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;wBACrG,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;4BACnC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;wBAC9B,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB,IAAI,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBACtG,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC7B,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,mFAAmF;AACnF,SAAS,yBAAyB,CAAC,OAAiB;IAChD,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,UAAU,IAAI,MAAM,CAAC,MAAM,CAAA;IAC/B,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;AACrC,CAAC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import type { FetchHandlerContext, FetchHandlerResult, FormatDescriptor } from "./types";
|
|
2
|
-
export declare function handleFormat(body: any, ctx: FetchHandlerContext, inputUrl: string, format: FormatDescriptor): Promise<FetchHandlerResult>;
|
|
3
|
-
//# sourceMappingURL=handler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../lib/fetch-wrapper/handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAgB,MAAM,SAAS,CAAA;AAyDtG,wBAAsB,YAAY,CAC9B,IAAI,EAAE,GAAG,EACT,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CAsG7B"}
|