1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.ndjsonStreamForEach = void 0;
|
4 | const fs = require("fs");
|
5 | const zlib_1 = require("zlib");
|
6 | const js_lib_1 = require("@naturalcycles/js-lib");
|
7 | const __1 = require("../..");
|
8 |
|
9 |
|
10 |
|
11 | async function ndjsonStreamForEach(mapper, opt) {
|
12 | (0, __1.requireFileToExist)(opt.inputFilePath);
|
13 | const transformUnzip = opt.inputFilePath.endsWith('.gz') ? [(0, zlib_1.createUnzip)()] : [];
|
14 | await (0, __1._pipeline)([
|
15 | fs.createReadStream(opt.inputFilePath),
|
16 | ...transformUnzip,
|
17 | (0, __1.transformSplit)(),
|
18 | (0, __1.transformJsonParse)(),
|
19 | (0, __1.transformMap)(mapper, {
|
20 | errorMode: js_lib_1.ErrorMode.THROW_AGGREGATED,
|
21 | ...opt,
|
22 | predicate: () => true,
|
23 | }),
|
24 | (0, __1.transformLogProgress)(opt),
|
25 | (0, __1.writableVoid)(),
|
26 | ]);
|
27 | }
|
28 | exports.ndjsonStreamForEach = ndjsonStreamForEach;
|