theme-lib
Version:
This is a simple example Angular Library published to npm.
34 lines • 3.25 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* @license
* Copyright Akveo. All Rights Reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*/
/** @type {?} */
export const batch = (target, batchSize, offset = 0) => {
return target.reduce((res, item, index) => {
/** @type {?} */
const chunkIndex = Math.floor((index + offset) / batchSize);
if (!res[chunkIndex]) {
res[chunkIndex] = [];
}
res[chunkIndex].push(item);
return res;
}, []);
};
/*
* returns array with numbers from zero to bound.
* */
/** @type {?} */
export const range = (bound, producer = i => i) => {
/** @type {?} */
const arr = [];
for (let i = 0; i < bound; i++) {
arr.push(producer(i));
}
return arr;
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3RoZW1lLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2NhbGVuZGFyLWtpdC9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFNQSxNQUFNLE9BQU8sS0FBSyxHQUFHLENBQUksTUFBVyxFQUFFLFNBQWlCLEVBQUUsU0FBaUIsQ0FBQyxFQUFTLEVBQUU7SUFDcEYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTs7Y0FDbEMsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQzNELElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDcEIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztTQUN0QjtRQUNELEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFDUixDQUFDOzs7OztBQUtELE1BQU0sT0FBTyxLQUFLLEdBQUcsQ0FBSSxLQUFhLEVBQUUsV0FBMEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTs7VUFDcEUsR0FBRyxHQUFHLEVBQUU7SUFFZCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdkI7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgQWt2ZW8uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIExpY2Vuc2UudHh0IGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGxpY2Vuc2UgaW5mb3JtYXRpb24uXHJcbiAqL1xyXG5cclxuZXhwb3J0IGNvbnN0IGJhdGNoID0gPFQ+KHRhcmdldDogVFtdLCBiYXRjaFNpemU6IG51bWJlciwgb2Zmc2V0OiBudW1iZXIgPSAwKTogVFtdW10gPT4ge1xyXG4gIHJldHVybiB0YXJnZXQucmVkdWNlKChyZXMsIGl0ZW0sIGluZGV4KSA9PiB7XHJcbiAgICBjb25zdCBjaHVua0luZGV4ID0gTWF0aC5mbG9vcigoaW5kZXggKyBvZmZzZXQpIC8gYmF0Y2hTaXplKTtcclxuICAgIGlmICghcmVzW2NodW5rSW5kZXhdKSB7XHJcbiAgICAgIHJlc1tjaHVua0luZGV4XSA9IFtdO1xyXG4gICAgfVxyXG4gICAgcmVzW2NodW5rSW5kZXhdLnB1c2goaXRlbSk7XHJcbiAgICByZXR1cm4gcmVzO1xyXG4gIH0sIFtdKVxyXG59O1xyXG5cclxuLypcclxuICogcmV0dXJucyBhcnJheSB3aXRoIG51bWJlcnMgZnJvbSB6ZXJvIHRvIGJvdW5kLlxyXG4gKiAqL1xyXG5leHBvcnQgY29uc3QgcmFuZ2UgPSA8VD4oYm91bmQ6IG51bWJlciwgcHJvZHVjZXI6IChudW1iZXIpID0+IFQgPSBpID0+IGkpID0+IHtcclxuICBjb25zdCBhcnIgPSBbXTtcclxuXHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBib3VuZDsgaSsrKSB7XHJcbiAgICBhcnIucHVzaChwcm9kdWNlcihpKSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gYXJyO1xyXG59O1xyXG4iXX0=