@elderbyte/ngx-starter 16.3.1 → 16.3.2

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.
@@ -13,10 +13,8 @@ export declare class ElderInitialValueDirective implements OnDestroy {
13
13
  **************************************************************************/
14
14
  private readonly log;
15
15
  private initialValue$;
16
- private ngModelValue$;
17
16
  private readonly destroy$;
18
17
  private readonly initialDone$;
19
- private isInitial;
20
18
  /***************************************************************************
21
19
  * *
22
20
  * Constructor *
@@ -36,12 +34,6 @@ export declare class ElderInitialValueDirective implements OnDestroy {
36
34
  get valueChanges$(): import("rxjs").Observable<any>;
37
35
  applyInitialValue(value: any): void;
38
36
  ngOnDestroy(): void;
39
- /***************************************************************************
40
- * *
41
- * Private methods *
42
- * *
43
- **************************************************************************/
44
- private filterInitialValue;
45
37
  static ɵfac: i0.ɵɵFactoryDeclaration<ElderInitialValueDirective, [{ host: true; }]>;
46
38
  static ɵdir: i0.ɵɵDirectiveDeclaration<ElderInitialValueDirective, "[elderInitialValue]", ["elderInitialValue"], {}, {}, never, never, false, never>;
47
39
  }
@@ -1,10 +1,9 @@
1
- import { AfterContentInit, AfterViewInit, OnDestroy } from '@angular/core';
2
- import { Observable } from 'rxjs/internal/Observable';
3
- import { SearchInput } from './model/search-input';
4
- import { Filter } from '../../../common/data/filters/filter';
5
- import { FilterContext } from '../../../common/data/filters/filter-context';
6
- import { SearchInputState } from './model/search-input-state';
7
- import SearchFilterContext from './search-filter-context';
1
+ import { AfterContentInit, AfterViewInit, OnDestroy } from "@angular/core";
2
+ import { Observable } from "rxjs/internal/Observable";
3
+ import { SearchInput } from "./model/search-input";
4
+ import { Filter } from "../../../common/data/filters/filter";
5
+ import { FilterContext } from "../../../common/data/filters/filter-context";
6
+ import { SearchInputState } from "./model/search-input-state";
8
7
  import * as i0 from "@angular/core";
9
8
  /**
10
9
  * The search container manages a group of search-inputs
@@ -21,7 +20,7 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
21
20
  private readonly destroy$;
22
21
  private readonly _searchInputs$;
23
22
  private readonly _searchStates$;
24
- private readonly _searchFilterContext;
23
+ private readonly _filterContext$;
25
24
  /***************************************************************************
26
25
  * *
27
26
  * Life Cycle *
@@ -36,7 +35,7 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
36
35
  * Properties *
37
36
  * *
38
37
  **************************************************************************/
39
- set filterContext(value: FilterContext | '');
38
+ set filterContext(value: FilterContext | "");
40
39
  get filterContext(): FilterContext;
41
40
  /**
42
41
  * Forced filters are always merged into the final FilterContext.
@@ -50,7 +49,6 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
50
49
  get attributesSnapshot(): SearchInput[];
51
50
  get states$(): Observable<SearchInputState[]>;
52
51
  get statesSnapshot(): SearchInputState[];
53
- get searchFilterContext(): SearchFilterContext;
54
52
  /**
55
53
  * Returns the current user touched attributes. (ignoring fallbacks)
56
54
  */
@@ -70,7 +68,9 @@ export declare class ElderSearchContextDirective implements AfterViewInit, OnDes
70
68
  * Private *
71
69
  * *
72
70
  **************************************************************************/
73
- private subscribeInitialFilters;
71
+ applyModelToInputs(): void;
72
+ private mergeFilters;
73
+ private applyFiltersToInputs;
74
74
  private findFilterForInput;
75
75
  private convertToFilters;
76
76
  static ɵfac: i0.ɵɵFactoryDeclaration<ElderSearchContextDirective, never>;
@@ -1,4 +1,4 @@
1
- import { AfterViewInit, OnDestroy } from "@angular/core";
1
+ import { AfterViewInit, OnDestroy, OnInit } from "@angular/core";
2
2
  import { ElderSearchContextDirective } from "./elder-search-context.directive";
3
3
  import { Observable } from "rxjs/internal/Observable";
4
4
  import { NgModel } from "@angular/forms";
@@ -10,7 +10,7 @@ import * as i0 from "@angular/core";
10
10
  /**
11
11
  * Search name adapter for input controls.
12
12
  */
