liminal 0.11.1 → 0.13.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/CHANGELOG.md +18 -0
- package/L.ts +5 -4
- package/{pretty.ts → LPretty.ts} +3 -3
- package/Strand.ts +24 -4
- package/append.ts +1 -1
- package/assistant.ts +3 -1
- package/assistantSchema.ts +60 -0
- package/assistantStream.ts +25 -0
- package/branch.ts +3 -3
- package/clear.ts +1 -1
- package/disable.ts +5 -0
- package/dist/L.d.ts +5 -4
- package/dist/L.js +5 -4
- package/dist/L.js.map +1 -1
- package/dist/LPretty.d.ts +4 -0
- package/dist/{pretty.js → LPretty.js} +4 -4
- package/dist/LPretty.js.map +1 -0
- package/dist/Strand.d.ts +9 -3
- package/dist/Strand.js +11 -1
- package/dist/Strand.js.map +1 -1
- package/dist/append.d.ts +1 -1
- package/dist/append.js +0 -1
- package/dist/append.js.map +1 -1
- package/dist/assistant.js +3 -1
- package/dist/assistant.js.map +1 -1
- package/dist/{assistantStruct.d.ts → assistantSchema.d.ts} +3 -2
- package/dist/assistantSchema.js +44 -0
- package/dist/assistantSchema.js.map +1 -0
- package/dist/assistantStream.d.ts +7 -0
- package/dist/assistantStream.js +17 -0
- package/dist/assistantStream.js.map +1 -0
- package/dist/branch.d.ts +1 -1
- package/dist/branch.js +2 -2
- package/dist/branch.js.map +1 -1
- package/dist/clear.d.ts +1 -1
- package/dist/clear.js +0 -1
- package/dist/clear.js.map +1 -1
- package/dist/disable.d.ts +4 -0
- package/dist/disable.js +3 -0
- package/dist/disable.js.map +1 -0
- package/dist/enable.d.ts +5 -0
- package/dist/enable.js +3 -0
- package/dist/enable.js.map +1 -0
- package/dist/events.d.ts +2 -2
- package/dist/events.js +2 -2
- package/dist/events.js.map +1 -1
- package/dist/handle.d.ts +7 -0
- package/dist/handle.js +14 -0
- package/dist/handle.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/sequence.d.ts +2 -0
- package/dist/{sequence_.js → sequence.js} +1 -1
- package/dist/sequence.js.map +1 -0
- package/dist/strand_.d.ts +1 -1
- package/dist/strand_.js +3 -13
- package/dist/strand_.js.map +1 -1
- package/dist/system.d.ts +3 -3
- package/dist/system.js +3 -2
- package/dist/system.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/user.d.ts +3 -4
- package/dist/user.js +8 -9
- package/dist/user.js.map +1 -1
- package/dist/user.test.js.map +1 -0
- package/dist/userJson.d.ts +4 -4
- package/dist/userJson.js +5 -4
- package/dist/userJson.js.map +1 -1
- package/dist/{internal → util}/JsonValue.d.ts +3 -0
- package/dist/util/JsonValue.js +109 -0
- package/dist/util/JsonValue.js.map +1 -0
- package/dist/util/Sequence.d.ts +2 -0
- package/dist/util/Sequence.js +2 -0
- package/dist/util/Sequence.js.map +1 -0
- package/dist/util/Taggable.d.ts +6 -0
- package/dist/util/Taggable.js +24 -0
- package/dist/util/Taggable.js.map +1 -0
- package/dist/util/fixRaw.d.ts +4 -0
- package/dist/util/fixRaw.js +75 -0
- package/dist/util/fixRaw.js.map +1 -0
- package/enable.ts +8 -0
- package/events.ts +5 -4
- package/handle.ts +25 -0
- package/index.ts +1 -1
- package/package.json +4 -4
- package/{sequence_.ts → sequence.ts} +1 -1
- package/strand_.ts +3 -17
- package/system.ts +8 -9
- package/user.test.ts +30 -0
- package/user.ts +15 -11
- package/userJson.ts +9 -7
- package/util/JsonValue.ts +144 -0
- package/util/Sequence.ts +9 -0
- package/util/Taggable.ts +52 -0
- package/util/fixRaw.ts +93 -0
- package/Sequence.ts +0 -14
- package/assistantStruct.ts +0 -34
- package/dist/Sequence.d.ts +0 -2
- package/dist/Sequence.js +0 -2
- package/dist/Sequence.js.map +0 -1
- package/dist/assistantStruct.js +0 -22
- package/dist/assistantStruct.js.map +0 -1
- package/dist/internal/JsonValue.js +0 -2
- package/dist/internal/JsonValue.js.map +0 -1
- package/dist/internal/Taggable.d.ts +0 -11
- package/dist/internal/Taggable.js +0 -2
- package/dist/internal/Taggable.js.map +0 -1
- package/dist/pretty.d.ts +0 -2
- package/dist/pretty.js.map +0 -1
- package/dist/reduce.d.ts +0 -4
- package/dist/reduce.js +0 -20
- package/dist/reduce.js.map +0 -1
- package/dist/sequence_.d.ts +0 -2
- package/dist/sequence_.js.map +0 -1
- package/dist/todo.test.js +0 -3
- package/dist/todo.test.js.map +0 -1
- package/internal/JsonValue.ts +0 -5
- package/internal/Taggable.ts +0 -17
- package/reduce.ts +0 -32
- package/todo.test.ts +0 -3
- package/tsconfig.json +0 -18
- /package/dist/{todo.test.d.ts → user.test.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enable.js","sourceRoot":"","sources":["../enable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAE3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA"}
|
package/dist/events.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Stream from "effect/Stream";
|
|
2
|
-
import type { LEvent } from "./LEvent";
|
|
2
|
+
import type { LEvent } from "./LEvent.ts";
|
|
3
3
|
import { Strand } from "./Strand.ts";
|
|
4
|
-
/**
|
|
4
|
+
/** A stream of events from the current strand. */
|
|
5
5
|
export declare const events: Stream.Stream<LEvent, never, Strand>;
|
package/dist/events.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Stream from "effect/Stream";
|
|
3
3
|
import { Strand } from "./Strand.js";
|
|
4
|
-
/**
|
|
5
|
-
export const events =
|
|
4
|
+
/** A stream of events from the current strand. */
|
|
5
|
+
export const events = Strand.pipe(Effect.map(({ events }) => Stream.fromPubSub(events)), Stream.unwrap);
|
|
6
6
|
//# sourceMappingURL=events.js.map
|
package/dist/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,kDAAkD;AAClD,MAAM,CAAC,MAAM,MAAM,GAAyC,MAAM,CAAC,IAAI,CACrE,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/handle.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
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 { Strand } from "./Strand.ts";
|
|
6
|
+
/** Attach an event handler to process the events of the current strand. */
|
|
7
|
+
export declare const listen: <A, E, R>(f: (event: LEvent) => Effect.Effect<A, E, R>) => Effect.Effect<RuntimeFiber<void, E>, never, Strand | R | Scope.Scope>;
|
package/dist/handle.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Scope from "effect/Scope";
|
|
3
|
+
import * as Stream from "effect/Stream";
|
|
4
|
+
import { Strand } from "./Strand.js";
|
|
5
|
+
/** Attach an event handler to process the events of the current strand. */
|
|
6
|
+
export const listen = Effect.fnUntraced(function* (f) {
|
|
7
|
+
const latch = yield* Effect.makeLatch(false);
|
|
8
|
+
const { events } = yield* Strand;
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle.js","sourceRoot":"","sources":["../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;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,2EAA2E;AAC3E,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,MAAM,CAAA;IAChC,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/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,MAAM,CAAC,MAAM,QAAQ,GAAa,CAAC,GAAG,KAAK,EAAE,EAAE,CAC7C,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/strand_.d.ts
CHANGED
package/dist/strand_.js
CHANGED
|
@@ -1,18 +1,8 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import { flow } from "effect/Function";
|
|
3
|
-
import
|
|
4
|
-
import * as PubSub from "effect/PubSub";
|
|
5
|
-
import {} from "./Sequence.js";
|
|
6
|
-
import { sequence } from "./sequence_.js";
|
|
3
|
+
import { sequence } from "./sequence.js";
|
|
7
4
|
import { Strand } from "./Strand.js";
|
|
5
|
+
import {} from "./util/Sequence.js";
|
|
8
6
|
/** Isolate the effect with a new strand in context. */
|
|
9
|
-
export const strand = flow(sequence, Effect.
|
|
10
|
-
return Strand.of({
|
|
11
|
-
parent: yield* Effect.serviceOption(Strand),
|
|
12
|
-
events: yield* PubSub.unbounded(),
|
|
13
|
-
system: Option.none(),
|
|
14
|
-
messages: [],
|
|
15
|
-
tools: [],
|
|
16
|
-
});
|
|
17
|
-
})));
|
|
7
|
+
export const strand = flow(sequence, Effect.provide(Strand.layer()));
|
|
18
8
|
//# sourceMappingURL=strand_.js.map
|
package/dist/strand_.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strand_.js","sourceRoot":"","sources":["../strand_.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"strand_.js","sourceRoot":"","sources":["../strand_.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAiB,MAAM,oBAAoB,CAAA;AAElD,uDAAuD;AACvD,MAAM,CAAC,MAAM,MAAM,GAAqB,IAAI,CAC1C,QAAQ,EACR,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAC/B,CAAA"}
|
package/dist/system.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
1
|
import * as Option from "effect/Option";
|
|
3
|
-
import { type TaggableNullable } from "./internal/Taggable.ts";
|
|
4
2
|
import { Strand } from "./Strand.ts";
|
|
5
|
-
|
|
3
|
+
import { type Taggable } from "./util/Taggable.ts";
|
|
4
|
+
/** Set the system instruction for the current strand. */
|
|
5
|
+
export declare const system: Taggable<Option.Option<string>, never, Strand>;
|
package/dist/system.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Option from "effect/Option";
|
|
3
|
-
import { normalize } from "./internal/Taggable.js";
|
|
4
3
|
import { Strand } from "./Strand.js";
|
|
4
|
+
import { normalize } from "./util/Taggable.js";
|
|
5
|
+
/** Set the system instruction for the current strand. */
|
|
5
6
|
export const system = Effect.fnUntraced(function* (a0, ...aRest) {
|
|
6
7
|
const conversation = yield* Strand;
|
|
7
8
|
const { system } = conversation;
|
|
8
|
-
conversation.system = a0 ? Option.some(normalize(a0, aRest)) : Option.none();
|
|
9
|
+
conversation.system = a0 ? Option.some(yield* normalize(a0, aRest)) : Option.none();
|
|
9
10
|
return system;
|
|
10
11
|
});
|
|
11
12
|
//# sourceMappingURL=system.js.map
|
package/dist/system.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAA;AAE7D,yDAAyD;AACzD,MAAM,CAAC,MAAM,MAAM,GAAmD,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,GAAG,KAAK;IAC5G,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,MAAM,CAAA;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,CAAA;IAC/B,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IACnF,OAAO,MAAM,CAAA;AACf,CAAC,CAAC,CAAA"}
|