@tabnas/transduce 0.1.1 → 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.
- package/README.md +18 -0
- package/dist/guard.d.ts +1 -3
- package/dist/guard.js +8 -9
- package/dist/guard.js.map +1 -1
- package/dist/lines.d.ts +1 -2
- package/dist/lines.js +46 -89
- package/dist/lines.js.map +1 -1
- package/dist/matcher.d.ts +1 -3
- package/dist/matcher.js +12 -13
- package/dist/matcher.js.map +1 -1
- package/dist/parser-source.d.ts +1 -2
- package/dist/parser-source.js +11 -13
- package/dist/parser-source.js.map +1 -1
- package/dist/route.d.ts +1 -32
- package/dist/route.js +8 -32
- package/dist/route.js.map +1 -1
- package/dist/routers.d.ts +2 -0
- package/dist/routers.js +24 -0
- package/dist/routers.js.map +1 -0
- package/dist/rule-events.d.ts +1 -4
- package/dist/rule-events.js +40 -44
- package/dist/rule-events.js.map +1 -1
- package/dist/scan.d.ts +1 -10
- package/dist/scan.js +4 -17
- package/dist/scan.js.map +1 -1
- package/dist/source.d.ts +1 -4
- package/dist/source.js +20 -22
- package/dist/source.js.map +1 -1
- package/dist/table-from-json.d.ts +1 -5
- package/dist/table-from-json.js +25 -29
- package/dist/table-from-json.js.map +1 -1
- package/dist/transduce.d.ts +23 -19
- package/dist/transduce.js +66 -56
- package/dist/transduce.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -4
- package/src/guard.ts +10 -4
- package/src/lines.ts +45 -6
- package/src/matcher.ts +1 -6
- package/src/parser-source.ts +2 -4
- package/src/route.ts +18 -70
- package/src/routers.ts +64 -0
- package/src/rule-events.ts +17 -7
- package/src/scan.ts +1 -19
- package/src/source.ts +12 -6
- package/src/table-from-json.ts +20 -9
- package/src/transduce.ts +36 -19
- package/dist/datum.d.ts +0 -64
- package/dist/datum.js +0 -391
- package/dist/datum.js.map +0 -1
- package/dist/error.d.ts +0 -43
- package/dist/error.js +0 -169
- package/dist/error.js.map +0 -1
- package/dist/event.d.ts +0 -56
- package/dist/event.js +0 -101
- package/dist/event.js.map +0 -1
- package/dist/json.d.ts +0 -4
- package/dist/json.js +0 -92
- package/dist/json.js.map +0 -1
- package/dist/limits.d.ts +0 -36
- package/dist/limits.js +0 -133
- package/dist/limits.js.map +0 -1
- package/dist/selector.d.ts +0 -40
- package/dist/selector.js +0 -154
- package/dist/selector.js.map +0 -1
- package/dist/sink.d.ts +0 -29
- package/dist/sink.js +0 -184
- package/dist/sink.js.map +0 -1
- package/dist/table.d.ts +0 -81
- package/dist/table.js +0 -141
- package/dist/table.js.map +0 -1
- package/dist/value.d.ts +0 -16
- package/dist/value.js +0 -96
- package/dist/value.js.map +0 -1
- package/src/datum.ts +0 -407
- package/src/error.ts +0 -198
- package/src/event.ts +0 -134
- package/src/json.ts +0 -82
- package/src/limits.ts +0 -165
- package/src/selector.ts +0 -191
- package/src/sink.ts +0 -199
- package/src/table.ts +0 -213
- package/src/value.ts +0 -93
package/README.md
CHANGED
|
@@ -7,6 +7,24 @@ transducer, including event sources, routing, captures, and protocol checks.
|
|
|
7
7
|
npm install @tabnas/transduce
|
|
8
8
|
```
|
|
9
9
|
|
|
10
|
+
`LinesSource` parses JSON Lines with `@tabnas/json` and CSV with
|
|
11
|
+
`@tabnas/csv`. Both are optional peers, loaded when a line source starts,
|
|
12
|
+
so install the ones your line sources read:
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
npm install @tabnas/transduce @tabnas/json @tabnas/csv
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
A line source whose grammar is not installed fails with a `TypeError` that
|
|
19
|
+
names the package.
|
|
20
|
+
|
|
21
|
+
The protocol types (`JsonEvent`, `Sink`, `TableEvent`, `Selector`, `Datum`,
|
|
22
|
+
`Fail` and its codes, `Limits`, `Metrics` and the captures' types) are
|
|
23
|
+
`@tabnas/alchemy`'s shared types, imported from `@tabnas/alchemy/shared`, a
|
|
24
|
+
peer, and re-exported here under the same names. `routers` is this
|
|
25
|
+
package's stages as alchemy's `Routers`, which a host passes to alchemy's
|
|
26
|
+
`compile` with `@tabnas/render`'s `renderers`.
|
|
27
|
+
|
|
10
28
|
See the [project README](https://github.com/tabnas/transduce#readme) for the
|
|
11
29
|
architecture, API examples, limits, and protocol documentation.
|
|
12
30
|
|
package/dist/guard.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { JsonEvent } from '
|
|
2
|
-
import { AbortFlag, Limits, Metrics } from './limits';
|
|
3
|
-
import { Flow, Sink } from './sink';
|
|
1
|
+
import { AbortFlag, Flow, JsonEvent, Limits, Metrics, Sink } from '@tabnas/alchemy/shared';
|
|
4
2
|
export declare class Guarded<S extends Sink> implements Sink {
|
|
5
3
|
readonly inner: S;
|
|
6
4
|
private maxDepth;
|
package/dist/guard.js
CHANGED
|
@@ -10,8 +10,7 @@ exports.Guarded = void 0;
|
|
|
10
10
|
// over a parsed value; the abort flag is polled per event so a walk stops
|
|
11
11
|
// as promptly as a parse does; and the source metrics (events, keys,
|
|
12
12
|
// scalars) are counted locally and flushed in one step.
|
|
13
|
-
const
|
|
14
|
-
const limits_1 = require("./limits");
|
|
13
|
+
const shared_1 = require("@tabnas/alchemy/shared");
|
|
15
14
|
// A sink wrapper that enforces the source limits and counts.
|
|
16
15
|
class Guarded {
|
|
17
16
|
constructor(inner, limits, abort, metrics) {
|
|
@@ -42,19 +41,19 @@ class Guarded {
|
|
|
42
41
|
scalar(bytes) {
|
|
43
42
|
this.scalars++;
|
|
44
43
|
if (bytes > this.maxScalarBytes) {
|
|
45
|
-
throw
|
|
44
|
+
throw shared_1.Fail.limit('max_scalar_bytes', this.maxScalarBytes, `a scalar of ${bytes} bytes is larger than ${this.maxScalarBytes}`);
|
|
46
45
|
}
|
|
47
46
|
}
|
|
48
47
|
event(ev) {
|
|
49
48
|
if (this.abort.isAborted())
|
|
50
|
-
throw
|
|
49
|
+
throw shared_1.Fail.aborted();
|
|
51
50
|
this.events++;
|
|
52
51
|
switch (ev.type) {
|
|
53
52
|
case 'object_start':
|
|
54
53
|
case 'array_start':
|
|
55
54
|
this.open++;
|
|
56
55
|
if (this.open > this.maxDepth) {
|
|
57
|
-
throw
|
|
56
|
+
throw shared_1.Fail.limit('max_depth', this.maxDepth, `a container is nested deeper than ${this.maxDepth}`);
|
|
58
57
|
}
|
|
59
58
|
break;
|
|
60
59
|
case 'object_end':
|
|
@@ -63,17 +62,17 @@ class Guarded {
|
|
|
63
62
|
break;
|
|
64
63
|
case 'key': {
|
|
65
64
|
this.keys++;
|
|
66
|
-
const n = (0,
|
|
65
|
+
const n = (0, shared_1.utf8Bytes)(ev.key);
|
|
67
66
|
if (n > this.maxKeyBytes) {
|
|
68
|
-
throw
|
|
67
|
+
throw shared_1.Fail.limit('max_key_bytes', this.maxKeyBytes, `a key of ${n} bytes is longer than ${this.maxKeyBytes}`);
|
|
69
68
|
}
|
|
70
69
|
break;
|
|
71
70
|
}
|
|
72
71
|
case 'string':
|
|
73
|
-
this.scalar((0,
|
|
72
|
+
this.scalar((0, shared_1.utf8Bytes)(ev.value));
|
|
74
73
|
break;
|
|
75
74
|
case 'number':
|
|
76
|
-
this.scalar(null != ev.lexeme ? (0,
|
|
75
|
+
this.scalar(null != ev.lexeme ? (0, shared_1.utf8Bytes)(ev.lexeme) : 0);
|
|
77
76
|
break;
|
|
78
77
|
case 'null':
|
|
79
78
|
case 'bool':
|
package/dist/guard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guard.js","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":";AAAA,4CAA4C;;;AAE5C,kEAAkE;AAClE,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,yEAAyE;AACzE,0EAA0E;AAC1E,qEAAqE;AACrE,wDAAwD;AAExD,
|
|
1
|
+
{"version":3,"file":"guard.js","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"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"}
|
package/dist/lines.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { AbortFlag, Limits, Metrics } from '
|
|
2
|
-
import { Flow, Sink } from './sink';
|
|
1
|
+
import { AbortFlag, Flow, Limits, Metrics, Sink } from '@tabnas/alchemy/shared';
|
|
3
2
|
import { Source } from './source';
|
|
4
3
|
export declare const DEFAULT_CHUNK_BYTES: number;
|
|
5
4
|
export type LineFormat = {
|
package/dist/lines.js
CHANGED
|
@@ -2,71 +2,28 @@
|
|
|
2
2
|
/* Copyright (c) 2026 tabnas, MIT License */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.LinesSource = exports.LineFormat = exports.DEFAULT_CHUNK_BYTES = void 0;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
//
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// holding a form feed or a no-break space fails as the grammar fails it.
|
|
27
|
-
// On the incremental path (`runIncremental`, or a writer asked for it) the
|
|
28
|
-
// record goes through the rule-event adapter, reset per record, so numbers
|
|
29
|
-
// keep their lexemes; on the walking path (`run`) the value is walked and
|
|
30
|
-
// numbers carry none. A record that does not parse is `INPUT_INVALID` with
|
|
31
|
-
// its line's number as the row.
|
|
32
|
-
//
|
|
33
|
-
// CSV: the input is cut into chunks of whole records. A quote opens a
|
|
34
|
-
// quoted field only where the lexer starts a token (a record's start, after
|
|
35
|
-
// the field separator or a space), so a quote inside a field is that
|
|
36
|
-
// field's text; the configured quote reads `""` as one quote; a quoted
|
|
37
|
-
// field, a backtick string and a block comment may span lines; and a line
|
|
38
|
-
// character anywhere else, a lone `\r` as much as `\n`, ends a record. The
|
|
39
|
-
// header record, the first record the grammar reads (a blank or comment
|
|
40
|
-
// line before it is none), is kept and prepended to every chunk after the
|
|
41
|
-
// first when `header` is on, so the reused `@tabnas/csv` parser names each
|
|
42
|
-
// record's fields as the whole input would. A chunk closes at the first
|
|
43
|
-
// record boundary at or past `DEFAULT_CHUNK_BYTES` (or the configured
|
|
44
|
-
// size), so one chunk, and never a fraction of a record, is what a parse
|
|
45
|
-
// holds. An input that ends inside a quoted field fails with the grammar's
|
|
46
|
-
// `unterminated_string`, in the header as anywhere. CSV is walked on both
|
|
47
|
-
// paths.
|
|
48
|
-
//
|
|
49
|
-
// The input is read a piece at a time, and a piece ends just past each of
|
|
50
|
-
// the grammar's line endings: one of its line characters (a lone `\r` or a
|
|
51
|
-
// configured separator as much as `\n`), a `\r\n`, or under `record.empty`
|
|
52
|
-
// the whole line token the lexer reads. A line character inside one of the
|
|
53
|
-
// grammar's fixed tokens (a field separator such as `"\n~"`) is the token's
|
|
54
|
-
// and ends no piece. So a record never waits for a `\n` to end, and a chunk
|
|
55
|
-
// can close after any record, however many of them one `\n`-terminated line
|
|
56
|
-
// holds. Where the input so far ends inside what may be one line ending,
|
|
57
|
-
// the piece waits for the next chunk of it.
|
|
58
|
-
//
|
|
59
|
-
// Every count is in UTF-8 bytes of the input as it arrives. A single
|
|
60
|
-
// record larger than `max_record_bytes` (a record with its line ending; for
|
|
61
|
-
// the CSV header, everything up to its end) fails with that limit's name
|
|
62
|
-
// the moment it passes the limit, whatever its length, rather than growing
|
|
63
|
-
// a chunk without bound.
|
|
64
|
-
const csv_1 = require("@tabnas/csv");
|
|
65
|
-
const json_1 = require("@tabnas/json");
|
|
66
|
-
const error_1 = require("./error");
|
|
67
|
-
const event_1 = require("./event");
|
|
5
|
+
function grammar(name, format, load) {
|
|
6
|
+
try {
|
|
7
|
+
return load();
|
|
8
|
+
}
|
|
9
|
+
catch (error) {
|
|
10
|
+
// Only the grammar itself missing, not something it requires.
|
|
11
|
+
if ('MODULE_NOT_FOUND' === error?.code &&
|
|
12
|
+
String(error.message).startsWith(`Cannot find module '${name}'`)) {
|
|
13
|
+
throw new TypeError(`LinesSource: ${format} needs ${name}, an optional peer of ` +
|
|
14
|
+
`@tabnas/transduce; install it alongside`);
|
|
15
|
+
}
|
|
16
|
+
throw error;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function makeCsv(options) {
|
|
20
|
+
return grammar('@tabnas/csv', 'CSV', () => require('@tabnas/csv')).make(options);
|
|
21
|
+
}
|
|
22
|
+
function makeJson() {
|
|
23
|
+
return grammar('@tabnas/json', 'JSON Lines', () => require('@tabnas/json')).make();
|
|
24
|
+
}
|
|
25
|
+
const shared_1 = require("@tabnas/alchemy/shared");
|
|
68
26
|
const guard_1 = require("./guard");
|
|
69
|
-
const limits_1 = require("./limits");
|
|
70
27
|
const rule_events_1 = require("./rule-events");
|
|
71
28
|
const source_1 = require("./source");
|
|
72
29
|
// How much of the input one CSV parse holds, at most one record over.
|
|
@@ -85,9 +42,9 @@ exports.LineFormat = Object.freeze({
|
|
|
85
42
|
class LinesSource {
|
|
86
43
|
// `input` may be `null` for a source used only through `writer`.
|
|
87
44
|
constructor(input, format) {
|
|
88
|
-
this.sourceLimits =
|
|
89
|
-
this.abortFlag = new
|
|
90
|
-
this.sourceMetrics = new
|
|
45
|
+
this.sourceLimits = shared_1.Limits.default();
|
|
46
|
+
this.abortFlag = new shared_1.AbortFlag();
|
|
47
|
+
this.sourceMetrics = new shared_1.Metrics();
|
|
91
48
|
this.chunkSize = exports.DEFAULT_CHUNK_BYTES;
|
|
92
49
|
this.consumed = false;
|
|
93
50
|
this.input = input;
|
|
@@ -122,7 +79,7 @@ class LinesSource {
|
|
|
122
79
|
}
|
|
123
80
|
drive(writer) {
|
|
124
81
|
if (this.consumed) {
|
|
125
|
-
throw new
|
|
82
|
+
throw new shared_1.Fail('STREAM_REUSED', 'a LinesSource reads its input once');
|
|
126
83
|
}
|
|
127
84
|
if (null === this.input) {
|
|
128
85
|
throw new TypeError('LinesSource: no input; use writer() to push chunks');
|
|
@@ -170,7 +127,7 @@ class Writer {
|
|
|
170
127
|
if ('failed' === this.state)
|
|
171
128
|
throw this.failure;
|
|
172
129
|
if ('ended' === this.state)
|
|
173
|
-
throw
|
|
130
|
+
throw shared_1.Fail.protocol('the line source has already ended');
|
|
174
131
|
try {
|
|
175
132
|
if (!this.started) {
|
|
176
133
|
this.started = true;
|
|
@@ -249,7 +206,7 @@ class PieceSplitter {
|
|
|
249
206
|
// when it takes more, given the row it starts on: the bound is the
|
|
250
207
|
// record's, so the format that reads the records sets both.
|
|
251
208
|
this.budget = () => Infinity;
|
|
252
|
-
this.over = (row) =>
|
|
209
|
+
this.over = (row) => shared_1.Fail.input(`line ${row} is too long`).at(row, 1);
|
|
253
210
|
// The engine keeps a character outside the basic plane as its two
|
|
254
211
|
// UTF-16 halves, each a line character; the input holds it as one
|
|
255
212
|
// four-byte form, which ends a piece when both halves are line
|
|
@@ -427,7 +384,7 @@ class PieceSplitter {
|
|
|
427
384
|
if (0 <= bad) {
|
|
428
385
|
const valid = DECODER.decode(raw.subarray(0, bad));
|
|
429
386
|
const [badRow, offset] = advance(this.rows, this.row, this.offset, valid);
|
|
430
|
-
throw
|
|
387
|
+
throw shared_1.Fail.input(`line ${badRow} is not UTF-8 from its byte ${offset + 1}`).at(badRow, offset + 1);
|
|
431
388
|
}
|
|
432
389
|
const text = DECODER.decode(raw);
|
|
433
390
|
[this.row, this.offset] = advance(this.rows, this.row, this.offset, text);
|
|
@@ -536,14 +493,14 @@ function lineFailure(error, line, start, abort) {
|
|
|
536
493
|
}
|
|
537
494
|
else {
|
|
538
495
|
fail.row = line;
|
|
539
|
-
fail.col = (0,
|
|
496
|
+
fail.col = (0, shared_1.enginePosition)(error)?.col ?? 0;
|
|
540
497
|
}
|
|
541
498
|
return fail;
|
|
542
499
|
}
|
|
543
500
|
// A failure while the record or chunk that starts on row `start` was read:
|
|
544
501
|
// an abort that names no row names that one.
|
|
545
502
|
function atRecord(error, start) {
|
|
546
|
-
if (error instanceof
|
|
503
|
+
if (error instanceof shared_1.Fail && 'ABORTED' === error.code && undefined === error.row) {
|
|
547
504
|
error.row = start;
|
|
548
505
|
}
|
|
549
506
|
return error;
|
|
@@ -579,7 +536,7 @@ class JsonRecords {
|
|
|
579
536
|
splitter.budget = () => this.maxBytes - this.bytes;
|
|
580
537
|
splitter.over = (row) => {
|
|
581
538
|
const first = this.start || row;
|
|
582
|
-
return
|
|
539
|
+
return shared_1.Fail.limit('max_record_bytes', this.maxBytes, `line ${first} is longer than ${this.maxBytes} bytes`).at(first, 1);
|
|
583
540
|
};
|
|
584
541
|
return splitter;
|
|
585
542
|
}
|
|
@@ -639,7 +596,7 @@ class JsonlWalk {
|
|
|
639
596
|
constructor(sink, options) {
|
|
640
597
|
this.guarded = new guard_1.Guarded(sink, options.limits, options.abort, options.metrics);
|
|
641
598
|
this.abort = options.abort;
|
|
642
|
-
this.parser = (
|
|
599
|
+
this.parser = makeJson();
|
|
643
600
|
const abort = options.abort;
|
|
644
601
|
(0, rule_events_1.prepare)(this.parser, () => !abort.isAborted());
|
|
645
602
|
this.records = new JsonRecords(this.parser, options.limits.max_record_bytes);
|
|
@@ -647,7 +604,7 @@ class JsonlWalk {
|
|
|
647
604
|
this.onRecord = (row, text) => this.record(row, text);
|
|
648
605
|
}
|
|
649
606
|
begin() {
|
|
650
|
-
return this.guarded.event(
|
|
607
|
+
return this.guarded.event(shared_1.Ev.arrayStart);
|
|
651
608
|
}
|
|
652
609
|
piece(row, text, bytes) {
|
|
653
610
|
return this.records.piece(row, text, bytes, this.onRecord);
|
|
@@ -670,9 +627,9 @@ class JsonlWalk {
|
|
|
670
627
|
finish() {
|
|
671
628
|
if ('stop' === this.records.end(this.onRecord))
|
|
672
629
|
return 'stop';
|
|
673
|
-
if ('stop' === this.guarded.event(
|
|
630
|
+
if ('stop' === this.guarded.event(shared_1.Ev.arrayEnd))
|
|
674
631
|
return 'stop';
|
|
675
|
-
return this.guarded.event(
|
|
632
|
+
return this.guarded.event(shared_1.Ev.end);
|
|
676
633
|
}
|
|
677
634
|
close() {
|
|
678
635
|
this.guarded.flush();
|
|
@@ -684,12 +641,12 @@ class JsonlIncremental {
|
|
|
684
641
|
constructor(sink, options) {
|
|
685
642
|
// The record being read, which an abort the adapter raised names.
|
|
686
643
|
this.reading = 0;
|
|
687
|
-
const stop = new
|
|
644
|
+
const stop = new shared_1.AbortFlag();
|
|
688
645
|
const abort = options.abort;
|
|
689
646
|
this.abort = abort;
|
|
690
647
|
const adapter = new rule_events_1.Adapter(sink, options.limits, abort, options.metrics, source_1.Prune.never(), stop);
|
|
691
648
|
this.adapter = adapter;
|
|
692
|
-
this.parser = (
|
|
649
|
+
this.parser = makeJson();
|
|
693
650
|
(0, rule_events_1.prepare)(this.parser, () => !abort.isAborted() && !stop.isAborted(), (rule, done) => adapter.onDone(rule, done));
|
|
694
651
|
this.records = new JsonRecords(this.parser, options.limits.max_record_bytes);
|
|
695
652
|
this.splitter = this.records.splitter();
|
|
@@ -706,7 +663,7 @@ class JsonlIncremental {
|
|
|
706
663
|
return null;
|
|
707
664
|
}
|
|
708
665
|
begin() {
|
|
709
|
-
return this.adapter.send(
|
|
666
|
+
return this.adapter.send(shared_1.Ev.arrayStart);
|
|
710
667
|
}
|
|
711
668
|
piece(row, text, bytes) {
|
|
712
669
|
return this.records.piece(row, text, bytes, this.onRecord);
|
|
@@ -751,9 +708,9 @@ class JsonlIncremental {
|
|
|
751
708
|
const status = this.status();
|
|
752
709
|
if (null !== status)
|
|
753
710
|
return status;
|
|
754
|
-
if ('stop' === this.adapter.send(
|
|
711
|
+
if ('stop' === this.adapter.send(shared_1.Ev.arrayEnd))
|
|
755
712
|
return 'stop';
|
|
756
|
-
return this.adapter.send(
|
|
713
|
+
return this.adapter.send(shared_1.Ev.end);
|
|
757
714
|
}
|
|
758
715
|
close() {
|
|
759
716
|
this.adapter.sink.flush();
|
|
@@ -1024,7 +981,7 @@ class CsvWalk {
|
|
|
1024
981
|
this.maxRecordBytes = options.limits.max_record_bytes;
|
|
1025
982
|
this.chunkBytes = options.chunkBytes;
|
|
1026
983
|
this.wantHeader = header;
|
|
1027
|
-
this.parser = (
|
|
984
|
+
this.parser = makeCsv({ ...grammar, header });
|
|
1028
985
|
this.recordEmpty = !!this.parser.options.plugin?.csv?.record?.empty;
|
|
1029
986
|
const abort = options.abort;
|
|
1030
987
|
(0, rule_events_1.prepare)(this.parser, () => !abort.isAborted());
|
|
@@ -1034,12 +991,12 @@ class CsvWalk {
|
|
|
1034
991
|
splitter.budget = () => this.maxRecordBytes - (this.open ? this.bytes - this.recordAt : 0);
|
|
1035
992
|
splitter.over = (row) => {
|
|
1036
993
|
const first = (this.open && this.recordRow) || row;
|
|
1037
|
-
return
|
|
994
|
+
return shared_1.Fail.limit('max_record_bytes', this.maxRecordBytes, `the record starting at line ${first} is longer than ${this.maxRecordBytes} bytes`).at(first, 1);
|
|
1038
995
|
};
|
|
1039
996
|
this.splitter = splitter;
|
|
1040
997
|
}
|
|
1041
998
|
begin() {
|
|
1042
|
-
return this.guarded.event(
|
|
999
|
+
return this.guarded.event(shared_1.Ev.arrayStart);
|
|
1043
1000
|
}
|
|
1044
1001
|
// Opens a chunk: after the first, the header goes in front of it.
|
|
1045
1002
|
openChunk() {
|
|
@@ -1106,7 +1063,7 @@ class CsvWalk {
|
|
|
1106
1063
|
value = this.parser.parse(text);
|
|
1107
1064
|
}
|
|
1108
1065
|
catch (err) {
|
|
1109
|
-
const pos = (0,
|
|
1066
|
+
const pos = (0, shared_1.enginePosition)(err);
|
|
1110
1067
|
const rowInChunk = Math.max(pos?.row ?? 0, 1);
|
|
1111
1068
|
// An error in the prepended header itself is the file's first line.
|
|
1112
1069
|
const line = rowInChunk > prefixLines ? firstLine + rowInChunk - prefixLines - 1 : 1;
|
|
@@ -1128,9 +1085,9 @@ class CsvWalk {
|
|
|
1128
1085
|
finish() {
|
|
1129
1086
|
if ('stop' === this.flush())
|
|
1130
1087
|
return 'stop';
|
|
1131
|
-
if ('stop' === this.guarded.event(
|
|
1088
|
+
if ('stop' === this.guarded.event(shared_1.Ev.arrayEnd))
|
|
1132
1089
|
return 'stop';
|
|
1133
|
-
return this.guarded.event(
|
|
1090
|
+
return this.guarded.event(shared_1.Ev.end);
|
|
1134
1091
|
}
|
|
1135
1092
|
close() {
|
|
1136
1093
|
this.guarded.flush();
|
package/dist/lines.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lines.js","sourceRoot":"","sources":["../src/lines.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lines.js","sourceRoot":"","sources":["../src/lines.ts"],"names":[],"mappings":"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"}
|
package/dist/matcher.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { JsonEvent } from '
|
|
2
|
-
import { Path, Selector } from './selector';
|
|
3
|
-
export type CaptureId = number;
|
|
1
|
+
import { CaptureId, JsonEvent, Path, Selector } from '@tabnas/alchemy/shared';
|
|
4
2
|
export type HitKind = 'key' | 'start' | 'scalar' | 'close' | 'end';
|
|
5
3
|
export type Hit = {
|
|
6
4
|
kind: HitKind;
|