@zimtsui/brainswitch 0.0.56 → 0.0.59
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 +109 -54
- package/assets/verbatim/declarations.handlebars +11 -0
- package/assets/verbatim/instruction.md +49 -0
- package/build/adaptor.d.ts +40 -9
- package/build/adaptor.js +36 -38
- package/build/adaptor.js.map +1 -1
- package/build/api-types/anthropic/billing.d.ts +5 -5
- package/build/api-types/anthropic/billing.js +1 -2
- package/build/api-types/anthropic/billing.js.map +1 -1
- package/build/api-types/anthropic/tool-codec.d.ts +11 -12
- package/build/api-types/anthropic/tool-codec.js +27 -42
- package/build/api-types/anthropic/tool-codec.js.map +1 -1
- package/build/api-types/google/billing.d.ts +5 -5
- package/build/api-types/google/billing.js +2 -3
- package/build/api-types/google/billing.js.map +1 -1
- package/build/api-types/google/restful-request.d.ts +1 -1
- package/build/api-types/google/restful-request.js +0 -1
- package/build/api-types/google/restful-request.js.map +1 -1
- package/build/api-types/google/tool-codec.d.ts +11 -11
- package/build/api-types/google/tool-codec.js +21 -19
- package/build/api-types/google/tool-codec.js.map +1 -1
- package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.d.ts +2 -3
- package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.js +0 -2
- package/build/api-types/openai-chatcompletions/billing.js.map +1 -0
- package/build/api-types/openai-chatcompletions/tool-codec.d.ts +17 -0
- package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/tool-codec.js +26 -32
- package/build/api-types/openai-chatcompletions/tool-codec.js.map +1 -0
- package/build/api-types/openai-responses/billing.d.ts +5 -5
- package/build/api-types/openai-responses/billing.js +1 -2
- package/build/api-types/openai-responses/billing.js.map +1 -1
- package/build/api-types/openai-responses/tool-codec.d.ts +11 -11
- package/build/api-types/openai-responses/tool-codec.js +36 -32
- package/build/api-types/openai-responses/tool-codec.js.map +1 -1
- package/build/assets.d.ts +7 -0
- package/build/assets.js +8 -0
- package/build/assets.js.map +1 -0
- package/build/compatible-engine/session.d.ts +67 -0
- package/build/compatible-engine/session.js +92 -0
- package/build/compatible-engine/session.js.map +1 -0
- package/build/compatible-engine/structuring.d.ts +36 -0
- package/build/compatible-engine/structuring.js +34 -0
- package/build/compatible-engine/structuring.js.map +1 -0
- package/build/compatible-engine/validation.d.ts +21 -0
- package/build/compatible-engine/validation.js +82 -0
- package/build/compatible-engine/validation.js.map +1 -0
- package/build/compatible-engine.d/agentloop.d.ts +12 -0
- package/build/compatible-engine.d/agentloop.js +52 -0
- package/build/compatible-engine.d/agentloop.js.map +1 -0
- package/build/compatible-engine.d/aliyun/transport.d.ts +12 -0
- package/build/compatible-engine.d/aliyun/transport.js +7 -0
- package/build/compatible-engine.d/aliyun/transport.js.map +1 -0
- package/build/compatible-engine.d/aliyun.d.ts +24 -0
- package/build/compatible-engine.d/aliyun.js +46 -0
- package/build/compatible-engine.d/aliyun.js.map +1 -0
- package/build/compatible-engine.d/anthropic/choice-codec.d.ts +5 -0
- package/build/compatible-engine.d/anthropic/choice-codec.js +26 -0
- package/build/compatible-engine.d/anthropic/choice-codec.js.map +1 -0
- package/build/compatible-engine.d/anthropic/message-codec.d.ts +36 -0
- package/build/compatible-engine.d/anthropic/message-codec.js +86 -0
- package/build/compatible-engine.d/anthropic/message-codec.js.map +1 -0
- package/build/compatible-engine.d/anthropic/transport.d.ts +34 -0
- package/build/compatible-engine.d/anthropic/transport.js +150 -0
- package/build/compatible-engine.d/anthropic/transport.js.map +1 -0
- package/build/compatible-engine.d/anthropic.d.ts +26 -0
- package/build/compatible-engine.d/anthropic.js +46 -0
- package/build/compatible-engine.d/anthropic.js.map +1 -0
- package/build/compatible-engine.d/google/choice-codec.d.ts +5 -0
- package/build/compatible-engine.d/google/choice-codec.js +27 -0
- package/build/compatible-engine.d/google/choice-codec.js.map +1 -0
- package/build/compatible-engine.d/google/message-codec.d.ts +36 -0
- package/build/compatible-engine.d/google/message-codec.js +94 -0
- package/build/compatible-engine.d/google/message-codec.js.map +1 -0
- package/build/compatible-engine.d/google/transport.d.ts +30 -0
- package/build/{compatible.d → compatible-engine.d}/google/transport.js +22 -18
- package/build/compatible-engine.d/google/transport.js.map +1 -0
- package/build/compatible-engine.d/google.d.ts +26 -0
- package/build/compatible-engine.d/google.js +50 -0
- package/build/compatible-engine.d/google.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions/choice-codec.d.ts +5 -0
- package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js +31 -0
- package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.d.ts +24 -0
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.js +71 -0
- package/build/compatible-engine.d/openai-chatcompletions/message-codec.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.d.ts +38 -0
- package/build/{compatible.d/openai-chatcompletions.d → compatible-engine.d/openai-chatcompletions/transport.d}/monolith.js +25 -22
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.d.ts +37 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js +190 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.d.ts +10 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.js +11 -0
- package/build/compatible-engine.d/openai-chatcompletions/transport.js.map +1 -0
- package/build/compatible-engine.d/openai-chatcompletions.d.ts +17 -0
- package/build/compatible-engine.d/openai-chatcompletions.js +14 -0
- package/build/compatible-engine.d/openai-chatcompletions.js.map +1 -0
- package/build/compatible-engine.d/openai-responses/choice-codec.d.ts +5 -0
- package/build/compatible-engine.d/openai-responses/choice-codec.js +30 -0
- package/build/compatible-engine.d/openai-responses/choice-codec.js.map +1 -0
- package/build/compatible-engine.d/openai-responses/message-codec.d.ts +36 -0
- package/build/compatible-engine.d/openai-responses/message-codec.js +96 -0
- package/build/compatible-engine.d/openai-responses/message-codec.js.map +1 -0
- package/build/compatible-engine.d/openai-responses/transport.d.ts +35 -0
- package/build/{compatible.d → compatible-engine.d}/openai-responses/transport.js +21 -29
- package/build/compatible-engine.d/openai-responses/transport.js.map +1 -0
- package/build/compatible-engine.d/openai-responses.d.ts +26 -0
- package/build/compatible-engine.d/openai-responses.js +46 -0
- package/build/compatible-engine.d/openai-responses.js.map +1 -0
- package/build/compatible-engine.d.ts +22 -0
- package/build/compatible-engine.js +29 -0
- package/build/compatible-engine.js.map +1 -0
- package/build/config.d.ts +1 -0
- package/build/config.js +1 -2
- package/build/config.js.map +1 -1
- package/build/endpoint-spec.d.ts +1 -0
- package/build/endpoint-spec.js +2 -1
- package/build/endpoint-spec.js.map +1 -1
- package/build/engine/session.d.ts +7 -0
- package/build/{session.js.map → engine/session.js.map} +1 -1
- package/build/engine/transport.d.ts +5 -0
- package/build/engine/transport.js +1 -0
- package/build/engine/transport.js.map +1 -0
- package/build/engine/validation.d.ts +9 -0
- package/build/engine/validation.js +1 -0
- package/build/engine/validation.js.map +1 -0
- package/build/engine.d.ts +49 -40
- package/build/engine.js +88 -70
- package/build/engine.js.map +1 -1
- package/build/exports.d.ts +14 -14
- package/build/exports.js +14 -14
- package/build/exports.js.map +1 -1
- package/build/function.d.ts +79 -66
- package/build/function.js +30 -47
- package/build/function.js.map +1 -1
- package/build/inference-context.d.ts +2 -2
- package/build/inference-context.js +0 -1
- package/build/inference-context.js.map +1 -1
- package/build/native-engines.d/google/message-codec.d.ts +18 -16
- package/build/native-engines.d/google/message-codec.js +31 -33
- package/build/native-engines.d/google/message-codec.js.map +1 -1
- package/build/native-engines.d/google/session.d.ts +44 -51
- package/build/native-engines.d/google/session.js +85 -81
- package/build/native-engines.d/google/session.js.map +1 -1
- package/build/native-engines.d/google/transport.d.ts +22 -19
- package/build/native-engines.d/google/transport.js +13 -13
- package/build/native-engines.d/google/transport.js.map +1 -1
- package/build/native-engines.d/google/validation.d.ts +22 -0
- package/build/native-engines.d/google/validation.js +20 -0
- package/build/native-engines.d/google/validation.js.map +1 -0
- package/build/native-engines.d/google.d/agentloop.d.ts +12 -0
- package/build/native-engines.d/google.d/agentloop.js +57 -0
- package/build/native-engines.d/google.d/agentloop.js.map +1 -0
- package/build/native-engines.d/google.d/exports.d.ts +3 -0
- package/build/native-engines.d/google.d/exports.js +4 -0
- package/build/native-engines.d/google.d/exports.js.map +1 -0
- package/build/native-engines.d/google.d.ts +42 -0
- package/build/native-engines.d/google.js +83 -0
- package/build/native-engines.d/google.js.map +1 -0
- package/build/native-engines.d/openai-responses/choice-codec.d.ts +5 -0
- package/build/native-engines.d/openai-responses/choice-codec.js +30 -0
- package/build/native-engines.d/openai-responses/choice-codec.js.map +1 -0
- package/build/native-engines.d/openai-responses/message-codec.d.ts +19 -17
- package/build/native-engines.d/openai-responses/message-codec.js +31 -25
- package/build/native-engines.d/openai-responses/message-codec.js.map +1 -1
- package/build/native-engines.d/openai-responses/session.d.ts +47 -45
- package/build/native-engines.d/openai-responses/session.js +75 -105
- package/build/native-engines.d/openai-responses/session.js.map +1 -1
- package/build/native-engines.d/openai-responses/structuring.d.ts +19 -0
- package/build/native-engines.d/openai-responses/structuring.js +19 -0
- package/build/native-engines.d/openai-responses/structuring.js.map +1 -0
- package/build/native-engines.d/openai-responses/tool.d.ts +15 -12
- package/build/native-engines.d/openai-responses/tool.js +1 -12
- package/build/native-engines.d/openai-responses/tool.js.map +1 -1
- package/build/native-engines.d/openai-responses/transport.d.ts +24 -25
- package/build/native-engines.d/openai-responses/transport.js +21 -41
- package/build/native-engines.d/openai-responses/transport.js.map +1 -1
- package/build/native-engines.d/openai-responses/validation.d.ts +20 -0
- package/build/native-engines.d/openai-responses/validation.js +80 -0
- package/build/native-engines.d/openai-responses/validation.js.map +1 -0
- package/build/native-engines.d/openai-responses.d/agentloop.d.ts +12 -0
- package/build/native-engines.d/openai-responses.d/agentloop.js +61 -0
- package/build/native-engines.d/openai-responses.d/agentloop.js.map +1 -0
- package/build/native-engines.d/openai-responses.d/exports.d.ts +4 -0
- package/build/native-engines.d/openai-responses.d/exports.js +5 -0
- package/build/native-engines.d/openai-responses.d/exports.js.map +1 -0
- package/build/native-engines.d/openai-responses.d.ts +44 -0
- package/build/native-engines.d/openai-responses.js +78 -0
- package/build/native-engines.d/openai-responses.js.map +1 -0
- package/build/throttle.d.ts +6 -5
- package/build/throttle.js +17 -14
- package/build/throttle.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/verbatim/codec/declarations.d.ts +2 -0
- package/build/verbatim/codec/declarations.js +22 -0
- package/build/verbatim/codec/declarations.js.map +1 -0
- package/build/verbatim/codec/request.d.ts +7 -0
- package/build/verbatim/codec/request.js +53 -0
- package/build/verbatim/codec/request.js.map +1 -0
- package/build/verbatim/codec.d.ts +2 -0
- package/build/verbatim/codec.js +3 -0
- package/build/verbatim/codec.js.map +1 -0
- package/build/verbatim.d.ts +74 -0
- package/build/verbatim.js +17 -0
- package/build/verbatim.js.map +1 -0
- package/examples/agent.ts +65 -0
- package/examples/chat.ts +24 -0
- package/examples/config.ts +24 -0
- package/{test/src → examples}/tsconfig.json +6 -2
- package/examples/verbatim.ts +44 -0
- package/package.json +15 -13
- package/build/agentloop.d.ts +0 -12
- package/build/agentloop.js +0 -43
- package/build/agentloop.js.map +0 -1
- package/build/api-types/openai-chatcompletion/billing.js.map +0 -1
- package/build/api-types/openai-chatcompletion/tool-codec.d.ts +0 -18
- package/build/api-types/openai-chatcompletion/tool-codec.js.map +0 -1
- package/build/compatible/engine.d/aliyun.d.ts +0 -23
- package/build/compatible/engine.d/aliyun.js +0 -44
- package/build/compatible/engine.d/aliyun.js.map +0 -1
- package/build/compatible/engine.d/anthropic.d.ts +0 -23
- package/build/compatible/engine.d/anthropic.js +0 -41
- package/build/compatible/engine.d/anthropic.js.map +0 -1
- package/build/compatible/engine.d/google.d.ts +0 -23
- package/build/compatible/engine.d/google.js +0 -45
- package/build/compatible/engine.d/google.js.map +0 -1
- package/build/compatible/engine.d/openai-responses.d.ts +0 -23
- package/build/compatible/engine.d/openai-responses.js +0 -41
- package/build/compatible/engine.d/openai-responses.js.map +0 -1
- package/build/compatible/engine.d.ts +0 -18
- package/build/compatible/engine.js +0 -21
- package/build/compatible/engine.js.map +0 -1
- package/build/compatible/session.d.ts +0 -78
- package/build/compatible/session.js +0 -138
- package/build/compatible/session.js.map +0 -1
- package/build/compatible/tool-call-validator.d.ts +0 -11
- package/build/compatible/tool-call-validator.js +0 -12
- package/build/compatible/tool-call-validator.js.map +0 -1
- package/build/compatible.d/aliyun/transport.d.ts +0 -11
- package/build/compatible.d/aliyun/transport.js +0 -9
- package/build/compatible.d/aliyun/transport.js.map +0 -1
- package/build/compatible.d/anthropic/message-codec.d.ts +0 -31
- package/build/compatible.d/anthropic/message-codec.js +0 -88
- package/build/compatible.d/anthropic/message-codec.js.map +0 -1
- package/build/compatible.d/anthropic/transport.d.ts +0 -31
- package/build/compatible.d/anthropic/transport.js +0 -137
- package/build/compatible.d/anthropic/transport.js.map +0 -1
- package/build/compatible.d/google/message-codec.d.ts +0 -31
- package/build/compatible.d/google/message-codec.js +0 -98
- package/build/compatible.d/google/message-codec.js.map +0 -1
- package/build/compatible.d/google/transport.d.ts +0 -28
- package/build/compatible.d/google/transport.js.map +0 -1
- package/build/compatible.d/openai-chatcompletions/message-codec.d.ts +0 -19
- package/build/compatible.d/openai-chatcompletions/message-codec.js +0 -66
- package/build/compatible.d/openai-chatcompletions/message-codec.js.map +0 -1
- package/build/compatible.d/openai-chatcompletions/transport.d.ts +0 -9
- package/build/compatible.d/openai-chatcompletions/transport.js +0 -25
- package/build/compatible.d/openai-chatcompletions/transport.js.map +0 -1
- package/build/compatible.d/openai-chatcompletions.d/monolith.d.ts +0 -36
- package/build/compatible.d/openai-chatcompletions.d/monolith.js.map +0 -1
- package/build/compatible.d/openai-chatcompletions.d/stream.d.ts +0 -35
- package/build/compatible.d/openai-chatcompletions.d/stream.js +0 -196
- package/build/compatible.d/openai-chatcompletions.d/stream.js.map +0 -1
- package/build/compatible.d/openai-responses/message-codec.d.ts +0 -32
- package/build/compatible.d/openai-responses/message-codec.js +0 -105
- package/build/compatible.d/openai-responses/message-codec.js.map +0 -1
- package/build/compatible.d/openai-responses/transport.d.ts +0 -33
- package/build/compatible.d/openai-responses/transport.js.map +0 -1
- package/build/frontmatter.d.ts +0 -5
- package/build/frontmatter.js +0 -13
- package/build/frontmatter.js.map +0 -1
- package/build/native-engines.d/google/agentloop.d.ts +0 -12
- package/build/native-engines.d/google/agentloop.js +0 -42
- package/build/native-engines.d/google/agentloop.js.map +0 -1
- package/build/native-engines.d/google/engine.d.ts +0 -35
- package/build/native-engines.d/google/engine.js +0 -73
- package/build/native-engines.d/google/engine.js.map +0 -1
- package/build/native-engines.d/google/exports.d.ts +0 -5
- package/build/native-engines.d/google/exports.js +0 -6
- package/build/native-engines.d/google/exports.js.map +0 -1
- package/build/native-engines.d/openai-responses/agentloop.d.ts +0 -13
- package/build/native-engines.d/openai-responses/agentloop.js +0 -53
- package/build/native-engines.d/openai-responses/agentloop.js.map +0 -1
- package/build/native-engines.d/openai-responses/engine.d.ts +0 -32
- package/build/native-engines.d/openai-responses/engine.js +0 -63
- package/build/native-engines.d/openai-responses/engine.js.map +0 -1
- package/build/native-engines.d/openai-responses/exports.d.ts +0 -6
- package/build/native-engines.d/openai-responses/exports.js +0 -7
- package/build/native-engines.d/openai-responses/exports.js.map +0 -1
- package/build/native-engines.d/openai-responses/tool-call-validator.d.ts +0 -12
- package/build/native-engines.d/openai-responses/tool-call-validator.js +0 -33
- package/build/native-engines.d/openai-responses/tool-call-validator.js.map +0 -1
- package/build/session.d.ts +0 -7
- package/test/build/test-codecs.d.ts +0 -1
- package/test/build/test-codecs.js +0 -230
- package/test/build/test-codecs.js.map +0 -1
- package/test/build/test-compatible-engine.d.ts +0 -1
- package/test/build/test-compatible-engine.js +0 -27
- package/test/build/test-compatible-engine.js.map +0 -1
- package/test/build/test-compatible-engines.d.ts +0 -1
- package/test/build/test-compatible-engines.js +0 -112
- package/test/build/test-compatible-engines.js.map +0 -1
- package/test/build/test-engine.d.ts +0 -1
- package/test/build/test-engine.js +0 -97
- package/test/build/test-engine.js.map +0 -1
- package/test/build/test-helpers.d.ts +0 -46
- package/test/build/test-helpers.js +0 -45
- package/test/build/test-helpers.js.map +0 -1
- package/test/build/test-native-engines.d.ts +0 -1
- package/test/build/test-native-engines.js +0 -64
- package/test/build/test-native-engines.js.map +0 -1
- package/test/build/test.d.ts +0 -5
- package/test/build/test.js +0 -6
- package/test/build/test.js.map +0 -1
- package/test/build/tsconfig.tsbuildinfo +0 -1
- package/test/src/test-codecs.ts +0 -256
- package/test/src/test-compatible-engine.ts +0 -45
- package/test/src/test-compatible-engines.ts +0 -129
- package/test/src/test-engine.ts +0 -144
- package/test/src/test-helpers.ts +0 -53
- package/test/src/test-native-engines.ts +0 -75
- package/test/src/test.ts +0 -5
- /package/build/{session.js → engine/session.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Structuring } from './structuring.ts';
|
|
2
|
+
import { Function } from '../../function.ts';
|
|
3
|
+
import { Verbatim } from '../../verbatim.ts';
|
|
4
|
+
import { RoleMessage } from './session.ts';
|
|
5
|
+
import type { Engine } from '../../engine.ts';
|
|
6
|
+
export declare class Validator<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> implements Engine.Validator<fdu, vdu, RoleMessage.Ai<fdu, vdu>> {
|
|
7
|
+
protected ctx: Validator.Context<fdu, vdu>;
|
|
8
|
+
constructor(ctx: Validator.Context<fdu, vdu>);
|
|
9
|
+
validateChoice(message: RoleMessage.Ai<fdu, vdu>): void;
|
|
10
|
+
validateParts(message: RoleMessage.Ai<fdu, vdu>): void;
|
|
11
|
+
}
|
|
12
|
+
export declare namespace Validator {
|
|
13
|
+
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = Validator<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
14
|
+
interface Context<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> {
|
|
15
|
+
choice: Structuring.Choice<fdu, vdu>;
|
|
16
|
+
}
|
|
17
|
+
namespace Context {
|
|
18
|
+
type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = Context<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Structuring } from "./structuring.js";
|
|
2
|
+
import { Function } from "../../function.js";
|
|
3
|
+
import { ResponseInvalid } from "../../engine.js";
|
|
4
|
+
export class Validator {
|
|
5
|
+
ctx;
|
|
6
|
+
constructor(ctx) {
|
|
7
|
+
this.ctx = ctx;
|
|
8
|
+
}
|
|
9
|
+
validateChoice(message) {
|
|
10
|
+
const tcs = message.getToolCalls();
|
|
11
|
+
const vrs = message.getVerbatimRequests();
|
|
12
|
+
if (this.ctx.choice === Structuring.Choice.TCall.REQUIRED) {
|
|
13
|
+
if (tcs.length) { }
|
|
14
|
+
else
|
|
15
|
+
throw new ResponseInvalid('Tool call required.');
|
|
16
|
+
}
|
|
17
|
+
else if (this.ctx.choice === Structuring.Choice.TCall.ANYONE) {
|
|
18
|
+
if (tcs.length) { }
|
|
19
|
+
else
|
|
20
|
+
throw new ResponseInvalid('Tool call required.');
|
|
21
|
+
if (tcs.length > 1)
|
|
22
|
+
throw new ResponseInvalid('Only one tool call allowed.');
|
|
23
|
+
}
|
|
24
|
+
else if (this.ctx.choice instanceof Structuring.Choice.TCall.FCall) {
|
|
25
|
+
if (tcs.length) { }
|
|
26
|
+
else
|
|
27
|
+
throw new ResponseInvalid(`Function call of ${this.ctx.choice.name} required.`);
|
|
28
|
+
if (tcs.length > 1)
|
|
29
|
+
throw new ResponseInvalid('Only one function call allowed.');
|
|
30
|
+
if (tcs[0] instanceof Function.Call && tcs[0].name === this.ctx.choice.name) { }
|
|
31
|
+
else
|
|
32
|
+
throw new ResponseInvalid(`Only function call of ${this.ctx.choice.name} allowed.`);
|
|
33
|
+
}
|
|
34
|
+
else if (this.ctx.choice === Structuring.Choice.VRequest.REQUIRED) {
|
|
35
|
+
if (vrs.length) { }
|
|
36
|
+
else
|
|
37
|
+
throw new ResponseInvalid('Verbatim message required.');
|
|
38
|
+
}
|
|
39
|
+
else if (this.ctx.choice === Structuring.Choice.VRequest.ANYONE) {
|
|
40
|
+
if (vrs.length) { }
|
|
41
|
+
else
|
|
42
|
+
throw new ResponseInvalid('Verbatim message required.');
|
|
43
|
+
if (vrs.length > 1)
|
|
44
|
+
throw new ResponseInvalid('Only one verbatim message allowed.');
|
|
45
|
+
}
|
|
46
|
+
else if (this.ctx.choice instanceof Structuring.Choice.VRequest) {
|
|
47
|
+
if (vrs.length) { }
|
|
48
|
+
else
|
|
49
|
+
throw new ResponseInvalid(`Verbatim message through channel ${this.ctx.choice.name} required.`);
|
|
50
|
+
if (vrs.length > 1)
|
|
51
|
+
throw new ResponseInvalid('Only one verbatim message allowed.');
|
|
52
|
+
if (vrs[0].name === this.ctx.choice.name) { }
|
|
53
|
+
else
|
|
54
|
+
throw new ResponseInvalid(`Only verbatim message through channel ${this.ctx.choice.name} allowed.`);
|
|
55
|
+
}
|
|
56
|
+
else if (this.ctx.choice === Structuring.Choice.REQUIRED) {
|
|
57
|
+
if (tcs.length + vrs.length) { }
|
|
58
|
+
else
|
|
59
|
+
throw new ResponseInvalid('Either tool call or verbatim message required.');
|
|
60
|
+
}
|
|
61
|
+
else if (this.ctx.choice === Structuring.Choice.ANYONE) {
|
|
62
|
+
if (tcs.length + vrs.length) { }
|
|
63
|
+
else
|
|
64
|
+
throw new ResponseInvalid('Either tool call or verbatim message required.');
|
|
65
|
+
if (tcs.length + vrs.length > 1)
|
|
66
|
+
throw new ResponseInvalid('Only one tool call or verbatim message allowed.');
|
|
67
|
+
}
|
|
68
|
+
else if (this.ctx.choice === Structuring.Choice.NONE) {
|
|
69
|
+
if (tcs.length + vrs.length)
|
|
70
|
+
throw new ResponseInvalid('Neither tool call nor verbatim message allowed.');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
validateParts(message) {
|
|
74
|
+
const parts = message.getParts();
|
|
75
|
+
if (parts.length) { }
|
|
76
|
+
else
|
|
77
|
+
throw new ResponseInvalid('Empty message.');
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type InferenceContext } from '../../inference-context.ts';
|
|
2
|
+
import { Function } from '../../function.ts';
|
|
3
|
+
import { OpenAIResponsesNativeEngine } from '../openai-responses.ts';
|
|
4
|
+
import * as CompatibleAgentloopModule from '../../compatible-engine.d/agentloop.ts';
|
|
5
|
+
import type { Verbatim } from '../../verbatim.ts';
|
|
6
|
+
/**
|
|
7
|
+
* @param session mutable
|
|
8
|
+
*/
|
|
9
|
+
export declare function agentloop<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto>(wfctx: InferenceContext, session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, engine: OpenAIResponsesNativeEngine<fdm, vdm>, tlm: OpenAIResponsesNativeEngine.Tool.Map<fdm>, limit?: number): AsyncGenerator<string, string, void>;
|
|
10
|
+
export declare namespace agentloop {
|
|
11
|
+
export import FunctionCallLimitExceeded = CompatibleAgentloopModule.agentloop.FunctionCallLimitExceeded;
|
|
12
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Function } from "../../function.js";
|
|
2
|
+
import { OpenAIResponsesNativeEngine } from "../openai-responses.js";
|
|
3
|
+
import * as CompatibleAgentloopModule from "../../compatible-engine.d/agentloop.js";
|
|
4
|
+
/**
|
|
5
|
+
* @param session mutable
|
|
6
|
+
*/
|
|
7
|
+
export async function* agentloop(wfctx, session, engine, tlm, limit = Number.POSITIVE_INFINITY) {
|
|
8
|
+
for (let i = 0; i < limit; i++) {
|
|
9
|
+
const response = await engine.stateful(wfctx, session);
|
|
10
|
+
if (response.allTextPart())
|
|
11
|
+
return response.getText();
|
|
12
|
+
const ptcs = [];
|
|
13
|
+
for (const part of response.getParts()) {
|
|
14
|
+
if (part instanceof OpenAIResponsesNativeEngine.RoleMessage.Part.Text) {
|
|
15
|
+
yield part.text;
|
|
16
|
+
}
|
|
17
|
+
else if (part instanceof Function.Call) {
|
|
18
|
+
const fc = part;
|
|
19
|
+
const fn = tlm[fc.name];
|
|
20
|
+
ptcs.push((async () => {
|
|
21
|
+
try {
|
|
22
|
+
return Function.Response.Successful.of({
|
|
23
|
+
id: fc.id,
|
|
24
|
+
name: fc.name,
|
|
25
|
+
text: await fn.call(tlm, fc.args),
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
catch (e) {
|
|
29
|
+
if (e instanceof Function.Error) { }
|
|
30
|
+
else
|
|
31
|
+
throw e;
|
|
32
|
+
return Function.Response.Failed.of({
|
|
33
|
+
id: fc.id,
|
|
34
|
+
name: fc.name,
|
|
35
|
+
error: e.message,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
})());
|
|
39
|
+
}
|
|
40
|
+
else if (part instanceof OpenAIResponsesNativeEngine.Tool.ApplyPatch.Call) {
|
|
41
|
+
const apc = part;
|
|
42
|
+
const tl = tlm[OpenAIResponsesNativeEngine.Tool.APPLY_PATCH];
|
|
43
|
+
ptcs.push((async () => {
|
|
44
|
+
return new OpenAIResponsesNativeEngine.Tool.ApplyPatch.Response({
|
|
45
|
+
id: apc.raw.call_id,
|
|
46
|
+
failure: await tl.call(tlm, apc.raw.operation),
|
|
47
|
+
});
|
|
48
|
+
})());
|
|
49
|
+
}
|
|
50
|
+
else
|
|
51
|
+
throw new Error();
|
|
52
|
+
}
|
|
53
|
+
const trs = await Promise.all(ptcs);
|
|
54
|
+
engine.pushUserMessage(session, new OpenAIResponsesNativeEngine.RoleMessage.User(trs));
|
|
55
|
+
}
|
|
56
|
+
throw new agentloop.FunctionCallLimitExceeded('Function call limit exceeded.');
|
|
57
|
+
}
|
|
58
|
+
(function (agentloop) {
|
|
59
|
+
agentloop.FunctionCallLimitExceeded = CompatibleAgentloopModule.agentloop.FunctionCallLimitExceeded;
|
|
60
|
+
})(agentloop || (agentloop = {}));
|
|
61
|
+
//# sourceMappingURL=agentloop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentloop.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses.d/agentloop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses.d/exports.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Function } from '../function.ts';
|
|
2
|
+
import * as SessionModule from './openai-responses/session.ts';
|
|
3
|
+
import { Engine } from '../engine.ts';
|
|
4
|
+
import { type InferenceContext } from '../inference-context.ts';
|
|
5
|
+
import { ToolCodec } from '../api-types/openai-responses/tool-codec.ts';
|
|
6
|
+
import { Billing } from '../api-types/openai-responses/billing.ts';
|
|
7
|
+
import { MessageCodec as CompatibleMessageCodec } from '../compatible-engine.d/openai-responses/message-codec.ts';
|
|
8
|
+
import * as ValidationModule from './openai-responses/validation.ts';
|
|
9
|
+
import type { Verbatim } from '../verbatim.ts';
|
|
10
|
+
import * as StructuringModule from './openai-responses/structuring.ts';
|
|
11
|
+
import * as ToolModule from './openai-responses/tool.ts';
|
|
12
|
+
import * as ChoiceCodecModule from './openai-responses/choice-codec.ts';
|
|
13
|
+
import * as MessageCodecModule from './openai-responses/message-codec.ts';
|
|
14
|
+
import * as TransportModule from './openai-responses/transport.ts';
|
|
15
|
+
export type OpenAIResponsesNativeEngine<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = OpenAIResponsesNativeEngine.Instance<fdm, vdm>;
|
|
16
|
+
export declare namespace OpenAIResponsesNativeEngine {
|
|
17
|
+
class Instance<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends Engine.Instance<fdm, vdm, OpenAIResponsesNativeEngine.RoleMessage.User.From<fdm>, OpenAIResponsesNativeEngine.RoleMessage.Ai.From<fdm, vdm>, OpenAIResponsesNativeEngine.RoleMessage.Developer, OpenAIResponsesNativeEngine.Session.From<fdm, vdm>> {
|
|
18
|
+
protected applyPatch: boolean;
|
|
19
|
+
protected choice: OpenAIResponsesNativeEngine.Structuring.Choice.From<fdm, vdm>;
|
|
20
|
+
protected toolCodec: ToolCodec<fdm>;
|
|
21
|
+
protected compatibleMessageCodec: CompatibleMessageCodec<fdm, vdm>;
|
|
22
|
+
protected messageCodec: OpenAIResponsesNativeEngine.MessageCodec<fdm, vdm>;
|
|
23
|
+
protected billing: Billing;
|
|
24
|
+
protected validator: OpenAIResponsesNativeEngine.Validator.From<fdm, vdm>;
|
|
25
|
+
protected transport: OpenAIResponsesNativeEngine.Transport<fdm, vdm>;
|
|
26
|
+
protected parallelToolCall: boolean;
|
|
27
|
+
constructor(options: OpenAIResponsesNativeEngine.Options<fdm, vdm>);
|
|
28
|
+
protected infer(wfctx: InferenceContext, session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, signal?: AbortSignal): Promise<OpenAIResponsesNativeEngine.RoleMessage.Ai.From<fdm, vdm>>;
|
|
29
|
+
appendUserMessage(session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, message: OpenAIResponsesNativeEngine.RoleMessage.User.From<fdm>): OpenAIResponsesNativeEngine.Session.From<fdm, vdm>;
|
|
30
|
+
pushUserMessage(session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, message: OpenAIResponsesNativeEngine.RoleMessage.User.From<fdm>): OpenAIResponsesNativeEngine.Session.From<fdm, vdm>;
|
|
31
|
+
}
|
|
32
|
+
interface Options<in out fdm extends Function.Decl.Map.Proto, in out vdm extends Verbatim.Decl.Map.Proto> extends Engine.Options<fdm, vdm> {
|
|
33
|
+
applyPatch?: boolean;
|
|
34
|
+
structuringChoice?: OpenAIResponsesNativeEngine.Structuring.Choice.From<fdm, vdm>;
|
|
35
|
+
}
|
|
36
|
+
export import Session = SessionModule.Session;
|
|
37
|
+
export import RoleMessage = SessionModule.RoleMessage;
|
|
38
|
+
export import Tool = ToolModule.Tool;
|
|
39
|
+
export import ChoiceCodec = ChoiceCodecModule;
|
|
40
|
+
export import MessageCodec = MessageCodecModule.MessageCodec;
|
|
41
|
+
export import Structuring = StructuringModule.Structuring;
|
|
42
|
+
export import Transport = TransportModule.Transport;
|
|
43
|
+
export import Validator = ValidationModule.Validator;
|
|
44
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import * as SessionModule from "./openai-responses/session.js";
|
|
2
|
+
import { Engine } from "../engine.js";
|
|
3
|
+
import { ToolCodec } from "../api-types/openai-responses/tool-codec.js";
|
|
4
|
+
import { Billing } from "../api-types/openai-responses/billing.js";
|
|
5
|
+
import { MessageCodec as CompatibleMessageCodec } from "../compatible-engine.d/openai-responses/message-codec.js";
|
|
6
|
+
import * as ValidationModule from "./openai-responses/validation.js";
|
|
7
|
+
import * as StructuringModule from "./openai-responses/structuring.js";
|
|
8
|
+
import * as ToolModule from "./openai-responses/tool.js";
|
|
9
|
+
import * as ChoiceCodecModule from "./openai-responses/choice-codec.js";
|
|
10
|
+
import * as MessageCodecModule from "./openai-responses/message-codec.js";
|
|
11
|
+
import * as TransportModule from "./openai-responses/transport.js";
|
|
12
|
+
export var OpenAIResponsesNativeEngine;
|
|
13
|
+
(function (OpenAIResponsesNativeEngine) {
|
|
14
|
+
class Instance extends Engine.Instance {
|
|
15
|
+
applyPatch;
|
|
16
|
+
choice;
|
|
17
|
+
toolCodec;
|
|
18
|
+
compatibleMessageCodec;
|
|
19
|
+
messageCodec;
|
|
20
|
+
billing;
|
|
21
|
+
validator;
|
|
22
|
+
transport;
|
|
23
|
+
parallelToolCall;
|
|
24
|
+
constructor(options) {
|
|
25
|
+
super(options);
|
|
26
|
+
this.parallelToolCall = options.parallelToolCall ?? false;
|
|
27
|
+
this.applyPatch = options.applyPatch ?? false;
|
|
28
|
+
this.choice = options.structuringChoice ?? OpenAIResponsesNativeEngine.Structuring.Choice.AUTO;
|
|
29
|
+
this.toolCodec = new ToolCodec({ fdm: this.fdm });
|
|
30
|
+
this.compatibleMessageCodec = new CompatibleMessageCodec({
|
|
31
|
+
toolCodec: this.toolCodec,
|
|
32
|
+
vdm: this.vdm,
|
|
33
|
+
});
|
|
34
|
+
this.messageCodec = new OpenAIResponsesNativeEngine.MessageCodec({
|
|
35
|
+
toolCodec: this.toolCodec,
|
|
36
|
+
compatibleMessageCodec: this.compatibleMessageCodec,
|
|
37
|
+
vdm: this.vdm,
|
|
38
|
+
});
|
|
39
|
+
this.billing = new Billing({ pricing: this.pricing });
|
|
40
|
+
this.validator = new OpenAIResponsesNativeEngine.Validator({ choice: this.choice });
|
|
41
|
+
this.transport = new OpenAIResponsesNativeEngine.Transport({
|
|
42
|
+
inferenceParams: this.inferenceParams,
|
|
43
|
+
providerSpec: this.providerSpec,
|
|
44
|
+
fdm: this.fdm,
|
|
45
|
+
throttle: this.throttle,
|
|
46
|
+
choice: this.choice,
|
|
47
|
+
parallelToolCall: this.parallelToolCall,
|
|
48
|
+
applyPatch: this.applyPatch,
|
|
49
|
+
messageCodec: this.messageCodec,
|
|
50
|
+
toolCodec: this.toolCodec,
|
|
51
|
+
billing: this.billing,
|
|
52
|
+
validator: this.validator,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
infer(wfctx, session, signal) {
|
|
56
|
+
return this.transport.fetch(wfctx, session, signal);
|
|
57
|
+
}
|
|
58
|
+
appendUserMessage(session, message) {
|
|
59
|
+
return {
|
|
60
|
+
developerMessage: session.developerMessage,
|
|
61
|
+
chatMessages: [...session.chatMessages, message],
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
pushUserMessage(session, message) {
|
|
65
|
+
session.chatMessages.push(message);
|
|
66
|
+
return session;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
OpenAIResponsesNativeEngine.Instance = Instance;
|
|
70
|
+
OpenAIResponsesNativeEngine.RoleMessage = SessionModule.RoleMessage;
|
|
71
|
+
OpenAIResponsesNativeEngine.Tool = ToolModule.Tool;
|
|
72
|
+
OpenAIResponsesNativeEngine.ChoiceCodec = ChoiceCodecModule;
|
|
73
|
+
OpenAIResponsesNativeEngine.MessageCodec = MessageCodecModule.MessageCodec;
|
|
74
|
+
OpenAIResponsesNativeEngine.Structuring = StructuringModule.Structuring;
|
|
75
|
+
OpenAIResponsesNativeEngine.Transport = TransportModule.Transport;
|
|
76
|
+
OpenAIResponsesNativeEngine.Validator = ValidationModule.Validator;
|
|
77
|
+
})(OpenAIResponsesNativeEngine || (OpenAIResponsesNativeEngine = {}));
|
|
78
|
+
//# sourceMappingURL=openai-responses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/native-engines.d/openai-responses.ts"],"names":[],"mappings":"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"}
|
package/build/throttle.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import type { InferenceContext } from '
|
|
1
|
+
import type { InferenceContext } from './inference-context.ts';
|
|
2
|
+
import { Mutex } from '@zimtsui/coroutine-locks';
|
|
2
3
|
export declare class Throttle {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
protected rpm: number;
|
|
5
|
+
protected valve: Mutex<void>;
|
|
6
|
+
protected timer: NodeJS.Timeout | null;
|
|
7
|
+
protected interval: number;
|
|
7
8
|
constructor(rpm: number);
|
|
8
9
|
requests(wfctx: InferenceContext): Promise<void>;
|
|
9
10
|
throw(e: Error): void;
|
package/build/throttle.js
CHANGED
|
@@ -1,36 +1,39 @@
|
|
|
1
1
|
import { Mutex } from '@zimtsui/coroutine-locks';
|
|
2
2
|
export class Throttle {
|
|
3
3
|
rpm;
|
|
4
|
-
valve =
|
|
5
|
-
timer;
|
|
4
|
+
valve = Mutex.release();
|
|
5
|
+
timer = null;
|
|
6
6
|
interval;
|
|
7
7
|
constructor(rpm) {
|
|
8
8
|
this.rpm = rpm;
|
|
9
9
|
this.interval = Math.ceil(60 * 1000 / this.rpm);
|
|
10
10
|
}
|
|
11
11
|
async requests(wfctx) {
|
|
12
|
+
if (this.interval === 0)
|
|
13
|
+
return;
|
|
12
14
|
await wfctx.busy?.acquireRead();
|
|
13
|
-
const pwr = Promise.withResolvers();
|
|
14
|
-
const callback = () => pwr.reject(wfctx.signal?.reason);
|
|
15
|
-
wfctx.signal?.addEventListener('abort', callback);
|
|
16
|
-
const waiting = this.valve.acquire();
|
|
17
15
|
try {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
wfctx.signal?.throwIfAborted();
|
|
17
|
+
const waiting = this.valve.acquire()
|
|
18
|
+
.finally(() => {
|
|
19
|
+
this.timer = setTimeout(() => {
|
|
20
|
+
this.timer = null;
|
|
21
|
+
void this.valve.release();
|
|
22
|
+
}, this.interval);
|
|
23
|
+
});
|
|
24
|
+
await new Promise((resolve, reject) => {
|
|
25
|
+
waiting.then(resolve, reject);
|
|
26
|
+
wfctx.signal?.addEventListener('abort', reject, { signal: wfctx.signal });
|
|
27
|
+
});
|
|
24
28
|
}
|
|
25
29
|
finally {
|
|
26
|
-
wfctx.signal?.removeEventListener('abort', callback);
|
|
27
30
|
wfctx.busy?.releaseRead();
|
|
28
31
|
}
|
|
29
32
|
}
|
|
30
33
|
throw(e) {
|
|
31
34
|
if (this.timer)
|
|
32
35
|
clearTimeout(this.timer);
|
|
33
|
-
this.valve.
|
|
36
|
+
this.valve.unblock(e);
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
//# sourceMappingURL=throttle.js.map
|
package/build/throttle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../src/throttle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGjD,MAAM,OAAO,QAAQ;
|
|
1
|
+
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../src/throttle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGjD,MAAM,OAAO,QAAQ;IAIY;IAHnB,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IACxB,KAAK,GAA0B,IAAI,CAAC;IACpC,QAAQ,CAAS;IAC3B,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,KAAuB;QACzC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;YAAE,OAAO;QAEhC,MAAM,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC;YACD,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;iBAC/B,OAAO,CAAC,GAAG,EAAE;gBACV,IAAI,CAAC,KAAK,GAAG,UAAU,CACnB,GAAG,EAAE;oBACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;oBAClB,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9B,CAAC,EACD,IAAI,CAAC,QAAQ,CAChB,CAAC;YACN,CAAC,CAAC,CAAC;YAEP,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACxC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC9B,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9E,CAAC,CAAC,CAAC;QAEP,CAAC;gBAAS,CAAC;YACP,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;QAC9B,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,CAAQ;QACjB,IAAI,IAAI,CAAC,KAAK;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;CACJ"}
|