liminal 0.16.0 → 0.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Accumulator.ts +97 -0
- package/Actor.ts +118 -0
- package/Audition.ts +105 -0
- package/CHANGELOG.md +2 -206
- package/Client.ts +560 -0
- package/ClientHandle.ts +39 -0
- package/F.ts +18 -0
- package/Method.ts +39 -0
- package/Protocol.ts +142 -0
- package/Send.ts +8 -0
- package/_constants.ts +1 -0
- package/_types.ts +27 -0
- package/_util/Mutex.ts +13 -0
- package/_util/phantom.ts +1 -0
- package/dist/Accumulator.d.ts +22 -0
- package/dist/Accumulator.js +33 -0
- package/dist/Accumulator.js.map +1 -0
- package/dist/Actor.d.ts +30 -0
- package/dist/Actor.js +31 -0
- package/dist/Actor.js.map +1 -0
- package/dist/Audition.d.ts +18 -0
- package/dist/Audition.js +27 -0
- package/dist/Audition.js.map +1 -0
- package/dist/Client.d.ts +65 -0
- package/dist/Client.js +248 -0
- package/dist/Client.js.map +1 -0
- package/dist/ClientHandle.d.ts +18 -0
- package/dist/ClientHandle.js +10 -0
- package/dist/ClientHandle.js.map +1 -0
- package/dist/F.d.ts +13 -0
- package/dist/F.js +4 -0
- package/dist/F.js.map +1 -0
- package/dist/Method.d.ts +23 -0
- package/dist/Method.js +4 -0
- package/dist/Method.js.map +1 -0
- package/dist/Protocol.d.ts +96 -0
- package/dist/Protocol.js +13 -0
- package/dist/Protocol.js.map +1 -0
- package/dist/Send.d.ts +3 -0
- package/dist/Send.js +2 -0
- package/dist/Send.js.map +1 -0
- package/dist/_constants.d.ts +1 -0
- package/dist/_constants.js +2 -0
- package/dist/_constants.js.map +1 -0
- package/dist/_types.d.ts +22 -0
- package/dist/_types.js +2 -0
- package/dist/_types.js.map +1 -0
- package/dist/_util/Mutex.d.ts +7 -0
- package/dist/_util/Mutex.js +9 -0
- package/dist/_util/Mutex.js.map +1 -0
- package/dist/_util/phantom.d.ts +3 -0
- package/dist/_util/phantom.js +2 -0
- package/dist/_util/phantom.js.map +1 -0
- package/dist/errors.d.ts +20 -0
- package/dist/errors.js +13 -0
- package/dist/errors.js.map +1 -0
- package/dist/experimental/BranchLive.d.ts +3 -0
- package/dist/experimental/BranchLive.js +5 -0
- package/dist/experimental/BranchLive.js.map +1 -0
- package/dist/experimental/L/L.d.ts +11 -0
- package/dist/experimental/L/L.js +12 -0
- package/dist/experimental/L/L.js.map +1 -0
- package/dist/experimental/L/append.d.ts +3 -0
- package/dist/experimental/L/append.js +4 -0
- package/dist/experimental/L/append.js.map +1 -0
- package/dist/experimental/L/assistant.d.ts +3 -0
- package/dist/experimental/L/assistant.js +13 -0
- package/dist/experimental/L/assistant.js.map +1 -0
- package/dist/experimental/L/assistantSchema.d.ts +3 -0
- package/dist/experimental/L/assistantSchema.js +13 -0
- package/dist/experimental/L/assistantSchema.js.map +1 -0
- package/dist/experimental/L/assistantStream.d.ts +3 -0
- package/dist/experimental/L/assistantStream.js +5 -0
- package/dist/experimental/L/assistantStream.js.map +1 -0
- package/dist/experimental/L/branch.d.ts +2 -0
- package/dist/experimental/L/branch.js +4 -0
- package/dist/experimental/L/branch.js.map +1 -0
- package/dist/experimental/L/clear.d.ts +3 -0
- package/dist/experimental/L/clear.js +7 -0
- package/dist/experimental/L/clear.js.map +1 -0
- package/dist/experimental/L/history.d.ts +3 -0
- package/dist/experimental/L/history.js +4 -0
- package/dist/experimental/L/history.js.map +1 -0
- package/dist/experimental/L/init.d.ts +3 -0
- package/dist/experimental/L/init.js +4 -0
- package/dist/experimental/L/init.js.map +1 -0
- package/dist/experimental/L/matrix.d.ts +10 -0
- package/dist/experimental/L/matrix.js +6 -0
- package/dist/experimental/L/matrix.js.map +1 -0
- package/dist/experimental/L/system.d.ts +1 -0
- package/dist/experimental/L/system.js +4 -0
- package/dist/experimental/L/system.js.map +1 -0
- package/dist/experimental/L/user.d.ts +1 -0
- package/dist/experimental/L/user.js +6 -0
- package/dist/experimental/L/user.js.map +1 -0
- package/dist/experimental/Loader.d.ts +16 -0
- package/dist/experimental/Loader.js +20 -0
- package/dist/experimental/Loader.js.map +1 -0
- package/dist/experimental/TaggedTemplateFunction.d.ts +11 -0
- package/dist/experimental/TaggedTemplateFunction.js +14 -0
- package/dist/experimental/TaggedTemplateFunction.js.map +1 -0
- package/dist/experimental/Template.d.ts +32 -0
- package/dist/experimental/Template.js +58 -0
- package/dist/experimental/Template.js.map +1 -0
- package/dist/experimental/index.d.ts +4 -0
- package/dist/experimental/index.js +5 -0
- package/dist/experimental/index.js.map +1 -0
- package/dist/index.d.ts +9 -5
- package/dist/index.js +9 -5
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/errors.ts +14 -0
- package/experimental/BranchLive.ts +6 -0
- package/experimental/L/L.ts +11 -0
- package/experimental/L/append.ts +12 -0
- package/experimental/L/assistant.ts +16 -0
- package/experimental/L/assistantSchema.ts +18 -0
- package/experimental/L/assistantStream.ts +9 -0
- package/experimental/L/branch.ts +5 -0
- package/experimental/L/clear.ts +7 -0
- package/experimental/L/history.ts +4 -0
- package/experimental/L/init.ts +4 -0
- package/experimental/L/matrix.ts +26 -0
- package/experimental/L/system.ts +5 -0
- package/experimental/L/user.ts +10 -0
- package/experimental/Loader.ts +35 -0
- package/experimental/TaggedTemplateFunction.ts +44 -0
- package/experimental/Template.ts +93 -0
- package/experimental/index.ts +4 -0
- package/index.ts +9 -5
- package/package.json +26 -23
- package/tsconfig.json +9 -0
- package/Envelope.ts +0 -48
- package/L/L.ts +0 -21
- package/L/Self.ts +0 -5
- package/L/append.ts +0 -14
- package/L/assistant.ts +0 -30
- package/L/assistantSchema.ts +0 -61
- package/L/assistantStream.ts +0 -22
- package/L/branch.ts +0 -33
- package/L/clear.ts +0 -14
- package/L/disable.ts +0 -13
- package/L/enable.ts +0 -24
- package/L/events.ts +0 -11
- package/L/fqn.ts +0 -9
- package/L/handle.ts +0 -26
- package/L/messages.ts +0 -10
- package/L/raw.ts +0 -30
- package/L/sequence.ts +0 -9
- package/L/system.ts +0 -14
- package/L/thread.ts +0 -28
- package/L/to.ts +0 -4
- package/L/toolkit.ts +0 -14
- package/L/user.test.ts +0 -30
- package/L/user.ts +0 -22
- package/L/userJson.ts +0 -14
- package/LEvent.ts +0 -23
- package/LPretty.ts +0 -41
- package/Thread.ts +0 -69
- package/dist/Envelope.d.ts +0 -15
- package/dist/Envelope.js +0 -30
- package/dist/Envelope.js.map +0 -1
- package/dist/L/L.d.ts +0 -21
- package/dist/L/L.js +0 -22
- package/dist/L/L.js.map +0 -1
- package/dist/L/Self.d.ts +0 -3
- package/dist/L/Self.js +0 -4
- package/dist/L/Self.js.map +0 -1
- package/dist/L/append.d.ts +0 -5
- package/dist/L/append.js +0 -10
- package/dist/L/append.js.map +0 -1
- package/dist/L/assistant.d.ts +0 -6
- package/dist/L/assistant.js +0 -26
- package/dist/L/assistant.js.map +0 -1
- package/dist/L/assistantSchema.d.ts +0 -13
- package/dist/L/assistantSchema.js +0 -44
- package/dist/L/assistantSchema.js.map +0 -1
- package/dist/L/assistantStream.d.ts +0 -7
- package/dist/L/assistantStream.js +0 -17
- package/dist/L/assistantStream.js.map +0 -1
- package/dist/L/branch.d.ts +0 -6
- package/dist/L/branch.js +0 -22
- package/dist/L/branch.js.map +0 -1
- package/dist/L/clear.d.ts +0 -5
- package/dist/L/clear.js +0 -12
- package/dist/L/clear.js.map +0 -1
- package/dist/L/disable.d.ts +0 -4
- package/dist/L/disable.js +0 -10
- package/dist/L/disable.js.map +0 -1
- package/dist/L/enable.d.ts +0 -5
- package/dist/L/enable.js +0 -13
- package/dist/L/enable.js.map +0 -1
- package/dist/L/events.d.ts +0 -5
- package/dist/L/events.js +0 -6
- package/dist/L/events.js.map +0 -1
- package/dist/L/fqn.d.ts +0 -3
- package/dist/L/fqn.js +0 -8
- package/dist/L/fqn.js.map +0 -1
- package/dist/L/handle.d.ts +0 -7
- package/dist/L/handle.js +0 -14
- package/dist/L/handle.js.map +0 -1
- package/dist/L/messages.d.ts +0 -5
- package/dist/L/messages.js +0 -5
- package/dist/L/messages.js.map +0 -1
- package/dist/L/raw.d.ts +0 -3
- package/dist/L/raw.js +0 -18
- package/dist/L/raw.js.map +0 -1
- package/dist/L/sequence.d.ts +0 -2
- package/dist/L/sequence.js +0 -5
- package/dist/L/sequence.js.map +0 -1
- package/dist/L/system.d.ts +0 -5
- package/dist/L/system.js +0 -12
- package/dist/L/system.js.map +0 -1
- package/dist/L/thread.d.ts +0 -6
- package/dist/L/thread.js +0 -17
- package/dist/L/thread.js.map +0 -1
- package/dist/L/to.d.ts +0 -3
- package/dist/L/to.js +0 -3
- package/dist/L/to.js.map +0 -1
- package/dist/L/toolkit.d.ts +0 -4
- package/dist/L/toolkit.js +0 -9
- package/dist/L/toolkit.js.map +0 -1
- package/dist/L/user.d.ts +0 -4
- package/dist/L/user.js +0 -13
- package/dist/L/user.js.map +0 -1
- package/dist/L/user.test.d.ts +0 -1
- package/dist/L/user.test.js.map +0 -1
- package/dist/L/userJson.d.ts +0 -6
- package/dist/L/userJson.js +0 -9
- package/dist/L/userJson.js.map +0 -1
- package/dist/LEvent.d.ts +0 -26
- package/dist/LEvent.js +0 -16
- package/dist/LEvent.js.map +0 -1
- package/dist/LPretty.d.ts +0 -4
- package/dist/LPretty.js +0 -37
- package/dist/LPretty.js.map +0 -1
- package/dist/Thread.d.ts +0 -55
- package/dist/Thread.js +0 -38
- package/dist/Thread.js.map +0 -1
- package/dist/patterns/Debate.d.ts +0 -1
- package/dist/patterns/Debate.js +0 -3
- package/dist/patterns/Debate.js.map +0 -1
- package/dist/patterns/Model.d.ts +0 -6
- package/dist/patterns/Model.js +0 -14
- package/dist/patterns/Model.js.map +0 -1
- package/dist/patterns/Route.d.ts +0 -3
- package/dist/patterns/Route.js +0 -14
- package/dist/patterns/Route.js.map +0 -1
- package/dist/util/JsonValue.d.ts +0 -8
- package/dist/util/JsonValue.js +0 -109
- package/dist/util/JsonValue.js.map +0 -1
- package/dist/util/NeverTool.d.ts +0 -3
- package/dist/util/NeverTool.js +0 -3
- package/dist/util/NeverTool.js.map +0 -1
- package/dist/util/Sequencer.d.ts +0 -4
- package/dist/util/Sequencer.js +0 -2
- package/dist/util/Sequencer.js.map +0 -1
- package/dist/util/Taggable.d.ts +0 -5
- package/dist/util/Taggable.js +0 -2
- package/dist/util/Taggable.js.map +0 -1
- package/dist/util/normalizeRaw.d.ts +0 -4
- package/dist/util/normalizeRaw.js +0 -75
- package/dist/util/normalizeRaw.js.map +0 -1
- package/dist/util/prefix.d.ts +0 -1
- package/dist/util/prefix.js +0 -2
- package/dist/util/prefix.js.map +0 -1
- package/patterns/Debate.ts +0 -2
- package/patterns/Model.ts +0 -29
- package/patterns/Route.ts +0 -21
- package/util/JsonValue.ts +0 -144
- package/util/NeverTool.ts +0 -10
- package/util/Sequencer.ts +0 -13
- package/util/Taggable.ts +0 -14
- package/util/normalizeRaw.ts +0 -93
- package/util/prefix.ts +0 -1
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { AiError } from "@effect/ai/AiError";
|
|
2
|
-
import { AiLanguageModel } from "@effect/ai/AiLanguageModel";
|
|
3
|
-
import * as Effect from "effect/Effect";
|
|
4
|
-
import * as Schema from "effect/Schema";
|
|
5
|
-
import type { Thread } from "../Thread.ts";
|
|
6
|
-
import { type JsonValue } from "../util/JsonValue.ts";
|
|
7
|
-
/** Infer a structured assistant message and append its JSON representation to the conversation. */
|
|
8
|
-
export declare const assistantSchema: {
|
|
9
|
-
<F extends Record<string, Schema.Schema.AnyNoContext>>(fields: F): Effect.Effect<{
|
|
10
|
-
[K in keyof F]: Schema.Schema.Type<F[K]>;
|
|
11
|
-
}, AiError, AiLanguageModel | Thread>;
|
|
12
|
-
<O, I extends JsonValue>(schema: Schema.Schema<O, I, never>): Effect.Effect<O, AiError, AiLanguageModel | Thread>;
|
|
13
|
-
};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { AssistantMessage, TextPart } from "@effect/ai/AiInput";
|
|
2
|
-
import { AiLanguageModel } from "@effect/ai/AiLanguageModel";
|
|
3
|
-
import * as Effect from "effect/Effect";
|
|
4
|
-
import * as Option from "effect/Option";
|
|
5
|
-
import * as Schema from "effect/Schema";
|
|
6
|
-
import * as SchemaAST from "effect/SchemaAST";
|
|
7
|
-
import { encodeJsonc } from "../util/JsonValue.js";
|
|
8
|
-
import { append } from "./append.js";
|
|
9
|
-
import { Self } from "./Self.js";
|
|
10
|
-
/** Infer a structured assistant message and append its JSON representation to the conversation. */
|
|
11
|
-
export const assistantSchema = Effect.fnUntraced(function* (schema) {
|
|
12
|
-
const model = yield* AiLanguageModel;
|
|
13
|
-
const { state: { system, messages } } = yield* Self;
|
|
14
|
-
const isSchema = Schema.isSchema(schema);
|
|
15
|
-
const schema_ = isSchema ? schema : Schema.Struct(schema);
|
|
16
|
-
const isObject = !isSchema || isObjectSchema(SchemaAST.encodedAST(schema.ast));
|
|
17
|
-
const wrapped = isObject ? schema_ : Schema.Struct({ inner: schema_ });
|
|
18
|
-
const value = yield* model.generateObject({
|
|
19
|
-
system: Option.getOrUndefined(system),
|
|
20
|
-
schema: wrapped,
|
|
21
|
-
prompt: messages,
|
|
22
|
-
}).pipe(Effect.map(({ value }) => isObject ? value : value["inner"]));
|
|
23
|
-
yield* append(AssistantMessage.make({
|
|
24
|
-
parts: [
|
|
25
|
-
TextPart.make({
|
|
26
|
-
text: yield* encodeJsonc(schema_)(value),
|
|
27
|
-
}),
|
|
28
|
-
],
|
|
29
|
-
}));
|
|
30
|
-
return value;
|
|
31
|
-
});
|
|
32
|
-
const isObjectSchema = (ast) => {
|
|
33
|
-
switch (ast._tag) {
|
|
34
|
-
case "TypeLiteral": {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
case "Refinement":
|
|
38
|
-
case "Transformation": {
|
|
39
|
-
return isObjectSchema(ast.from);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return false;
|
|
43
|
-
};
|
|
44
|
-
//# sourceMappingURL=assistantSchema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assistantSchema.js","sourceRoot":"","sources":["../../L/assistantSchema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,mGAAmG;AACnG,MAAM,CAAC,MAAM,eAAe,GAOxB,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,MAAM;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAA;IACpC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAEnD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAA+B,CAAA;IACvF,MAAM,QAAQ,GAAG,CAAC,QAAQ,IAAI,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9E,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;IAEtE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;QACxC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACrC,MAAM,EAAE,OAAO;QACf,MAAM,EAAE,QAAQ;KACjB,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAC7D,CAAA;IAED,KAAK,CAAC,CAAC,MAAM,CACX,gBAAgB,CAAC,IAAI,CAAC;QACpB,KAAK,EAAE;YACL,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,KAAK,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;aACzC,CAAC;SACH;KACF,CAAC,CACH,CAAA;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAC,CAAA;AAEF,MAAM,cAAc,GAAG,CAAC,GAAkB,EAAW,EAAE;IACrD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,KAAK,YAAY,CAAC;QAClB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { AiError } from "@effect/ai/AiError";
|
|
2
|
-
import { AiLanguageModel } from "@effect/ai/AiLanguageModel";
|
|
3
|
-
import type { AiResponse } from "@effect/ai/AiResponse";
|
|
4
|
-
import * as Stream from "effect/Stream";
|
|
5
|
-
import type { Thread } from "../Thread.ts";
|
|
6
|
-
/** Get a stream of an assistant message (does not append the message to the thread). */
|
|
7
|
-
export declare const assistantStream: Stream.Stream<AiResponse, AiError, AiLanguageModel | Thread>;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { AiLanguageModel } from "@effect/ai/AiLanguageModel";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import * as Stream from "effect/Stream";
|
|
5
|
-
import { Self } from "./Self.js";
|
|
6
|
-
import { toolkit } from "./toolkit.js";
|
|
7
|
-
/** Get a stream of an assistant message (does not append the message to the thread). */
|
|
8
|
-
export const assistantStream = Stream.unwrap(Effect.gen(function* () {
|
|
9
|
-
const model = yield* AiLanguageModel;
|
|
10
|
-
const { state: { system, messages: prompt } } = yield* Self;
|
|
11
|
-
return model.streamText({
|
|
12
|
-
system: Option.getOrUndefined(system),
|
|
13
|
-
prompt,
|
|
14
|
-
toolkit,
|
|
15
|
-
});
|
|
16
|
-
}));
|
|
17
|
-
//# sourceMappingURL=assistantStream.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assistantStream.js","sourceRoot":"","sources":["../../L/assistantStream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,wFAAwF;AACxF,MAAM,CAAC,MAAM,eAAe,GAAiE,MAAM,CAAC,MAAM,CACxG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAA;IACpC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC3D,OAAO,KAAK,CAAC,UAAU,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;QACrC,MAAM;QACN,OAAO;KACR,CAAC,CAAA;AACJ,CAAC,CAAC,CACH,CAAA"}
|
package/dist/L/branch.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { Thread } from "../Thread.ts";
|
|
3
|
-
import type { Sequencer } from "../util/Sequencer.ts";
|
|
4
|
-
export interface branch extends Sequencer<never, Thread>, Effect.Effect<Thread, never, Thread> {
|
|
5
|
-
}
|
|
6
|
-
export declare const branch: branch;
|
package/dist/L/branch.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { flow } from "effect/Function";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import * as PubSub from "effect/PubSub";
|
|
5
|
-
import { Thread, ThreadState } from "../Thread.js";
|
|
6
|
-
import { Self } from "./Self.js";
|
|
7
|
-
import { sequence } from "./sequence.js";
|
|
8
|
-
const branch_ = Effect.gen(function* () {
|
|
9
|
-
const parent = yield* Self;
|
|
10
|
-
return Thread({
|
|
11
|
-
parent: Option.some(parent),
|
|
12
|
-
events: yield* PubSub.unbounded(),
|
|
13
|
-
state: ThreadState.make({
|
|
14
|
-
fqn: parent.state.fqn,
|
|
15
|
-
system: parent.state.system,
|
|
16
|
-
messages: [...parent.state.messages ?? []],
|
|
17
|
-
}),
|
|
18
|
-
tools: parent.tools.pipe(Option.map((v) => new Set(v))),
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
export const branch = Object.assign(flow(sequence, Effect.provideServiceEffect(Self, branch_)), branch_);
|
|
22
|
-
//# sourceMappingURL=branch.js.map
|
package/dist/L/branch.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAIxC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC1B,OAAO,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,EAAU;QACzC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC;YACtB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;YACrB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;YAC3B,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;SAC3C,CAAC;QACF,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KACxD,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CACzC,IAAI,CACF,QAAQ,EACR,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAC3C,EACD,OAAO,CACR,CAAA"}
|
package/dist/L/clear.d.ts
DELETED
package/dist/L/clear.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { MessagesCleared } from "../LEvent.js";
|
|
3
|
-
import { Self } from "./Self.js";
|
|
4
|
-
/** Clear the thread of messages. */
|
|
5
|
-
export const clear = Effect.gen(function* () {
|
|
6
|
-
const { state, events } = yield* Self;
|
|
7
|
-
const cleared = state.messages;
|
|
8
|
-
state.messages = [];
|
|
9
|
-
yield* events.publish(MessagesCleared.make({ cleared }));
|
|
10
|
-
return cleared;
|
|
11
|
-
});
|
|
12
|
-
//# sourceMappingURL=clear.js.map
|
package/dist/L/clear.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clear.js","sourceRoot":"","sources":["../../L/clear.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,oCAAoC;AACpC,MAAM,CAAC,MAAM,KAAK,GAAiD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IACrF,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IACrC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAA;IAC9B,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAA;IACnB,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IACxD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAC,CAAA"}
|
package/dist/L/disable.d.ts
DELETED
package/dist/L/disable.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as AiTool from "@effect/ai/AiTool";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import { Self } from "./Self.js";
|
|
5
|
-
export const disable = (tool) => Effect.map(Self, ({ tools }) => {
|
|
6
|
-
if (Option.isSome(tools)) {
|
|
7
|
-
tools.value.delete(tool);
|
|
8
|
-
}
|
|
9
|
-
});
|
|
10
|
-
//# sourceMappingURL=disable.js.map
|
package/dist/L/disable.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"disable.js","sourceRoot":"","sources":["../../L/disable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAsC,EAAE,CAC9E,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAC7B,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAiB,CAAC,CAAA;IACvC,CAAC;AACH,CAAC,CAAC,CAAA"}
|
package/dist/L/enable.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { AiTool, AnyStructSchema, Handler } from "@effect/ai/AiTool";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import type { Schema } from "effect/Schema";
|
|
4
|
-
import type { Thread } from "../Thread.ts";
|
|
5
|
-
export declare const enable: <K extends string, E extends Schema.All, R>(tool: AiTool<K, AnyStructSchema, Schema.Any, E, R>) => Effect.Effect<void, E, Handler<K> | Thread | R>;
|
package/dist/L/enable.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Option from "effect/Option";
|
|
3
|
-
import { Self } from "./Self.js";
|
|
4
|
-
export const enable = (tool) => Effect.map(Self, (thread) => {
|
|
5
|
-
const tool_ = tool;
|
|
6
|
-
Option.match(thread.tools, {
|
|
7
|
-
onSome: (value) => value.add(tool_),
|
|
8
|
-
onNone: () => {
|
|
9
|
-
thread.tools = Option.some(new Set([tool_]));
|
|
10
|
-
},
|
|
11
|
-
});
|
|
12
|
-
});
|
|
13
|
-
//# sourceMappingURL=enable.js.map
|
package/dist/L/enable.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enable.js","sourceRoot":"","sources":["../../L/enable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,CAAC,MAAM,MAAM,GAAG,CAKpB,IAAkD,EACD,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1B,MAAM,KAAK,GAAc,IAAa,CAAA;IACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;QACzB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE;YACX,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9C,CAAC;KACF,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/dist/L/events.d.ts
DELETED
package/dist/L/events.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Stream from "effect/Stream";
|
|
3
|
-
import { Self } from "./Self.js";
|
|
4
|
-
/** A stream of thread events. */
|
|
5
|
-
export const events = Self.pipe(Effect.map(({ events }) => Stream.fromPubSub(events)), Stream.unwrap);
|
|
6
|
-
//# sourceMappingURL=events.js.map
|
package/dist/L/events.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../L/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,iCAAiC;AACjC,MAAM,CAAC,MAAM,MAAM,GAAyC,IAAI,CAAC,IAAI,CACnE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EACrD,MAAM,CAAC,MAAM,CACd,CAAA"}
|
package/dist/L/fqn.d.ts
DELETED
package/dist/L/fqn.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Option from "effect/Option";
|
|
3
|
-
import { ThreadFqn } from "../Thread.js";
|
|
4
|
-
import { Self } from "./Self.js";
|
|
5
|
-
export const fqn = (id) => Effect.map(Self, (thread) => {
|
|
6
|
-
thread.state.fqn = Option.some(ThreadFqn.make(id));
|
|
7
|
-
});
|
|
8
|
-
//# sourceMappingURL=fqn.js.map
|
package/dist/L/fqn.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fqn.js","sourceRoot":"","sources":["../../L/fqn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAe,SAAS,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAU,EAAsC,EAAE,CACpE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;AACpD,CAAC,CAAC,CAAA"}
|
package/dist/L/handle.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import type { RuntimeFiber } from "effect/Fiber";
|
|
3
|
-
import * as Scope from "effect/Scope";
|
|
4
|
-
import type { LEvent } from "../LEvent.ts";
|
|
5
|
-
import type { Thread } from "../Thread.ts";
|
|
6
|
-
/** Attach an event handler to process thread events. */
|
|
7
|
-
export declare const listen: <A, E, R>(f: (event: LEvent) => Effect.Effect<A, E, R>) => Effect.Effect<RuntimeFiber<void, E>, never, Thread | R | Scope.Scope>;
|
package/dist/L/handle.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Scope from "effect/Scope";
|
|
3
|
-
import * as Stream from "effect/Stream";
|
|
4
|
-
import { Self } from "./Self.js";
|
|
5
|
-
/** Attach an event handler to process thread events. */
|
|
6
|
-
export const listen = Effect.fnUntraced(function* (f) {
|
|
7
|
-
const latch = yield* Effect.makeLatch(false);
|
|
8
|
-
const { events } = yield* Self;
|
|
9
|
-
const dequeue = yield* events.subscribe;
|
|
10
|
-
const fiber = yield* latch.open.pipe(Effect.zipRight(Stream.fromQueue(dequeue).pipe(Stream.runForEach(f), Effect.fork)));
|
|
11
|
-
yield* latch.await;
|
|
12
|
-
return fiber;
|
|
13
|
-
});
|
|
14
|
-
//# sourceMappingURL=handle.js.map
|
package/dist/L/handle.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handle.js","sourceRoot":"","sources":["../../L/handle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,wDAAwD;AACxD,MAAM,CAAC,MAAM,MAAM,GAE0D,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,CAAC;IACxG,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAC5C,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAA;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAClC,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EACpB,MAAM,CAAC,IAAI,CACZ,CACF,CACF,CAAA;IACD,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;IAClB,OAAO,KAAK,CAAA;AACd,CAAC,CAAC,CAAA"}
|
package/dist/L/messages.d.ts
DELETED
package/dist/L/messages.js
DELETED
package/dist/L/messages.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../L/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,kDAAkD;AAClD,MAAM,CAAC,MAAM,QAAQ,GAAiD,MAAM,CAAC,GAAG,CAC9E,IAAI,EACJ,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,CACrD,CAAA"}
|
package/dist/L/raw.d.ts
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import type { TaggableArg0 } from "../util/Taggable.ts";
|
|
3
|
-
export declare const raw: <A0 extends TaggableArg0 | Effect.Effect<string | undefined, any, any>, L extends Array<unknown>>(a0: A0, ...aRest: L) => Effect.Effect<string | (undefined extends A0 ? undefined : never)>;
|
package/dist/L/raw.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { normalizeRaw } from "../util/normalizeRaw.js";
|
|
3
|
-
export const raw = Effect.fnUntraced(function* (a0, ...aRest) {
|
|
4
|
-
const a0_ = Effect.isEffect(a0)
|
|
5
|
-
? yield* a0
|
|
6
|
-
: a0;
|
|
7
|
-
if (!a0_)
|
|
8
|
-
return undefined;
|
|
9
|
-
const aRest_ = yield* Effect.all(aRest.map((v) => Effect.isEffect(v)
|
|
10
|
-
? v
|
|
11
|
-
: Effect.succeed(v)));
|
|
12
|
-
return typeof a0_ === "string"
|
|
13
|
-
? aRest_.length === 0
|
|
14
|
-
? a0_
|
|
15
|
-
: [a0_, ...aRest_].join("")
|
|
16
|
-
: normalizeRaw(a0_, aRest_);
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=raw.js.map
|
package/dist/L/raw.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"raw.js","sourceRoot":"","sources":["../../L/raw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAGtD,MAAM,CAAC,MAAM,GAAG,GAQZ,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,GAAG,KAAK;IAC1C,MAAM,GAAG,GAAiB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3C,CAAC,CAAC,KAAK,CAAC,CAAC,EAAiC;QAC1C,CAAC,CAAC,EAAE,CAAA;IACN,IAAI,CAAC,GAAG;QAAE,OAAO,SAAkB,CAAA;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAC9B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACd,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CACtB,CACwC,CAAA;IAC3C,OAAO,OAAO,GAAG,KAAK,QAAQ;QAC5B,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YACnB,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA"}
|
package/dist/L/sequence.d.ts
DELETED
package/dist/L/sequence.js
DELETED
package/dist/L/sequence.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../../L/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,MAAM,CAAC,MAAM,QAAQ,GAAc,CAAC,GAAG,KAAK,EAAE,EAAE,CAC9C,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE;IAChB,WAAW,EAAE,CAAC;CACf,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAG,CAAU,CACnD,CAAA"}
|
package/dist/L/system.d.ts
DELETED
package/dist/L/system.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import * as Option from "effect/Option";
|
|
3
|
-
import { raw } from "./raw.js";
|
|
4
|
-
import { Self } from "./Self.js";
|
|
5
|
-
/** Set the thread's system instruction. */
|
|
6
|
-
export const system = Effect.fnUntraced(function* (a0, ...aRest) {
|
|
7
|
-
const { state } = yield* Self;
|
|
8
|
-
const { system } = state;
|
|
9
|
-
state.system = a0 ? Option.some(yield* raw(a0, ...aRest)) : Option.none();
|
|
10
|
-
return system;
|
|
11
|
-
});
|
|
12
|
-
//# sourceMappingURL=system.js.map
|
package/dist/L/system.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../L/system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,2CAA2C;AAC3C,MAAM,CAAC,MAAM,MAAM,GAAmD,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,GAAG,KAAK;IAC5G,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAA;IAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IACxB,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IACzE,OAAO,MAAM,CAAA;AACf,CAAC,CAAC,CAAA"}
|
package/dist/L/thread.d.ts
DELETED
package/dist/L/thread.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { flow } from "effect/Function";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import * as PubSub from "effect/PubSub";
|
|
5
|
-
import { Thread, ThreadState } from "../Thread.js";
|
|
6
|
-
import { Self } from "./Self.js";
|
|
7
|
-
import { sequence } from "./sequence.js";
|
|
8
|
-
const thread_ = Effect.gen(function* () {
|
|
9
|
-
return Thread({
|
|
10
|
-
parent: yield* Effect.serviceOption(Self),
|
|
11
|
-
events: yield* PubSub.unbounded(),
|
|
12
|
-
state: ThreadState.default(),
|
|
13
|
-
tools: Option.none(),
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
export const thread = Object.assign(flow(sequence, Effect.provideServiceEffect(Self, thread_)), thread_);
|
|
17
|
-
//# sourceMappingURL=thread.js.map
|
package/dist/L/thread.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../L/thread.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAIxC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClC,OAAO,MAAM,CAAC;QACZ,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;QACzC,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,EAAU;QACzC,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE;QAC5B,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE;KACrB,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CACzC,IAAI,CACF,QAAQ,EACR,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAC3C,EACD,OAAO,CACR,CAAA"}
|
package/dist/L/to.d.ts
DELETED
package/dist/L/to.js
DELETED
package/dist/L/to.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"to.js","sourceRoot":"","sources":["../../L/to.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAiB,EAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA"}
|
package/dist/L/toolkit.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import * as AiToolkit from "@effect/ai/AiToolkit";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import type { NeverTool } from "../util/NeverTool.ts";
|
|
4
|
-
export declare const toolkit: Effect.Effect<AiToolkit.ToHandler<NeverTool>, never, import("../Thread.ts").Thread | import("@effect/ai/AiTool").Handler<string>>;
|
package/dist/L/toolkit.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import * as AiToolkit from "@effect/ai/AiToolkit";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Option from "effect/Option";
|
|
4
|
-
import { Self } from "./Self.js";
|
|
5
|
-
export const toolkit = Self.pipe(Effect.flatMap(({ tools }) => Option.match(tools, {
|
|
6
|
-
onSome: (tools) => AiToolkit.make(...tools),
|
|
7
|
-
onNone: () => AiToolkit.make(),
|
|
8
|
-
})));
|
|
9
|
-
//# sourceMappingURL=toolkit.js.map
|
package/dist/L/toolkit.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toolkit.js","sourceRoot":"","sources":["../../L/toolkit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAC9B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAC3B,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE;IAClB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAA4B;CACzD,CAAC,CACH,CACF,CAAA"}
|
package/dist/L/user.d.ts
DELETED
package/dist/L/user.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { TextPart, UserMessage } from "@effect/ai/AiInput";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import { append } from "./append.js";
|
|
4
|
-
import { raw } from "./raw.js";
|
|
5
|
-
/** Append a user message to the conversation. */
|
|
6
|
-
export const user = (a0, ...aRest) => raw(a0, ...aRest).pipe(Effect.flatMap((text) => text
|
|
7
|
-
? append(UserMessage.make({
|
|
8
|
-
parts: [
|
|
9
|
-
TextPart.make({ text }),
|
|
10
|
-
],
|
|
11
|
-
}))
|
|
12
|
-
: Effect.succeed(undefined)));
|
|
13
|
-
//# sourceMappingURL=user.js.map
|
package/dist/L/user.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../L/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAE9B,iDAAiD;AACjD,MAAM,CAAC,MAAM,IAAI,GAAkC,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,CAClE,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CACpB,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI;IACF,CAAC,CAAC,MAAM,CACN,WAAW,CAAC,IAAI,CAAC;QACf,KAAK,EAAE;YACL,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;SACxB;KACF,CAAC,CACH;IACD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAC9B,CACF,CAAA"}
|
package/dist/L/user.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/L/user.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user.test.js","sourceRoot":"","sources":["../../L/user.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,EAAE,CAC7B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,IAAI,CAAA,GAAG,CAAA;IACd,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChB,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC;QACpC,WAAW,CAAC,IAAI,CAAC;YACf,KAAK,EAAE;gBACL,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,GAAG;iBACV,CAAC;aACH;SACF,CAAC;QACF,WAAW,CAAC,IAAI,CAAC;YACf,KAAK,EAAE;gBACL,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,GAAG;iBACV,CAAC;aACH;SACF,CAAC;KACH,CAAC,CAAA;AACJ,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CACP,CAAC,CAAA"}
|
package/dist/L/userJson.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import type * as Schema from "effect/Schema";
|
|
3
|
-
import type { Thread } from "../Thread.ts";
|
|
4
|
-
import { type JsonValue } from "../util/JsonValue.ts";
|
|
5
|
-
/** Stringify and append some JSON as a user message to the conversation. */
|
|
6
|
-
export declare const userJson: <A, I extends JsonValue>(value: A, schema?: Schema.Schema<A, I>) => Effect.Effect<void, never, Thread>;
|
package/dist/L/userJson.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { encodeJsonc } from "../util/JsonValue.js";
|
|
3
|
-
import { user } from "./user.js";
|
|
4
|
-
/** Stringify and append some JSON as a user message to the conversation. */
|
|
5
|
-
export const userJson = Effect.fnUntraced(function* (value, schema) {
|
|
6
|
-
const encoded = schema ? encodeJsonc(schema)(value) : JSON.stringify(value, null, 2);
|
|
7
|
-
return yield* user `\`\`\`json${schema ? "c" : ""}\n${encoded}\n\`\`\``;
|
|
8
|
-
});
|
|
9
|
-
//# sourceMappingURL=userJson.js.map
|
package/dist/L/userJson.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"userJson.js","sourceRoot":"","sources":["../../L/userJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,QAAQ,GAGqB,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAK,EAAE,MAAM;IACjF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACpF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAA,aAAa,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,UAAU,CAAA;AACxE,CAAC,CAAC,CAAA"}
|
package/dist/LEvent.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import * as Schema from "effect/Schema";
|
|
2
|
-
declare const Messages_base: Schema.Array$<Schema.Union<[typeof import("@effect/ai/AiInput").UserMessage, typeof import("@effect/ai/AiInput").AssistantMessage, typeof import("@effect/ai/AiInput").ToolMessage]>>;
|
|
3
|
-
export declare class Messages extends Messages_base {
|
|
4
|
-
}
|
|
5
|
-
declare const MessagesAppended_base: Schema.TaggedClass<MessagesAppended, "MessagesAppended", {
|
|
6
|
-
readonly _tag: Schema.tag<"MessagesAppended">;
|
|
7
|
-
} & {
|
|
8
|
-
messages: typeof Messages;
|
|
9
|
-
}>;
|
|
10
|
-
/** An event in which one or more messages were added to the thread. */
|
|
11
|
-
export declare class MessagesAppended extends MessagesAppended_base {
|
|
12
|
-
}
|
|
13
|
-
declare const MessagesCleared_base: Schema.TaggedClass<MessagesCleared, "MessagesCleared", {
|
|
14
|
-
readonly _tag: Schema.tag<"MessagesCleared">;
|
|
15
|
-
} & {
|
|
16
|
-
cleared: typeof Messages;
|
|
17
|
-
}>;
|
|
18
|
-
/** An event in which the thread is cleared of messages. */
|
|
19
|
-
export declare class MessagesCleared extends MessagesCleared_base {
|
|
20
|
-
}
|
|
21
|
-
export type LEvent = typeof LEvent["Type"];
|
|
22
|
-
export declare const LEvent: Schema.Union<[
|
|
23
|
-
typeof MessagesAppended,
|
|
24
|
-
typeof MessagesCleared
|
|
25
|
-
]>;
|
|
26
|
-
export {};
|
package/dist/LEvent.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Message } from "@effect/ai/AiInput";
|
|
2
|
-
import * as Schema from "effect/Schema";
|
|
3
|
-
export class Messages extends Schema.Array(Message) {
|
|
4
|
-
}
|
|
5
|
-
/** An event in which one or more messages were added to the thread. */
|
|
6
|
-
export class MessagesAppended extends Schema.TaggedClass("MessagesAppended")("MessagesAppended", {
|
|
7
|
-
messages: Messages,
|
|
8
|
-
}) {
|
|
9
|
-
}
|
|
10
|
-
/** An event in which the thread is cleared of messages. */
|
|
11
|
-
export class MessagesCleared extends Schema.TaggedClass("MessagesCleared")("MessagesCleared", {
|
|
12
|
-
cleared: Messages,
|
|
13
|
-
}) {
|
|
14
|
-
}
|
|
15
|
-
export const LEvent = Schema.Union(MessagesAppended, MessagesCleared);
|
|
16
|
-
//# sourceMappingURL=LEvent.js.map
|
package/dist/LEvent.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LEvent.js","sourceRoot":"","sources":["../LEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,MAAM,OAAO,QAAS,SAAQ,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;CAAG;AAEtD,uEAAuE;AACvE,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,CAAmB,kBAAkB,CAAC,CAAC,kBAAkB,EAAE;IACjH,QAAQ,EAAE,QAAQ;CACnB,CAAC;CAAG;AAEL,2DAA2D;AAC3D,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,WAAW,CAAkB,iBAAiB,CAAC,CAAC,iBAAiB,EAAE;IAC7G,OAAO,EAAE,QAAQ;CAClB,CAAC;CAAG;AAGL,MAAM,CAAC,MAAM,MAAM,GAGd,MAAM,CAAC,KAAK,CACf,gBAAgB,EAChB,eAAe,CAChB,CAAA"}
|
package/dist/LPretty.d.ts
DELETED
package/dist/LPretty.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
const GRAY = "\x1b[90m";
|
|
2
|
-
const RESET = "\x1b[0m";
|
|
3
|
-
const BOLD = "\x1b[1m";
|
|
4
|
-
const GRAY_BG = "\x1b[47m";
|
|
5
|
-
export const event = (event) => {
|
|
6
|
-
let text = `${GRAY}${event._tag}${RESET}`;
|
|
7
|
-
switch (event._tag) {
|
|
8
|
-
case "MessagesAppended": {
|
|
9
|
-
text += event.messages.map(message).join("\n");
|
|
10
|
-
break;
|
|
11
|
-
}
|
|
12
|
-
case "MessagesCleared": {
|
|
13
|
-
text += `\n${event.cleared.length} messages cleared.`;
|
|
14
|
-
break;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return text;
|
|
18
|
-
};
|
|
19
|
-
export const message = ({ _tag, parts }) => {
|
|
20
|
-
let value = "";
|
|
21
|
-
for (const part of parts) {
|
|
22
|
-
value += `\n${BOLD}${_tag}\n${GRAY_BG}`;
|
|
23
|
-
switch (part._tag) {
|
|
24
|
-
case "TextPart": {
|
|
25
|
-
value += `${part.text}`;
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
default: {
|
|
29
|
-
value += `${JSON.stringify(part, null, 2)}`;
|
|
30
|
-
break;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
value += RESET;
|
|
34
|
-
}
|
|
35
|
-
return value;
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=LPretty.js.map
|
package/dist/LPretty.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LPretty.js","sourceRoot":"","sources":["../LPretty.ts"],"names":[],"mappings":"AAGA,MAAM,IAAI,GAAG,UAAU,CAAA;AACvB,MAAM,KAAK,GAAG,SAAS,CAAA;AACvB,MAAM,IAAI,GAAG,SAAS,CAAA;AACtB,MAAM,OAAO,GAAG,UAAU,CAAA;AAE1B,MAAM,CAAC,MAAM,KAAK,GAA6C,CAAC,KAAK,EAAE,EAAE;IACvE,IAAI,IAAI,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,EAAE,CAAA;IACzC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9C,MAAK;QACP,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,IAAI,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,oBAAoB,CAAA;YACrD,MAAK;QACP,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAW,EAAU,EAAE;IAC1D,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,OAAO,EAAE,CAAA;QACvC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,KAAK,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBACvB,MAAK;YACP,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,KAAK,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;gBAC3C,MAAK;YACP,CAAC;QACH,CAAC;QACD,KAAK,IAAI,KAAK,CAAA;IAChB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|