UNPKG

@naturalcycles/nodejs-lib

Version:
34 lines (33 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.readableForEachSync = exports.readableForEach = void 0; const js_lib_1 = require("@naturalcycles/js-lib"); const index_1 = require("../../index"); const transformMap_1 = require("../transform/transformMap"); /** * Convenience function to do `.forEach` over a Readable. * Typed! (unlike default Readable). * * @experimental */ async function readableForEach(readable, mapper, opt = {}) { await (0, index_1._pipeline)([ readable, (0, transformMap_1.transformMap)(mapper, { ...opt, predicate: js_lib_1._passNothingPredicate }), ]); } exports.readableForEach = readableForEach; /** * Convenience function to do `.forEach` over a Readable. * Typed! (unlike default Readable). * * @experimental */ async function readableForEachSync(readable, mapper) { // async iteration let index = 0; for await (const item of readable) { mapper(item, index++); } } exports.readableForEachSync = readableForEachSync;