@codibre/fluent-iterable
Version:
Provides LINQ-like fluent api operations for iterables and async iterables (ES2018+).
12 lines (11 loc) • 530 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.joinRecipe = joinRecipe;
const utils_1 = require("../utils");
const prepare_1 = require("../types-internal/prepare");
function joinRecipe({ reduce, resolver }) {
return function (separator, baseMapper = utils_1.identity) {
const mapper = (0, prepare_1.prepare)(baseMapper);
return reduce.call(this, (current, next) => resolver(mapper(next), (nextStr) => current ? `${current}${separator}${nextStr}` : nextStr), '');
};
}