13
- export declare class ElderSearchInputDirective implements OnDestroy, AfterViewInit, SearchInput {
13
+ export declare class ElderSearchInputDirective implements SearchInput, OnInit, AfterViewInit, OnDestroy {
14
14
  private searchContext;
15
15
  private ngModel;
16
16
  private readonly initialValueDirective;
@@ -53,6 +53,7 @@ export declare class ElderSearchInputDirective implements OnDestroy, AfterViewIn
53
53
  * Life Cycle *
54
54
  * *
55
55
  **************************************************************************/
56
+ ngOnInit(): void;
56
57
  ngAfterViewInit(): void;
57
58
  ngOnDestroy(): void;
58
59
  /***************************************************************************
@@ -9,19 +9,53 @@ export interface FilterParamData {
9
9
  filterId: string;
10
10
  isArray: boolean;
11
11
  }
12
+ export interface SearchMapUpdate {
13
+ value: Map<string, ElderSearchContextFilters>;
14
+ emit: boolean;
15
+ }
12
16
  export declare class ElderSearchUrlBindingService implements OnDestroy {
13
17
  private router;
14
18
  private route;
19
+ /***************************************************************************
20
+ * *
21
+ * Fields *
22
+ * *
23
+ **************************************************************************/
24
+ private readonly log;
15
25
  private _searchMap$;
16
26
  private _initialSearchMap$;
17
27
  private readonly searchParamPrefix;
18
28
  private unsubscribe$;
29
+ /***************************************************************************
30
+ * *
31
+ * Constructor *
32
+ * *
33
+ **************************************************************************/
19
34
  constructor(router: Router, route: ActivatedRoute);
20
- private resetSearchParams;
21
- private buildQueryParams;
22
- private convertValueToArrayOrSingleValue;
35
+ /***************************************************************************
36
+ * *
37
+ * Life Cycle *
38
+ * *
39
+ **************************************************************************/
40
+ ngOnDestroy(): void;
41
+ /***************************************************************************
42
+ * *
43
+ * Properties *
44
+ * *
45
+ **************************************************************************/
23
46
  get initialSearchMap$(): BehaviorSubject<Map<string, ElderSearchContextFilters>>;
47
+ /***************************************************************************
48
+ * *
49
+ * Public API *
50
+ * *
51
+ **************************************************************************/
24
52
  updateFiltersForContext(searchContextId: string, filters: Filter[]): void;
53
+ resetFilterForContext(contextId: string): void;
54
+ /***************************************************************************
55
+ * *
56
+ * Private methods *
57
+ * *
58
+ **************************************************************************/
25
59
  private handleSearchParameters;
26
60
  private extractSearchParameters;
27
61
  private buildSearchContextMap;
@@ -32,7 +66,9 @@ export declare class ElderSearchUrlBindingService implements OnDestroy {
32
66
  private convertFilterStringToFilter;
33
67
  private isSingularArrayValue;
34
68
  private convertValueToArray;
35
- ngOnDestroy(): void;
69
+ private resetSearchParams;
70
+ private buildQueryParams;
71
+ private convertValueToArrayOrSingleValue;
36
72
  static ɵfac: i0.ɵɵFactoryDeclaration<ElderSearchUrlBindingService, never>;
37
73
  static ɵprov: i0.ɵɵInjectableDeclaration<ElderSearchUrlBindingService>;
38
74
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elderbyte/ngx-starter",
3
- "version": "16.3.1",
3
+ "version": "16.3.2",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^16.0.0 || ^17.0.0",
6
6
  "@angular/common": "^16.0.0 || ^17.0.0",
@@ -1,50 +0,0 @@
1
- import { BehaviorSubject } from 'rxjs';
2
- import { FilterContext } from '../../../common/data/filters/filter-context';
3
- import { startWith } from 'rxjs/operators';
4
- import { LoggerFactory } from '@elderbyte/ts-logger';
5
- export default class SearchFilterContext {
6
- /***************************************************************************
7
- * *
8
- * Constructor *
9
- * *
10
- **************************************************************************/
11
- constructor() {
12
- /***************************************************************************
13
- * *
14
- * Private methods *
15
- * *
16
- **************************************************************************/
17
- this._filterContext$ = new BehaviorSubject(null);
18
- this.initialFilterContext = new FilterContext();
19
- this.log = LoggerFactory.getLogger(this.constructor.name);
20
- }
21
- /***************************************************************************
22
- * *
23
- * Properties *
24
- * *
25
- **************************************************************************/
26
- get filterContext() {
27
- return this._filterContext$.getValue();
28
- }
29
- get initialFilters$() {
30
- return this.initialFilterContext.filters
31
- .pipe(startWith(this.initialFilterContext.filtersSnapshot));
32
- }
33
- get filters() {
34
- return this.filterContext.filters;
35
- }
36
- /***************************************************************************
37
- * *
38
- * Public Api *
39
- * *
40
- **************************************************************************/
41
- init(ctx, forcedFilters) {
42
- this._filterContext$.next(ctx);
43
- this.initialFilterContext.updateFilters(ctx.filtersSnapshot);
44
- this.initialFilterContext.updateFilters(forcedFilters);
45
- }
46
- addInitialFilters(filters) {
47
- this.initialFilterContext.updateFilters(filters);
48
- }
49
- }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWZpbHRlci1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFFakQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsTUFBTSxDQUFDLE9BQU8sT0FBTyxtQkFBbUI7SUFjcEM7Ozs7Z0ZBSTRFO0lBRTVFO1FBbEJBOzs7O29GQUk0RTtRQUUzRCxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUUzRCx5QkFBb0IsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBRTNDLFFBQUcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFTbkUsQ0FBQztJQUVKOzs7O2dGQUk0RTtJQUU1RSxJQUFXLGFBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTzthQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsSUFBSSxDQUNQLEdBQWtCLEVBQ2xCLGFBQXVCO1FBRXZCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLGlCQUFpQixDQUFDLE9BQWlCO1FBQ3RDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckQsQ0FBQztDQVFKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWx0ZXJ9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kYXRhL2ZpbHRlcnMvZmlsdGVyJztcbmltcG9ydCB7RmlsdGVyQ29udGV4dH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXItY29udGV4dCc7XG5pbXBvcnQge3N0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNlYXJjaEZpbHRlckNvbnRleHQge1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2ZpbHRlckNvbnRleHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGaWx0ZXJDb250ZXh0PihudWxsKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5pdGlhbEZpbHRlckNvbnRleHQgPSBuZXcgRmlsdGVyQ29udGV4dCgpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICkge31cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBwdWJsaWMgZ2V0IGZpbHRlckNvbnRleHQoKTogRmlsdGVyQ29udGV4dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWx0ZXJDb250ZXh0JC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW5pdGlhbEZpbHRlcnMkKCk6IE9ic2VydmFibGU8RmlsdGVyW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdGlhbEZpbHRlckNvbnRleHQuZmlsdGVyc1xuICAgICAgICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMuaW5pdGlhbEZpbHRlckNvbnRleHQuZmlsdGVyc1NuYXBzaG90KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWx0ZXJzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJDb250ZXh0LmZpbHRlcnM7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBQdWJsaWMgQXBpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHB1YmxpYyBpbml0KFxuICAgICAgICBjdHg6IEZpbHRlckNvbnRleHQsXG4gICAgICAgIGZvcmNlZEZpbHRlcnM6IEZpbHRlcltdXG4gICAgKTogdm9pZHtcbiAgICAgICAgdGhpcy5fZmlsdGVyQ29udGV4dCQubmV4dChjdHgpO1xuICAgICAgICB0aGlzLmluaXRpYWxGaWx0ZXJDb250ZXh0LnVwZGF0ZUZpbHRlcnMoY3R4LmZpbHRlcnNTbmFwc2hvdCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbEZpbHRlckNvbnRleHQudXBkYXRlRmlsdGVycyhmb3JjZWRGaWx0ZXJzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkSW5pdGlhbEZpbHRlcnMoZmlsdGVyczogRmlsdGVyW10pIHtcbiAgICAgICAgdGhpcy5pbml0aWFsRmlsdGVyQ29udGV4dC51cGRhdGVGaWx0ZXJzKGZpbHRlcnMpO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbn1cbiJdfQ==
@@ -1,34 +0,0 @@
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$;
11
- private readonly initialFilterContext;
12
- private readonly log;
13
- /***************************************************************************
14
- * *
15
- * Constructor *
16
- * *
17
- **************************************************************************/
18
- constructor();
19
- /***************************************************************************
20
- * *
21
- * Properties *
22
- * *
23
- **************************************************************************/
24
- get filterContext(): FilterContext;
25
- get initialFilters$(): Observable<Filter[]>;
26
- get filters(): Observable<Filter[]>;
27
- /***************************************************************************
28
- * *
29
- * Public Api *
30
- * *
31
- **************************************************************************/
32
- init(ctx: FilterContext, forcedFilters: Filter[]): void;
33
- addInitialFilters(filters: Filter[]): void;
34
- }