@wlcm/angular 18.2.4 → 18.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/filters/esm2022/index.mjs +6 -8
  2. package/filters/esm2022/lib/components/filters-group/filters-group.component.mjs +13 -0
  3. package/filters/esm2022/lib/constants/filter.constants.mjs +3 -0
  4. package/filters/esm2022/lib/constants/index.mjs +2 -0
  5. package/filters/esm2022/lib/directives/filter.directive.mjs +11 -0
  6. package/filters/esm2022/lib/directives/index.mjs +2 -0
  7. package/filters/esm2022/lib/filters.module.mjs +20 -0
  8. package/filters/esm2022/lib/models/array-filter.models.mjs +73 -0
  9. package/filters/esm2022/lib/models/filter.models.mjs +41 -0
  10. package/filters/esm2022/lib/models/filters-group.models.mjs +60 -0
  11. package/filters/esm2022/lib/models/index.mjs +4 -0
  12. package/filters/fesm2022/wlcm-angular-filters.mjs +159 -420
  13. package/filters/fesm2022/wlcm-angular-filters.mjs.map +1 -1
  14. package/filters/index.d.ts +5 -7
  15. package/filters/lib/components/filters-group/filters-group.component.d.ts +6 -0
  16. package/filters/lib/constants/filter.constants.d.ts +3 -0
  17. package/filters/lib/constants/index.d.ts +1 -0
  18. package/filters/lib/directives/filter.directive.d.ts +5 -0
  19. package/filters/lib/directives/index.d.ts +1 -0
  20. package/filters/lib/filters.module.d.ts +9 -0
  21. package/filters/lib/models/array-filter.models.d.ts +19 -0
  22. package/filters/lib/models/filter.models.d.ts +19 -0
  23. package/filters/lib/models/filters-group.models.d.ts +22 -0
  24. package/filters/lib/models/index.d.ts +3 -0
  25. package/package.json +1 -1
  26. package/styles/core/_all-theme.scss +0 -2
  27. package/filters/esm2022/lib/filters/components/filters/filters.component.mjs +0 -21
  28. package/filters/esm2022/lib/filters/components/filters-button/filters-button.component.mjs +0 -25
  29. package/filters/esm2022/lib/filters/components/filters-panel/filters-panel.component.mjs +0 -86
  30. package/filters/esm2022/lib/filters/components/filters-unit/filters-unit.component.mjs +0 -55
  31. package/filters/esm2022/lib/filters/directives/filters-content.directive.mjs +0 -11
  32. package/filters/esm2022/lib/filters/directives/filters-trigger.directive.mjs +0 -69
  33. package/filters/esm2022/lib/filters/filters.module.mjs +0 -53
  34. package/filters/esm2022/lib/filters/models/filters-default-selection-model.mjs +0 -56
  35. package/filters/esm2022/lib/filters/models/filters-trigger.base.mjs +0 -56
  36. package/filters/esm2022/lib/filters/models/filters.models.mjs +0 -44
  37. package/filters/esm2022/lib/filters/pipes/is-filters-param-checked.pipe.mjs +0 -21
  38. package/filters/esm2022/lib/filters/pipes/total-filters-applied.pipe.mjs +0 -18
  39. package/filters/esm2022/lib/filters/utils/filters.utils.mjs +0 -13
  40. package/filters/lib/filters/components/filters/filters.component.d.ts +0 -10
  41. package/filters/lib/filters/components/filters-button/filters-button.component.d.ts +0 -11
  42. package/filters/lib/filters/components/filters-panel/filters-panel.component.d.ts +0 -25
  43. package/filters/lib/filters/components/filters-unit/filters-unit.component.d.ts +0 -21
  44. package/filters/lib/filters/directives/filters-content.directive.d.ts +0 -5
  45. package/filters/lib/filters/directives/filters-trigger.directive.d.ts +0 -22
  46. package/filters/lib/filters/filters.module.d.ts +0 -20
  47. package/filters/lib/filters/models/filters-default-selection-model.d.ts +0 -18
  48. package/filters/lib/filters/models/filters-trigger.base.d.ts +0 -15
  49. package/filters/lib/filters/models/filters.models.d.ts +0 -42
  50. package/filters/lib/filters/pipes/is-filters-param-checked.pipe.d.ts +0 -10
  51. package/filters/lib/filters/pipes/total-filters-applied.pipe.d.ts +0 -8
  52. package/filters/lib/filters/utils/filters.utils.d.ts +0 -5
  53. package/styles/components/filters/_filters-panel.scss +0 -44
  54. package/styles/components/filters/_filters-unit.scss +0 -92
  55. package/styles/components/filters/index.scss +0 -7
