pnpm
Version:
Fast, disk space efficient package manager
46 lines (37 loc) • 655 B
JavaScript
;
var from = require('from2');
module.exports = function (x) {
if (Array.isArray(x)) {
x = x.slice();
}
return from(function (size, cb) {
if (x.length === 0) {
cb(null, null);
return;
}
if (Array.isArray(x)) {
cb(null, x.shift());
return;
}
var chunk = x.slice(0, size);
x = x.slice(size);
cb(null, chunk);
});
};
module.exports.obj = function (x) {
if (Array.isArray(x)) {
x = x.slice();
}
return from.obj(function (size, cb) {
if (Array.isArray(x)) {
if (x.length === 0) {
cb(null, null);
return;
}
cb(null, x.shift());
return;
}
this.push(x);
cb(null, null);
});
};