@elderbyte/ngx-starter 16.2.12 → 16.3.1

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.
@@ -1,6 +1,7 @@
1
1
  import { Filter } from './filter';
2
2
  import { Observable } from "rxjs";
3
3
  export declare class FilterContext {
4
+ static empty(): FilterContext;
4
5
  /***************************************************************************
5
6
  * *
6
7
  * Fields *
@@ -4,7 +4,7 @@ import { SearchInput } from './model/search-input';
4
4
  import { Filter } from '../../../common/data/filters/filter';
5
5
  import { FilterContext } from '../../../common/data/filters/filter-context';
6
6
  import { SearchInputState } from './model/search-input-state';
7
- import SearchContextOrchestrator from "./search-context-orchestrator";
7
+ import SearchFilterContext from './search-filter-context';
8
8
  import * as i0 from "@angular/core";
9
9
  /**
10
10
  * The search container manages a group of search-inputs
@@ -21,13 +21,14 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
21
21
  private readonly destroy$;
22
22
  private readonly _searchInputs$;
23
23
  private readonly _searchStates$;
24
- private _searchContextOrchestrator;
24
+ private readonly _searchFilterContext;
25
25
  /***************************************************************************
26
26
  * *
27
27
  * Life Cycle *
28
28
  * *
29
29
  **************************************************************************/
30
30
  ngAfterContentInit(): void;
31
+ private applyFilters;
31
32
  ngAfterViewInit(): void;
32
33
  ngOnDestroy(): void;
33
34
  /***************************************************************************
@@ -49,7 +50,7 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
49
50
  get attributesSnapshot(): SearchInput[];
50
51
  get states$(): Observable<SearchInputState[]>;
51
52
  get statesSnapshot(): SearchInputState[];
52
- get searchContextOrchestrator(): SearchContextOrchestrator;
53
+ get searchFilterContext(): SearchFilterContext;
53
54
  /**
54
55
  * Returns the current user touched attributes. (ignoring fallbacks)
55
56
  */
@@ -1,9 +1,13 @@
1
- import { Observable } from "rxjs";
2
- import { Filter } from "../../../common/data/filters/filter";
3
- import { FilterContext } from "../../../common/data/filters/filter-context";
4
- export default class SearchContextOrchestrator {
5
- readonly filterContext: FilterContext;
6
- private forcedFilters?;
1
+ import { Observable } from 'rxjs';
2
+ import { Filter } from '../../../common/data/filters/filter';
3
+ import { FilterContext } from '../../../common/data/filters/filter-context';
4
+ export default class SearchFilterContext {
5
+ /***************************************************************************
6
+ * *
7
+ * Private methods *
8
+ * *
9
+ **************************************************************************/
10
+ private readonly _filterContext$;
7
11
  private readonly initialFilterContext;
8
12
  private readonly log;
9
13
  /***************************************************************************
@@ -11,12 +15,13 @@ export default class SearchContextOrchestrator {
11
15
  * Constructor *
12
16
  * *
13
17
  **************************************************************************/
14
- constructor(filterContext: FilterContext, forcedFilters?: Filter[]);
18
+ constructor();
15
19
  /***************************************************************************
16
20
  * *
17
21
  * Properties *
18
22
  * *
19
23
  **************************************************************************/
24
+ get filterContext(): FilterContext;
20
25
  get initialFilters$(): Observable<Filter[]>;
21
26
  get filters(): Observable<Filter[]>;
22
27
  /***************************************************************************
@@ -24,6 +29,6 @@ export default class SearchContextOrchestrator {
24
29
  * Public Api *
25
30
  * *
26
31
  **************************************************************************/
32
+ init(ctx: FilterContext, forcedFilters: Filter[]): void;
27
33
  addInitialFilters(filters: Filter[]): void;
28
- applyFilters(userFilters: Filter[]): void;
29
34
  }
@@ -104,6 +104,7 @@ export declare abstract class ElderSelectBase<TId, TEntity, TValue> extends Elde
104
104
  set filters(filters: Filter[]);
105
105
  get filters(): Filter[];
106
106
  set dataSource(source: IDataSource<TEntity>);
107
+ get dataSource(): IDataSource<TEntity>;
107
108
  set data(data: Array<TEntity> | IDataContext<TEntity>);
108
109
  set dataContext(data: IDataContext<TEntity>);
109
110
  get dataContext(): IDataContext<TEntity>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elderbyte/ngx-starter",
3
- "version": "16.2.12",
3
+ "version": "16.3.1",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^16.0.0 || ^17.0.0",
6
6
  "@angular/common": "^16.0.0 || ^17.0.0",
@@ -1,55 +0,0 @@
1
- import { FilterContext } from "../../../common/data/filters/filter-context";
2
- import { startWith } from "rxjs/operators";
3
- import { LoggerFactory } from "@elderbyte/ts-logger";
4
- export default class SearchContextOrchestrator {
5
- /***************************************************************************
6
- * *
7
- * Constructor *
8
- * *
9
- **************************************************************************/
10
- constructor(filterContext, forcedFilters) {
11
- this.filterContext = filterContext;
12
- this.forcedFilters = forcedFilters;
13
- this.initialFilterContext = new FilterContext();
14
- this.log = LoggerFactory.getLogger(this.constructor.name);
15
- this.initialFilterContext.updateFilters(filterContext.filtersSnapshot);
16
- if (forcedFilters) {
17
- this.initialFilterContext.updateFilters(forcedFilters);
18
- }
19
- }
20
- /***************************************************************************
21
- * *
22
- * Properties *
23
- * *
24
- **************************************************************************/
25
- get initialFilters$() {
26
- return this.initialFilterContext.filters
27
- .pipe(startWith(this.initialFilterContext.filtersSnapshot));
28
- }
29
- get filters() {
30
- return this.filterContext.filters;
31
- }
32
- /***************************************************************************
33
- * *
34
- * Public Api *
35
- * *
36
- **************************************************************************/
37
- addInitialFilters(filters) {
38
- this.initialFilterContext.updateFilters(filters);
39
- }
40
- applyFilters(userFilters) {
41
- const context = this.filterContext;
42
- if (context) {
43
- context.updateFilters(userFilters);
44
- context.mergeFilters(this.forcedFilters);
45
- this.log.trace("Search-Model filters updated:", Array.from(context.filtersSnapshot));
46
- }
47
- else {
48
- this.log.warn("Failed to apply filters since no FilterContext is available!", {
49
- userFilters: userFilters,
50
- forcedFilters: this.forcedFilters
51
- });
52
- }
53
- }
54
- }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbnRleHQtb3JjaGVzdHJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWNvbnRleHQtb3JjaGVzdHJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELE1BQU0sQ0FBQyxPQUFPLE9BQU8seUJBQXlCO0lBSzVDOzs7O2dGQUk0RTtJQUU1RSxZQUNrQixhQUE0QixFQUNwQyxhQUF3QjtRQURoQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBVztRQVpqQix5QkFBb0IsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBRTNDLFFBQUcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFZcEUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkUsSUFBSSxhQUFhLEVBQUU7WUFDakIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUN4RDtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU87YUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxpQkFBaUIsQ0FBQyxPQUFpQjtRQUN4QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTSxZQUFZLENBQ2pCLFdBQXFCO1FBRXJCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDbkMsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLCtCQUErQixFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7U0FDdEY7YUFBTTtZQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDhEQUE4RCxFQUFFO2dCQUM1RSxXQUFXLEVBQUUsV0FBVztnQkFDeEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO2FBQ2xDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztDQVFGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tIFwiLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXJcIjtcbmltcG9ydCB7IEZpbHRlckNvbnRleHQgfSBmcm9tIFwiLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXItY29udGV4dFwiO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBMb2dnZXJGYWN0b3J5IH0gZnJvbSBcIkBlbGRlcmJ5dGUvdHMtbG9nZ2VyXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNlYXJjaENvbnRleHRPcmNoZXN0cmF0b3Ige1xuICBwcml2YXRlIHJlYWRvbmx5IGluaXRpYWxGaWx0ZXJDb250ZXh0ID0gbmV3IEZpbHRlckNvbnRleHQoKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGZpbHRlckNvbnRleHQ6IEZpbHRlckNvbnRleHQsXG4gICAgcHJpdmF0ZSBmb3JjZWRGaWx0ZXJzPzogRmlsdGVyW11cbiAgKSB7XG4gICAgdGhpcy5pbml0aWFsRmlsdGVyQ29udGV4dC51cGRhdGVGaWx0ZXJzKGZpbHRlckNvbnRleHQuZmlsdGVyc1NuYXBzaG90KTtcbiAgICBpZiAoZm9yY2VkRmlsdGVycykge1xuICAgICAgdGhpcy5pbml0aWFsRmlsdGVyQ29udGV4dC51cGRhdGVGaWx0ZXJzKGZvcmNlZEZpbHRlcnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgaW5pdGlhbEZpbHRlcnMkKCk6IE9ic2VydmFibGU8RmlsdGVyW10+IHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsRmlsdGVyQ29udGV4dC5maWx0ZXJzXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5pbml0aWFsRmlsdGVyQ29udGV4dC5maWx0ZXJzU25hcHNob3QpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmlsdGVycygpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJDb250ZXh0LmZpbHRlcnM7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFwaSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgYWRkSW5pdGlhbEZpbHRlcnMoZmlsdGVyczogRmlsdGVyW10pIHtcbiAgICB0aGlzLmluaXRpYWxGaWx0ZXJDb250ZXh0LnVwZGF0ZUZpbHRlcnMoZmlsdGVycyk7XG4gIH1cblxuICBwdWJsaWMgYXBwbHlGaWx0ZXJzKFxuICAgIHVzZXJGaWx0ZXJzOiBGaWx0ZXJbXVxuICApOiB2b2lkIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5maWx0ZXJDb250ZXh0O1xuICAgIGlmIChjb250ZXh0KSB7XG4gICAgICBjb250ZXh0LnVwZGF0ZUZpbHRlcnModXNlckZpbHRlcnMpO1xuICAgICAgY29udGV4dC5tZXJnZUZpbHRlcnModGhpcy5mb3JjZWRGaWx0ZXJzKTtcbiAgICAgIHRoaXMubG9nLnRyYWNlKFwiU2VhcmNoLU1vZGVsIGZpbHRlcnMgdXBkYXRlZDpcIiwgQXJyYXkuZnJvbShjb250ZXh0LmZpbHRlcnNTbmFwc2hvdCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZy53YXJuKFwiRmFpbGVkIHRvIGFwcGx5IGZpbHRlcnMgc2luY2Ugbm8gRmlsdGVyQ29udGV4dCBpcyBhdmFpbGFibGUhXCIsIHtcbiAgICAgICAgdXNlckZpbHRlcnM6IHVzZXJGaWx0ZXJzLFxuICAgICAgICBmb3JjZWRGaWx0ZXJzOiB0aGlzLmZvcmNlZEZpbHRlcnNcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG59XG4iXX0=