@tabnas/transduce 0.1.2 → 0.2.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.
Files changed (83) hide show
  1. package/README.md +18 -0
  2. package/dist/guard.d.ts +1 -3
  3. package/dist/guard.js +8 -9
  4. package/dist/guard.js.map +1 -1
  5. package/dist/lines.d.ts +1 -2
  6. package/dist/lines.js +46 -89
  7. package/dist/lines.js.map +1 -1
  8. package/dist/matcher.d.ts +1 -3
  9. package/dist/matcher.js +12 -13
  10. package/dist/matcher.js.map +1 -1
  11. package/dist/parser-source.d.ts +1 -2
  12. package/dist/parser-source.js +11 -13
  13. package/dist/parser-source.js.map +1 -1
  14. package/dist/route.d.ts +1 -32
  15. package/dist/route.js +8 -32
  16. package/dist/route.js.map +1 -1
  17. package/dist/routers.d.ts +2 -0
  18. package/dist/routers.js +24 -0
  19. package/dist/routers.js.map +1 -0
  20. package/dist/rule-events.d.ts +1 -4
  21. package/dist/rule-events.js +40 -44
  22. package/dist/rule-events.js.map +1 -1
  23. package/dist/scan.d.ts +1 -10
  24. package/dist/scan.js +4 -17
  25. package/dist/scan.js.map +1 -1
  26. package/dist/source.d.ts +1 -4
  27. package/dist/source.js +20 -22
  28. package/dist/source.js.map +1 -1
  29. package/dist/table-from-json.d.ts +1 -5
  30. package/dist/table-from-json.js +25 -29
  31. package/dist/table-from-json.js.map +1 -1
  32. package/dist/transduce.d.ts +23 -19
  33. package/dist/transduce.js +66 -56
  34. package/dist/transduce.js.map +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +12 -4
  37. package/src/guard.ts +10 -4
  38. package/src/lines.ts +45 -6
  39. package/src/matcher.ts +1 -6
  40. package/src/parser-source.ts +2 -4
  41. package/src/route.ts +18 -70
  42. package/src/routers.ts +64 -0
  43. package/src/rule-events.ts +17 -7
  44. package/src/scan.ts +1 -19
  45. package/src/source.ts +12 -6
  46. package/src/table-from-json.ts +20 -9
  47. package/src/transduce.ts +36 -19
  48. package/dist/datum.d.ts +0 -64
  49. package/dist/datum.js +0 -391
  50. package/dist/datum.js.map +0 -1
  51. package/dist/error.d.ts +0 -43
  52. package/dist/error.js +0 -169
  53. package/dist/error.js.map +0 -1
  54. package/dist/event.d.ts +0 -56
  55. package/dist/event.js +0 -101
  56. package/dist/event.js.map +0 -1
  57. package/dist/json.d.ts +0 -4
  58. package/dist/json.js +0 -92
  59. package/dist/json.js.map +0 -1
  60. package/dist/limits.d.ts +0 -36
  61. package/dist/limits.js +0 -133
  62. package/dist/limits.js.map +0 -1
  63. package/dist/selector.d.ts +0 -40
  64. package/dist/selector.js +0 -154
  65. package/dist/selector.js.map +0 -1
  66. package/dist/sink.d.ts +0 -29
  67. package/dist/sink.js +0 -184
  68. package/dist/sink.js.map +0 -1
  69. package/dist/table.d.ts +0 -81
  70. package/dist/table.js +0 -141
  71. package/dist/table.js.map +0 -1
  72. package/dist/value.d.ts +0 -16
  73. package/dist/value.js +0 -96
  74. package/dist/value.js.map +0 -1
  75. package/src/datum.ts +0 -407
  76. package/src/error.ts +0 -198
  77. package/src/event.ts +0 -134
  78. package/src/json.ts +0 -82
  79. package/src/limits.ts +0 -165
  80. package/src/selector.ts +0 -191
  81. package/src/sink.ts +0 -199
  82. package/src/table.ts +0 -213
  83. package/src/value.ts +0 -93