@@ -1,8 +1,6 @@
1
- export * from './lib/filters/filters.module';
2
- export * from './lib/filters/models/filters.models';
3
- export * from './lib/filters/directives/filters-content.directive';
4
- export * from './lib/filters/components/filters/filters.component';
5
- export * from './lib/filters/directives/filters-trigger.directive';
6
- export * from './lib/filters/components/filters-unit/filters-unit.component';
7
- export * from './lib/filters/components/filters-button/filters-button.component';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9maWx0ZXJzL2ZpbHRlcnMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMvbW9kZWxzL2ZpbHRlcnMubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMvZGlyZWN0aXZlcy9maWx0ZXJzLWNvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMvY29tcG9uZW50cy9maWx0ZXJzL2ZpbHRlcnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMvZGlyZWN0aXZlcy9maWx0ZXJzLXRyaWdnZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMvY29tcG9uZW50cy9maWx0ZXJzLXVuaXQvZmlsdGVycy11bml0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWx0ZXJzL2NvbXBvbmVudHMvZmlsdGVycy1idXR0b24vZmlsdGVycy1idXR0b24uY29tcG9uZW50JztcbiJdfQ==
1
+ export * from './lib/models';
2
+ export * from './lib/constants';
3
+ export * from './lib/directives';
4
+ export * from './lib/filters.module';
5
+ export { FiltersGroupComponent } from './lib/components/filters-group/filters-group.component';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbHRlcnMubW9kdWxlJztcblxuZXhwb3J0IHsgRmlsdGVyc0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9maWx0ZXJzLWdyb3VwL2ZpbHRlcnMtZ3JvdXAuY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,13 @@
1
+ import { Component, forwardRef } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { WlcmFiltersGroup } from '../../models/filters-group.models';
4
+ import * as i0 from "@angular/core";
5
+ export class FiltersGroupComponent extends WlcmFiltersGroup {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FiltersGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: FiltersGroupComponent, isStandalone: true, selector: "wlcm-filters-group", host: { classAttribute: "wlcm-filters-group" }, providers: [{ provide: WlcmFiltersGroup, useExisting: forwardRef(() => FiltersGroupComponent) }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[wlcmFilter]\"></ng-content>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FiltersGroupComponent, decorators: [{
10
+ type: Component,
11
+ args: [{ selector: 'wlcm-filters-group', standalone: true, imports: [CommonModule], host: { class: 'wlcm-filters-group' }, providers: [{ provide: WlcmFiltersGroup, useExisting: forwardRef(() => FiltersGroupComponent) }], template: "<ng-content select=\"[wlcmFilter]\"></ng-content>\n", styles: [":host{display:block}\n"] }]
12
+ }] });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9jb21wb25lbnRzL2ZpbHRlcnMtZ3JvdXAvZmlsdGVycy1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9jb21wb25lbnRzL2ZpbHRlcnMtZ3JvdXAvZmlsdGVycy1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBV3JFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7OEdBQTlDLHFCQUFxQjtrR0FBckIscUJBQXFCLGlIQUZyQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUMsRUFBRSxDQUFDLGlEQ1hsRyxxREFDQSwrRURNWSxZQUFZOzsyRkFNWCxxQkFBcUI7a0JBVGpDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxRQUNqQixFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxhQUcxQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFdsY21GaWx0ZXJzR3JvdXAgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmlsdGVycy1ncm91cC5tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3bGNtLWZpbHRlcnMtZ3JvdXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgaG9zdDogeyBjbGFzczogJ3dsY20tZmlsdGVycy1ncm91cCcgfSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlcnMtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZmlsdGVycy1ncm91cC5jb21wb25lbnQuc2NzcycsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogV2xjbUZpbHRlcnNHcm91cCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRmlsdGVyc0dyb3VwQ29tcG9uZW50KSB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyc0dyb3VwQ29tcG9uZW50IGV4dGVuZHMgV2xjbUZpbHRlcnNHcm91cCB7fVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3dsY21GaWx0ZXJdXCI+PC9uZy1jb250ZW50PlxuIl19
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const WLCM_FILTER = new InjectionToken('WLCM_FILTER');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZmlsdGVycy9zcmMvbGliL2NvbnN0YW50cy9maWx0ZXIuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUErQixJQUFJLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXbGNtRmlsdGVyIH0gZnJvbSAnLi4vbW9kZWxzL2ZpbHRlci5tb2RlbHMnO1xuXG5leHBvcnQgY29uc3QgV0xDTV9GSUxURVI6IEluamVjdGlvblRva2VuPFdsY21GaWx0ZXI+ID0gbmV3IEluamVjdGlvblRva2VuKCdXTENNX0ZJTFRFUicpO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './filter.constants';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9jb25zdGFudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLmNvbnN0YW50cyc7XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FilterDirective {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FilterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: FilterDirective, isStandalone: true, selector: "[wlcmFilter]", ngImport: i0 }); }
6
+ }
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: FilterDirective, decorators: [{
8
+ type: Directive,
9
+ args: [{ selector: '[wlcmFilter]', standalone: true }]
10
+ }] });
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZmlsdGVycy9zcmMvbGliL2RpcmVjdGl2ZXMvZmlsdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUcxQyxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlO2tHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBRDNCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW3dsY21GaWx0ZXJdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIEZpbHRlckRpcmVjdGl2ZSB7fVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './filter.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbHRlci5kaXJlY3RpdmUnO1xuIl19
@@ -0,0 +1,20 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FiltersGroupComponent } from './components/filters-group/filters-group.component';
4
+ import { FilterDirective } from './directives/filter.directive';
5
+ import * as i0 from "@angular/core";
6
+ const publicComponents = [FiltersGroupComponent];
7
+ const publicDirectives = [FilterDirective];
8
+ export class WlcmFiltersModule {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersModule, imports: [CommonModule, FiltersGroupComponent, FilterDirective], exports: [FiltersGroupComponent, FilterDirective] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersModule, imports: [CommonModule, publicComponents] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ imports: [CommonModule, ...publicComponents, ...publicDirectives],
17
+ exports: [...publicComponents, ...publicDirectives],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9maWx0ZXJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRWhFLE1BQU0sZ0JBQWdCLEdBQW9CLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUVsRSxNQUFNLGdCQUFnQixHQUFvQixDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBTTVELE1BQU0sT0FBTyxpQkFBaUI7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLFlBSGxCLFlBQVksRUFMbUIscUJBQXFCLEVBRXJCLGVBQWUsYUFGZixxQkFBcUIsRUFFckIsZUFBZTsrR0FNN0MsaUJBQWlCLFlBSGxCLFlBQVksRUFBSyxnQkFBZ0I7OzJGQUdoQyxpQkFBaUI7a0JBSjdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQztvQkFDakUsT0FBTyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsRUFBRSxHQUFHLGdCQUFnQixDQUFDO2lCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBGaWx0ZXJzR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZmlsdGVycy1ncm91cC9maWx0ZXJzLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZmlsdGVyLmRpcmVjdGl2ZSc7XG5cbmNvbnN0IHB1YmxpY0NvbXBvbmVudHM6IFR5cGU8dW5rbm93bj5bXSA9IFtGaWx0ZXJzR3JvdXBDb21wb25lbnRdO1xuXG5jb25zdCBwdWJsaWNEaXJlY3RpdmVzOiBUeXBlPHVua25vd24+W10gPSBbRmlsdGVyRGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgLi4ucHVibGljQ29tcG9uZW50cywgLi4ucHVibGljRGlyZWN0aXZlc10sXG4gIGV4cG9ydHM6IFsuLi5wdWJsaWNDb21wb25lbnRzLCAuLi5wdWJsaWNEaXJlY3RpdmVzXSxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbUZpbHRlcnNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,73 @@
1
+ import { WlcmFilter } from './filter.models';
2
+ export class WlcmArrayFilter extends WlcmFilter {
3
+ constructor() {
4
+ super();
5
+ this.prepareValue();
6
+ }
7
+ get initialValue() {
8
+ return new Map();
9
+ }
10
+ getAppliedFilters() {
11
+ if (!this.value)
12
+ return [];
13
+ return Array.from(this.value.values());
14
+ }
15
+ prepareValueForCache(value) {
16
+ if (!value)
17
+ return null;
18
+ return new Map(value);
19
+ }
20
+ computeSize(value) {
21
+ return value.size;
22
+ }
23
+ selectId(value) {
24
+ return value;
25
+ }
26
+ contains(value) {
27
+ if (!this.value)
28
+ return false;
29
+ return this.value.has(this.selectId(value));
30
+ }
31
+ addOne(value) {
32
+ this.prepareValue();
33
+ this.value = this.value.set(this.selectId(value), value);
34
+ }
35
+ addMany(values) {
36
+ this.prepareValue();
37
+ const currentValue = this.value;
38
+ values.forEach((value) => currentValue.set(this.selectId(value), value));
39
+ this.value = currentValue;
40
+ }
41
+ setAll(values) {
42
+ const newValue = new Map();
43
+ values.forEach((value) => newValue.set(this.selectId(value), value));
44
+ this.value = newValue;
45
+ }
46
+ removeOne(value) {
47
+ this.prepareValue();
48
+ const currentValue = this.value;
49
+ currentValue.delete(this.selectId(value));
50
+ this.value = currentValue;
51
+ }
52
+ removeAll() {
53
+ this.value = new Map();
54
+ }
55
+ toggle(value) {
56
+ this.prepareValue();
57
+ const currentValue = this.value;
58
+ const id = this.selectId(value);
59
+ if (currentValue.has(id)) {
60
+ currentValue.delete(id);
61
+ }
62
+ else {
63
+ currentValue.set(id, value);
64
+ }
65
+ this.value = currentValue;
66
+ }
67
+ prepareValue() {
68
+ if (this.value instanceof Map)
69
+ return;
70
+ this.value = new Map();
71
+ }
72
+ }
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktZmlsdGVyLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZmlsdGVycy9zcmMvbGliL21vZGVscy9hcnJheS1maWx0ZXIubW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUk3QyxNQUFNLE9BQWdCLGVBQTRCLFNBQVEsVUFBa0M7SUFDMUY7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUVSLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBYSxZQUFZO1FBQ3ZCLE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRVEsaUJBQWlCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBTyxDQUFDO1FBRWhDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFNLENBQUM7SUFDOUMsQ0FBQztJQUVRLG9CQUFvQixDQUFDLEtBQWlDO1FBQzdELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFeEIsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRVEsV0FBVyxDQUFDLEtBQTBCO1FBQzdDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVE7UUFDZixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBUTtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRTlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBUTtRQUNiLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsS0FBSyxHQUFJLElBQUksQ0FBQyxLQUE2QixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxPQUFPLENBQUMsTUFBVztRQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsTUFBTSxZQUFZLEdBQXdCLElBQUksQ0FBQyxLQUE0QixDQUFDO1FBRTVFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFRLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRTVFLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDO0lBQzVCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBVztRQUNoQixNQUFNLFFBQVEsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVoRCxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztJQUN4QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVE7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBCLE1BQU0sWUFBWSxHQUF3QixJQUFJLENBQUMsS0FBNEIsQ0FBQztRQUU1RSxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUUxQyxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQVE7UUFDYixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsTUFBTSxZQUFZLEdBQXdCLElBQUksQ0FBQyxLQUE0QixDQUFDO1FBRTVFLE1BQU0sRUFBRSxHQUFZLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFekMsSUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDekIsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDO2FBQU0sQ0FBQztZQUNOLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQztJQUM1QixDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLFlBQVksR0FBRztZQUFFLE9BQU87UUFFdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdsY21GaWx0ZXIgfSBmcm9tICcuL2ZpbHRlci5tb2RlbHMnO1xuXG50eXBlIEFycmF5RmlsdGVyVmFsdWU8VD4gPSBNYXA8dW5rbm93biwgVD47XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXbGNtQXJyYXlGaWx0ZXI8VCwgTyA9IFRbXT4gZXh0ZW5kcyBXbGNtRmlsdGVyPEFycmF5RmlsdGVyVmFsdWU8VD4sIE8+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMucHJlcGFyZVZhbHVlKCk7XG4gIH1cblxuICBvdmVycmlkZSBnZXQgaW5pdGlhbFZhbHVlKCk6IEFycmF5RmlsdGVyVmFsdWU8VD4ge1xuICAgIHJldHVybiBuZXcgTWFwKCk7XG4gIH1cblxuICBvdmVycmlkZSBnZXRBcHBsaWVkRmlsdGVycygpOiBPIHtcbiAgICBpZiAoIXRoaXMudmFsdWUpIHJldHVybiBbXSBhcyBPO1xuXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy52YWx1ZS52YWx1ZXMoKSkgYXMgTztcbiAgfVxuXG4gIG92ZXJyaWRlIHByZXBhcmVWYWx1ZUZvckNhY2hlKHZhbHVlOiBBcnJheUZpbHRlclZhbHVlPFQ+IHwgbnVsbCk6IEFycmF5RmlsdGVyVmFsdWU8VD4gfCBudWxsIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gbnVsbDtcblxuICAgIHJldHVybiBuZXcgTWFwKHZhbHVlKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGNvbXB1dGVTaXplKHZhbHVlOiBBcnJheUZpbHRlclZhbHVlPFQ+KTogbnVtYmVyIHtcbiAgICByZXR1cm4gdmFsdWUuc2l6ZTtcbiAgfVxuXG4gIHNlbGVjdElkKHZhbHVlOiBUKTogdW5rbm93biB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29udGFpbnModmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMudmFsdWUpIHJldHVybiBmYWxzZTtcblxuICAgIHJldHVybiB0aGlzLnZhbHVlLmhhcyh0aGlzLnNlbGVjdElkKHZhbHVlKSk7XG4gIH1cblxuICBhZGRPbmUodmFsdWU6IFQpOiB2b2lkIHtcbiAgICB0aGlzLnByZXBhcmVWYWx1ZSgpO1xuXG4gICAgdGhpcy52YWx1ZSA9ICh0aGlzLnZhbHVlIGFzIEFycmF5RmlsdGVyVmFsdWU8VD4pLnNldCh0aGlzLnNlbGVjdElkKHZhbHVlKSwgdmFsdWUpO1xuICB9XG5cbiAgYWRkTWFueSh2YWx1ZXM6IFRbXSk6IHZvaWQge1xuICAgIHRoaXMucHJlcGFyZVZhbHVlKCk7XG5cbiAgICBjb25zdCBjdXJyZW50VmFsdWU6IEFycmF5RmlsdGVyVmFsdWU8VD4gPSB0aGlzLnZhbHVlIGFzIEFycmF5RmlsdGVyVmFsdWU8VD47XG5cbiAgICB2YWx1ZXMuZm9yRWFjaCgodmFsdWU6IFQpID0+IGN1cnJlbnRWYWx1ZS5zZXQodGhpcy5zZWxlY3RJZCh2YWx1ZSksIHZhbHVlKSk7XG5cbiAgICB0aGlzLnZhbHVlID0gY3VycmVudFZhbHVlO1xuICB9XG5cbiAgc2V0QWxsKHZhbHVlczogVFtdKTogdm9pZCB7XG4gICAgY29uc3QgbmV3VmFsdWU6IEFycmF5RmlsdGVyVmFsdWU8VD4gPSBuZXcgTWFwKCk7XG5cbiAgICB2YWx1ZXMuZm9yRWFjaCgodmFsdWU6IFQpID0+IG5ld1ZhbHVlLnNldCh0aGlzLnNlbGVjdElkKHZhbHVlKSwgdmFsdWUpKTtcblxuICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcbiAgfVxuXG4gIHJlbW92ZU9uZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIHRoaXMucHJlcGFyZVZhbHVlKCk7XG5cbiAgICBjb25zdCBjdXJyZW50VmFsdWU6IEFycmF5RmlsdGVyVmFsdWU8VD4gPSB0aGlzLnZhbHVlIGFzIEFycmF5RmlsdGVyVmFsdWU8VD47XG5cbiAgICBjdXJyZW50VmFsdWUuZGVsZXRlKHRoaXMuc2VsZWN0SWQodmFsdWUpKTtcblxuICAgIHRoaXMudmFsdWUgPSBjdXJyZW50VmFsdWU7XG4gIH1cblxuICByZW1vdmVBbGwoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IG5ldyBNYXAoKTtcbiAgfVxuXG4gIHRvZ2dsZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIHRoaXMucHJlcGFyZVZhbHVlKCk7XG5cbiAgICBjb25zdCBjdXJyZW50VmFsdWU6IEFycmF5RmlsdGVyVmFsdWU8VD4gPSB0aGlzLnZhbHVlIGFzIEFycmF5RmlsdGVyVmFsdWU8VD47XG5cbiAgICBjb25zdCBpZDogdW5rbm93biA9IHRoaXMuc2VsZWN0SWQodmFsdWUpO1xuXG4gICAgaWYgKGN1cnJlbnRWYWx1ZS5oYXMoaWQpKSB7XG4gICAgICBjdXJyZW50VmFsdWUuZGVsZXRlKGlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VycmVudFZhbHVlLnNldChpZCwgdmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMudmFsdWUgPSBjdXJyZW50VmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHByZXBhcmVWYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52YWx1ZSBpbnN0YW5jZW9mIE1hcCkgcmV0dXJuO1xuXG4gICAgdGhpcy52YWx1ZSA9IG5ldyBNYXAoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,41 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ export class WlcmFilter {
3
+ constructor() {
4
+ this._cachedValue = null;
5
+ this._size$ = new BehaviorSubject(0);
6
+ this.size$ = this._size$.asObservable();
7
+ this._value$ = new BehaviorSubject(this.initialValue);
8
+ this.value$ = this._value$.asObservable();
9
+ }
10
+ reset() {
11
+ this.value = this.initialValue;
12
+ }
13
+ cacheValue() {
14
+ this._cachedValue = this.prepareValueForCache(this.value);
15
+ }
16
+ restoreCachedValue() {
17
+ this.value = this._cachedValue;
18
+ }
19
+ prepareValueForCache(value) {
20
+ return value;
21
+ }
22
+ getAppliedFilters() {
23
+ return this.value;
24
+ }
25
+ get initialValue() {
26
+ return null;
27
+ }
28
+ get size() {
29
+ return this._size$.value;
30
+ }
31
+ get value() {
32
+ return this._value$.value;
33
+ }
34
+ set value(data) {
35
+ this._value$.next(data);
36
+ if (data !== null) {
37
+ this._size$.next(this.computeSize(data));
38
+ }
39
+ }
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZmlsdGVycy9zcmMvbGliL21vZGVscy9maWx0ZXIubW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFbkQsTUFBTSxPQUFnQixVQUFVO0lBQWhDO1FBQ1UsaUJBQVksR0FBYSxJQUFJLENBQUM7UUFFckIsV0FBTSxHQUE0QixJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVqRSxVQUFLLEdBQXVCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0MsWUFBTyxHQUE4QixJQUFJLGVBQWUsQ0FBVyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFOUYsV0FBTSxHQUF5QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBNkN0RSxDQUFDO0lBdkNDLEtBQUs7UUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDakMsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDakMsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWU7UUFDbEMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFjO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhCLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXbGNtRmlsdGVyPFQgPSB1bmtub3duLCBPID0gVD4ge1xuICBwcml2YXRlIF9jYWNoZWRWYWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3NpemUkOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoMCk7XG5cbiAgcmVhZG9ubHkgc2l6ZSQ6IE9ic2VydmFibGU8bnVtYmVyPiA9IHRoaXMuX3NpemUkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZhbHVlJDogQmVoYXZpb3JTdWJqZWN0PFQgfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VCB8IG51bGw+KHRoaXMuaW5pdGlhbFZhbHVlKTtcblxuICByZWFkb25seSB2YWx1ZSQ6IE9ic2VydmFibGU8VCB8IG51bGw+ID0gdGhpcy5fdmFsdWUkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGFic3RyYWN0IGdldCBrZXkoKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGNvbXB1dGVTaXplKHZhbHVlOiBUKTogbnVtYmVyO1xuXG4gIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLmluaXRpYWxWYWx1ZTtcbiAgfVxuXG4gIGNhY2hlVmFsdWUoKTogdm9pZCB7XG4gICAgdGhpcy5fY2FjaGVkVmFsdWUgPSB0aGlzLnByZXBhcmVWYWx1ZUZvckNhY2hlKHRoaXMudmFsdWUpO1xuICB9XG5cbiAgcmVzdG9yZUNhY2hlZFZhbHVlKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLl9jYWNoZWRWYWx1ZTtcbiAgfVxuXG4gIHByZXBhcmVWYWx1ZUZvckNhY2hlKHZhbHVlOiBUIHwgbnVsbCk6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBnZXRBcHBsaWVkRmlsdGVycygpOiBPIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZSBhcyBPO1xuICB9XG5cbiAgZ2V0IGluaXRpYWxWYWx1ZSgpOiBUIHwgbnVsbCB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXQgc2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zaXplJC52YWx1ZTtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBUIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlJC52YWx1ZTtcbiAgfVxuXG4gIHNldCB2YWx1ZShkYXRhOiBUIHwgbnVsbCkge1xuICAgIHRoaXMuX3ZhbHVlJC5uZXh0KGRhdGEpO1xuXG4gICAgaWYgKGRhdGEgIT09IG51bGwpIHtcbiAgICAgIHRoaXMuX3NpemUkLm5leHQodGhpcy5jb21wdXRlU2l6ZShkYXRhKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { __decorate } from "tslib";
2
+ import { ContentChildren, Directive, QueryList } from '@angular/core';
3
+ import { BehaviorSubject, combineLatest, map, startWith, switchMap } from 'rxjs';
4
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
5
+ import { WLCM_FILTER } from '../constants/filter.constants';
6
+ import * as i0 from "@angular/core";
7
+ let WlcmFiltersGroup = class WlcmFiltersGroup {
8
+ constructor() {
9
+ this._size$ = new BehaviorSubject(0);
10
+ this.size$ = this._size$.asObservable();
11
+ }
12
+ ngAfterContentInit() {
13
+ this.handleFiltersListChange();
14
+ }
15
+ resetAll() {
16
+ this.filters.forEach((filter) => filter.reset());
17
+ }
18
+ getAppliedFilters() {
19
+ const appliedFilters = {};
20
+ this.filters.forEach((filter) => {
21
+ appliedFilters[filter.key] = filter.getAppliedFilters();
22
+ });
23
+ return appliedFilters;
24
+ }
25
+ cacheValues() {
26
+ this.filters.forEach((filter) => filter.cacheValue());
27
+ }
28
+ restoreCachedValues() {
29
+ this.filters.forEach((filter) => filter.restoreCachedValue());
30
+ }
31
+ get size() {
32
+ return this._size$.value;
33
+ }
34
+ handleFiltersListChange() {
35
+ this.filters.changes
36
+ .pipe(untilDestroyed(this))
37
+ .pipe(startWith(this.filters))
38
+ .pipe(switchMap((filters) => this.handleSizeChange(filters.toArray())))
39
+ .subscribe();
40
+ }
41
+ handleSizeChange(list) {
42
+ return combineLatest(list.map((filter) => filter.size$)).pipe(map((sizes) => {
43
+ this._size$.next(sizes.reduce((a, b) => a + b, 0));
44
+ return list;
45
+ }));
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
48
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: WlcmFiltersGroup, queries: [{ propertyName: "filters", predicate: WLCM_FILTER, descendants: true }], ngImport: i0 }); }
49
+ };
50
+ WlcmFiltersGroup = __decorate([
51
+ UntilDestroy()
52
+ ], WlcmFiltersGroup);
53
+ export { WlcmFiltersGroup };
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmFiltersGroup, decorators: [{
55
+ type: Directive
56
+ }], propDecorators: { filters: [{
57
+ type: ContentChildren,
58
+ args: [WLCM_FILTER, { descendants: true }]
59
+ }] } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1ncm91cC5tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9tb2RlbHMvZmlsdGVycy1ncm91cC5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBb0IsZUFBZSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0YsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBT3JELElBQWUsZ0JBQWdCLEdBQS9CLE1BQWUsZ0JBQWdCO0lBQS9CO1FBQ1ksV0FBTSxHQUE0QixJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVqRSxVQUFLLEdBQXVCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7S0FtRGpFO0lBL0NDLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBa0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE1BQU0sY0FBYyxHQUF1QixFQUFFLENBQUM7UUFFOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUU7WUFDMUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBa0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTzthQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUE4QixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQzthQUM3RixTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBa0I7UUFDekMsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQWtCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdkUsR0FBRyxDQUFDLENBQUMsS0FBZSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVuRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQXJEbUIsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isa0RBS25CLFdBQVc7O0FBTFIsZ0JBQWdCO0lBRnJDLFlBQVksRUFBRTtHQUVPLGdCQUFnQixDQXNEckM7OzJGQXREcUIsZ0JBQWdCO2tCQURyQyxTQUFTOzhCQU11RCxPQUFPO3NCQUFyRSxlQUFlO3VCQUFDLFdBQVcsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHsgV0xDTV9GSUxURVIgfSBmcm9tICcuLi9jb25zdGFudHMvZmlsdGVyLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBXbGNtRmlsdGVyIH0gZnJvbSAnLi9maWx0ZXIubW9kZWxzJztcblxuZXhwb3J0IHR5cGUgV2xjbUFwcGxpZWRGaWx0ZXJzID0geyBba2V5OiBzdHJpbmddOiB1bmtub3duIH07XG5cbkBVbnRpbERlc3Ryb3koKVxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgV2xjbUZpbHRlcnNHcm91cCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zaXplJDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KDApO1xuXG4gIHJlYWRvbmx5IHNpemUkOiBPYnNlcnZhYmxlPG51bWJlcj4gPSB0aGlzLl9zaXplJC5hc09ic2VydmFibGUoKTtcblxuICBAQ29udGVudENoaWxkcmVuKFdMQ01fRklMVEVSLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pIHByb3RlY3RlZCBmaWx0ZXJzITogUXVlcnlMaXN0PFdsY21GaWx0ZXI+O1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZUZpbHRlcnNMaXN0Q2hhbmdlKCk7XG4gIH1cblxuICByZXNldEFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyOiBXbGNtRmlsdGVyKSA9PiBmaWx0ZXIucmVzZXQoKSk7XG4gIH1cblxuICBnZXRBcHBsaWVkRmlsdGVycygpOiBXbGNtQXBwbGllZEZpbHRlcnMge1xuICAgIGNvbnN0IGFwcGxpZWRGaWx0ZXJzOiBXbGNtQXBwbGllZEZpbHRlcnMgPSB7fTtcblxuICAgIHRoaXMuZmlsdGVycy5mb3JFYWNoKChmaWx0ZXI6IFdsY21GaWx0ZXIpID0+IHtcbiAgICAgIGFwcGxpZWRGaWx0ZXJzW2ZpbHRlci5rZXldID0gZmlsdGVyLmdldEFwcGxpZWRGaWx0ZXJzKCk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gYXBwbGllZEZpbHRlcnM7XG4gIH1cblxuICBjYWNoZVZhbHVlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyOiBXbGNtRmlsdGVyKSA9PiBmaWx0ZXIuY2FjaGVWYWx1ZSgpKTtcbiAgfVxuXG4gIHJlc3RvcmVDYWNoZWRWYWx1ZXMoKTogdm9pZCB7XG4gICAgdGhpcy5maWx0ZXJzLmZvckVhY2goKGZpbHRlcjogV2xjbUZpbHRlcikgPT4gZmlsdGVyLnJlc3RvcmVDYWNoZWRWYWx1ZSgpKTtcbiAgfVxuXG4gIGdldCBzaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemUkLnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVGaWx0ZXJzTGlzdENoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcnMuY2hhbmdlc1xuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5maWx0ZXJzKSlcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoZmlsdGVyczogUXVlcnlMaXN0PFdsY21GaWx0ZXI+KSA9PiB0aGlzLmhhbmRsZVNpemVDaGFuZ2UoZmlsdGVycy50b0FycmF5KCkpKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlU2l6ZUNoYW5nZShsaXN0OiBXbGNtRmlsdGVyW10pOiBPYnNlcnZhYmxlPFdsY21GaWx0ZXJbXT4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KGxpc3QubWFwKChmaWx0ZXI6IFdsY21GaWx0ZXIpID0+IGZpbHRlci5zaXplJCkpLnBpcGUoXG4gICAgICBtYXAoKHNpemVzOiBudW1iZXJbXSkgPT4ge1xuICAgICAgICB0aGlzLl9zaXplJC5uZXh0KHNpemVzLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApKTtcblxuICAgICAgICByZXR1cm4gbGlzdDtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './filter.models';
2
+ export * from './array-filter.models';
3
+ export * from './filters-group.models';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2ZpbHRlcnMvc3JjL2xpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbHRlci5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcnJheS1maWx0ZXIubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVycy1ncm91cC5tb2RlbHMnO1xuIl19