ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
37 lines • 5.3 kB
JavaScript
import { Util } from '../../util/util';
import { DefaultComponentStateClass } from './o-component-state.class';
export class OFilterBuilderComponentStateClass extends DefaultComponentStateClass {
get storedFilterBuilders() {
return this['stored-filter-builders'] || [];
}
set storedFilterBuilders(value) {
this['stored-filter-builders'] = value;
}
addStoredFilter(filter) {
if (!Util.isDefined(this['stored-filter-builders'])) {
this['stored-filter-builders'] = [];
}
this.storedFilterBuilders.push(filter);
}
deleteStoredFilter(filterName) {
const index = this.storedFilterBuilders.findIndex((item) => item.name === filterName);
if (index >= 0) {
this.storedFilterBuilders.splice(index, 1);
}
}
applyFilter(filterName) {
const filter = this.getStoredFilter(filterName);
if (filter) {
this.filterBuilderValues = filter;
}
}
getStoredFilter(filterName) {
let result = [];
const filter = this.storedFilterBuilders.find((item) => item.name === filterName);
if (Util.isDefined(filter)) {
result = filter['filter-builder-values'];
}
return result;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1maWx0ZXItYnVpbGRlci1jb21wb25lbnQtc3RhdGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvc2VydmljZXMvc3RhdGUvby1maWx0ZXItYnVpbGRlci1jb21wb25lbnQtc3RhdGUuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXZFLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSwwQkFBMEI7SUFLL0UsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksb0JBQW9CLENBQUMsS0FBNkI7UUFDcEQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlLENBQUMsTUFBNEI7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUMsRUFBRTtZQUNuRCxJQUFJLENBQUMsd0JBQXdCLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDckM7UUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxVQUFrQjtRQUNuQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBMEIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQztRQUM1RyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDZCxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFDRCxXQUFXLENBQUMsVUFBa0I7UUFDNUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLFVBQWtCO1FBQ2hDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBMEIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQztRQUN4RyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDMUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1NBQzFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT0ZpbHRlckJ1aWxkZXJTdGF0dXMsIE9GaWx0ZXJCdWlsZGVyVmFsdWVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvby1maWx0ZXItYnVpbGRlci12YWx1ZXMudHlwZSc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IERlZmF1bHRDb21wb25lbnRTdGF0ZUNsYXNzIH0gZnJvbSAnLi9vLWNvbXBvbmVudC1zdGF0ZS5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBPRmlsdGVyQnVpbGRlckNvbXBvbmVudFN0YXRlQ2xhc3MgZXh0ZW5kcyBEZWZhdWx0Q29tcG9uZW50U3RhdGVDbGFzcyB7XG5cbiAgLy8gc3RvcmVkIGZpbHRlcnMgYnVpbGRlciB2YWx1ZXNcbiAgZmlsdGVyQnVpbGRlclZhbHVlczogT0ZpbHRlckJ1aWxkZXJWYWx1ZXNbXTtcblxuICBnZXQgc3RvcmVkRmlsdGVyQnVpbGRlcnMoKTogT0ZpbHRlckJ1aWxkZXJTdGF0dXNbXSB7XG4gICAgcmV0dXJuIHRoaXNbJ3N0b3JlZC1maWx0ZXItYnVpbGRlcnMnXSB8fCBbXTtcbiAgfVxuXG4gIHNldCBzdG9yZWRGaWx0ZXJCdWlsZGVycyh2YWx1ZTogT0ZpbHRlckJ1aWxkZXJTdGF0dXNbXSkge1xuICAgIHRoaXNbJ3N0b3JlZC1maWx0ZXItYnVpbGRlcnMnXSA9IHZhbHVlO1xuICB9XG5cbiAgYWRkU3RvcmVkRmlsdGVyKGZpbHRlcjogT0ZpbHRlckJ1aWxkZXJTdGF0dXMpIHtcbiAgICBpZiAoIVV0aWwuaXNEZWZpbmVkKHRoaXNbJ3N0b3JlZC1maWx0ZXItYnVpbGRlcnMnXSkpIHtcbiAgICAgIHRoaXNbJ3N0b3JlZC1maWx0ZXItYnVpbGRlcnMnXSA9IFtdO1xuICAgIH1cbiAgICB0aGlzLnN0b3JlZEZpbHRlckJ1aWxkZXJzLnB1c2goZmlsdGVyKTtcbiAgfVxuXG4gIGRlbGV0ZVN0b3JlZEZpbHRlcihmaWx0ZXJOYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuc3RvcmVkRmlsdGVyQnVpbGRlcnMuZmluZEluZGV4KChpdGVtOiBPRmlsdGVyQnVpbGRlclN0YXR1cykgPT4gaXRlbS5uYW1lID09PSBmaWx0ZXJOYW1lKTtcbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgdGhpcy5zdG9yZWRGaWx0ZXJCdWlsZGVycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuICBhcHBseUZpbHRlcihmaWx0ZXJOYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLmdldFN0b3JlZEZpbHRlcihmaWx0ZXJOYW1lKTtcbiAgICBpZiAoZmlsdGVyKSB7XG4gICAgICB0aGlzLmZpbHRlckJ1aWxkZXJWYWx1ZXMgPSBmaWx0ZXI7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3RvcmVkRmlsdGVyKGZpbHRlck5hbWU6IHN0cmluZyk6IE9GaWx0ZXJCdWlsZGVyVmFsdWVzW10ge1xuICAgIGxldCByZXN1bHQgPSBbXTtcbiAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLnN0b3JlZEZpbHRlckJ1aWxkZXJzLmZpbmQoKGl0ZW06IE9GaWx0ZXJCdWlsZGVyU3RhdHVzKSA9PiBpdGVtLm5hbWUgPT09IGZpbHRlck5hbWUpO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZChmaWx0ZXIpKSB7XG4gICAgICByZXN1bHQgPSBmaWx0ZXJbJ2ZpbHRlci1idWlsZGVyLXZhbHVlcyddO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbn1cbiJdfQ==