liminal 0.5.3 → 0.5.5
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/Agent.ts +13 -15
- package/CHANGELOG.md +15 -0
- package/Context.ts +44 -0
- package/EventBase.ts +26 -0
- package/Globals.ts +1 -1
- package/L/L.ts +0 -3
- package/L/_infer.ts +26 -22
- package/L/_message.ts +4 -7
- package/L/assistant.ts +2 -9
- package/L/branch.ts +20 -28
- package/L/emit.ts +9 -4
- package/L/fork.ts +18 -16
- package/L/model.ts +2 -2
- package/L/rune.ts +1 -2
- package/LEvent.ts +32 -19
- package/Rune.ts +1 -3
- package/dist/Agent.d.ts +2 -6
- package/dist/Agent.js +10 -10
- package/dist/Agent.js.map +1 -1
- package/dist/Context.d.ts +10 -0
- package/dist/Context.js +37 -0
- package/dist/Context.js.map +1 -0
- package/dist/EventBase.d.ts +10 -0
- package/dist/EventBase.js +20 -0
- package/dist/EventBase.js.map +1 -0
- package/dist/Globals.d.ts +0 -1
- package/dist/L/L.d.ts +0 -3
- package/dist/L/L.js +0 -3
- package/dist/L/L.js.map +1 -1
- package/dist/L/_infer.d.ts +2 -2
- package/dist/L/_infer.js +18 -16
- package/dist/L/_infer.js.map +1 -1
- package/dist/L/_message.js +4 -7
- package/dist/L/_message.js.map +1 -1
- package/dist/L/assistant.js +2 -7
- package/dist/L/assistant.js.map +1 -1
- package/dist/L/branch.js +20 -24
- package/dist/L/branch.js.map +1 -1
- package/dist/L/emit.js +9 -4
- package/dist/L/emit.js.map +1 -1
- package/dist/L/fork.d.ts +1 -7
- package/dist/L/fork.js +19 -10
- package/dist/L/fork.js.map +1 -1
- package/dist/L/model.js +2 -2
- package/dist/L/model.js.map +1 -1
- package/dist/L/rune.d.ts +1 -2
- package/dist/L/rune.js.map +1 -1
- package/dist/LEvent.d.ts +55 -18
- package/dist/LEvent.js +38 -0
- package/dist/LEvent.js.map +1 -1
- package/dist/Rune.d.ts +1 -2
- package/dist/Rune.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/run.d.ts +4 -0
- package/dist/run.js +35 -0
- package/dist/run.js.map +1 -0
- package/dist/state/Fiber.d.ts +9 -0
- package/dist/state/Fiber.js +14 -0
- package/dist/state/Fiber.js.map +1 -0
- package/dist/state/Globals.d.ts +9 -0
- package/dist/state/Globals.js +10 -0
- package/dist/state/Globals.js.map +1 -0
- package/dist/state/MessageRegistry.d.ts +1 -1
- package/dist/state/MessageRegistry.js +3 -3
- package/dist/state/MessageRegistry.js.map +1 -1
- package/dist/state/ModelConfig.d.ts +1 -19
- package/dist/state/ModelConfig.js +13 -14
- package/dist/state/ModelConfig.js.map +1 -1
- package/dist/state/ModelRegistry.d.ts +1 -1
- package/dist/state/ModelRegistry.js +7 -5
- package/dist/state/ModelRegistry.js.map +1 -1
- package/dist/state/StateMap.d.ts +1 -7
- package/dist/state/StateMap.js +1 -9
- package/dist/state/StateMap.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/index.ts +2 -2
- package/package.json +3 -4
- package/run.ts +37 -0
- package/state/Fiber.ts +13 -0
- package/state/Globals.ts +12 -0
- package/state/MessageRegistry.ts +4 -4
- package/state/ModelConfig.ts +13 -15
- package/state/ModelRegistry.ts +10 -8
- package/state/StateMap.ts +0 -15
- package/Fiber.ts +0 -117
- package/L/all.ts +0 -11
- package/L/join.ts +0 -9
- package/L/self.ts +0 -13
- package/L/state.ts +0 -20
- package/dist/Fiber.d.ts +0 -38
- package/dist/Fiber.js +0 -79
- package/dist/Fiber.js.map +0 -1
- package/dist/L/all.d.ts +0 -7
- package/dist/L/all.js +0 -5
- package/dist/L/all.js.map +0 -1
- package/dist/L/join.d.ts +0 -5
- package/dist/L/join.js +0 -5
- package/dist/L/join.js.map +0 -1
- package/dist/L/self.d.ts +0 -6
- package/dist/L/self.js +0 -7
- package/dist/L/self.js.map +0 -1
- package/dist/L/state.d.ts +0 -7
- package/dist/L/state.js +0 -14
- package/dist/L/state.js.map +0 -1
- package/dist/state/Counter.d.ts +0 -6
- package/dist/state/Counter.js +0 -13
- package/dist/state/Counter.js.map +0 -1
- package/dist/state/DefaultStateMap.d.ts +0 -4
- package/dist/state/DefaultStateMap.js +0 -14
- package/dist/state/DefaultStateMap.js.map +0 -1
- package/state/Counter.ts +0 -11
- package/state/DefaultStateMap.ts +0 -14
package/dist/L/L.d.ts
CHANGED
|
@@ -5,9 +5,6 @@ export * from "./assistant.ts";
|
|
|
5
5
|
export * from "./branch.ts";
|
|
6
6
|
export * from "./emit.ts";
|
|
7
7
|
export * from "./fork.ts";
|
|
8
|
-
export * from "./join.ts";
|
|
9
8
|
export * from "./model.ts";
|
|
10
|
-
export * from "./self.ts";
|
|
11
|
-
export * from "./state.ts";
|
|
12
9
|
export * from "./system.ts";
|
|
13
10
|
export * from "./user.ts";
|
package/dist/L/L.js
CHANGED
|
@@ -5,10 +5,7 @@ export * from "./assistant.js";
|
|
|
5
5
|
export * from "./branch.js";
|
|
6
6
|
export * from "./emit.js";
|
|
7
7
|
export * from "./fork.js";
|
|
8
|
-
export * from "./join.js";
|
|
9
8
|
export * from "./model.js";
|
|
10
|
-
export * from "./self.js";
|
|
11
|
-
export * from "./state.js";
|
|
12
9
|
export * from "./system.js";
|
|
13
10
|
export * from "./user.js";
|
|
14
11
|
//# sourceMappingURL=L.js.map
|
package/dist/L/L.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"L.js","sourceRoot":"","sources":["../../L/L.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,
|
|
1
|
+
{"version":3,"file":"L.js","sourceRoot":"","sources":["../../L/L.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA"}
|
package/dist/L/_infer.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SchemaObject } from "liminal-schema";
|
|
2
2
|
import { type LEvent } from "../LEvent.ts";
|
|
3
3
|
import type { Rune } from "../Rune.ts";
|
|
4
|
-
export declare function _infer(schema?:
|
|
4
|
+
export declare function _infer(schema?: SchemaObject): Generator<Rune<LEvent>, string>;
|
package/dist/L/_infer.js
CHANGED
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
import { assert } from "liminal-util";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Context } from "../Context.js";
|
|
3
|
+
import { InferenceRequested, Inferred } from "../LEvent.js";
|
|
4
4
|
import { MessageRegistry } from "../state/MessageRegistry.js";
|
|
5
5
|
import { ModelRegistry } from "../state/ModelRegistry.js";
|
|
6
6
|
import { emit } from "./emit.js";
|
|
7
7
|
import { rune } from "./rune.js";
|
|
8
|
-
import { state } from "./state.js";
|
|
9
8
|
export function* _infer(schema) {
|
|
10
|
-
const
|
|
9
|
+
const modelRegistry = Context.getOrInit(ModelRegistry.make);
|
|
11
10
|
const model = modelRegistry.peek();
|
|
12
11
|
assert(model);
|
|
12
|
+
const messageRegistry = Context.getOrInit(MessageRegistry.make);
|
|
13
|
+
const counter = Context.getOrInit(InferenceRequestCounter);
|
|
13
14
|
const requestId = counter.next();
|
|
14
|
-
yield* emit(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
requestId,
|
|
18
|
-
});
|
|
19
|
-
const inference = yield* rune(() => model.resolve(messages, schema));
|
|
20
|
-
yield* emit({
|
|
21
|
-
[LEventTag]: "inferred",
|
|
22
|
-
inference,
|
|
23
|
-
requestId,
|
|
24
|
-
});
|
|
15
|
+
yield* emit(new InferenceRequested(requestId, schema));
|
|
16
|
+
const inference = yield* rune(() => model.resolve(messageRegistry.messages, schema));
|
|
17
|
+
yield* emit(new Inferred(requestId, inference));
|
|
25
18
|
return inference;
|
|
26
19
|
}
|
|
27
|
-
|
|
20
|
+
function InferenceRequestCounter(instance) {
|
|
21
|
+
return {
|
|
22
|
+
count: instance?.count ?? 0,
|
|
23
|
+
next() {
|
|
24
|
+
return this.count++;
|
|
25
|
+
},
|
|
26
|
+
clone() {
|
|
27
|
+
return InferenceRequestCounter(this);
|
|
28
|
+
},
|
|
29
|
+
};
|
|
28
30
|
}
|
|
29
31
|
//# sourceMappingURL=_infer.js.map
|
package/dist/L/_infer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_infer.js","sourceRoot":"","sources":["../../L/_infer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,
|
|
1
|
+
{"version":3,"file":"_infer.js","sourceRoot":"","sources":["../../L/_infer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAe,MAAM,cAAc,CAAA;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAqB;IAC3C,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC3D,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAA;IAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAChC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IACtD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IACpF,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;IAC/C,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAkB;IACjD,OAAO;QACL,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;QAC3B,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;QACD,KAAK;YACH,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAA;QACtC,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/dist/L/_message.js
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context } from "../Context.js";
|
|
2
|
+
import { MessageAppended } from "../LEvent.js";
|
|
2
3
|
import { MessageRegistry } from "../state/MessageRegistry.js";
|
|
3
4
|
import { emit } from "./emit.js";
|
|
4
|
-
import { state } from "./state.js";
|
|
5
5
|
export function* _message(role, content) {
|
|
6
|
-
const
|
|
6
|
+
const messageRegistry = Context.getOrInit(MessageRegistry.make);
|
|
7
7
|
const message = { role, content };
|
|
8
|
-
yield* emit(
|
|
9
|
-
[LEventTag]: "message_appended",
|
|
10
|
-
message,
|
|
11
|
-
});
|
|
8
|
+
yield* emit(new MessageAppended(message));
|
|
12
9
|
messageRegistry.append(message);
|
|
13
10
|
}
|
|
14
11
|
//# sourceMappingURL=_message.js.map
|
package/dist/L/_message.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_message.js","sourceRoot":"","sources":["../../L/_message.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"_message.js","sourceRoot":"","sources":["../../L/_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAe,eAAe,EAAE,MAAM,cAAc,CAAA;AAG3D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAiB,EAAE,OAA2B;IACtE,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1C,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAA;IACzC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AACjC,CAAC"}
|
package/dist/L/assistant.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { toJSONSchema } from "liminal-schema";
|
|
2
|
-
import { LiminalAssertionError } from "liminal-util";
|
|
1
|
+
import { toJSONSchema, validate } from "liminal-schema";
|
|
3
2
|
import { _infer } from "./_infer.js";
|
|
4
3
|
import { _message } from "./_message.js";
|
|
5
4
|
import { rune } from "./rune.js";
|
|
@@ -8,11 +7,7 @@ export const assistant = Object.assign(function* (type) {
|
|
|
8
7
|
const inference = yield* _infer(schema);
|
|
9
8
|
yield* _message("assistant", [{ part: inference }]);
|
|
10
9
|
const input = JSON.parse(inference);
|
|
11
|
-
|
|
12
|
-
if (result.issues) {
|
|
13
|
-
throw new LiminalAssertionError(JSON.stringify(result.issues, null, 2));
|
|
14
|
-
}
|
|
15
|
-
return result.value;
|
|
10
|
+
return yield* rune(() => validate(type, input));
|
|
16
11
|
}, {
|
|
17
12
|
*[Symbol.iterator]() {
|
|
18
13
|
const inference = yield* _infer();
|
package/dist/L/assistant.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../L/assistant.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../L/assistant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGnE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC,MAAM,CAAC,MAAM,SAAS,GAAc,MAAM,CAAC,MAAM,CAC/C,QAAQ,CAAC,EAAI,IAAc;IACzB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACvC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACnC,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;AACjD,CAAC,EACD;IACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,CAAA;QACjC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QACnD,OAAO,SAAS,CAAA;IAClB,CAAC;CACF,CACF,CAAA"}
|
package/dist/L/branch.js
CHANGED
|
@@ -1,32 +1,28 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context } from "../Context.js";
|
|
2
|
+
import { run } from "../run.js";
|
|
2
3
|
import {} from "../Rune.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { join } from "./join.js";
|
|
6
|
-
import { self } from "./self.js";
|
|
4
|
+
import { Fiber } from "../state/Fiber.js";
|
|
5
|
+
import { rune } from "./rune.js";
|
|
7
6
|
export function* branch(value) {
|
|
8
|
-
const parent =
|
|
9
|
-
const { globals, state } = parent;
|
|
7
|
+
const parent = Context.get(Fiber.make);
|
|
10
8
|
if (Array.isArray(value)) {
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
parent
|
|
14
|
-
runic,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return yield* join(yield* all(...fibers));
|
|
9
|
+
const runners = value.map((runic) => {
|
|
10
|
+
const context = Context.make(Context.unwrap());
|
|
11
|
+
context.set(Fiber.make, new Fiber(parent));
|
|
12
|
+
return () => run(runic, context);
|
|
13
|
+
});
|
|
14
|
+
return yield* rune(() => Promise.all(runners.map((runner) => runner())));
|
|
18
15
|
}
|
|
19
16
|
else if (typeof value === "object") {
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
parent
|
|
23
|
-
runic,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const resolved = yield* join(yield* all(...fibers));
|
|
27
|
-
return Object.fromEntries(Object.keys(value).map((key, i) => [key, resolved[i]]));
|
|
17
|
+
const runners = Object.entries(value).map(([key, runic]) => {
|
|
18
|
+
const context = Context.make(Context.unwrap());
|
|
19
|
+
context.set(Fiber.make, new Fiber(parent));
|
|
20
|
+
return async () => [key, await run(runic, context)];
|
|
21
|
+
});
|
|
22
|
+
return yield* rune(() => Promise.all(runners.map((runner) => runner())).then(Object.fromEntries));
|
|
28
23
|
}
|
|
29
|
-
const
|
|
30
|
-
|
|
24
|
+
const context = Context.make(Context.unwrap());
|
|
25
|
+
context.set(Fiber.make, new Fiber(parent));
|
|
26
|
+
return yield* rune(() => run(typeof value === "function" ? value() : value, context));
|
|
31
27
|
}
|
|
32
28
|
//# sourceMappingURL=branch.js.map
|
package/dist/L/branch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../L/branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAa,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAWhC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,KAAsD;IAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAClC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;YAC1C,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;QACF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1E,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACzD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;YAC1C,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;QACrD,CAAC,CAAC,CAAA;QACF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;IACnG,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1C,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;AACvF,CAAC"}
|
package/dist/L/emit.js
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context } from "../Context.js";
|
|
2
|
+
import { Fiber } from "../state/Fiber.js";
|
|
3
|
+
import { Globals } from "../state/Globals.js";
|
|
2
4
|
export function* emit(event) {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
const globals = Context.getAssert(Globals.make);
|
|
6
|
+
const fiber = Context.getAssert(Fiber.make);
|
|
7
|
+
globals.handler?.(event, {
|
|
8
|
+
fiber: fiber.index,
|
|
9
|
+
timestamp: Date.now(),
|
|
10
|
+
});
|
|
6
11
|
}
|
|
7
12
|
//# sourceMappingURL=emit.js.map
|
package/dist/L/emit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../L/emit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../L/emit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAI7C,MAAM,SAAS,CAAC,CAAC,IAAI,CAAU,KAAsB;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3C,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE;QACvB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/L/fork.d.ts
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import type { Rune } from "../Rune.ts";
|
|
3
|
-
import type { Runic } from "../Runic.ts";
|
|
4
|
-
import type { StateMap } from "../state/StateMap.ts";
|
|
5
|
-
export interface fork<Y extends Rune, T> extends Generator<Rune<never> | Y, Fiber<T>> {
|
|
6
|
-
}
|
|
7
|
-
export declare function fork<Y extends Rune, T>(runic: Runic<Y, T>, state?: StateMap): fork<Y, T>;
|
|
1
|
+
export {};
|
package/dist/L/fork.js
CHANGED
|
@@ -1,11 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
1
|
+
// import type { FiberConfig } from "../Fiber.ts"
|
|
2
|
+
// import type { Rune } from "../Rune.ts"
|
|
3
|
+
// import type { Runic } from "../Runic.ts"
|
|
4
|
+
// import { runic as runic_ } from "./runic.ts"
|
|
5
|
+
// import { self } from "./self.ts"
|
|
6
|
+
export {};
|
|
7
|
+
// export interface fork<Y extends Rune, T> extends Generator<Rune<any> | Y, FiberConfig<T>> {}
|
|
8
|
+
// export function* fork<Y extends Rune, T>(runic: Runic<Y, T>): fork<Y, T> {
|
|
9
|
+
// const parent = yield* self
|
|
10
|
+
// const { globals, state, signal } = parent
|
|
11
|
+
// const controller = new AbortController()
|
|
12
|
+
// const fiberConfig: FiberConfig = {
|
|
13
|
+
// T: null!,
|
|
14
|
+
// globals,
|
|
15
|
+
// signal: controller.signal,
|
|
16
|
+
// state: state?.clone(),
|
|
17
|
+
// }
|
|
18
|
+
// return (yield* runic_(runic, fiberConfig)) as never
|
|
19
|
+
// }
|
|
11
20
|
//# sourceMappingURL=fork.js.map
|
package/dist/L/fork.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fork.js","sourceRoot":"","sources":["../../L/fork.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"fork.js","sourceRoot":"","sources":["../../L/fork.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,yCAAyC;AACzC,2CAA2C;AAC3C,+CAA+C;AAC/C,mCAAmC;;AAEnC,+FAA+F;AAE/F,6EAA6E;AAC7E,+BAA+B;AAC/B,8CAA8C;AAC9C,6CAA6C;AAC7C,uCAAuC;AACvC,gBAAgB;AAChB,eAAe;AACf,iCAAiC;AACjC,6BAA6B;AAC7B,MAAM;AACN,wDAAwD;AACxD,IAAI"}
|
package/dist/L/model.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { Context } from "../Context.js";
|
|
1
2
|
import { ModelRegistry } from "../state/ModelRegistry.js";
|
|
2
|
-
import { state } from "./state.js";
|
|
3
3
|
export function* model(model) {
|
|
4
|
-
const
|
|
4
|
+
const modelRegistry = Context.getOrInit(ModelRegistry.make);
|
|
5
5
|
modelRegistry.register(model);
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=model.js.map
|
package/dist/L/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../L/model.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../L/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAIzD,MAAM,SAAS,CAAC,CAAC,KAAK,CAAC,KAAY;IACjC,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC3D,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC/B,CAAC"}
|
package/dist/L/rune.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { Fiber } from "../Fiber.ts";
|
|
2
1
|
import { type Rune } from "../Rune.ts";
|
|
3
2
|
export interface rune<T> extends Iterable<Rune<never>, T> {
|
|
4
3
|
<E>(): Generator<Rune<E>, T>;
|
|
5
4
|
}
|
|
6
|
-
export declare function rune<R>(source: (
|
|
5
|
+
export declare function rune<R>(source: () => R): rune<Awaited<R>>;
|
package/dist/L/rune.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rune.js","sourceRoot":"","sources":["../../L/rune.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rune.js","sourceRoot":"","sources":["../../L/rune.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,OAAO,EAAE,MAAM,YAAY,CAAA;AAM/C,MAAM,UAAU,IAAI,CAAI,MAAe;IACrC,OAAO,MAAM,CAAC,MAAM,CAClB,QAAQ,CAAC;QACP,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAW,EAAE,CAAC,CAAA;IAChE,CAAC,EACD;QACE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YAChB,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAW,EAAE,CAAC,CAAA;QAChE,CAAC;KACF,CACF,CAAA;AACH,CAAC"}
|
package/dist/LEvent.d.ts
CHANGED
|
@@ -1,28 +1,65 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SchemaObject } from "liminal-schema";
|
|
2
2
|
import type { Message } from "./Message.ts";
|
|
3
3
|
export type LEvent = InferenceRequested | Inferred | MessageAppended | FiberCreated | FiberStarted | FiberResolved;
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
export declare const LEventTag: unique symbol;
|
|
5
|
+
export type LEventTag = typeof LEventTag;
|
|
6
|
+
declare const InferenceRequested_base: {
|
|
7
|
+
new (): {
|
|
8
|
+
readonly brand: typeof LEventTag;
|
|
9
|
+
readonly type: "inference_requested";
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare class InferenceRequested extends InferenceRequested_base {
|
|
13
|
+
readonly requestId: number;
|
|
14
|
+
schema?: SchemaObject;
|
|
15
|
+
constructor(requestId: number, schema?: SchemaObject | undefined);
|
|
11
16
|
}
|
|
12
|
-
|
|
13
|
-
|
|
17
|
+
declare const Inferred_base: {
|
|
18
|
+
new (): {
|
|
19
|
+
readonly brand: typeof LEventTag;
|
|
20
|
+
readonly type: "inferred";
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export declare class Inferred extends Inferred_base {
|
|
24
|
+
readonly requestId: number;
|
|
25
|
+
readonly inference: string;
|
|
26
|
+
constructor(requestId: number, inference: string);
|
|
14
27
|
}
|
|
15
|
-
|
|
28
|
+
declare const MessageAppended_base: {
|
|
29
|
+
new (): {
|
|
30
|
+
readonly brand: typeof LEventTag;
|
|
31
|
+
readonly type: "message_appended";
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export declare class MessageAppended extends MessageAppended_base {
|
|
35
|
+
readonly message: Message;
|
|
36
|
+
constructor(message: Message);
|
|
16
37
|
}
|
|
17
|
-
|
|
38
|
+
declare const FiberCreated_base: {
|
|
39
|
+
new (): {
|
|
40
|
+
readonly brand: typeof LEventTag;
|
|
41
|
+
readonly type: "fiber_created";
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export declare class FiberCreated extends FiberCreated_base {
|
|
18
45
|
}
|
|
19
|
-
|
|
20
|
-
|
|
46
|
+
declare const FiberStarted_base: {
|
|
47
|
+
new (): {
|
|
48
|
+
readonly brand: typeof LEventTag;
|
|
49
|
+
readonly type: "fiber_started";
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export declare class FiberStarted extends FiberStarted_base {
|
|
21
53
|
}
|
|
22
|
-
|
|
23
|
-
|
|
54
|
+
declare const FiberResolved_base: {
|
|
55
|
+
new (): {
|
|
56
|
+
readonly brand: typeof LEventTag;
|
|
57
|
+
readonly type: "fiber_resolved";
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
export declare class FiberResolved extends FiberResolved_base {
|
|
61
|
+
readonly value: any;
|
|
62
|
+
constructor(value: any);
|
|
24
63
|
}
|
|
25
|
-
export declare const LEventTag: unique symbol;
|
|
26
|
-
export type LEventTag = typeof LEventTag;
|
|
27
64
|
export declare function isLEvent(value: unknown): value is LEvent;
|
|
28
65
|
export {};
|
package/dist/LEvent.js
CHANGED
|
@@ -1,4 +1,42 @@
|
|
|
1
|
+
import { EventBase } from "./EventBase.js";
|
|
1
2
|
export const LEventTag = Symbol.for("liminal/LEvent");
|
|
3
|
+
export class InferenceRequested extends EventBase(LEventTag, "inference_requested") {
|
|
4
|
+
requestId;
|
|
5
|
+
constructor(requestId, schema) {
|
|
6
|
+
super();
|
|
7
|
+
this.requestId = requestId;
|
|
8
|
+
if (schema) {
|
|
9
|
+
this.schema = schema;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class Inferred extends EventBase(LEventTag, "inferred") {
|
|
14
|
+
requestId;
|
|
15
|
+
inference;
|
|
16
|
+
constructor(requestId, inference) {
|
|
17
|
+
super();
|
|
18
|
+
this.requestId = requestId;
|
|
19
|
+
this.inference = inference;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export class MessageAppended extends EventBase(LEventTag, "message_appended") {
|
|
23
|
+
message;
|
|
24
|
+
constructor(message) {
|
|
25
|
+
super();
|
|
26
|
+
this.message = message;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export class FiberCreated extends EventBase(LEventTag, "fiber_created") {
|
|
30
|
+
}
|
|
31
|
+
export class FiberStarted extends EventBase(LEventTag, "fiber_started") {
|
|
32
|
+
}
|
|
33
|
+
export class FiberResolved extends EventBase(LEventTag, "fiber_resolved") {
|
|
34
|
+
value;
|
|
35
|
+
constructor(value) {
|
|
36
|
+
super();
|
|
37
|
+
this.value = value;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
2
40
|
export function isLEvent(value) {
|
|
3
41
|
return typeof value === "object" && value !== null && LEventTag in value;
|
|
4
42
|
}
|
package/dist/LEvent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LEvent.js","sourceRoot":"","sources":["../LEvent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LEvent.js","sourceRoot":"","sources":["../LEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAK1C,MAAM,CAAC,MAAM,SAAS,GAAkB,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;AAGpE,MAAM,OAAO,kBAAmB,SAAQ,SAAS,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAGtE;IADX,YACW,SAAiB,EAC1B,MAAiC;QAEjC,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QAI1B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAEjD;IACA;IAFX,YACW,SAAiB,EACjB,SAAiB;QAE1B,KAAK,EAAE,CAAA;QAHE,cAAS,GAAT,SAAS,CAAQ;QACjB,cAAS,GAAT,SAAS,CAAQ;IAG5B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACtD;IAArB,YAAqB,OAAgB;QACnC,KAAK,EAAE,CAAA;QADY,YAAO,GAAP,OAAO,CAAS;IAErC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,YAAa,SAAQ,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;CAAG;AAC1E,MAAM,OAAO,aAAc,SAAQ,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAClD;IAArB,YAAqB,KAAU;QAC7B,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAK;IAE/B,CAAC;CACF;AAED,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AAC1E,CAAC"}
|
package/dist/Rune.d.ts
CHANGED
package/dist/Rune.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rune.js","sourceRoot":"","sources":["../Rune.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Rune.js","sourceRoot":"","sources":["../Rune.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,OAAO,GAAkB,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAGhE,MAAM,UAAU,MAAM,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,CAAA;AACxE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * as _util from "liminal-util";
|
|
2
1
|
export * from "./Agent.ts";
|
|
3
|
-
export * from "./
|
|
2
|
+
export * from "./EventBase.ts";
|
|
4
3
|
export * as L from "./L/L.ts";
|
|
5
4
|
export * from "./LEvent.ts";
|
|
5
|
+
export * from "./Message.ts";
|
|
6
6
|
export * from "./Model.ts";
|
|
7
7
|
export * from "./Rune.ts";
|
|
8
8
|
export * from "./Runic.ts";
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * as _util from "liminal-util";
|
|
2
1
|
export * from "./Agent.js";
|
|
3
|
-
export * from "./
|
|
2
|
+
export * from "./EventBase.js";
|
|
4
3
|
export * as L from "./L/L.js";
|
|
5
4
|
export * from "./LEvent.js";
|
|
5
|
+
export * from "./Message.js";
|
|
6
6
|
export * from "./Model.js";
|
|
7
7
|
export * from "./Rune.js";
|
|
8
8
|
export * from "./Runic.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA"}
|
package/dist/run.d.ts
ADDED
package/dist/run.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Context } from "./Context.js";
|
|
2
|
+
import { Runic } from "./Runic.js";
|
|
3
|
+
import { Fiber } from "./state/Fiber.js";
|
|
4
|
+
export function run(runic, context) {
|
|
5
|
+
const { promise, resolve, reject } = Promise.withResolvers();
|
|
6
|
+
const { signal } = Context.getAssert(Fiber.make);
|
|
7
|
+
if (signal.aborted) {
|
|
8
|
+
reject(signal.reason);
|
|
9
|
+
return promise;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
signal.addEventListener("abort", () => {
|
|
13
|
+
reject(signal?.reason);
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
queueMicrotask(() => Context.storage.run(context ?? Context.unwrap(), async () => {
|
|
17
|
+
const iterator = Runic.unwrap(runic);
|
|
18
|
+
let nextArg;
|
|
19
|
+
try {
|
|
20
|
+
let current = await iterator.next();
|
|
21
|
+
while (!current.done) {
|
|
22
|
+
const rune = current.value;
|
|
23
|
+
nextArg = await rune();
|
|
24
|
+
current = await iterator.next(nextArg);
|
|
25
|
+
}
|
|
26
|
+
const { value } = current;
|
|
27
|
+
resolve(value);
|
|
28
|
+
}
|
|
29
|
+
catch (reason) {
|
|
30
|
+
reject(reason);
|
|
31
|
+
}
|
|
32
|
+
}));
|
|
33
|
+
return promise;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=run.js.map
|
package/dist/run.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,MAAM,UAAU,GAAG,CAAI,KAAqB,EAAE,OAAiB;IAC7D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,EAAK,CAAA;IAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAChD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACrB,OAAO,OAAO,CAAA;IAChB,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,cAAc,CAAC,GAAG,EAAE,CAClB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,OAAY,CAAA;QAChB,IAAI,CAAC;YACH,IAAI,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YACnC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAA;gBAC1B,OAAO,GAAG,MAAM,IAAI,EAAE,CAAA;gBACtB,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACxC,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;YACzB,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC;QAAC,OAAO,MAAe,EAAE,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CACH,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class Fiber {
|
|
2
|
+
readonly parent?: Fiber | undefined;
|
|
3
|
+
static fiberCount: number;
|
|
4
|
+
static make(): Fiber;
|
|
5
|
+
readonly index: number;
|
|
6
|
+
readonly controller: AbortController;
|
|
7
|
+
readonly signal: AbortSignal;
|
|
8
|
+
constructor(parent?: Fiber | undefined);
|
|
9
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export class Fiber {
|
|
2
|
+
parent;
|
|
3
|
+
static fiberCount = 0;
|
|
4
|
+
static make() {
|
|
5
|
+
return new Fiber();
|
|
6
|
+
}
|
|
7
|
+
index = Fiber.fiberCount++;
|
|
8
|
+
controller = new AbortController();
|
|
9
|
+
signal = this.controller.signal;
|
|
10
|
+
constructor(parent) {
|
|
11
|
+
this.parent = parent;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=Fiber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fiber.js","sourceRoot":"","sources":["../../state/Fiber.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,KAAK;IAWK;IAVrB,MAAM,CAAC,UAAU,GAAG,CAAC,CAAA;IAErB,MAAM,CAAC,IAAI;QACT,OAAO,IAAI,KAAK,EAAE,CAAA;IACpB,CAAC;IAEQ,KAAK,GAAW,KAAK,CAAC,UAAU,EAAE,CAAA;IAClC,UAAU,GAAoB,IAAI,eAAe,EAAE,CAAA;IACnD,MAAM,GAAgB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAA;IAErD,YAAqB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class Globals<E = any> {
|
|
2
|
+
readonly handler?: ((event: E, fiberInfo: FiberInfo) => void) | undefined;
|
|
3
|
+
static make(globals?: Globals): Globals;
|
|
4
|
+
constructor(handler?: ((event: E, fiberInfo: FiberInfo) => void) | undefined);
|
|
5
|
+
}
|
|
6
|
+
export interface FiberInfo {
|
|
7
|
+
fiber: number;
|
|
8
|
+
timestamp: number;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Globals.js","sourceRoot":"","sources":["../../state/Globals.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,OAAO;IAKG;IAJrB,MAAM,CAAC,IAAI,CAAC,OAAiB;QAC3B,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,YAAqB,OAAkD;QAAlD,YAAO,GAAP,OAAO,CAA2C;IAAG,CAAC;CAC5E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Message } from "../Message.ts";
|
|
2
2
|
export declare class MessageRegistry {
|
|
3
|
+
static make(messageRegistry?: MessageRegistry): MessageRegistry;
|
|
3
4
|
messages: Array<Message>;
|
|
4
5
|
constructor(messages?: Iterable<Message>);
|
|
5
|
-
clone(): MessageRegistry;
|
|
6
6
|
append(message: Message): void;
|
|
7
7
|
}
|