UNPKG

ngx-easy-table

Version:
53 lines 3.46 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { Injectable } from '@angular/core'; import { from } from 'rxjs'; import { flatMap, groupBy, reduce } from 'rxjs/operators'; var GroupRowsService = /** @class */ (function () { function GroupRowsService() { } /** * @template T * @param {?} data * @param {?} groupRowsBy * @return {?} */ GroupRowsService.doGroupRows = /** * @template T * @param {?} data * @param {?} groupRowsBy * @return {?} */ function (data, groupRowsBy) { /** @type {?} */ var grouped = []; from(data).pipe(groupBy((/** * @param {?} row * @return {?} */ function (row) { return row[groupRowsBy]; })), flatMap((/** * @param {?} group * @return {?} */ function (group) { return group.pipe(reduce((/** * @param {?} acc * @param {?} curr * @return {?} */ function (acc, curr) { return tslib_1.__spread(acc, [curr]); }), [])); }))).subscribe((/** * @param {?} row * @return {?} */ function (row) { return grouped.push(row); })); return grouped; }; GroupRowsService.decorators = [ { type: Injectable } ]; return GroupRowsService; }()); export { GroupRowsService }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtcm93cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWVhc3ktdGFibGUvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZ3JvdXAtcm93cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFEO0lBQUE7SUFhQSxDQUFDOzs7Ozs7O0lBWGUsNEJBQVc7Ozs7OztJQUF6QixVQUE2QixJQUFTLEVBQUUsV0FBbUI7O1lBQ25ELE9BQU8sR0FBVSxFQUFFO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ2IsT0FBTzs7OztRQUFDLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFoQixDQUFnQixFQUFDLEVBQ2xDLE9BQU87Ozs7UUFBQyxVQUFDLEtBQUssSUFBSyxPQUFBLEtBQUssQ0FBQyxJQUFJLENBQzNCLE1BQU07Ozs7O1FBQUMsVUFBQyxHQUFRLEVBQUUsSUFBTyxJQUFLLHdCQUFJLEdBQUcsR0FBRSxJQUFJLElBQWIsQ0FBYyxHQUFFLEVBQUUsQ0FBQyxDQUNsRCxFQUZrQixDQUVsQixFQUFDLENBQ0gsQ0FBQyxTQUFTOzs7O1FBQUMsVUFBQyxHQUFHLElBQUssT0FBQSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFqQixDQUFpQixFQUFDLENBQUM7UUFFeEMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7Z0JBWkYsVUFBVTs7SUFhWCx1QkFBQztDQUFBLEFBYkQsSUFhQztTQVpZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZsYXRNYXAsIGdyb3VwQnksIHJlZHVjZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdyb3VwUm93c1NlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIGRvR3JvdXBSb3dzPFQ+KGRhdGE6IFRbXSwgZ3JvdXBSb3dzQnk6IHN0cmluZyk6IGFueVtdIHtcbiAgICBjb25zdCBncm91cGVkOiBhbnlbXSA9IFtdO1xuICAgIGZyb20oZGF0YSkucGlwZShcbiAgICAgIGdyb3VwQnkoKHJvdykgPT4gcm93W2dyb3VwUm93c0J5XSksXG4gICAgICBmbGF0TWFwKChncm91cCkgPT4gZ3JvdXAucGlwZShcbiAgICAgICAgcmVkdWNlKChhY2M6IFRbXSwgY3VycjogVCkgPT4gWy4uLmFjYywgY3Vycl0sIFtdKSxcbiAgICAgICkpLFxuICAgICkuc3Vic2NyaWJlKChyb3cpID0+IGdyb3VwZWQucHVzaChyb3cpKTtcblxuICAgIHJldHVybiBncm91cGVkO1xuICB9XG59XG4iXX0=