liminal 0.5.14 → 0.5.16

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.
Files changed (107) hide show
  1. package/{Model.ts → Adapter.ts} +5 -5
  2. package/AdapterRegistry.ts +78 -0
  3. package/CHANGELOG.md +12 -0
  4. package/Config.ts +2 -2
  5. package/Context.ts +24 -7
  6. package/Definition.ts +16 -0
  7. package/L/L.ts +1 -2
  8. package/L/all.ts +4 -0
  9. package/L/assistant.ts +4 -0
  10. package/L/catch.ts +4 -0
  11. package/L/continuation.ts +3 -2
  12. package/L/emit.ts +6 -2
  13. package/L/focus.ts +17 -0
  14. package/L/infer.ts +18 -14
  15. package/L/message.ts +4 -0
  16. package/L/reflect.ts +2 -1
  17. package/L/run.ts +4 -3
  18. package/L/strand.ts +6 -2
  19. package/L/stream.ts +4 -5
  20. package/LEvent.ts +5 -5
  21. package/Rune.ts +36 -7
  22. package/Strand.ts +37 -6
  23. package/dist/{Model.d.ts → Adapter.d.ts} +5 -5
  24. package/dist/Adapter.js +13 -0
  25. package/dist/Adapter.js.map +1 -0
  26. package/dist/AdapterRegistry.d.ts +27 -0
  27. package/dist/AdapterRegistry.js +62 -0
  28. package/dist/AdapterRegistry.js.map +1 -0
  29. package/dist/Config.d.ts +2 -2
  30. package/dist/Config.js +1 -1
  31. package/dist/Config.js.map +1 -1
  32. package/dist/Context.d.ts +21 -2
  33. package/dist/Context.js +9 -4
  34. package/dist/Context.js.map +1 -1
  35. package/dist/Definition.d.ts +14 -0
  36. package/dist/Definition.js +11 -0
  37. package/dist/Definition.js.map +1 -1
  38. package/dist/L/L.d.ts +1 -2
  39. package/dist/L/L.js +1 -2
  40. package/dist/L/L.js.map +1 -1
  41. package/dist/L/all.d.ts +4 -0
  42. package/dist/L/all.js.map +1 -1
  43. package/dist/L/assistant.d.ts +4 -0
  44. package/dist/L/assistant.js.map +1 -1
  45. package/dist/L/catch.d.ts +4 -0
  46. package/dist/L/catch.js +4 -0
  47. package/dist/L/catch.js.map +1 -1
  48. package/dist/L/continuation.d.ts +1 -0
  49. package/dist/L/continuation.js +3 -2
  50. package/dist/L/continuation.js.map +1 -1
  51. package/dist/L/emit.d.ts +4 -0
  52. package/dist/L/emit.js +6 -2
  53. package/dist/L/emit.js.map +1 -1
  54. package/dist/L/focus.d.ts +8 -0
  55. package/dist/L/focus.js +14 -0
  56. package/dist/L/focus.js.map +1 -0
  57. package/dist/L/infer.d.ts +4 -0
  58. package/dist/L/infer.js +11 -9
  59. package/dist/L/infer.js.map +1 -1
  60. package/dist/L/message.d.ts +4 -0
  61. package/dist/L/message.js +4 -0
  62. package/dist/L/message.js.map +1 -1
  63. package/dist/L/reflect.d.ts +1 -0
  64. package/dist/L/reflect.js +2 -1
  65. package/dist/L/reflect.js.map +1 -1
  66. package/dist/L/run.d.ts +3 -2
  67. package/dist/L/run.js +2 -2
  68. package/dist/L/run.js.map +1 -1
  69. package/dist/L/strand.d.ts +4 -0
  70. package/dist/L/strand.js +6 -2
  71. package/dist/L/strand.js.map +1 -1
  72. package/dist/L/stream.d.ts +1 -0
  73. package/dist/L/stream.js +4 -5
  74. package/dist/L/stream.js.map +1 -1
  75. package/dist/LEvent.d.ts +7 -7
  76. package/dist/LEvent.js +4 -4
  77. package/dist/LEvent.js.map +1 -1
  78. package/dist/Rune.d.ts +29 -8
  79. package/dist/Rune.js +2 -0
  80. package/dist/Rune.js.map +1 -1
  81. package/dist/Strand.d.ts +24 -0
  82. package/dist/Strand.js +27 -4
  83. package/dist/Strand.js.map +1 -1
  84. package/dist/index.d.ts +2 -2
  85. package/dist/index.js +2 -2
  86. package/dist/index.js.map +1 -1
  87. package/dist/tsconfig.tsbuildinfo +1 -1
  88. package/dist/util/JSONValue.d.ts +1 -1
  89. package/dist/util/JSONValue.js +21 -9
  90. package/dist/util/JSONValue.js.map +1 -1
  91. package/index.ts +2 -2
  92. package/package.json +1 -1
  93. package/util/JSONValue.ts +23 -8
  94. package/L/context.ts +0 -12
  95. package/L/model.ts +0 -13
  96. package/ModelRegistry.ts +0 -55
  97. package/dist/L/context.d.ts +0 -2
  98. package/dist/L/context.js +0 -12
  99. package/dist/L/context.js.map +0 -1
  100. package/dist/L/model.d.ts +0 -4
  101. package/dist/L/model.js +0 -10
  102. package/dist/L/model.js.map +0 -1
  103. package/dist/Model.js +0 -13
  104. package/dist/Model.js.map +0 -1
  105. package/dist/ModelRegistry.d.ts +0 -15
  106. package/dist/ModelRegistry.js +0 -43
  107. package/dist/ModelRegistry.js.map +0 -1