package/dist/matcher.js CHANGED
@@ -17,8 +17,7 @@ exports.Matcher = void 0;
17
17
  // array ending an object, a value after the root). Every stage downstream
18
18
  // of it can therefore trust the sequence. A concrete `Path` is built only
19
19
  // on request, for a delivered match or a failure.
20
- const error_1 = require("./error");
21
- const selector_1 = require("./selector");
20
+ const shared_1 = require("@tabnas/alchemy/shared");
22
21
  const ROOT = 0;
23
22
  function newNode() {
24
23
  return {
@@ -100,7 +99,7 @@ class Matcher {
100
99
  const level = this.levels[i];
101
100
  segments.push(level.array ? Math.max(0, level.started - 1) : level.key);
102
101
  }
103
- return new selector_1.Path(segments);
102
+ return new shared_1.Path(segments);
104
103
  }
105
104
  // The captures that began with the last event, in id order.
106
105
  begins() {
@@ -109,16 +108,16 @@ class Matcher {
109
108
  // One event. A malformed sequence is a `PROTOCOL_ORDER_ERROR`.
110
109
  event(ev) {
111
110
  if (this.isEnded) {
112
- throw error_1.Fail.protocol('an event arrived after the document ended');
111
+ throw shared_1.Fail.protocol('an event arrived after the document ended');
113
112
  }
114
113
  switch (ev.type) {
115
114
  case 'key': {
116
115
  const level = 0 < this.open ? this.levels[this.open - 1] : undefined;
117
116
  if (undefined === level || level.array) {
118
- throw error_1.Fail.protocol('a key arrived outside an object');
117
+ throw shared_1.Fail.protocol('a key arrived outside an object');
119
118
  }
120
119
  if (level.inValue) {
121
- throw error_1.Fail.protocol('a key arrived where a value was expected');
120
+ throw shared_1.Fail.protocol('a key arrived where a value was expected');
122
121
  }
123
122
  level.key = ev.key;
124
123
  level.inValue = true;
@@ -151,13 +150,13 @@ class Matcher {
151
150
  const wantArray = 'array_end' === ev.type;
152
151
  const level = 0 < this.open ? this.levels[this.open - 1] : undefined;
153
152
  if (undefined === level) {
154
- throw error_1.Fail.protocol('a container ended that had not started');
153
+ throw shared_1.Fail.protocol('a container ended that had not started');
155
154
  }
156
155
  if (level.array !== wantArray) {
157
- throw error_1.Fail.protocol(wantArray ? 'an array ended inside an object' : 'an object ended inside an array');
156
+ throw shared_1.Fail.protocol(wantArray ? 'an array ended inside an object' : 'an object ended inside an array');
158
157
  }
159
158
  if (level.inValue) {
160
- throw error_1.Fail.protocol('an object ended after a key without its value');
159
+ throw shared_1.Fail.protocol('an object ended after a key without its value');
161
160
  }
162
161
  this.open--;
163
162
  this.nodeStack.length = level.start;
@@ -167,10 +166,10 @@ class Matcher {
167
166
  }
168
167
  case 'end':
169
168
  if (0 < this.open) {
170
- throw error_1.Fail.protocol('the document ended inside a container');
169
+ throw shared_1.Fail.protocol('the document ended inside a container');
171
170
  }
172
171
  if (!this.rootDone) {
173
- throw error_1.Fail.protocol('the document ended before its root value');
172
+ throw shared_1.Fail.protocol('the document ended before its root value');
174
173
  }
175
174
  this.isEnded = true;
176
175
  this.begun.length = 0;
@@ -191,7 +190,7 @@ class Matcher {
191
190
  let base;
192
191
  if (0 === this.open) {
193
192
  if (this.rootDone)
194
- throw error_1.Fail.protocol('a second root value arrived');
193
+ throw shared_1.Fail.protocol('a second root value arrived');
195
194
  this.nodeStack.length = 0;
196
195
  this.nodeStack.push(ROOT);
197
196
  base = 0;
@@ -199,7 +198,7 @@ class Matcher {
199
198
  else {
200
199
  const level = this.levels[this.open - 1];
201
200
  if (!level.array && !level.inValue) {
202
- throw error_1.Fail.protocol('a value arrived inside an object without a key');
201
+ throw shared_1.Fail.protocol('a value arrived inside an object without a key');
203
202
  }
204
203
  const index = level.started;
205
204
  level.started++;
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../src/matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../src/matcher.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import { AbortFlag, Limits, Metrics } from './limits';
2
- import { Flow, Sink } from './sink';
1
+ import { AbortFlag, Flow, Limits, Metrics, Sink } from '@tabnas/alchemy/shared';
3
2
  import { Source, SourceMode } from './source';
4
3
  export declare class ParserSource implements Source {
5
4
  private parser;
@@ -31,11 +31,9 @@ exports.ParserSource = void 0;
31
31
  // grammar's guard. An incremental parse that returned without one rule
32
32
  // event the adapter could turn into a value (YAML's empty document is
33
33
  // `null`) has its value walked instead.
34
+ const shared_1 = require("@tabnas/alchemy/shared");
34
35
  const capability_1 = require("./capability");
35
- const error_1 = require("./error");
36
- const event_1 = require("./event");
37
36
  const guard_1 = require("./guard");
38
- const limits_1 = require("./limits");
39
37
  const rule_events_1 = require("./rule-events");
40
38
  const source_1 = require("./source");
41
39
  // A tabnas parser applied to one text, as a source.
@@ -44,9 +42,9 @@ class ParserSource {
44
42
  // and fresh metrics; the builder methods change each.
45
43
  constructor(parser, text) {
46
44
  this.sourceMode = source_1.SourceMode.materialize();
47
- this.sourceLimits = limits_1.Limits.default();
48
- this.abortFlag = new limits_1.AbortFlag();
49
- this.sourceMetrics = new limits_1.Metrics();
45
+ this.sourceLimits = shared_1.Limits.default();
46
+ this.abortFlag = new shared_1.AbortFlag();
47
+ this.sourceMetrics = new shared_1.Metrics();
50
48
  this.grammarName = null;
51
49
  this.isUnverified = false;
52
50
  this.used = false;
@@ -90,11 +88,11 @@ class ParserSource {
90
88
  if (null !== name && (0, capability_1.isIncremental)(name))
91
89
  return null;
92
90
  if (null !== name) {
93
- return new error_1.Fail('STREAMABILITY_UNKNOWN', `grammar ${JSON.stringify(name)} is not in capability.incremental: the differential ` +
91
+ return new shared_1.Fail('STREAMABILITY_UNKNOWN', `grammar ${JSON.stringify(name)} is not in capability.incremental: the differential ` +
94
92
  'suite has not verified that its rule events stream as the walk does; run it with ' +
95
93
  'SourceMode.materialize');
96
94
  }
97
- return new error_1.Fail('STREAMABILITY_UNKNOWN', "SourceMode.incremental needs the grammar's name (ParserSource.grammar) to check " +
95
+ return new shared_1.Fail('STREAMABILITY_UNKNOWN', "SourceMode.incremental needs the grammar's name (ParserSource.grammar) to check " +
98
96
  'capability.incremental; without one, run SourceMode.materialize');
99
97
  }
100
98
  // Run in the configured mode.
@@ -108,7 +106,7 @@ class ParserSource {
108
106
  // what pruning left in the tree, and nothing else should read it.
109
107
  runWithValue(sink) {
110
108
  if (this.used) {
111
- throw new error_1.Fail('STREAM_REUSED', 'a ParserSource runs once: its parser carries the run\'s subscriber and budget; ' +
109
+ throw new shared_1.Fail('STREAM_REUSED', 'a ParserSource runs once: its parser carries the run\'s subscriber and budget; ' +
112
110
  'make a new source, with a new parser, for another run');
113
111
  }
114
112
  this.used = true;
@@ -141,11 +139,11 @@ function materialize(parser, text, abort, guarded) {
141
139
  }
142
140
  let flow = (0, source_1.walkValue)(value, guarded);
143
141
  if ('continue' === flow)
144
- flow = guarded.event(event_1.Ev.end);
142
+ flow = guarded.event(shared_1.Ev.end);
145
143
  return { flow, value };
146
144
  }
147
145
  function incremental(parser, text, limits, abort, metrics, prune, sink) {
148
- const stop = new limits_1.AbortFlag();
146
+ const stop = new shared_1.AbortFlag();
149
147
  const adapter = new rule_events_1.Adapter(sink, limits, abort, metrics, prune, stop);
150
148
  (0, rule_events_1.prepare)(parser, () => !abort.isAborted() && !stop.isAborted(), (rule, done) => adapter.onDone(rule, done));
151
149
  let parsed;
@@ -159,12 +157,12 @@ function incremental(parser, text, limits, abort, metrics, prune, sink) {
159
157
  try {
160
158
  if ('running' === adapter.status.type) {
161
159
  if (parsed.ok && adapter.complete()) {
162
- outcome = { flow: adapter.send(event_1.Ev.end) };
160
+ outcome = { flow: adapter.send(shared_1.Ev.end) };
163
161
  }
164
162
  else if (parsed.ok && adapter.idle()) {
165
163
  let flow = adapter.walkWhole(parsed.value);
166
164
  if ('continue' === flow)
167
- flow = adapter.send(event_1.Ev.end);
165
+ flow = adapter.send(shared_1.Ev.end);
168
166
  outcome = { flow };
169
167
  }
170
168
  else if (parsed.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"parser-source.js","sourceRoot":"","sources":["../src/parser-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser-source.js","sourceRoot":"","sources":["../src/parser-source.ts"],"names":[],"mappings":"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"}
package/dist/route.d.ts CHANGED
@@ -1,35 +1,4 @@
1
- import { Datum, Duplicates } from './datum';
2
- import { JsonEvent } from './event';
3
- import { Limits, Metrics } from './limits';
4
- import { CaptureId } from './matcher';
5
- import { Path, Selector } from './selector';
6
- import { Flow, Sink } from './sink';
7
- export type CaptureMode = 'materialize' | 'observe';
8
- export type Budget = {
9
- bytes: number;
10
- name: string;
11
- };
12
- export declare class CaptureSpec {
13
- readonly tag: string;
14
- readonly selector: Selector;
15
- readonly mode: CaptureMode;
16
- budget: Budget | null;
17
- constructor(tag: string, selector: Selector, mode: CaptureMode);
18
- static materialize(tag: string, selector: Selector): CaptureSpec;
19
- static observe(tag: string, selector: Selector): CaptureSpec;
20
- withBudget(bytes: number, name: string): CaptureSpec;
21
- }
22
- export type Selected = {
23
- id: CaptureId;
24
- tag: string;
25
- path: Path;
26
- value: Datum | null;
27
- };
28
- export interface RouteSink {
29
- began?(id: CaptureId, tag: string): void;
30
- selected(selected: Selected): Flow;
31
- end(): Flow;
32
- }
1
+ import { CaptureSpec, Duplicates, Flow, JsonEvent, Limits, Metrics, RouteSink, Selected, Sink } from '@tabnas/alchemy/shared';
33
2
  export declare class SelectedRecorder implements RouteSink {
34
3
  readonly selections: Selected[];
35
4
  ended: boolean;
package/dist/route.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* Copyright (c) 2026 tabnas, MIT License */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Router = exports.FnRoute = exports.SelectedRecorder = exports.CaptureSpec = void 0;
4
+ exports.Router = exports.FnRoute = exports.SelectedRecorder = void 0;
5
5
  // Captures: recognize selected scopes and deliver them, complete, in
6
6
  // source order.
7
7
  //
@@ -16,32 +16,8 @@ exports.Router = exports.FnRoute = exports.SelectedRecorder = exports.CaptureSpe
16
16
  // conservatively, with `Selector.mayOverlap`, and again at run time so a
17
17
  // stream the check could not foresee still fails rather than mixing two
18
18
  // values.
19
- const datum_1 = require("./datum");
20
- const error_1 = require("./error");
19
+ const shared_1 = require("@tabnas/alchemy/shared");
21
20
  const matcher_1 = require("./matcher");
22
- // One capture: a tag for the consumer, the selector to match, the mode,
23
- // and for a `materialize` capture an optional budget (else the router's
24
- // `max_capture_bytes`).
25
- class CaptureSpec {
26
- constructor(tag, selector, mode) {
27
- this.budget = null;
28
- this.tag = tag;
29
- this.selector = selector;
30
- this.mode = mode;
31
- }
32
- static materialize(tag, selector) {
33
- return new CaptureSpec(tag, selector, 'materialize');
34
- }
35
- static observe(tag, selector) {
36
- return new CaptureSpec(tag, selector, 'observe');
37
- }
38
- // This spec with its own budget, whose failure names `name`.
39
- withBudget(bytes, name) {
40
- this.budget = { bytes, name };
41
- return this;
42
- }
43
- }
44
- exports.CaptureSpec = CaptureSpec;
45
21
  // A route sink that records every match.
46
22
  class SelectedRecorder {
47
23
  constructor() {
@@ -86,7 +62,7 @@ class Router {
86
62
  const b = specs[j];
87
63
  const bothObserve = 'observe' === a.mode && 'observe' === b.mode;
88
64
  if (!bothObserve && a.selector.mayOverlap(b.selector)) {
89
- throw new error_1.Fail('CAPTURE_OVERLAP_UNSUPPORTED', `captures ${JSON.stringify(a.tag)} (${a.selector}) and ` +
65
+ throw new shared_1.Fail('CAPTURE_OVERLAP_UNSUPPORTED', `captures ${JSON.stringify(a.tag)} (${a.selector}) and ` +
90
66
  `${JSON.stringify(b.tag)} (${b.selector}) may select overlapping scopes; ` +
91
67
  `only observed captures may overlap`);
92
68
  }
@@ -112,7 +88,7 @@ class Router {
112
88
  this.downstream.began(id, spec.tag);
113
89
  }
114
90
  catch (err) {
115
- if (err instanceof error_1.Fail && null == err.path) {
91
+ if (err instanceof shared_1.Fail && null == err.path) {
116
92
  err.path = this.matcher.path(depth).toString();
117
93
  }
118
94
  throw err;
@@ -124,13 +100,13 @@ class Router {
124
100
  }
125
101
  if (null !== this.active) {
126
102
  const path = this.matcher.path(depth).toString();
127
- throw new error_1.Fail('CAPTURE_OVERLAP_UNSUPPORTED', `capture ${JSON.stringify(spec.tag)} began at ${path} while capture ` +
103
+ throw new shared_1.Fail('CAPTURE_OVERLAP_UNSUPPORTED', `capture ${JSON.stringify(spec.tag)} began at ${path} while capture ` +
128
104
  `${JSON.stringify(this.specs[this.active.id].tag)} was still being materialized`).atPath(path);
129
105
  }
130
106
  const budget = spec.budget ?? { bytes: this.maxCaptureBytes, name: 'max_capture_bytes' };
131
107
  this.active = {
132
108
  id,
133
- builder: new datum_1.DatumBuilder(budget.bytes, budget.name, this.duplicates),
109
+ builder: new shared_1.DatumBuilder(budget.bytes, budget.name, this.duplicates),
134
110
  depth,
135
111
  };
136
112
  }
@@ -141,7 +117,7 @@ class Router {
141
117
  const hit = this.matcher.event(ev);
142
118
  if ('start' === hit.kind && hit.depth + 1 > this.maxDepth) {
143
119
  const path = this.matcher.path(hit.depth).toString();
144
- throw error_1.Fail.limit('max_depth', this.maxDepth, `a container at ${path} is nested deeper than ${this.maxDepth}`).atPath(path);
120
+ throw shared_1.Fail.limit('max_depth', this.maxDepth, `a container at ${path} is nested deeper than ${this.maxDepth}`).atPath(path);
145
121
  }
146
122
  for (let k = 0; k < hit.begins; k++) {
147
123
  this.begin(this.matcher.begins()[k], hit.depth);
@@ -154,7 +130,7 @@ class Router {
154
130
  catch (err) {
155
131
  // The builder reports no position; the value's path is spelled
156
132
  // here, only now that something went wrong.
157
- if (err instanceof error_1.Fail)
133
+ if (err instanceof shared_1.Fail)
158
134
  err.atPath(this.matcher.path(active.depth).toString());
159
135
  throw err;
160
136
  }
package/dist/route.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Routers } from '@tabnas/alchemy/shared';
2
+ export declare const routers: Routers;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /* Copyright (c) 2026 tabnas, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.routers = void 0;
5
+ const guard_1 = require("./guard");
6
+ const route_1 = require("./route");
7
+ const scan_1 = require("./scan");
8
+ const table_from_json_1 = require("./table-from-json");
9
+ // Each method constructs the stage it names with the same parameters.
10
+ exports.routers = Object.freeze({
11
+ router(specs, limits, duplicates, metrics, downstream) {
12
+ return new route_1.Router(specs, limits, duplicates, metrics, downstream);
13
+ },
14
+ tableFromJson(binding, limits, duplicates, metrics, sink) {
15
+ return new table_from_json_1.TableFromJson(binding, limits, duplicates, metrics, sink);
16
+ },
17
+ scanEmit(initial, step, finish, out) {
18
+ return new scan_1.ScanEmit(initial, step, finish, out);
19
+ },
20
+ guarded(inner, limits, abort, metrics) {
21
+ return new guard_1.Guarded(inner, limits, abort, metrics);
22
+ },
23
+ });
24
+ //# sourceMappingURL=routers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routers.js","sourceRoot":"","sources":["../src/routers.ts"],"names":[],"mappings":";AAAA,4CAA4C;;;AAwB5C,mCAAiC;AACjC,mCAAgC;AAChC,iCAAiC;AACjC,uDAAiD;AAEjD,sEAAsE;AACzD,QAAA,OAAO,GAAY,MAAM,CAAC,MAAM,CAAC;IAC5C,MAAM,CACJ,KAA6B,EAC7B,MAAc,EACd,UAAsB,EACtB,OAAgB,EAChB,UAAqB;QAErB,OAAO,IAAI,cAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IACnE,CAAC;IAED,aAAa,CACX,OAAqB,EACrB,MAAc,EACd,UAAsB,EACtB,OAAgB,EAChB,IAAe;QAEf,OAAO,IAAI,+BAAa,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACtE,CAAC;IAED,QAAQ,CACN,OAAU,EACV,IAA6C,EAC7C,MAAyB,EACzB,GAAwB;QAExB,OAAO,IAAI,eAAQ,CAAU,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1D,CAAC;IAED,OAAO,CAAC,KAAW,EAAE,MAAc,EAAE,KAAgB,EAAE,OAAgB;QACrE,OAAO,IAAI,eAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;CACF,CAAC,CAAA"}
@@ -1,8 +1,5 @@
1
- import { Fail } from './error';
2
- import { JsonEvent } from './event';
1
+ import { AbortFlag, Fail, Flow, JsonEvent, Limits, Metrics, Sink } from '@tabnas/alchemy/shared';
3
2
  import { Guarded } from './guard';
4
- import { AbortFlag, Limits, Metrics } from './limits';
5
- import { Flow, Sink } from './sink';
6
3
  import { Prune } from './source';
7
4
  export type Status = {
8
5
  type: 'running';