@copilotkit/aimock 1.43.0 → 1.45.0
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +46 -0
- package/README.md +14 -2
- package/dist/agui-handler.d.ts.map +1 -1
- package/dist/aimock-cli.cjs +31 -5
- package/dist/aimock-cli.cjs.map +1 -1
- package/dist/aimock-cli.d.cts.map +1 -1
- package/dist/aimock-cli.d.ts.map +1 -1
- package/dist/aimock-cli.js +31 -5
- package/dist/aimock-cli.js.map +1 -1
- package/dist/bedrock-converse.cjs +344 -43
- package/dist/bedrock-converse.cjs.map +1 -1
- package/dist/bedrock-converse.d.cts.map +1 -1
- package/dist/bedrock-converse.d.ts.map +1 -1
- package/dist/bedrock-converse.js +345 -44
- package/dist/bedrock-converse.js.map +1 -1
- package/dist/bedrock.cjs +195 -42
- package/dist/bedrock.cjs.map +1 -1
- package/dist/bedrock.d.cts.map +1 -1
- package/dist/bedrock.d.ts.map +1 -1
- package/dist/bedrock.js +196 -43
- package/dist/bedrock.js.map +1 -1
- package/dist/chaos.cjs +9 -5
- package/dist/chaos.cjs.map +1 -1
- package/dist/chaos.d.cts.map +1 -1
- package/dist/chaos.d.ts.map +1 -1
- package/dist/chaos.js +10 -7
- package/dist/chaos.js.map +1 -1
- package/dist/cli.cjs +238 -9
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +242 -13
- package/dist/cli.js.map +1 -1
- package/dist/cohere.cjs +159 -72
- package/dist/cohere.cjs.map +1 -1
- package/dist/cohere.d.cts.map +1 -1
- package/dist/cohere.d.ts.map +1 -1
- package/dist/cohere.js +160 -73
- package/dist/cohere.js.map +1 -1
- package/dist/config-loader.cjs +63 -5
- package/dist/config-loader.cjs.map +1 -1
- package/dist/config-loader.d.cts +37 -4
- package/dist/config-loader.d.cts.map +1 -1
- package/dist/config-loader.d.ts +37 -4
- package/dist/config-loader.d.ts.map +1 -1
- package/dist/config-loader.js +63 -5
- package/dist/config-loader.js.map +1 -1
- package/dist/constants.cjs +8 -0
- package/dist/constants.cjs.map +1 -1
- package/dist/constants.d.cts +6 -2
- package/dist/constants.d.ts +6 -2
- package/dist/constants.js +8 -1
- package/dist/constants.js.map +1 -1
- package/dist/echo-text.cjs +65 -0
- package/dist/echo-text.cjs.map +1 -0
- package/dist/echo-text.d.cts +22 -0
- package/dist/echo-text.d.cts.map +1 -0
- package/dist/echo-text.d.ts +22 -0
- package/dist/echo-text.d.ts.map +1 -0
- package/dist/echo-text.js +65 -0
- package/dist/echo-text.js.map +1 -0
- package/dist/embeddings.cjs +18 -1
- package/dist/embeddings.cjs.map +1 -1
- package/dist/embeddings.d.cts +1 -1
- package/dist/embeddings.d.cts.map +1 -1
- package/dist/embeddings.d.ts +1 -1
- package/dist/embeddings.d.ts.map +1 -1
- package/dist/embeddings.js +18 -1
- package/dist/embeddings.js.map +1 -1
- package/dist/fakes-plugin.cjs +131 -0
- package/dist/fakes-plugin.cjs.map +1 -0
- package/dist/fakes-plugin.d.cts +23 -0
- package/dist/fakes-plugin.d.cts.map +1 -0
- package/dist/fakes-plugin.d.ts +23 -0
- package/dist/fakes-plugin.d.ts.map +1 -0
- package/dist/fakes-plugin.js +127 -0
- package/dist/fakes-plugin.js.map +1 -0
- package/dist/files.cjs +9 -11
- package/dist/files.cjs.map +1 -1
- package/dist/files.d.cts.map +1 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +10 -13
- package/dist/files.js.map +1 -1
- package/dist/fine-tuning.cjs +1 -19
- package/dist/fine-tuning.cjs.map +1 -1
- package/dist/fine-tuning.d.cts.map +1 -1
- package/dist/fine-tuning.d.ts.map +1 -1
- package/dist/fine-tuning.js +2 -20
- package/dist/fine-tuning.js.map +1 -1
- package/dist/fixture-loader-services.cjs +116 -0
- package/dist/fixture-loader-services.cjs.map +1 -0
- package/dist/fixture-loader-services.d.cts +48 -0
- package/dist/fixture-loader-services.d.cts.map +1 -0
- package/dist/fixture-loader-services.d.ts +48 -0
- package/dist/fixture-loader-services.d.ts.map +1 -0
- package/dist/fixture-loader-services.js +114 -0
- package/dist/fixture-loader-services.js.map +1 -0
- package/dist/fixture-loader.cjs +552 -29
- package/dist/fixture-loader.cjs.map +1 -1
- package/dist/fixture-loader.d.cts +140 -2
- package/dist/fixture-loader.d.cts.map +1 -1
- package/dist/fixture-loader.d.ts +140 -2
- package/dist/fixture-loader.d.ts.map +1 -1
- package/dist/fixture-loader.js +542 -31
- package/dist/fixture-loader.js.map +1 -1
- package/dist/gemini-embeddings.cjs +42 -2
- package/dist/gemini-embeddings.cjs.map +1 -1
- package/dist/gemini-embeddings.js +43 -3
- package/dist/gemini-embeddings.js.map +1 -1
- package/dist/gemini-interactions.cjs +288 -52
- package/dist/gemini-interactions.cjs.map +1 -1
- package/dist/gemini-interactions.d.cts.map +1 -1
- package/dist/gemini-interactions.d.ts.map +1 -1
- package/dist/gemini-interactions.js +289 -53
- package/dist/gemini-interactions.js.map +1 -1
- package/dist/gemini.cjs +234 -38
- package/dist/gemini.cjs.map +1 -1
- package/dist/gemini.d.cts.map +1 -1
- package/dist/gemini.d.ts.map +1 -1
- package/dist/gemini.js +235 -39
- package/dist/gemini.js.map +1 -1
- package/dist/helpers.cjs +1157 -12
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.cts +85 -4
- package/dist/helpers.d.cts.map +1 -1
- package/dist/helpers.d.ts +85 -4
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +1113 -14
- package/dist/helpers.js.map +1 -1
- package/dist/images.cjs +3 -2
- package/dist/images.cjs.map +1 -1
- package/dist/images.js +3 -2
- package/dist/images.js.map +1 -1
- package/dist/index.cjs +39 -1
- package/dist/index.d.cts +11 -4
- package/dist/index.d.ts +11 -4
- package/dist/index.js +11 -4
- package/dist/jest.cjs +43 -14
- package/dist/jest.cjs.map +1 -1
- package/dist/jest.d.cts +47 -5
- package/dist/jest.d.cts.map +1 -1
- package/dist/jest.d.ts +47 -5
- package/dist/jest.d.ts.map +1 -1
- package/dist/jest.js +45 -16
- package/dist/jest.js.map +1 -1
- package/dist/journal.cjs +155 -13
- package/dist/journal.cjs.map +1 -1
- package/dist/journal.d.cts +54 -4
- package/dist/journal.d.cts.map +1 -1
- package/dist/journal.d.ts +54 -4
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +155 -13
- package/dist/journal.js.map +1 -1
- package/dist/live-sanitize.cjs +4 -32
- package/dist/live-sanitize.cjs.map +1 -1
- package/dist/live-sanitize.js +4 -32
- package/dist/live-sanitize.js.map +1 -1
- package/dist/llmock.cjs +204 -39
- package/dist/llmock.cjs.map +1 -1
- package/dist/llmock.d.cts +51 -1
- package/dist/llmock.d.cts.map +1 -1
- package/dist/llmock.d.ts +51 -1
- package/dist/llmock.d.ts.map +1 -1
- package/dist/llmock.js +206 -41
- package/dist/llmock.js.map +1 -1
- package/dist/mcp-fakes-mount.cjs +217 -0
- package/dist/mcp-fakes-mount.cjs.map +1 -0
- package/dist/mcp-fakes-mount.js +211 -0
- package/dist/mcp-fakes-mount.js.map +1 -0
- package/dist/mcp-fakes-report.cjs +111 -0
- package/dist/mcp-fakes-report.cjs.map +1 -0
- package/dist/mcp-fakes-report.d.cts +40 -0
- package/dist/mcp-fakes-report.d.cts.map +1 -0
- package/dist/mcp-fakes-report.d.ts +40 -0
- package/dist/mcp-fakes-report.d.ts.map +1 -0
- package/dist/mcp-fakes-report.js +107 -0
- package/dist/mcp-fakes-report.js.map +1 -0
- package/dist/mcp-fakes.cjs +1942 -0
- package/dist/mcp-fakes.cjs.map +1 -0
- package/dist/mcp-fakes.d.cts +504 -0
- package/dist/mcp-fakes.d.cts.map +1 -0
- package/dist/mcp-fakes.d.ts +504 -0
- package/dist/mcp-fakes.d.ts.map +1 -0
- package/dist/mcp-fakes.js +1937 -0
- package/dist/mcp-fakes.js.map +1 -0
- package/dist/mcp-handler.cjs +534 -27
- package/dist/mcp-handler.cjs.map +1 -1
- package/dist/mcp-handler.d.cts +49 -0
- package/dist/mcp-handler.d.cts.map +1 -0
- package/dist/mcp-handler.d.ts +49 -0
- package/dist/mcp-handler.d.ts.map +1 -0
- package/dist/mcp-handler.js +530 -28
- package/dist/mcp-handler.js.map +1 -1
- package/dist/mcp-mock.cjs +326 -47
- package/dist/mcp-mock.cjs.map +1 -1
- package/dist/mcp-mock.d.cts +97 -1
- package/dist/mcp-mock.d.cts.map +1 -1
- package/dist/mcp-mock.d.ts +97 -1
- package/dist/mcp-mock.d.ts.map +1 -1
- package/dist/mcp-mock.js +327 -48
- package/dist/mcp-mock.js.map +1 -1
- package/dist/mcp-recorder.cjs +1224 -0
- package/dist/mcp-recorder.cjs.map +1 -0
- package/dist/mcp-recorder.d.cts +108 -0
- package/dist/mcp-recorder.d.cts.map +1 -0
- package/dist/mcp-recorder.d.ts +108 -0
- package/dist/mcp-recorder.d.ts.map +1 -0
- package/dist/mcp-recorder.js +1215 -0
- package/dist/mcp-recorder.js.map +1 -0
- package/dist/mcp-stub.cjs +5 -1
- package/dist/mcp-stub.d.cts +3 -1
- package/dist/mcp-stub.d.ts +3 -1
- package/dist/mcp-stub.js +3 -1
- package/dist/mcp-types.d.cts +6 -0
- package/dist/mcp-types.d.ts +6 -0
- package/dist/message-text.cjs +192 -0
- package/dist/message-text.cjs.map +1 -0
- package/dist/message-text.d.cts +31 -0
- package/dist/message-text.d.cts.map +1 -0
- package/dist/message-text.d.ts +31 -0
- package/dist/message-text.d.ts.map +1 -0
- package/dist/message-text.js +184 -0
- package/dist/message-text.js.map +1 -0
- package/dist/messages.cjs +400 -56
- package/dist/messages.cjs.map +1 -1
- package/dist/messages.d.cts.map +1 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +401 -58
- package/dist/messages.js.map +1 -1
- package/dist/metrics.cjs +46 -66
- package/dist/metrics.cjs.map +1 -1
- package/dist/metrics.d.cts +14 -6
- package/dist/metrics.d.cts.map +1 -1
- package/dist/metrics.d.ts +14 -6
- package/dist/metrics.d.ts.map +1 -1
- package/dist/metrics.js +32 -40
- package/dist/metrics.js.map +1 -1
- package/dist/misbehavior.cjs +1523 -0
- package/dist/misbehavior.cjs.map +1 -0
- package/dist/misbehavior.d.cts +43 -0
- package/dist/misbehavior.d.cts.map +1 -0
- package/dist/misbehavior.d.ts +43 -0
- package/dist/misbehavior.d.ts.map +1 -0
- package/dist/misbehavior.js +1511 -0
- package/dist/misbehavior.js.map +1 -0
- package/dist/ollama.cjs +315 -113
- package/dist/ollama.cjs.map +1 -1
- package/dist/ollama.d.cts.map +1 -1
- package/dist/ollama.d.ts.map +1 -1
- package/dist/ollama.js +316 -114
- package/dist/ollama.js.map +1 -1
- package/dist/openapi.cjs +3405 -0
- package/dist/openapi.cjs.map +1 -0
- package/dist/openapi.d.cts +30 -0
- package/dist/openapi.d.cts.map +1 -0
- package/dist/openapi.d.ts +30 -0
- package/dist/openapi.d.ts.map +1 -0
- package/dist/openapi.js +3404 -0
- package/dist/openapi.js.map +1 -0
- package/dist/openrouter-video.cjs +4 -4
- package/dist/openrouter-video.cjs.map +1 -1
- package/dist/openrouter-video.d.cts.map +1 -1
- package/dist/openrouter-video.d.ts.map +1 -1
- package/dist/openrouter-video.js +4 -4
- package/dist/openrouter-video.js.map +1 -1
- package/dist/record-sanitize.cjs +231 -0
- package/dist/record-sanitize.cjs.map +1 -0
- package/dist/record-sanitize.js +224 -0
- package/dist/record-sanitize.js.map +1 -0
- package/dist/recorder.cjs +115 -6
- package/dist/recorder.cjs.map +1 -1
- package/dist/recorder.d.cts +2 -1
- package/dist/recorder.d.cts.map +1 -1
- package/dist/recorder.d.ts +2 -1
- package/dist/recorder.d.ts.map +1 -1
- package/dist/recorder.js +116 -8
- package/dist/recorder.js.map +1 -1
- package/dist/responses.cjs +701 -166
- package/dist/responses.cjs.map +1 -1
- package/dist/responses.d.cts +5 -13
- package/dist/responses.d.cts.map +1 -1
- package/dist/responses.d.ts +5 -13
- package/dist/responses.d.ts.map +1 -1
- package/dist/responses.js +699 -169
- package/dist/responses.js.map +1 -1
- package/dist/route-registry.cjs +951 -0
- package/dist/route-registry.cjs.map +1 -0
- package/dist/route-registry.d.cts +33 -0
- package/dist/route-registry.d.cts.map +1 -0
- package/dist/route-registry.d.ts +33 -0
- package/dist/route-registry.d.ts.map +1 -0
- package/dist/route-registry.js +866 -0
- package/dist/route-registry.js.map +1 -0
- package/dist/router.cjs +24 -2
- package/dist/router.cjs.map +1 -1
- package/dist/router.d.cts.map +1 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +25 -4
- package/dist/router.js.map +1 -1
- package/dist/server.cjs +1159 -264
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +4 -1
- package/dist/server.d.cts.map +1 -1
- package/dist/server.d.ts +4 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1067 -172
- package/dist/server.js.map +1 -1
- package/dist/speech.cjs +4 -2
- package/dist/speech.cjs.map +1 -1
- package/dist/speech.js +4 -2
- package/dist/speech.js.map +1 -1
- package/dist/stream-collapse.cjs +236 -34
- package/dist/stream-collapse.cjs.map +1 -1
- package/dist/stream-collapse.d.cts +39 -4
- package/dist/stream-collapse.d.cts.map +1 -1
- package/dist/stream-collapse.d.ts +39 -4
- package/dist/stream-collapse.d.ts.map +1 -1
- package/dist/stream-collapse.js +235 -35
- package/dist/stream-collapse.js.map +1 -1
- package/dist/suite.cjs +1 -1
- package/dist/suite.js +1 -1
- package/dist/transcription.cjs +2 -2
- package/dist/transcription.cjs.map +1 -1
- package/dist/transcription.d.cts.map +1 -1
- package/dist/transcription.d.ts.map +1 -1
- package/dist/transcription.js +2 -2
- package/dist/transcription.js.map +1 -1
- package/dist/types.cjs +18 -0
- package/dist/types.cjs.map +1 -0
- package/dist/types.d.cts +516 -5
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +516 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +17 -0
- package/dist/types.js.map +1 -0
- package/dist/validate-cli.cjs +123 -33
- package/dist/validate-cli.cjs.map +1 -1
- package/dist/validate-cli.js +125 -35
- package/dist/validate-cli.js.map +1 -1
- package/dist/vector-stores.cjs +1180 -0
- package/dist/vector-stores.cjs.map +1 -0
- package/dist/vector-stores.d.cts +106 -0
- package/dist/vector-stores.d.cts.map +1 -0
- package/dist/vector-stores.d.ts +106 -0
- package/dist/vector-stores.d.ts.map +1 -0
- package/dist/vector-stores.js +1164 -0
- package/dist/vector-stores.js.map +1 -0
- package/dist/vector-types.d.cts.map +1 -1
- package/dist/version.cjs +45 -0
- package/dist/version.cjs.map +1 -0
- package/dist/version.js +44 -0
- package/dist/version.js.map +1 -0
- package/dist/video.cjs +19 -0
- package/dist/video.cjs.map +1 -1
- package/dist/video.d.cts.map +1 -1
- package/dist/video.d.ts.map +1 -1
- package/dist/video.js +19 -0
- package/dist/video.js.map +1 -1
- package/dist/vitest.cjs +77 -16
- package/dist/vitest.cjs.map +1 -1
- package/dist/vitest.d.cts +38 -5
- package/dist/vitest.d.cts.map +1 -1
- package/dist/vitest.d.ts +38 -5
- package/dist/vitest.d.ts.map +1 -1
- package/dist/vitest.js +78 -17
- package/dist/vitest.js.map +1 -1
- package/dist/watcher.cjs +6 -2
- package/dist/watcher.cjs.map +1 -1
- package/dist/watcher.js +6 -2
- package/dist/watcher.js.map +1 -1
- package/dist/ws-gemini-live.cjs +210 -101
- package/dist/ws-gemini-live.cjs.map +1 -1
- package/dist/ws-gemini-live.d.cts +9 -3
- package/dist/ws-gemini-live.d.cts.map +1 -1
- package/dist/ws-gemini-live.d.ts +9 -3
- package/dist/ws-gemini-live.d.ts.map +1 -1
- package/dist/ws-gemini-live.js +211 -102
- package/dist/ws-gemini-live.js.map +1 -1
- package/dist/ws-realtime.cjs +175 -62
- package/dist/ws-realtime.cjs.map +1 -1
- package/dist/ws-realtime.d.cts +8 -3
- package/dist/ws-realtime.d.cts.map +1 -1
- package/dist/ws-realtime.d.ts +8 -3
- package/dist/ws-realtime.d.ts.map +1 -1
- package/dist/ws-realtime.js +176 -63
- package/dist/ws-realtime.js.map +1 -1
- package/dist/ws-responses.cjs +121 -16
- package/dist/ws-responses.cjs.map +1 -1
- package/dist/ws-responses.d.cts +8 -12
- package/dist/ws-responses.d.cts.map +1 -1
- package/dist/ws-responses.d.ts +8 -12
- package/dist/ws-responses.d.ts.map +1 -1
- package/dist/ws-responses.js +123 -18
- package/dist/ws-responses.js.map +1 -1
- package/package.json +13 -2
- package/skills/write-fixtures/SKILL.md +179 -21
package/dist/helpers.d.cts
CHANGED
|
@@ -1,9 +1,60 @@
|
|
|
1
1
|
import { LiveFixtureResponse } from "./live-types.cjs";
|
|
2
|
-
import { AudioResponse, ChatCompletion, ChatCompletionRequest, ContentWithToolCallsResponse, EmbeddingResponse, ErrorResponse, FixtureBlock, FixtureFileBlock, FixtureResponse, ImageResponse, ResponseOverrides, SSEChunk, TextResponse, ToolCall, ToolCallResponse, TranscriptionResponse, VideoResponse } from "./types.cjs";
|
|
2
|
+
import { AudioResponse, ChatCompletion, ChatCompletionRequest, ContentWithToolCallsResponse, EmbeddingResponse, ErrorResponse, FixtureBlock, FixtureFileBlock, FixtureFileResponsesBlock, FixtureResponse, ImageResponse, ResponseOverrides, ResponsesFixtureBlock, SSEChunk, TextResponse, ToolCall, ToolCallResponse, TranscriptionResponse, VideoResponse } from "./types.cjs";
|
|
3
3
|
import * as http$1 from "node:http";
|
|
4
4
|
|
|
5
5
|
//#region src/helpers.d.ts
|
|
6
6
|
|
|
7
|
+
/**
|
|
8
|
+
* A custom (freeform) tool call reached a wire that has no faithful projection
|
|
9
|
+
* for it. Only the OpenAI Responses API (HTTP and WebSocket) emits custom tool
|
|
10
|
+
* calls, from a fixture's `customToolCalls` or a `customToolCall` block in its
|
|
11
|
+
* `responsesBlocks`. The handlers of the other wires raise this through
|
|
12
|
+
* {@link rejectResponsesOnlyToolCalls} (usually via
|
|
13
|
+
* {@link requireEmittedFunctionToolCalls}) before they write any content.
|
|
14
|
+
* Ollama `/api/generate` is the exception: it rejects every tool-call fixture
|
|
15
|
+
* with a 400 before this check.
|
|
16
|
+
*/
|
|
17
|
+
declare class UnsupportedToolCallError extends Error {
|
|
18
|
+
readonly toolName: string;
|
|
19
|
+
readonly wire: string;
|
|
20
|
+
constructor(toolName: string, wire: string);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A fixture tool call is malformed: a `toolCalls` entry that is not an object,
|
|
24
|
+
* a malformed `customToolCalls` entry, or a malformed tool block in
|
|
25
|
+
* `responsesBlocks`. Programmatic and factory fixtures skip load validation,
|
|
26
|
+
* so this request-time guard is their validation for the rules
|
|
27
|
+
* {@link assertResponsesToolCalls} and {@link resolveResponsesBlocks} check.
|
|
28
|
+
* An HTTP request then fails with a 500 that carries this message and `code`;
|
|
29
|
+
* a WebSocket turn gets the transport's error message with the code. A
|
|
30
|
+
* malformed legacy `blocks` entry keeps the plain Error of
|
|
31
|
+
* {@link resolveFixtureBlocks}.
|
|
32
|
+
*/
|
|
33
|
+
declare class InvalidFixtureToolCallError extends Error {
|
|
34
|
+
readonly code = "aimock_invalid_fixture_tool_call";
|
|
35
|
+
constructor(index: number, problem: string, carrier?: "toolCalls" | "customToolCalls" | "blocks");
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Validate a response's `customToolCalls` (OpenAI Responses only) before it is
|
|
39
|
+
* served. Throws {@link InvalidFixtureToolCallError} on the first malformed
|
|
40
|
+
* entry. The key is new, so no fixture of an earlier release reaches this.
|
|
41
|
+
*/
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* A fixture's `toolCalls` for a wire that cannot carry custom tool calls.
|
|
45
|
+
* Every entry is a function call and passes through unchanged, exactly as in
|
|
46
|
+
* earlier releases (the builders read its `name`, `arguments` and `id`; its
|
|
47
|
+
* Responses-only `namespace` is not emitted). Custom calls live in
|
|
48
|
+
* `customToolCalls`, which {@link rejectResponsesOnlyToolCalls} rejects.
|
|
49
|
+
*/
|
|
50
|
+
declare function requireFunctionToolCalls(calls: ToolCall[]): ToolCall[];
|
|
51
|
+
/**
|
|
52
|
+
* Reject the Responses-only custom tool calls on a wire that cannot carry
|
|
53
|
+
* them: a non-empty `customToolCalls`, or a `customToolCall` block in
|
|
54
|
+
* `responsesBlocks`. Throws {@link UnsupportedToolCallError} naming `wire`.
|
|
55
|
+
* Both keys are new, so no fixture of an earlier release reaches this error.
|
|
56
|
+
*/
|
|
57
|
+
|
|
7
58
|
/**
|
|
8
59
|
* Build the strict-mode 503 error message, distinguishing a true no-match from
|
|
9
60
|
* a sequence/turn-exhausted miss.
|
|
@@ -76,7 +127,20 @@ declare function generateMessageId(): string;
|
|
|
76
127
|
declare function generateToolUseId(): string;
|
|
77
128
|
declare function isTextResponse(r: FixtureResponse): r is TextResponse;
|
|
78
129
|
declare function isToolCallResponse(r: FixtureResponse): r is ToolCallResponse;
|
|
130
|
+
/**
|
|
131
|
+
* Whether `r` is a combined content + tool calls response: a string `content`
|
|
132
|
+
* with a `toolCalls` array, or a non-empty `blocks` array. Public, with the
|
|
133
|
+
* 1.44.0 result for every input; `responsesBlocks` does not count. aimock's
|
|
134
|
+
* own handlers use {@link isCombinedFixtureResponse}, which also counts it.
|
|
135
|
+
*/
|
|
79
136
|
declare function isContentWithToolCallsResponse(r: FixtureResponse): r is ContentWithToolCallsResponse;
|
|
137
|
+
/**
|
|
138
|
+
* @internal The combined-response guard aimock's handlers, validation and
|
|
139
|
+
* misbehavior use: {@link isContentWithToolCallsResponse} plus a non-empty
|
|
140
|
+
* `responsesBlocks`. In legacy mode those keys are dropped before serving, so
|
|
141
|
+
* only `responsesTools: "extended"` sees the extra clause.
|
|
142
|
+
*/
|
|
143
|
+
|
|
80
144
|
/**
|
|
81
145
|
* Validate and pass through the ordered `blocks` field of a combined
|
|
82
146
|
* content+toolCalls fixture. Used ONLY on the new block-iteration path (when a
|
|
@@ -104,10 +168,25 @@ declare function isContentWithToolCallsResponse(r: FixtureResponse): r is Conten
|
|
|
104
168
|
* optional string `id`. The return type guarantees `arguments: string` — every
|
|
105
169
|
* caller relies on that. Throws on a malformed array or entry — same fail-fast
|
|
106
170
|
* idiom as the other fixture validators in this module (see e.g. the factory
|
|
107
|
-
* guard at {@link resolveResponse}).
|
|
171
|
+
* guard at {@link resolveResponse}). A `customToolCall` block is not a
|
|
172
|
+
* `blocks` entry (it belongs in `responsesBlocks`, see
|
|
173
|
+
* {@link resolveResponsesBlocks}) and fails as an unknown type.
|
|
108
174
|
*/
|
|
109
175
|
declare function resolveFixtureBlocks(blocks: FixtureFileBlock[]): FixtureBlock[];
|
|
110
|
-
/**
|
|
176
|
+
/** A normalized block on a wire that cannot carry custom tool calls. */
|
|
177
|
+
type FunctionFixtureBlock = FixtureBlock;
|
|
178
|
+
/**
|
|
179
|
+
* Validate and normalize a fixture's `responsesBlocks` (OpenAI Responses
|
|
180
|
+
* only). Same rules and normalized copy as {@link resolveFixtureBlocks}, plus:
|
|
181
|
+
* a `customToolCall` block with a non-empty string `name`, a string `input`
|
|
182
|
+
* (never parsed or stringified), no `arguments` and an optional string `id`;
|
|
183
|
+
* on either tool block, `namespace` must be a non-empty string when present,
|
|
184
|
+
* and a `toolCall` block carries no `input`. The key is new, so a malformed
|
|
185
|
+
* tool block throws the coded {@link InvalidFixtureToolCallError}; a malformed
|
|
186
|
+
* text block or an unknown type throws a plain Error.
|
|
187
|
+
*/
|
|
188
|
+
declare function resolveResponsesBlocks(blocks: readonly (FixtureFileResponsesBlock | ResponsesFixtureBlock)[]): ResponsesFixtureBlock[];
|
|
189
|
+
/** Allocate the exact OpenAI call identities once for both wire output and observations. */
|
|
111
190
|
|
|
112
191
|
declare function isErrorResponse(r: FixtureResponse): r is ErrorResponse;
|
|
113
192
|
/**
|
|
@@ -138,6 +217,8 @@ declare function extractOverrides(response: TextResponse | ToolCallResponse | Co
|
|
|
138
217
|
*/
|
|
139
218
|
|
|
140
219
|
declare function buildTextChunks(content: string, model: string, chunkSize: number, reasoning?: string, overrides?: ResponseOverrides): SSEChunk[];
|
|
220
|
+
/** K9 exposure is selected by the provider path, never the echoed response model. */
|
|
221
|
+
|
|
141
222
|
declare function buildToolCallChunks(toolCalls: ToolCall[], model: string, chunkSize: number, reasoning?: string, overrides?: ResponseOverrides): SSEChunk[];
|
|
142
223
|
declare function buildTextCompletion(content: string, model: string, reasoning?: string, overrides?: ResponseOverrides, requestMessages?: ChatCompletionRequest["messages"]): ChatCompletion;
|
|
143
224
|
declare function buildToolCallCompletion(toolCalls: ToolCall[], model: string, reasoning?: string, overrides?: ResponseOverrides, requestMessages?: ChatCompletionRequest["messages"]): ChatCompletion;
|
|
@@ -179,5 +260,5 @@ declare function buildEmbeddingResponse(embeddings: number[][], model: string, u
|
|
|
179
260
|
total_tokens?: number;
|
|
180
261
|
}): EmbeddingAPIResponse;
|
|
181
262
|
//#endregion
|
|
182
|
-
export { EmbeddingAPIResponse, FORMAT_TO_CONTENT_TYPE, buildContentWithToolCallsChunks, buildContentWithToolCallsCompletion, buildEmbeddingResponse, buildTextChunks, buildTextCompletion, buildToolCallChunks, buildToolCallCompletion, extractOverrides, flattenHeaders, formatToMime, generateDeterministicEmbedding, generateId, generateMessageId, generateToolCallId, generateToolUseId, isAudioResponse, isContentWithToolCallsResponse, isEmbeddingResponse, isErrorResponse, isImageResponse, isLiveResponse, isTextResponse, isToolCallResponse, isTranscriptionResponse, isVideoResponse, resolveFixtureBlocks, resolveRequestId, strictNoMatchLogLine, strictNoMatchMessage };
|
|
263
|
+
export { EmbeddingAPIResponse, FORMAT_TO_CONTENT_TYPE, FunctionFixtureBlock, InvalidFixtureToolCallError, UnsupportedToolCallError, buildContentWithToolCallsChunks, buildContentWithToolCallsCompletion, buildEmbeddingResponse, buildTextChunks, buildTextCompletion, buildToolCallChunks, buildToolCallCompletion, extractOverrides, flattenHeaders, formatToMime, generateDeterministicEmbedding, generateId, generateMessageId, generateToolCallId, generateToolUseId, isAudioResponse, isContentWithToolCallsResponse, isEmbeddingResponse, isErrorResponse, isImageResponse, isLiveResponse, isTextResponse, isToolCallResponse, isTranscriptionResponse, isVideoResponse, requireFunctionToolCalls, resolveFixtureBlocks, resolveRequestId, resolveResponsesBlocks, strictNoMatchLogLine, strictNoMatchMessage };
|
|
183
264
|
//# sourceMappingURL=helpers.d.cts.map
|
package/dist/helpers.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.cts","names":[],"sources":["../src/helpers.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.cts","names":[],"sources":["../src/helpers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;AAm7CA;;;;;AAOA;;AAAmC,cAtyCtB,wBAAA,SAAiC,KAAA,CAsyCX;WAAuB,QAAA,EAAA,MAAA;EAAa,SAAA,IAAA,EAAA,MAAA;EAU1D,WAAA,CAAA,QAAA,EAAA,MAOZ,EAAA,IAAA,EAAA,MAPoC;AAarC;AAIA;;;;;AAQA;;;;;AAYA;AAAgC,cA3zCnB,2BAAA,SAAoC,KAAA,CA2zCjB;WACpB,IAAA,GAAA,kCAAA;aAAe,CAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,WAAA,GAAA,iBAAA,GAAA,QAAA;;;;AAoH3B;;;;AA8XA;;;;;;AA2CA;AAAuC,iBA5wDvB,wBAAA,CA4wDuB,KAAA,EA5wDS,QA4wDT,EAAA,CAAA,EA5wDsB,QA4wDtB,EAAA;;;;;;AAiDvC;;;;;;;;;;;;;;;;;iBAvmDgB,oBAAA;;;;;iBAWA,oBAAA;;;;;;;;;;;;;;;;;;;;iBAkGA,cAAA,UAAwB,MAAA,CAAK,sBAAsB;;iBAcnD,cAAA,2BAAyC;iBAsSzC,UAAA;;;;;;;;;;;;;;;;;;iBAqBA,gBAAA,aAA6B,MAAA,CAAK;;;;;;iBAqClC,kBAAA,CAAA;iBAIA,iBAAA,CAAA;iBAIA,iBAAA,CAAA;iBAIA,cAAA,IAAkB,uBAAuB;iBAIzC,kBAAA,IAAsB,uBAAuB;;;;;;;iBAc7C,8BAAA,IACX,uBACG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2EQ,oBAAA,SAA6B,qBAAqB;;KA0DtD,oBAAA,GAAuB;;;;;;;;;;;iBAYnB,sBAAA,mBACI,4BAA4B,2BAC7C;;;iBAsTa,eAAA,IAAmB,uBAAuB;;;;;;;iBA0B1C,mBAAA,IAAuB,uBAAuB;iBAI9C,eAAA,IAAmB,uBAAuB;iBAO1C,eAAA,IAAmB,uBAAuB;;;;;cAU7C,wBAAwB;;;;;iBAarB,YAAA;iBAIA,uBAAA,IAA2B,uBAAuB;iBAQlD,eAAA,IAAmB,uBAAuB;iBAY1C,gBAAA,WACJ,eAAe,mBAAmB,+BAC3C;;;;;;iBAmHa,eAAA,oFAKF,oBACX;;;iBA4Pa,mBAAA,YACH,8EAIC,oBACX;iBAsHa,mBAAA,iEAIF,qCACM,oCACjB;iBAqCa,uBAAA,YACH,2DAGC,qCACM,oCACjB;iBA2Ca,+BAAA,6BAEH,8EAIC,4BACH,iBACR;iBAmSa,mCAAA,6BAEH,2DAGC,qCACM,oCACjB;;;;;;;;;;;;;;;iBA+wBa,8BAAA;UAgBC,oBAAA;;;;;;;;;;;;;;;;iBAUD,sBAAA;;;IAIb"}
|
package/dist/helpers.d.ts
CHANGED
|
@@ -1,9 +1,60 @@
|
|
|
1
1
|
import { LiveFixtureResponse } from "./live-types.js";
|
|
2
|
-
import { AudioResponse, ChatCompletion, ChatCompletionRequest, ContentWithToolCallsResponse, EmbeddingResponse, ErrorResponse, FixtureBlock, FixtureFileBlock, FixtureResponse, ImageResponse, ResponseOverrides, SSEChunk, TextResponse, ToolCall, ToolCallResponse, TranscriptionResponse, VideoResponse } from "./types.js";
|
|
2
|
+
import { AudioResponse, ChatCompletion, ChatCompletionRequest, ContentWithToolCallsResponse, EmbeddingResponse, ErrorResponse, FixtureBlock, FixtureFileBlock, FixtureFileResponsesBlock, FixtureResponse, ImageResponse, ResponseOverrides, ResponsesFixtureBlock, SSEChunk, TextResponse, ToolCall, ToolCallResponse, TranscriptionResponse, VideoResponse } from "./types.js";
|
|
3
3
|
import * as http$1 from "node:http";
|
|
4
4
|
|
|
5
5
|
//#region src/helpers.d.ts
|
|
6
6
|
|
|
7
|
+
/**
|
|
8
|
+
* A custom (freeform) tool call reached a wire that has no faithful projection
|
|
9
|
+
* for it. Only the OpenAI Responses API (HTTP and WebSocket) emits custom tool
|
|
10
|
+
* calls, from a fixture's `customToolCalls` or a `customToolCall` block in its
|
|
11
|
+
* `responsesBlocks`. The handlers of the other wires raise this through
|
|
12
|
+
* {@link rejectResponsesOnlyToolCalls} (usually via
|
|
13
|
+
* {@link requireEmittedFunctionToolCalls}) before they write any content.
|
|
14
|
+
* Ollama `/api/generate` is the exception: it rejects every tool-call fixture
|
|
15
|
+
* with a 400 before this check.
|
|
16
|
+
*/
|
|
17
|
+
declare class UnsupportedToolCallError extends Error {
|
|
18
|
+
readonly toolName: string;
|
|
19
|
+
readonly wire: string;
|
|
20
|
+
constructor(toolName: string, wire: string);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A fixture tool call is malformed: a `toolCalls` entry that is not an object,
|
|
24
|
+
* a malformed `customToolCalls` entry, or a malformed tool block in
|
|
25
|
+
* `responsesBlocks`. Programmatic and factory fixtures skip load validation,
|
|
26
|
+
* so this request-time guard is their validation for the rules
|
|
27
|
+
* {@link assertResponsesToolCalls} and {@link resolveResponsesBlocks} check.
|
|
28
|
+
* An HTTP request then fails with a 500 that carries this message and `code`;
|
|
29
|
+
* a WebSocket turn gets the transport's error message with the code. A
|
|
30
|
+
* malformed legacy `blocks` entry keeps the plain Error of
|
|
31
|
+
* {@link resolveFixtureBlocks}.
|
|
32
|
+
*/
|
|
33
|
+
declare class InvalidFixtureToolCallError extends Error {
|
|
34
|
+
readonly code = "aimock_invalid_fixture_tool_call";
|
|
35
|
+
constructor(index: number, problem: string, carrier?: "toolCalls" | "customToolCalls" | "blocks");
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Validate a response's `customToolCalls` (OpenAI Responses only) before it is
|
|
39
|
+
* served. Throws {@link InvalidFixtureToolCallError} on the first malformed
|
|
40
|
+
* entry. The key is new, so no fixture of an earlier release reaches this.
|
|
41
|
+
*/
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* A fixture's `toolCalls` for a wire that cannot carry custom tool calls.
|
|
45
|
+
* Every entry is a function call and passes through unchanged, exactly as in
|
|
46
|
+
* earlier releases (the builders read its `name`, `arguments` and `id`; its
|
|
47
|
+
* Responses-only `namespace` is not emitted). Custom calls live in
|
|
48
|
+
* `customToolCalls`, which {@link rejectResponsesOnlyToolCalls} rejects.
|
|
49
|
+
*/
|
|
50
|
+
declare function requireFunctionToolCalls(calls: ToolCall[]): ToolCall[];
|
|
51
|
+
/**
|
|
52
|
+
* Reject the Responses-only custom tool calls on a wire that cannot carry
|
|
53
|
+
* them: a non-empty `customToolCalls`, or a `customToolCall` block in
|
|
54
|
+
* `responsesBlocks`. Throws {@link UnsupportedToolCallError} naming `wire`.
|
|
55
|
+
* Both keys are new, so no fixture of an earlier release reaches this error.
|
|
56
|
+
*/
|
|
57
|
+
|
|
7
58
|
/**
|
|
8
59
|
* Build the strict-mode 503 error message, distinguishing a true no-match from
|
|
9
60
|
* a sequence/turn-exhausted miss.
|
|
@@ -76,7 +127,20 @@ declare function generateMessageId(): string;
|
|
|
76
127
|
declare function generateToolUseId(): string;
|
|
77
128
|
declare function isTextResponse(r: FixtureResponse): r is TextResponse;
|
|
78
129
|
declare function isToolCallResponse(r: FixtureResponse): r is ToolCallResponse;
|
|
130
|
+
/**
|
|
131
|
+
* Whether `r` is a combined content + tool calls response: a string `content`
|
|
132
|
+
* with a `toolCalls` array, or a non-empty `blocks` array. Public, with the
|
|
133
|
+
* 1.44.0 result for every input; `responsesBlocks` does not count. aimock's
|
|
134
|
+
* own handlers use {@link isCombinedFixtureResponse}, which also counts it.
|
|
135
|
+
*/
|
|
79
136
|
declare function isContentWithToolCallsResponse(r: FixtureResponse): r is ContentWithToolCallsResponse;
|
|
137
|
+
/**
|
|
138
|
+
* @internal The combined-response guard aimock's handlers, validation and
|
|
139
|
+
* misbehavior use: {@link isContentWithToolCallsResponse} plus a non-empty
|
|
140
|
+
* `responsesBlocks`. In legacy mode those keys are dropped before serving, so
|
|
141
|
+
* only `responsesTools: "extended"` sees the extra clause.
|
|
142
|
+
*/
|
|
143
|
+
|
|
80
144
|
/**
|
|
81
145
|
* Validate and pass through the ordered `blocks` field of a combined
|
|
82
146
|
* content+toolCalls fixture. Used ONLY on the new block-iteration path (when a
|
|
@@ -104,10 +168,25 @@ declare function isContentWithToolCallsResponse(r: FixtureResponse): r is Conten
|
|
|
104
168
|
* optional string `id`. The return type guarantees `arguments: string` — every
|
|
105
169
|
* caller relies on that. Throws on a malformed array or entry — same fail-fast
|
|
106
170
|
* idiom as the other fixture validators in this module (see e.g. the factory
|
|
107
|
-
* guard at {@link resolveResponse}).
|
|
171
|
+
* guard at {@link resolveResponse}). A `customToolCall` block is not a
|
|
172
|
+
* `blocks` entry (it belongs in `responsesBlocks`, see
|
|
173
|
+
* {@link resolveResponsesBlocks}) and fails as an unknown type.
|
|
108
174
|
*/
|
|
109
175
|
declare function resolveFixtureBlocks(blocks: FixtureFileBlock[]): FixtureBlock[];
|
|
110
|
-
/**
|
|
176
|
+
/** A normalized block on a wire that cannot carry custom tool calls. */
|
|
177
|
+
type FunctionFixtureBlock = FixtureBlock;
|
|
178
|
+
/**
|
|
179
|
+
* Validate and normalize a fixture's `responsesBlocks` (OpenAI Responses
|
|
180
|
+
* only). Same rules and normalized copy as {@link resolveFixtureBlocks}, plus:
|
|
181
|
+
* a `customToolCall` block with a non-empty string `name`, a string `input`
|
|
182
|
+
* (never parsed or stringified), no `arguments` and an optional string `id`;
|
|
183
|
+
* on either tool block, `namespace` must be a non-empty string when present,
|
|
184
|
+
* and a `toolCall` block carries no `input`. The key is new, so a malformed
|
|
185
|
+
* tool block throws the coded {@link InvalidFixtureToolCallError}; a malformed
|
|
186
|
+
* text block or an unknown type throws a plain Error.
|
|
187
|
+
*/
|
|
188
|
+
declare function resolveResponsesBlocks(blocks: readonly (FixtureFileResponsesBlock | ResponsesFixtureBlock)[]): ResponsesFixtureBlock[];
|
|
189
|
+
/** Allocate the exact OpenAI call identities once for both wire output and observations. */
|
|
111
190
|
|
|
112
191
|
declare function isErrorResponse(r: FixtureResponse): r is ErrorResponse;
|
|
113
192
|
/**
|
|
@@ -138,6 +217,8 @@ declare function extractOverrides(response: TextResponse | ToolCallResponse | Co
|
|
|
138
217
|
*/
|
|
139
218
|
|
|
140
219
|
declare function buildTextChunks(content: string, model: string, chunkSize: number, reasoning?: string, overrides?: ResponseOverrides): SSEChunk[];
|
|
220
|
+
/** K9 exposure is selected by the provider path, never the echoed response model. */
|
|
221
|
+
|
|
141
222
|
declare function buildToolCallChunks(toolCalls: ToolCall[], model: string, chunkSize: number, reasoning?: string, overrides?: ResponseOverrides): SSEChunk[];
|
|
142
223
|
declare function buildTextCompletion(content: string, model: string, reasoning?: string, overrides?: ResponseOverrides, requestMessages?: ChatCompletionRequest["messages"]): ChatCompletion;
|
|
143
224
|
declare function buildToolCallCompletion(toolCalls: ToolCall[], model: string, reasoning?: string, overrides?: ResponseOverrides, requestMessages?: ChatCompletionRequest["messages"]): ChatCompletion;
|
|
@@ -179,5 +260,5 @@ declare function buildEmbeddingResponse(embeddings: number[][], model: string, u
|
|
|
179
260
|
total_tokens?: number;
|
|
180
261
|
}): EmbeddingAPIResponse;
|
|
181
262
|
//#endregion
|
|
182
|
-
export { EmbeddingAPIResponse, FORMAT_TO_CONTENT_TYPE, buildContentWithToolCallsChunks, buildContentWithToolCallsCompletion, buildEmbeddingResponse, buildTextChunks, buildTextCompletion, buildToolCallChunks, buildToolCallCompletion, extractOverrides, flattenHeaders, formatToMime, generateDeterministicEmbedding, generateId, generateMessageId, generateToolCallId, generateToolUseId, isAudioResponse, isContentWithToolCallsResponse, isEmbeddingResponse, isErrorResponse, isImageResponse, isLiveResponse, isTextResponse, isToolCallResponse, isTranscriptionResponse, isVideoResponse, resolveFixtureBlocks, resolveRequestId, strictNoMatchLogLine, strictNoMatchMessage };
|
|
263
|
+
export { EmbeddingAPIResponse, FORMAT_TO_CONTENT_TYPE, FunctionFixtureBlock, InvalidFixtureToolCallError, UnsupportedToolCallError, buildContentWithToolCallsChunks, buildContentWithToolCallsCompletion, buildEmbeddingResponse, buildTextChunks, buildTextCompletion, buildToolCallChunks, buildToolCallCompletion, extractOverrides, flattenHeaders, formatToMime, generateDeterministicEmbedding, generateId, generateMessageId, generateToolCallId, generateToolUseId, isAudioResponse, isContentWithToolCallsResponse, isEmbeddingResponse, isErrorResponse, isImageResponse, isLiveResponse, isTextResponse, isToolCallResponse, isTranscriptionResponse, isVideoResponse, requireFunctionToolCalls, resolveFixtureBlocks, resolveRequestId, resolveResponsesBlocks, strictNoMatchLogLine, strictNoMatchMessage };
|
|
183
264
|
//# sourceMappingURL=helpers.d.ts.map
|
package/dist/helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","names":[],"sources":["../src/helpers.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","names":[],"sources":["../src/helpers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;AAm7CA;;;;;AAOA;;AAAmC,cAtyCtB,wBAAA,SAAiC,KAAA,CAsyCX;WAAuB,QAAA,EAAA,MAAA;EAAa,SAAA,IAAA,EAAA,MAAA;EAU1D,WAAA,CAAA,QAAA,EAAA,MAOZ,EAAA,IAAA,EAAA,MAPoC;AAarC;AAIA;;;;;AAQA;;;;;AAYA;AAAgC,cA3zCnB,2BAAA,SAAoC,KAAA,CA2zCjB;WACpB,IAAA,GAAA,kCAAA;aAAe,CAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,WAAA,GAAA,iBAAA,GAAA,QAAA;;;;AAoH3B;;;;AA8XA;;;;;;AA2CA;AAAuC,iBA5wDvB,wBAAA,CA4wDuB,KAAA,EA5wDS,QA4wDT,EAAA,CAAA,EA5wDsB,QA4wDtB,EAAA;;;;;;AAiDvC;;;;;;;;;;;;;;;;;iBAvmDgB,oBAAA;;;;;iBAWA,oBAAA;;;;;;;;;;;;;;;;;;;;iBAkGA,cAAA,UAAwB,MAAA,CAAK,sBAAsB;;iBAcnD,cAAA,2BAAyC;iBAsSzC,UAAA;;;;;;;;;;;;;;;;;;iBAqBA,gBAAA,aAA6B,MAAA,CAAK;;;;;;iBAqClC,kBAAA,CAAA;iBAIA,iBAAA,CAAA;iBAIA,iBAAA,CAAA;iBAIA,cAAA,IAAkB,uBAAuB;iBAIzC,kBAAA,IAAsB,uBAAuB;;;;;;;iBAc7C,8BAAA,IACX,uBACG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2EQ,oBAAA,SAA6B,qBAAqB;;KA0DtD,oBAAA,GAAuB;;;;;;;;;;;iBAYnB,sBAAA,mBACI,4BAA4B,2BAC7C;;;iBAsTa,eAAA,IAAmB,uBAAuB;;;;;;;iBA0B1C,mBAAA,IAAuB,uBAAuB;iBAI9C,eAAA,IAAmB,uBAAuB;iBAO1C,eAAA,IAAmB,uBAAuB;;;;;cAU7C,wBAAwB;;;;;iBAarB,YAAA;iBAIA,uBAAA,IAA2B,uBAAuB;iBAQlD,eAAA,IAAmB,uBAAuB;iBAY1C,gBAAA,WACJ,eAAe,mBAAmB,+BAC3C;;;;;;iBAmHa,eAAA,oFAKF,oBACX;;;iBA4Pa,mBAAA,YACH,8EAIC,oBACX;iBAsHa,mBAAA,iEAIF,qCACM,oCACjB;iBAqCa,uBAAA,YACH,2DAGC,qCACM,oCACjB;iBA2Ca,+BAAA,6BAEH,8EAIC,4BACH,iBACR;iBAmSa,mCAAA,6BAEH,2DAGC,qCACM,oCACjB;;;;;;;;;;;;;;;iBA+wBa,8BAAA;UAgBC,oBAAA;;;;;;;;;;;;;;;;iBAUD,sBAAA;;;IAIb"}
|