package/ModelRegistry.ts DELETED
@@ -1,55 +0,0 @@
1
- import type { Model } from "./Model.ts"
2
-
3
- /** An intrusive list for storing `Model`s. */
4
- export class ModelRegistry {
5
- declare head?: ModelRegistryNode | undefined
6
- declare tail?: ModelRegistryNode | undefined
7
-
8
- peek() {
9
- return this.tail?.model
10
- }
11
-
12
- register(value: Model): ModelRegistryNode {
13
- const node: ModelRegistryNode = {
14
- prev: this.tail,
15
- model: value,
16
- }
17
- if (this.tail) {
18
- this.tail.next = node
19
- } else {
20
- this.head = node
21
- }
22
- this.tail = node
23
- return node
24
- }
25
-
26
- remove(node: ModelRegistryNode) {
27
- if (node.prev) {
28
- node.prev.next = node.next
29
- }
30
- if (node.next) {
31
- node.next.prev = node.prev
32
- }
33
- if (node === this.head) {
34
- this.head = node.next
35
- }
36
- if (node === this.tail) {
37
- this.tail = node.prev
38
- }
39
- node.prev = node.next = undefined
40
- }
41
-
42
- clone() {
43
- const instance = new ModelRegistry()
44
- for (let node = this.head; node; node = node.next) {
45
- instance.register(node.model)
46
- }
47
- return instance
48
- }
49
- }
50
-
51
- export interface ModelRegistryNode {
52
- prev: ModelRegistryNode | undefined
53
- model: Model
54
- next?: ModelRegistryNode | undefined
55
- }
@@ -1,2 +0,0 @@
1
- import { Context } from "../Context.ts";
2
- export declare function context(partial: Partial<Omit<Context, "clone">>): Generator<import("../Rune.ts").Rune<import("../LEvent.ts").LEvent>, Context, any>;
package/dist/L/context.js DELETED
@@ -1,12 +0,0 @@
1
- import { Context } from "../Context.js";
2
- import { reflect } from "./reflect.js";
3
- export function* context(partial) {
4
- const { context } = yield* reflect;
5
- return Context({
6
- handler: partial.handler ?? context.handler,
7
- messages: partial.messages ?? context.messages,
8
- models: partial.models ?? context.models,
9
- tools: partial.tools ?? context.tools,
10
- });
11
- }
12
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../L/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,OAAwC;IAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAA;IAClC,OAAO,OAAO,CAAC;QACb,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO;QAC3C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;QAC9C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM;QACxC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK;KACtC,CAAC,CAAA;AACJ,CAAC"}
package/dist/L/model.d.ts DELETED
@@ -1,4 +0,0 @@
1
- import type { LEvent } from "../LEvent.ts";
2
- import type { Model } from "../Model.ts";
3
- import type { Rune } from "../Rune.ts";
4
- export declare function model(model: Model): Generator<Rune<LEvent>, Model>;
package/dist/L/model.js DELETED
@@ -1,10 +0,0 @@
1
- import { ModelRegistered } from "../LEvent.js";
2
- import { emit } from "./emit.js";
3
- import { reflect } from "./reflect.js";
4
- export function* model(model) {
5
- const { context: { models } } = yield* reflect;
6
- models.register(model);
7
- yield* emit(new ModelRegistered(model));
8
- return model;
9
- }
10
- //# sourceMappingURL=model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../L/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,SAAS,CAAC,CAAC,KAAK,CAAC,KAAY;IACjC,MAAM,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAA;IAC9C,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACtB,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAA;IACvC,OAAO,KAAK,CAAA;AACd,CAAC"}
package/dist/Model.js DELETED
@@ -1,13 +0,0 @@
1
- import { attachCustomInspect } from "./util/attachCustomInspect.js";
2
- export class Model {
3
- vendor;
4
- seal;
5
- constructor(vendor, seal) {
6
- this.vendor = vendor;
7
- this.seal = seal;
8
- }
9
- static {
10
- attachCustomInspect(this, ({ vendor }) => ({ vendor }));
11
- }
12
- }
13
- //# sourceMappingURL=Model.js.map
package/dist/Model.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Model.js","sourceRoot":"","sources":["../Model.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAEnE,MAAM,OAAO,KAAK;IAEL;IACA;IAFX,YACW,MAAc,EACd,IAA4C;QAD5C,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAwC;IACpD,CAAC;IAEJ;QACE,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IACzD,CAAC;CACF"}
@@ -1,15 +0,0 @@
1
- import type { Model } from "./Model.ts";
2
- /** An intrusive list for storing `Model`s. */
3
- export declare class ModelRegistry {
4
- head?: ModelRegistryNode | undefined;
5
- tail?: ModelRegistryNode | undefined;
6
- peek(): Model | undefined;
7
- register(value: Model): ModelRegistryNode;
8
- remove(node: ModelRegistryNode): void;
9
- clone(): ModelRegistry;
10
- }
11
- export interface ModelRegistryNode {
12
- prev: ModelRegistryNode | undefined;
13
- model: Model;
14
- next?: ModelRegistryNode | undefined;
15
- }
@@ -1,43 +0,0 @@
1
- /** An intrusive list for storing `Model`s. */
2
- export class ModelRegistry {
3
- peek() {
4
- return this.tail?.model;
5
- }
6
- register(value) {
7
- const node = {
8
- prev: this.tail,
9
- model: value,
10
- };
11
- if (this.tail) {
12
- this.tail.next = node;
13
- }
14
- else {
15
- this.head = node;
16
- }
17
- this.tail = node;
18
- return node;
19
- }
20
- remove(node) {
21
- if (node.prev) {
22
- node.prev.next = node.next;
23
- }
24
- if (node.next) {
25
- node.next.prev = node.prev;
26
- }
27
- if (node === this.head) {
28
- this.head = node.next;
29
- }
30
- if (node === this.tail) {
31
- this.tail = node.prev;
32
- }
33
- node.prev = node.next = undefined;
34
- }
35
- clone() {
36
- const instance = new ModelRegistry();
37
- for (let node = this.head; node; node = node.next) {
38
- instance.register(node.model);
39
- }
40
- return instance;
41
- }
42
- }
43
- //# sourceMappingURL=ModelRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["../ModelRegistry.ts"],"names":[],"mappings":"AAEA,8CAA8C;AAC9C,MAAM,OAAO,aAAa;IAIxB,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,CAAA;IACzB,CAAC;IAED,QAAQ,CAAC,KAAY;QACnB,MAAM,IAAI,GAAsB;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,KAAK;SACb,CAAA;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,IAAuB;QAC5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC5B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC5B,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;IACnC,CAAC;IAED,KAAK;QACH,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;QACpC,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAClD,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CACF"}