UNPKG

@naturalcycles/nodejs-lib

Version:
30 lines (29 loc) 916 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.readableMap = void 0; const stream_1 = require("stream"); const js_lib_1 = require("@naturalcycles/js-lib"); function readableMap(readable, mapper) { let i = -1; // todo: check if we need to handle errors somehow specifically return readable.pipe(new stream_1.Transform({ objectMode: true, async transform(chunk, _enc, cb) { try { const r = await mapper(chunk, ++i); if (r === js_lib_1.SKIP) { cb(); } else { // _assert(r !== END, `readableMap END not supported`) cb(null, r); } } catch (err) { console.error(err); cb(err); } }, })); } exports.readableMap = readableMap;