UNPKG

@catull/igniteui-angular

Version:

Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps

91 lines 9.78 kB
import { __decorate, __metadata, __param } from "tslib"; import { Inject, Pipe } from '@angular/core'; import { cloneArray } from '../core/utils'; import { DataUtil } from '../data-operations/data-util'; import { SortingDirection } from '../data-operations/sorting-expression.interface'; import { IGX_COMBO_COMPONENT } from './combo.common'; import { DefaultSortingStrategy } from '../data-operations/sorting-strategy'; /** * @hidden */ var IgxComboFilteringPipe = /** @class */ (function () { function IgxComboFilteringPipe() { } IgxComboFilteringPipe.prototype.transform = function (collection, searchValue, displayKey, shouldFilter) { if (!collection) { return []; } if (!searchValue || !shouldFilter) { return collection; } else { var searchTerm_1 = searchValue.toLowerCase().trim(); if (displayKey != null) { return collection.filter(function (e) { return e[displayKey].toLowerCase().includes(searchTerm_1); }); } else { return collection.filter(function (e) { return e.toLowerCase().includes(searchTerm_1); }); } } }; IgxComboFilteringPipe = __decorate([ Pipe({ name: 'comboFiltering' }) ], IgxComboFilteringPipe); return IgxComboFilteringPipe; }()); export { IgxComboFilteringPipe }; /** * @hidden */ var IgxComboGroupingPipe = /** @class */ (function () { function IgxComboGroupingPipe(combo) { this.combo = combo; } IgxComboGroupingPipe.prototype.transform = function (collection, groupKey, valueKey) { var _a; this.combo.filteredData = collection; if ((!groupKey && groupKey !== 0) || !collection.length) { return collection; } var sorted = DataUtil.sort(cloneArray(collection), [{ fieldName: groupKey, dir: SortingDirection.Asc, ignoreCase: true, strategy: DefaultSortingStrategy.instance() }]); var data = cloneArray(sorted); var inserts = 0; var currentHeader = null; for (var i = 0; i < sorted.length; i++) { var insertFlag = 0; if (currentHeader !== sorted[i][groupKey]) { currentHeader = sorted[i][groupKey]; insertFlag = 1; } if (insertFlag) { data.splice(i + inserts, 0, (_a = {}, _a[valueKey] = currentHeader, _a[groupKey] = currentHeader, _a.isHeader = true, _a)); inserts++; } } return data; }; IgxComboGroupingPipe.ctorParameters = function () { return [ { type: undefined, decorators: [{ type: Inject, args: [IGX_COMBO_COMPONENT,] }] } ]; }; IgxComboGroupingPipe = __decorate([ Pipe({ name: 'comboGrouping' }), __param(0, Inject(IGX_COMBO_COMPONENT)), __metadata("design:paramtypes", [Object]) ], IgxComboGroupingPipe); return IgxComboGroupingPipe; }()); export { IgxComboGroupingPipe }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYm8ucGlwZXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9pZ25pdGV1aS1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL2NvbWJvL2NvbWJvLnBpcGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbkYsT0FBTyxFQUFFLG1CQUFtQixFQUFnQixNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRzdFOztHQUVHO0FBSUg7SUFBQTtJQWdCQSxDQUFDO0lBZlUseUNBQVMsR0FBaEIsVUFBaUIsVUFBaUIsRUFBRSxXQUFnQixFQUFFLFVBQWUsRUFBRSxZQUFxQjtRQUN4RixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2IsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDL0IsT0FBTyxVQUFVLENBQUM7U0FDckI7YUFBTTtZQUNILElBQU0sWUFBVSxHQUFHLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNwRCxJQUFJLFVBQVUsSUFBSSxJQUFJLEVBQUU7Z0JBQ3BCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsWUFBVSxDQUFDLEVBQWhELENBQWdELENBQUMsQ0FBQzthQUNuRjtpQkFBTTtnQkFDSCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVUsQ0FBQyxFQUFwQyxDQUFvQyxDQUFDLENBQUM7YUFDdkU7U0FDSjtJQUNMLENBQUM7SUFmUSxxQkFBcUI7UUFIakMsSUFBSSxDQUFDO1lBQ0YsSUFBSSxFQUFFLGdCQUFnQjtTQUN6QixDQUFDO09BQ1cscUJBQXFCLENBZ0JqQztJQUFELDRCQUFDO0NBQUEsQUFoQkQsSUFnQkM7U0FoQlkscUJBQXFCO0FBa0JsQzs7R0FFRztBQUlIO0lBRUksOEJBQWdELEtBQW1CO1FBQW5CLFVBQUssR0FBTCxLQUFLLENBQWM7SUFBSSxDQUFDO0lBRWpFLHdDQUFTLEdBQWhCLFVBQWlCLFVBQWlCLEVBQUUsUUFBYSxFQUFFLFFBQWE7O1FBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQztRQUNyQyxJQUFJLENBQUMsQ0FBQyxRQUFRLElBQUksUUFBUSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUNyRCxPQUFPLFVBQVUsQ0FBQztTQUNyQjtRQUNELElBQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELFNBQVMsRUFBRSxRQUFRO2dCQUNuQixHQUFHLEVBQUUsZ0JBQWdCLENBQUMsR0FBRztnQkFDekIsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxRQUFRLEVBQUU7YUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQztRQUN6QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNwQyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7WUFDbkIsSUFBSSxhQUFhLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUN2QyxhQUFhLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNwQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO2FBQ2xCO1lBQ0QsSUFBSSxVQUFVLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsT0FBTyxFQUFFLENBQUM7b0JBQ3RCLEdBQUMsUUFBUSxJQUFHLGFBQWE7b0JBQ3pCLEdBQUMsUUFBUSxJQUFHLGFBQWE7b0JBQ3pCLFdBQVEsR0FBRSxJQUFJO3dCQUNoQixDQUFDO2dCQUNILE9BQU8sRUFBRSxDQUFDO2FBQ2I7U0FDSjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O2dEQWhDWSxNQUFNLFNBQUMsbUJBQW1COztJQUY5QixvQkFBb0I7UUFIaEMsSUFBSSxDQUFDO1lBQ0YsSUFBSSxFQUFFLGVBQWU7U0FDeEIsQ0FBQztRQUdlLFdBQUEsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUE7O09BRi9CLG9CQUFvQixDQW1DaEM7SUFBRCwyQkFBQztDQUFBLEFBbkNELElBbUNDO1NBbkNZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZUFycmF5IH0gZnJvbSAnLi4vY29yZS91dGlscyc7XG5pbXBvcnQgeyBEYXRhVXRpbCB9IGZyb20gJy4uL2RhdGEtb3BlcmF0aW9ucy9kYXRhLXV0aWwnO1xuaW1wb3J0IHsgU29ydGluZ0RpcmVjdGlvbiB9IGZyb20gJy4uL2RhdGEtb3BlcmF0aW9ucy9zb3J0aW5nLWV4cHJlc3Npb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IElHWF9DT01CT19DT01QT05FTlQsIElneENvbWJvQmFzZSB9IGZyb20gJy4vY29tYm8uY29tbW9uJztcbmltcG9ydCB7IERlZmF1bHRTb3J0aW5nU3RyYXRlZ3kgfSBmcm9tICcuLi9kYXRhLW9wZXJhdGlvbnMvc29ydGluZy1zdHJhdGVneSc7XG5cblxuLyoqXG4gKiBAaGlkZGVuXG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAnY29tYm9GaWx0ZXJpbmcnXG59KVxuZXhwb3J0IGNsYXNzIElneENvbWJvRmlsdGVyaW5nUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyB0cmFuc2Zvcm0oY29sbGVjdGlvbjogYW55W10sIHNlYXJjaFZhbHVlOiBhbnksIGRpc3BsYXlLZXk6IGFueSwgc2hvdWxkRmlsdGVyOiBib29sZWFuKSB7XG4gICAgICAgIGlmICghY29sbGVjdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc2VhcmNoVmFsdWUgfHwgIXNob3VsZEZpbHRlcikge1xuICAgICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb247XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBzZWFyY2hUZXJtID0gc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgICAgICBpZiAoZGlzcGxheUtleSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb24uZmlsdGVyKGUgPT4gZVtkaXNwbGF5S2V5XS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0pKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb24uZmlsdGVyKGUgPT4gZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAaGlkZGVuXG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAnY29tYm9Hcm91cGluZydcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q29tYm9Hcm91cGluZ1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoSUdYX0NPTUJPX0NPTVBPTkVOVCkgcHVibGljIGNvbWJvOiBJZ3hDb21ib0Jhc2UpIHsgfVxuXG4gICAgcHVibGljIHRyYW5zZm9ybShjb2xsZWN0aW9uOiBhbnlbXSwgZ3JvdXBLZXk6IGFueSwgdmFsdWVLZXk6IGFueSkge1xuICAgICAgICB0aGlzLmNvbWJvLmZpbHRlcmVkRGF0YSA9IGNvbGxlY3Rpb247XG4gICAgICAgIGlmICgoIWdyb3VwS2V5ICYmIGdyb3VwS2V5ICE9PSAwKSB8fCAhY29sbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiBjb2xsZWN0aW9uO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNvcnRlZCA9IERhdGFVdGlsLnNvcnQoY2xvbmVBcnJheShjb2xsZWN0aW9uKSwgW3tcbiAgICAgICAgICAgIGZpZWxkTmFtZTogZ3JvdXBLZXksXG4gICAgICAgICAgICBkaXI6IFNvcnRpbmdEaXJlY3Rpb24uQXNjLFxuICAgICAgICAgICAgaWdub3JlQ2FzZTogdHJ1ZSxcbiAgICAgICAgICAgIHN0cmF0ZWd5OiBEZWZhdWx0U29ydGluZ1N0cmF0ZWd5Lmluc3RhbmNlKClcbiAgICAgICAgfV0pO1xuICAgICAgICBjb25zdCBkYXRhID0gY2xvbmVBcnJheShzb3J0ZWQpO1xuICAgICAgICBsZXQgaW5zZXJ0cyA9IDA7XG4gICAgICAgIGxldCBjdXJyZW50SGVhZGVyID0gbnVsbDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzb3J0ZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBpbnNlcnRGbGFnID0gMDtcbiAgICAgICAgICAgIGlmIChjdXJyZW50SGVhZGVyICE9PSBzb3J0ZWRbaV1bZ3JvdXBLZXldKSB7XG4gICAgICAgICAgICAgICAgY3VycmVudEhlYWRlciA9IHNvcnRlZFtpXVtncm91cEtleV07XG4gICAgICAgICAgICAgICAgaW5zZXJ0RmxhZyA9IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaW5zZXJ0RmxhZykge1xuICAgICAgICAgICAgICAgIGRhdGEuc3BsaWNlKGkgKyBpbnNlcnRzLCAwLCB7XG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZUtleV06IGN1cnJlbnRIZWFkZXIsXG4gICAgICAgICAgICAgICAgICAgIFtncm91cEtleV06IGN1cnJlbnRIZWFkZXIsXG4gICAgICAgICAgICAgICAgICAgIGlzSGVhZGVyOiB0cnVlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zZXJ0cysrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbn1cbiJdfQ==