@fundamental-ngx/cdk 0.42.1-rc.1 → 0.42.1-rc.3

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,11 +1,9 @@
1
1
  import { EventEmitter, OnDestroy } from '@angular/core';
2
2
  import { DestroyedService } from '@fundamental-ngx/cdk/utils';
3
3
  import { BehaviorSubject } from 'rxjs';
4
- import { DataSource, DataSourceParser, DataSourceProvider } from './models';
4
+ import { DataSource, DataSourceProvider } from './models';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class DataSourceDirective<T = any, P extends DataSourceProvider<T> = DataSourceProvider<T>> implements OnDestroy {
7
- private readonly _destroyed$;
8
- private readonly _dataSourceTransformer;
9
7
  /**
10
8
  * Data source.
11
9
  * @param source
@@ -35,13 +33,15 @@ export declare class DataSourceDirective<T = any, P extends DataSourceProvider<T
35
33
  */
36
34
  readonly isLoading: EventEmitter<boolean>;
37
35
  /** @hidden */
38
- constructor(_destroyed$: DestroyedService, _dataSourceTransformer: DataSourceParser<T, P>);
36
+ protected readonly _destroyed$: DestroyedService;
37
+ /** @hidden */
38
+ private readonly _dataSourceTransformer;
39
39
  /** @hidden */
40
40
  private _initializeDataSource;
41
41
  /** @hidden */
42
42
  ngOnDestroy(): void;
43
43
  /** @Hidden */
44
- private _toDataStream;
44
+ protected _toDataStream(source: DataSource<T> | null): P | undefined;
45
45
  static ɵfac: i0.ɵɵFactoryDeclaration<DataSourceDirective<any, any>, never>;
46
46
  static ɵdir: i0.ɵɵDirectiveDeclaration<DataSourceDirective<any, any>, "[fdkDataSource]", never, { "dataSource": "dataSource"; }, { "dataSourceChanged": "dataSourceChanged"; "dataChanged": "dataChanged"; "isLoading": "isLoading"; }, never, never, true, never>;
47
47
  }
@@ -1,28 +1,12 @@
1
- import { Directive, EventEmitter, Inject, Input, Output } from '@angular/core';
1
+ import { Directive, EventEmitter, inject, Input, Output } from '@angular/core';
2
2
  import { DestroyedService } from '@fundamental-ngx/cdk/utils';
3
3
  import { BehaviorSubject, Subscription } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { isDataSource } from './helpers/is-datasource';
6
6
  import { FD_DATA_SOURCE_TRANSFORMER } from './tokens';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "@fundamental-ngx/cdk/utils";
9
8
  export class DataSourceDirective {
10
- /**
11
- * Data source.
12
- * @param source
13
- */
14
- set dataSource(source) {
15
- this._dataSource = source;
16
- this._initializeDataSource();
17
- this.dataSourceChanged.next();
18
- }
19
- get dataSource() {
20
- return this._dataSource;
21
- }
22
- /** @hidden */
23
- constructor(_destroyed$, _dataSourceTransformer) {
24
- this._destroyed$ = _destroyed$;
25
- this._dataSourceTransformer = _dataSourceTransformer;
9
+ constructor() {
26
10
  /** @hidden */
27
11
  this._dsSubscription = new Subscription();
28
12
  /**
@@ -41,6 +25,22 @@ export class DataSourceDirective {
41
25
  * Event emitted when data provider loading state has been changed.
42
26
  */
43
27
  this.isLoading = new EventEmitter();
28
+ /** @hidden */
29
+ this._destroyed$ = inject(DestroyedService);
30
+ /** @hidden */
31
+ this._dataSourceTransformer = inject(FD_DATA_SOURCE_TRANSFORMER);
32
+ }
33
+ /**
34
+ * Data source.
35
+ * @param source
36
+ */
37
+ set dataSource(source) {
38
+ this._dataSource = source;
39
+ this._initializeDataSource();
40
+ this.dataSourceChanged.next();
41
+ }
42
+ get dataSource() {
43
+ return this._dataSource;
44
44
  }
45
45
  /** @hidden */
46
46
  _initializeDataSource() {
@@ -76,7 +76,7 @@ export class DataSourceDirective {
76
76
  : undefined;
77
77
  }
78
78
  }
79
- DataSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, deps: [{ token: i1.DestroyedService }, { token: FD_DATA_SOURCE_TRANSFORMER }], target: i0.ɵɵFactoryTarget.Directive });
79
+ DataSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
80
80
  DataSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: DataSourceDirective, isStandalone: true, selector: "[fdkDataSource]", inputs: { dataSource: "dataSource" }, outputs: { dataSourceChanged: "dataSourceChanged", dataChanged: "dataChanged", isLoading: "isLoading" }, providers: [DestroyedService], ngImport: i0 });
81
81
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, decorators: [{
82
82
  type: Directive,
@@ -85,10 +85,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
85
85
  standalone: true,
86
86
  providers: [DestroyedService]
87
87
  }]
88
- }], ctorParameters: function () { return [{ type: i1.DestroyedService }, { type: undefined, decorators: [{
89
- type: Inject,
90
- args: [FD_DATA_SOURCE_TRANSFORMER]
91
- }] }]; }, propDecorators: { dataSource: [{
88
+ }], propDecorators: { dataSource: [{
92
89
  type: Input
93
90
  }], dataSourceChanged: [{
94
91
  type: Output
@@ -97,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
97
94
  }], isLoading: [{
98
95
  type: Output
99
96
  }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zb3VyY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQU90RCxNQUFNLE9BQU8sbUJBQW1CO0lBRzVCOzs7T0FHRztJQUNILElBQ0ksVUFBVSxDQUFDLE1BQStCO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFrQ0QsY0FBYztJQUNkLFlBQ3FCLFdBQTZCLEVBQ08sc0JBQThDO1FBRGxGLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUNPLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUE3QnZHLGNBQWM7UUFDTixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0M7O1dBRUc7UUFDTSxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRXJEOztXQUVHO1FBRU0sc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV0RDs7V0FFRztRQUVNLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUvQzs7V0FFRztRQUVNLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBTTlDLENBQUM7SUFFSixjQUFjO0lBQ04scUJBQXFCO1FBQ3pCLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLENBQUM7WUFFdkMsSUFBSSxDQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsQ0FBQztTQUN2QztRQUNELDhFQUE4RTtRQUM5RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMxQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXO2FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDaEUsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDckYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxjQUFjO0lBQ04sYUFBYSxDQUFDLE1BQTRCO1FBQzlDLE9BQU8sQ0FBQyxNQUFNO1lBQ1YsQ0FBQyxDQUFDLFNBQVM7WUFDWCxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQjtnQkFDN0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2dCQUMzQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3BCLENBQUM7O2dIQW5HUSxtQkFBbUIsa0RBcURoQiwwQkFBMEI7b0dBckQ3QixtQkFBbUIsNk1BRmpCLENBQUMsZ0JBQWdCLENBQUM7MkZBRXBCLG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQ2hDOzswQkFzRFEsTUFBTTsyQkFBQywwQkFBMEI7NENBN0NsQyxVQUFVO3NCQURiLEtBQUs7Z0JBNkJHLGlCQUFpQjtzQkFEekIsTUFBTTtnQkFPRSxXQUFXO3NCQURuQixNQUFNO2dCQU9FLFNBQVM7c0JBRGpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgaXNEYXRhU291cmNlIH0gZnJvbSAnLi9oZWxwZXJzL2lzLWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgRGF0YVNvdXJjZSwgRGF0YVNvdXJjZVBhcnNlciwgRGF0YVNvdXJjZVByb3ZpZGVyIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgRkRfREFUQV9TT1VSQ0VfVFJBTlNGT1JNRVIgfSBmcm9tICcuL3Rva2Vucyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2Zka0RhdGFTb3VyY2VdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW0Rlc3Ryb3llZFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFTb3VyY2VEaXJlY3RpdmU8VCA9IGFueSwgUCBleHRlbmRzIERhdGFTb3VyY2VQcm92aWRlcjxUPiA9IERhdGFTb3VyY2VQcm92aWRlcjxUPj5cbiAgICBpbXBsZW1lbnRzIE9uRGVzdHJveVxue1xuICAgIC8qKlxuICAgICAqIERhdGEgc291cmNlLlxuICAgICAqIEBwYXJhbSBzb3VyY2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBkYXRhU291cmNlKHNvdXJjZTogRGF0YVNvdXJjZTxULCBQPiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fZGF0YVNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZURhdGFTb3VyY2UoKTtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlZC5uZXh0KCk7XG4gICAgfVxuXG4gICAgZ2V0IGRhdGFTb3VyY2UoKTogRGF0YVNvdXJjZTxULCBQPiB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YVNvdXJjZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RhdGFTb3VyY2U6IERhdGFTb3VyY2U8VCwgUD4gfCBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBkYXRhU291cmNlUHJvdmlkZXI6IFAgfCB1bmRlZmluZWQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RzU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqXG4gICAgICogRGF0YSBzdHJlYW0uIEVtaXRzIHdoZW4gbmV3IGRhdGEgcmV0cmlldmVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRhdGFDaGFuZ2VkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPihbXSk7XG5cbiAgICAvKipcbiAgICAgKiBFbWl0cyB3aGVuIHRoZSBkYXRhIHNvdXJjZSBvYmplY3QgaGFzIGJlZW4gY2hhbmdlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBkYXRhU291cmNlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBkYXRhc291cmNlIGNvbnRlbnQgaGFzIGJlZW4gY2hhbmdlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBkYXRhQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VFtdPigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGRhdGEgcHJvdmlkZXIgbG9hZGluZyBzdGF0ZSBoYXMgYmVlbiBjaGFuZ2VkLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGlzTG9hZGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3llZCQ6IERlc3Ryb3llZFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRkRfREFUQV9TT1VSQ0VfVFJBTlNGT1JNRVIpIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFTb3VyY2VUcmFuc2Zvcm1lcjogRGF0YVNvdXJjZVBhcnNlcjxULCBQPlxuICAgICkge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaW5pdGlhbGl6ZURhdGFTb3VyY2UoKTogdm9pZCB7XG4gICAgICAgIGlmIChpc0RhdGFTb3VyY2UodGhpcy5kYXRhU291cmNlKSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlUHJvdmlkZXI/LnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIENvbnZlcnQgd2hhdGV2ZXIgY29tZXMgaW4gYXMgRGF0YVNvdXJjZSwgc28gd2UgY2FuIHdvcmsgd2l0aCBpdCBpZGVudGljYWxseVxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VQcm92aWRlciA9IHRoaXMuX3RvRGF0YVN0cmVhbSh0aGlzLmRhdGFTb3VyY2UpO1xuXG4gICAgICAgIGlmICghdGhpcy5kYXRhU291cmNlUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZVByb3ZpZGVyLmRhdGFMb2FkaW5nXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGlzTG9hZGluZykgPT4gdGhpcy5pc0xvYWRpbmcuZW1pdChpc0xvYWRpbmcpKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZVByb3ZpZGVyLmRhdGFDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFDaGFuZ2VkLmVtaXQoZGF0YSk7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlZCQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlUHJvdmlkZXI/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBASGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdG9EYXRhU3RyZWFtKHNvdXJjZTogRGF0YVNvdXJjZTxUPiB8IG51bGwpOiBQIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuICFzb3VyY2VcbiAgICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgICA6IHRoaXMuX2RhdGFTb3VyY2VUcmFuc2Zvcm1lclxuICAgICAgICAgICAgPyB0aGlzLl9kYXRhU291cmNlVHJhbnNmb3JtZXIucGFyc2Uoc291cmNlKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxufVxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zb3VyY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBT3RELE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUE2QkksY0FBYztRQUNOLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU3Qzs7V0FFRztRQUNNLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBRSxDQUFDLENBQUM7UUFFckQ7O1dBRUc7UUFFTSxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXREOztXQUVHO1FBRU0sZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRS9DOztXQUVHO1FBRU0sY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFakQsY0FBYztRQUNLLGdCQUFXLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFMUQsY0FBYztRQUNHLDJCQUFzQixHQUFHLE1BQU0sQ0FBeUIsMEJBQTBCLENBQUMsQ0FBQztLQThDeEc7SUFqR0c7OztPQUdHO0lBQ0gsSUFDSSxVQUFVLENBQUMsTUFBK0I7UUFDMUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQXdDRCxjQUFjO0lBQ04scUJBQXFCO1FBQ3pCLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLENBQUM7WUFFdkMsSUFBSSxDQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsQ0FBQztTQUN2QztRQUNELDhFQUE4RTtRQUM5RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMxQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXO2FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDaEUsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDckYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxjQUFjO0lBQ0osYUFBYSxDQUFDLE1BQTRCO1FBQ2hELE9BQU8sQ0FBQyxNQUFNO1lBQ1YsQ0FBQyxDQUFDLFNBQVM7WUFDWCxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQjtnQkFDN0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2dCQUMzQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3BCLENBQUM7O2dIQW5HUSxtQkFBbUI7b0dBQW5CLG1CQUFtQiw2TUFGakIsQ0FBQyxnQkFBZ0IsQ0FBQzsyRkFFcEIsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDaEM7OEJBU08sVUFBVTtzQkFEYixLQUFLO2dCQTZCRyxpQkFBaUI7c0JBRHpCLE1BQU07Z0JBT0UsV0FBVztzQkFEbkIsTUFBTTtnQkFPRSxTQUFTO3NCQURqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN0cm95ZWRTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGlzRGF0YVNvdXJjZSB9IGZyb20gJy4vaGVscGVycy9pcy1kYXRhc291cmNlJztcbmltcG9ydCB7IERhdGFTb3VyY2UsIERhdGFTb3VyY2VQYXJzZXIsIERhdGFTb3VyY2VQcm92aWRlciB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEZEX0RBVEFfU09VUkNFX1RSQU5TRk9STUVSIH0gZnJvbSAnLi90b2tlbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZGtEYXRhU291cmNlXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtEZXN0cm95ZWRTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRhU291cmNlRGlyZWN0aXZlPFQgPSBhbnksIFAgZXh0ZW5kcyBEYXRhU291cmNlUHJvdmlkZXI8VD4gPSBEYXRhU291cmNlUHJvdmlkZXI8VD4+XG4gICAgaW1wbGVtZW50cyBPbkRlc3Ryb3lcbntcbiAgICAvKipcbiAgICAgKiBEYXRhIHNvdXJjZS5cbiAgICAgKiBAcGFyYW0gc291cmNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgZGF0YVNvdXJjZShzb3VyY2U6IERhdGFTb3VyY2U8VCwgUD4gfCBudWxsKSB7XG4gICAgICAgIHRoaXMuX2RhdGFTb3VyY2UgPSBzb3VyY2U7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVEYXRhU291cmNlKCk7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZUNoYW5nZWQubmV4dCgpO1xuICAgIH1cblxuICAgIGdldCBkYXRhU291cmNlKCk6IERhdGFTb3VyY2U8VCwgUD4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFTb3VyY2U7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kYXRhU291cmNlOiBEYXRhU291cmNlPFQsIFA+IHwgbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZGF0YVNvdXJjZVByb3ZpZGVyOiBQIHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kc1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKlxuICAgICAqIERhdGEgc3RyZWFtLiBFbWl0cyB3aGVuIG5ldyBkYXRhIHJldHJpZXZlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBkYXRhQ2hhbmdlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRbXT4oW10pO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgd2hlbiB0aGUgZGF0YSBzb3VyY2Ugb2JqZWN0IGhhcyBiZWVuIGNoYW5nZWQuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgZGF0YVNvdXJjZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gZGF0YXNvdXJjZSBjb250ZW50IGhhcyBiZWVuIGNoYW5nZWQuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgZGF0YUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFRbXT4oKTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBkYXRhIHByb3ZpZGVyIGxvYWRpbmcgc3RhdGUgaGFzIGJlZW4gY2hhbmdlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBpc0xvYWRpbmcgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfZGVzdHJveWVkJCA9IGluamVjdChEZXN0cm95ZWRTZXJ2aWNlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGF0YVNvdXJjZVRyYW5zZm9ybWVyID0gaW5qZWN0PERhdGFTb3VyY2VQYXJzZXI8VCwgUD4+KEZEX0RBVEFfU09VUkNFX1RSQU5TRk9STUVSKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaW5pdGlhbGl6ZURhdGFTb3VyY2UoKTogdm9pZCB7XG4gICAgICAgIGlmIChpc0RhdGFTb3VyY2UodGhpcy5kYXRhU291cmNlKSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlUHJvdmlkZXI/LnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIENvbnZlcnQgd2hhdGV2ZXIgY29tZXMgaW4gYXMgRGF0YVNvdXJjZSwgc28gd2UgY2FuIHdvcmsgd2l0aCBpdCBpZGVudGljYWxseVxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VQcm92aWRlciA9IHRoaXMuX3RvRGF0YVN0cmVhbSh0aGlzLmRhdGFTb3VyY2UpO1xuXG4gICAgICAgIGlmICghdGhpcy5kYXRhU291cmNlUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZVByb3ZpZGVyLmRhdGFMb2FkaW5nXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGlzTG9hZGluZykgPT4gdGhpcy5pc0xvYWRpbmcuZW1pdChpc0xvYWRpbmcpKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZVByb3ZpZGVyLmRhdGFDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFDaGFuZ2VkLmVtaXQoZGF0YSk7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlZCQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhU291cmNlUHJvdmlkZXI/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2RzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBASGlkZGVuICovXG4gICAgcHJvdGVjdGVkIF90b0RhdGFTdHJlYW0oc291cmNlOiBEYXRhU291cmNlPFQ+IHwgbnVsbCk6IFAgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gIXNvdXJjZVxuICAgICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICAgIDogdGhpcy5fZGF0YVNvdXJjZVRyYW5zZm9ybWVyXG4gICAgICAgICAgICA/IHRoaXMuX2RhdGFTb3VyY2VUcmFuc2Zvcm1lci5wYXJzZShzb3VyY2UpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNkay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvZnVuZGFtZW50YWwtbmd4LWNkay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNkay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvZnVuZGFtZW50YWwtbmd4LWNkay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './fundamental-ngx.module';
2
+ export * from '@fundamental-ngx/cdk/forms';
3
+ export * from '@fundamental-ngx/cdk/data-source';
4
+ export * from '@fundamental-ngx/cdk/utils';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Z1bmRhbWVudGFsLW5neC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvZm9ybXMnO1xuZXhwb3J0ICogZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvZGF0YS1zb3VyY2UnO1xuZXhwb3J0ICogZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuIl19
@@ -30,4 +30,5 @@ export * from './disabled';
30
30
  export * from './clicked';
31
31
  export * from './selectable-list';
32
32
  export * from './breakpoints/breakpoint.directive';
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRvLWNvbXBsZXRlL2F1dG8tY29tcGxldGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0by1jb21wbGV0ZS9hdXRvLWNvbXBsZXRlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZvY3VzLWtleS1tYW5hZ2VyJztcbmV4cG9ydCAqIGZyb20gJy4vaWdub3JlLWNsaWNrLW9uLXNlbGVjdGlvbi9pZ25vcmUtY2xpY2stb24tc2VsZWN0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2lnbm9yZS1jbGljay1vbi1zZWxlY3Rpb24vaWdub3JlLWNsaWNrLW9uLXNlbGVjdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9pZ25vcmUtY2xpY2stb24tc2VsZWN0aW9uL3Rva2Vucyc7XG5leHBvcnQgKiBmcm9tICcuL2luaXRpYWwtZm9jdXMvaW5pdGlhbC1mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbml0aWFsLWZvY3VzL2luaXRpYWwtZm9jdXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGluZS1jbGFtcC9saW5lLWNsYW1wLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmUtY2xhbXAvbGluZS1jbGFtcC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9vbmx5LWRpZ2l0cy9vbmx5LWRpZ2l0cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9vbmx5LWRpZ2l0cy9vbmx5LWRpZ2l0cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9vdmVyZmxvdy1saXN0L292ZXJmbG93LWxpc3QtaXRlbS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9vdmVyZmxvdy1saXN0L292ZXJmbG93LWxpc3QuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmZsb3ctbGlzdC9vdmVyZmxvdy1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlcGVhdC9yZXBlYXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVwZWF0L3JlcGVhdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNpemUvcmVzaXplLWhhbmRsZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNpemUvcmVzaXplLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc2l6ZS9yZXNpemUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGUvdGVtcGxhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGUvdGVtcGxhdGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vdHJ1bmNhdGUvdHJ1bmNhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdHJ1bmNhdGUvdHJ1bmNhdGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9jdXNhYmxlLWl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9mb2N1c2FibGUtbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2ZvY3VzYWJsZS1ncmlkJztcbmV4cG9ydCAqIGZyb20gJy4vcmVhZG9ubHknO1xuZXhwb3J0ICogZnJvbSAnLi9kaXNhYmxlZCc7XG5leHBvcnQgKiBmcm9tICcuL2NsaWNrZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3RhYmxlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVha3BvaW50cy9icmVha3BvaW50LmRpcmVjdGl2ZSc7XG4iXX0=
33
+ export * from './intersection-spy/intersection-spy.directive';
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsK0NBQStDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG8tY29tcGxldGUvYXV0by1jb21wbGV0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRvLWNvbXBsZXRlL2F1dG8tY29tcGxldGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9jdXMta2V5LW1hbmFnZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pZ25vcmUtY2xpY2stb24tc2VsZWN0aW9uL2lnbm9yZS1jbGljay1vbi1zZWxlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaWdub3JlLWNsaWNrLW9uLXNlbGVjdGlvbi9pZ25vcmUtY2xpY2stb24tc2VsZWN0aW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2lnbm9yZS1jbGljay1vbi1zZWxlY3Rpb24vdG9rZW5zJztcbmV4cG9ydCAqIGZyb20gJy4vaW5pdGlhbC1mb2N1cy9pbml0aWFsLWZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2luaXRpYWwtZm9jdXMvaW5pdGlhbC1mb2N1cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saW5lLWNsYW1wL2xpbmUtY2xhbXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGluZS1jbGFtcC9saW5lLWNsYW1wLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL29ubHktZGlnaXRzL29ubHktZGlnaXRzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL29ubHktZGlnaXRzL29ubHktZGlnaXRzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL292ZXJmbG93LWxpc3Qvb3ZlcmZsb3ctbGlzdC1pdGVtLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL292ZXJmbG93LWxpc3Qvb3ZlcmZsb3ctbGlzdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9vdmVyZmxvdy1saXN0L292ZXJmbG93LWxpc3QubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVwZWF0L3JlcGVhdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXBlYXQvcmVwZWF0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc2l6ZS9yZXNpemUtaGFuZGxlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc2l6ZS9yZXNpemUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplL3Jlc2l6ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZS90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZS90ZW1wbGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90cnVuY2F0ZS90cnVuY2F0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90cnVuY2F0ZS90cnVuY2F0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb2N1c2FibGUtaXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2ZvY3VzYWJsZS1saXN0JztcbmV4cG9ydCAqIGZyb20gJy4vZm9jdXNhYmxlLWdyaWQnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWFkb25seSc7XG5leHBvcnQgKiBmcm9tICcuL2Rpc2FibGVkJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpY2tlZCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGFibGUtbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2JyZWFrcG9pbnRzL2JyZWFrcG9pbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJzZWN0aW9uLXNweS9pbnRlcnNlY3Rpb24tc3B5LmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,43 @@
1
+ import { Directive, ElementRef, EventEmitter, inject, Input, Output } from '@angular/core';
2
+ import { map, takeUntil } from 'rxjs';
3
+ import { intersectionObservable } from '../../functions';
4
+ import { DestroyedService } from '../../services';
5
+ import * as i0 from "@angular/core";
6
+ export class IntersectionSpyDirective {
7
+ constructor() {
8
+ /** Intersection offset in px. */
9
+ this.offset = 20;
10
+ /** Event emitted when intersection observer emits with the current element. */
11
+ this.intersected = new EventEmitter();
12
+ /** @hidden */
13
+ this._destroy$ = inject(DestroyedService);
14
+ /** @hidden */
15
+ this._elementRef = inject(ElementRef);
16
+ }
17
+ /** @hidden */
18
+ ngOnInit() {
19
+ intersectionObservable(this._elementRef.nativeElement, this.viewportOptions)
20
+ .pipe(map((entries) => entries[0]), takeUntil(this._destroy$))
21
+ .subscribe((entry) => {
22
+ this.intersected.emit(entry.isIntersecting);
23
+ });
24
+ }
25
+ }
26
+ IntersectionSpyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: IntersectionSpyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
27
+ IntersectionSpyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: IntersectionSpyDirective, isStandalone: true, selector: "[fdkIntersectionSpy]", inputs: { offset: ["fdkIntersectionSpy", "offset"], viewportOptions: "viewportOptions" }, outputs: { intersected: "intersected" }, providers: [DestroyedService], ngImport: i0 });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: IntersectionSpyDirective, decorators: [{
29
+ type: Directive,
30
+ args: [{
31
+ selector: '[fdkIntersectionSpy]',
32
+ standalone: true,
33
+ providers: [DestroyedService]
34
+ }]
35
+ }], propDecorators: { offset: [{
36
+ type: Input,
37
+ args: ['fdkIntersectionSpy']
38
+ }], viewportOptions: [{
39
+ type: Input
40
+ }], intersected: [{
41
+ type: Output
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJzZWN0aW9uLXNweS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL2RpcmVjdGl2ZXMvaW50ZXJzZWN0aW9uLXNweS9pbnRlcnNlY3Rpb24tc3B5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBT2xELE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFNSSxpQ0FBaUM7UUFFakMsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUtaLCtFQUErRTtRQUUvRSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFMUMsY0FBYztRQUNHLGNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV0RCxjQUFjO1FBQ0csZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0FhckQ7SUFYRyxjQUFjO0lBQ2QsUUFBUTtRQUNKLHNCQUFzQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUM7YUFDdkUsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzVCLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzVCO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7cUhBNUJRLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLHNNQUZ0QixDQUFDLGdCQUFnQixDQUFDOzJGQUVwQix3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUNoQzs4QkFJRyxNQUFNO3NCQURMLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUkzQixlQUFlO3NCQURkLEtBQUs7Z0JBS04sV0FBVztzQkFEVixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGludGVyc2VjdGlvbk9ic2VydmFibGUgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGVzdHJveWVkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRrSW50ZXJzZWN0aW9uU3B5XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtEZXN0cm95ZWRTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBJbnRlcnNlY3Rpb25TcHlEaXJlY3RpdmUge1xuICAgIC8qKiBJbnRlcnNlY3Rpb24gb2Zmc2V0IGluIHB4LiAqL1xuICAgIEBJbnB1dCgnZmRrSW50ZXJzZWN0aW9uU3B5JylcbiAgICBvZmZzZXQgPSAyMDtcbiAgICAvKiogSW50ZXJzZWN0aW9uIG9ic2VydmVyIG9wdGlvbnMuICovXG4gICAgQElucHV0KClcbiAgICB2aWV3cG9ydE9wdGlvbnM6IEludGVyc2VjdGlvbk9ic2VydmVySW5pdDtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gaW50ZXJzZWN0aW9uIG9ic2VydmVyIGVtaXRzIHdpdGggdGhlIGN1cnJlbnQgZWxlbWVudC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBpbnRlcnNlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBpbmplY3QoRGVzdHJveWVkU2VydmljZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpbnRlcnNlY3Rpb25PYnNlcnZhYmxlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy52aWV3cG9ydE9wdGlvbnMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKGVudHJpZXMpID0+IGVudHJpZXNbMF0pLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGVudHJ5KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnRlcnNlY3RlZC5lbWl0KGVudHJ5LmlzSW50ZXJzZWN0aW5nKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { RtlService } from './services/rtl.service';
4
4
  import { ThemesService } from './services/themes.service';
5
- import { AutoCompleteModule, ClickedBehaviorModule, DisabledBehaviorModule, FocusableGridModule, FocusableItemModule, FocusableListModule, InitialFocusModule, LineClampModule, OnlyDigitsModule, OverflowListModule, ReadonlyBehaviorModule, RepeatModule, ResizeModule, SelectableListModule, TemplateModule, TruncateModule, BreakpointModule } from './directives';
5
+ import { AutoCompleteModule, ClickedBehaviorModule, DisabledBehaviorModule, FocusableGridModule, FocusableItemModule, FocusableListModule, InitialFocusModule, LineClampModule, OnlyDigitsModule, OverflowListModule, ReadonlyBehaviorModule, RepeatModule, ResizeModule, SelectableListModule, TemplateModule, TruncateModule, BreakpointModule, IntersectionSpyDirective } from './directives';
6
6
  import { DragAndDropModule } from './drag-and-drop/drag-and-drop.module';
7
7
  import * as i0 from "@angular/core";
8
8
  export class UtilsModule {
@@ -26,7 +26,8 @@ UtilsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
26
26
  ReadonlyBehaviorModule,
27
27
  ClickedBehaviorModule,
28
28
  InitialFocusModule,
29
- BreakpointModule], exports: [FocusableItemModule,
29
+ BreakpointModule,
30
+ IntersectionSpyDirective], exports: [FocusableItemModule,
30
31
  FocusableListModule,
31
32
  FocusableGridModule,
32
33
  DragAndDropModule,
@@ -43,7 +44,8 @@ UtilsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
43
44
  ReadonlyBehaviorModule,
44
45
  ClickedBehaviorModule,
45
46
  InitialFocusModule,
46
- BreakpointModule] });
47
+ BreakpointModule,
48
+ IntersectionSpyDirective] });
47
49
  UtilsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: UtilsModule, providers: [RtlService, ThemesService], imports: [CommonModule,
48
50
  FocusableItemModule,
49
51
  FocusableListModule,
@@ -102,7 +104,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
102
104
  ReadonlyBehaviorModule,
103
105
  ClickedBehaviorModule,
104
106
  InitialFocusModule,
105
- BreakpointModule
107
+ BreakpointModule,
108
+ IntersectionSpyDirective
106
109
  ],
107
110
  exports: [
108
111
  FocusableItemModule,
@@ -122,9 +125,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
122
125
  ReadonlyBehaviorModule,
123
126
  ClickedBehaviorModule,
124
127
  InitialFocusModule,
125
- BreakpointModule
128
+ BreakpointModule,
129
+ IntersectionSpyDirective
126
130
  ],
127
131
  providers: [RtlService, ThemesService]
128
132
  }]
129
133
  }] });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy91dGlscy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osWUFBWSxFQUNaLG9CQUFvQixFQUNwQixjQUFjLEVBQ2QsY0FBYyxFQUNkLGdCQUFnQixFQUNuQixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7QUE4Q3pFLE1BQU0sT0FBTyxXQUFXOzt3R0FBWCxXQUFXO3lHQUFYLFdBQVcsWUExQ2hCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsZ0JBQWdCO1FBQ2hCLGNBQWM7UUFDZCxlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixZQUFZO1FBQ1osY0FBYztRQUNkLGtCQUFrQjtRQUNsQixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLHNCQUFzQjtRQUN0QixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGdCQUFnQixhQUdoQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsZ0JBQWdCO1FBQ2hCLGNBQWM7UUFDZCxlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixZQUFZO1FBQ1osY0FBYztRQUNkLGtCQUFrQjtRQUNsQixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLHNCQUFzQjtRQUN0QixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGdCQUFnQjt5R0FJWCxXQUFXLGFBRlQsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLFlBeENsQyxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osWUFBWTtRQUNaLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQixzQkFBc0I7UUFDdEIscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixnQkFBZ0IsRUFHaEIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osWUFBWTtRQUNaLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQixzQkFBc0I7UUFDdEIscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixnQkFBZ0I7MkZBSVgsV0FBVztrQkE1Q3ZCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLHNCQUFzQjt3QkFDdEIscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7cUJBQ25CO29CQUNELFNBQVMsRUFBRSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUM7aUJBQ3pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSdGxTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ydGwuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVtZXNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy90aGVtZXMuc2VydmljZSc7XG5pbXBvcnQge1xuICAgIEF1dG9Db21wbGV0ZU1vZHVsZSxcbiAgICBDbGlja2VkQmVoYXZpb3JNb2R1bGUsXG4gICAgRGlzYWJsZWRCZWhhdmlvck1vZHVsZSxcbiAgICBGb2N1c2FibGVHcmlkTW9kdWxlLFxuICAgIEZvY3VzYWJsZUl0ZW1Nb2R1bGUsXG4gICAgRm9jdXNhYmxlTGlzdE1vZHVsZSxcbiAgICBJbml0aWFsRm9jdXNNb2R1bGUsXG4gICAgTGluZUNsYW1wTW9kdWxlLFxuICAgIE9ubHlEaWdpdHNNb2R1bGUsXG4gICAgT3ZlcmZsb3dMaXN0TW9kdWxlLFxuICAgIFJlYWRvbmx5QmVoYXZpb3JNb2R1bGUsXG4gICAgUmVwZWF0TW9kdWxlLFxuICAgIFJlc2l6ZU1vZHVsZSxcbiAgICBTZWxlY3RhYmxlTGlzdE1vZHVsZSxcbiAgICBUZW1wbGF0ZU1vZHVsZSxcbiAgICBUcnVuY2F0ZU1vZHVsZSxcbiAgICBCcmVha3BvaW50TW9kdWxlXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBEcmFnQW5kRHJvcE1vZHVsZSB9IGZyb20gJy4vZHJhZy1hbmQtZHJvcC9kcmFnLWFuZC1kcm9wLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUl0ZW1Nb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUxpc3RNb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUdyaWRNb2R1bGUsXG4gICAgICAgIERyYWdBbmREcm9wTW9kdWxlLFxuICAgICAgICBPbmx5RGlnaXRzTW9kdWxlLFxuICAgICAgICBUcnVuY2F0ZU1vZHVsZSxcbiAgICAgICAgTGluZUNsYW1wTW9kdWxlLFxuICAgICAgICBPdmVyZmxvd0xpc3RNb2R1bGUsXG4gICAgICAgIFJlcGVhdE1vZHVsZSxcbiAgICAgICAgUmVzaXplTW9kdWxlLFxuICAgICAgICBUZW1wbGF0ZU1vZHVsZSxcbiAgICAgICAgQXV0b0NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBEaXNhYmxlZEJlaGF2aW9yTW9kdWxlLFxuICAgICAgICBTZWxlY3RhYmxlTGlzdE1vZHVsZSxcbiAgICAgICAgUmVhZG9ubHlCZWhhdmlvck1vZHVsZSxcbiAgICAgICAgQ2xpY2tlZEJlaGF2aW9yTW9kdWxlLFxuICAgICAgICBJbml0aWFsRm9jdXNNb2R1bGUsXG4gICAgICAgIEJyZWFrcG9pbnRNb2R1bGVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRm9jdXNhYmxlSXRlbU1vZHVsZSxcbiAgICAgICAgRm9jdXNhYmxlTGlzdE1vZHVsZSxcbiAgICAgICAgRm9jdXNhYmxlR3JpZE1vZHVsZSxcbiAgICAgICAgRHJhZ0FuZERyb3BNb2R1bGUsXG4gICAgICAgIE9ubHlEaWdpdHNNb2R1bGUsXG4gICAgICAgIFRydW5jYXRlTW9kdWxlLFxuICAgICAgICBMaW5lQ2xhbXBNb2R1bGUsXG4gICAgICAgIE92ZXJmbG93TGlzdE1vZHVsZSxcbiAgICAgICAgUmVwZWF0TW9kdWxlLFxuICAgICAgICBSZXNpemVNb2R1bGUsXG4gICAgICAgIFRlbXBsYXRlTW9kdWxlLFxuICAgICAgICBBdXRvQ29tcGxldGVNb2R1bGUsXG4gICAgICAgIERpc2FibGVkQmVoYXZpb3JNb2R1bGUsXG4gICAgICAgIFNlbGVjdGFibGVMaXN0TW9kdWxlLFxuICAgICAgICBSZWFkb25seUJlaGF2aW9yTW9kdWxlLFxuICAgICAgICBDbGlja2VkQmVoYXZpb3JNb2R1bGUsXG4gICAgICAgIEluaXRpYWxGb2N1c01vZHVsZSxcbiAgICAgICAgQnJlYWtwb2ludE1vZHVsZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbUnRsU2VydmljZSwgVGhlbWVzU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgVXRpbHNNb2R1bGUge31cbiJdfQ==
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy91dGlscy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osWUFBWSxFQUNaLG9CQUFvQixFQUNwQixjQUFjLEVBQ2QsY0FBYyxFQUNkLGdCQUFnQixFQUNoQix3QkFBd0IsRUFDM0IsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBZ0R6RSxNQUFNLE9BQU8sV0FBVzs7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLFlBNUNoQixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osWUFBWTtRQUNaLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQixzQkFBc0I7UUFDdEIscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsd0JBQXdCLGFBR3hCLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtRQUNyQixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLHdCQUF3Qjt5R0FJbkIsV0FBVyxhQUZULENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxZQTFDbEMsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtRQUNyQixrQkFBa0I7UUFDbEIsZ0JBQWdCLEVBSWhCLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtRQUNyQixrQkFBa0I7UUFDbEIsZ0JBQWdCOzJGQUtYLFdBQVc7a0JBOUN2QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHdCQUF3QjtxQkFDM0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHdCQUF3QjtxQkFDM0I7b0JBQ0QsU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3J0bC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3RoZW1lcy5zZXJ2aWNlJztcbmltcG9ydCB7XG4gICAgQXV0b0NvbXBsZXRlTW9kdWxlLFxuICAgIENsaWNrZWRCZWhhdmlvck1vZHVsZSxcbiAgICBEaXNhYmxlZEJlaGF2aW9yTW9kdWxlLFxuICAgIEZvY3VzYWJsZUdyaWRNb2R1bGUsXG4gICAgRm9jdXNhYmxlSXRlbU1vZHVsZSxcbiAgICBGb2N1c2FibGVMaXN0TW9kdWxlLFxuICAgIEluaXRpYWxGb2N1c01vZHVsZSxcbiAgICBMaW5lQ2xhbXBNb2R1bGUsXG4gICAgT25seURpZ2l0c01vZHVsZSxcbiAgICBPdmVyZmxvd0xpc3RNb2R1bGUsXG4gICAgUmVhZG9ubHlCZWhhdmlvck1vZHVsZSxcbiAgICBSZXBlYXRNb2R1bGUsXG4gICAgUmVzaXplTW9kdWxlLFxuICAgIFNlbGVjdGFibGVMaXN0TW9kdWxlLFxuICAgIFRlbXBsYXRlTW9kdWxlLFxuICAgIFRydW5jYXRlTW9kdWxlLFxuICAgIEJyZWFrcG9pbnRNb2R1bGUsXG4gICAgSW50ZXJzZWN0aW9uU3B5RGlyZWN0aXZlXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBEcmFnQW5kRHJvcE1vZHVsZSB9IGZyb20gJy4vZHJhZy1hbmQtZHJvcC9kcmFnLWFuZC1kcm9wLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUl0ZW1Nb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUxpc3RNb2R1bGUsXG4gICAgICAgIEZvY3VzYWJsZUdyaWRNb2R1bGUsXG4gICAgICAgIERyYWdBbmREcm9wTW9kdWxlLFxuICAgICAgICBPbmx5RGlnaXRzTW9kdWxlLFxuICAgICAgICBUcnVuY2F0ZU1vZHVsZSxcbiAgICAgICAgTGluZUNsYW1wTW9kdWxlLFxuICAgICAgICBPdmVyZmxvd0xpc3RNb2R1bGUsXG4gICAgICAgIFJlcGVhdE1vZHVsZSxcbiAgICAgICAgUmVzaXplTW9kdWxlLFxuICAgICAgICBUZW1wbGF0ZU1vZHVsZSxcbiAgICAgICAgQXV0b0NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBEaXNhYmxlZEJlaGF2aW9yTW9kdWxlLFxuICAgICAgICBTZWxlY3RhYmxlTGlzdE1vZHVsZSxcbiAgICAgICAgUmVhZG9ubHlCZWhhdmlvck1vZHVsZSxcbiAgICAgICAgQ2xpY2tlZEJlaGF2aW9yTW9kdWxlLFxuICAgICAgICBJbml0aWFsRm9jdXNNb2R1bGUsXG4gICAgICAgIEJyZWFrcG9pbnRNb2R1bGUsXG4gICAgICAgIEludGVyc2VjdGlvblNweURpcmVjdGl2ZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBGb2N1c2FibGVJdGVtTW9kdWxlLFxuICAgICAgICBGb2N1c2FibGVMaXN0TW9kdWxlLFxuICAgICAgICBGb2N1c2FibGVHcmlkTW9kdWxlLFxuICAgICAgICBEcmFnQW5kRHJvcE1vZHVsZSxcbiAgICAgICAgT25seURpZ2l0c01vZHVsZSxcbiAgICAgICAgVHJ1bmNhdGVNb2R1bGUsXG4gICAgICAgIExpbmVDbGFtcE1vZHVsZSxcbiAgICAgICAgT3ZlcmZsb3dMaXN0TW9kdWxlLFxuICAgICAgICBSZXBlYXRNb2R1bGUsXG4gICAgICAgIFJlc2l6ZU1vZHVsZSxcbiAgICAgICAgVGVtcGxhdGVNb2R1bGUsXG4gICAgICAgIEF1dG9Db21wbGV0ZU1vZHVsZSxcbiAgICAgICAgRGlzYWJsZWRCZWhhdmlvck1vZHVsZSxcbiAgICAgICAgU2VsZWN0YWJsZUxpc3RNb2R1bGUsXG4gICAgICAgIFJlYWRvbmx5QmVoYXZpb3JNb2R1bGUsXG4gICAgICAgIENsaWNrZWRCZWhhdmlvck1vZHVsZSxcbiAgICAgICAgSW5pdGlhbEZvY3VzTW9kdWxlLFxuICAgICAgICBCcmVha3BvaW50TW9kdWxlLFxuICAgICAgICBJbnRlcnNlY3Rpb25TcHlEaXJlY3RpdmVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1J0bFNlcnZpY2UsIFRoZW1lc1NlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFV0aWxzTW9kdWxlIHt9XG4iXX0=
@@ -1,6 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, EventEmitter, Directive, Inject, Input, Output, NgModule } from '@angular/core';
3
- import * as i1 from '@fundamental-ngx/cdk/utils';
2
+ import { InjectionToken, EventEmitter, inject, Directive, Input, Output, NgModule } from '@angular/core';
4
3
  import { DestroyedService, isBlank, isStringMap, isType, isJsObject, isFunction } from '@fundamental-ngx/cdk/utils';
5
4
  import { Subscription, BehaviorSubject, Subject, isObservable, of } from 'rxjs';
6
5
  import { takeUntil, map } from 'rxjs/operators';
@@ -18,22 +17,7 @@ function isDataSource(value) {
18
17
  const FD_DATA_SOURCE_TRANSFORMER = new InjectionToken('FdDataSourceTransformer');
19
18
 
20
19
  class DataSourceDirective {
21
- /**
22
- * Data source.
23
- * @param source
24
- */
25
- set dataSource(source) {
26
- this._dataSource = source;
27
- this._initializeDataSource();
28
- this.dataSourceChanged.next();
29
- }
30
- get dataSource() {
31
- return this._dataSource;
32
- }
33
- /** @hidden */
34
- constructor(_destroyed$, _dataSourceTransformer) {
35
- this._destroyed$ = _destroyed$;
36
- this._dataSourceTransformer = _dataSourceTransformer;
20
+ constructor() {
37
21
  /** @hidden */
38
22
  this._dsSubscription = new Subscription();
39
23
  /**
@@ -52,6 +36,22 @@ class DataSourceDirective {
52
36
  * Event emitted when data provider loading state has been changed.
53
37
  */
54
38
  this.isLoading = new EventEmitter();
39
+ /** @hidden */
40
+ this._destroyed$ = inject(DestroyedService);
41
+ /** @hidden */
42
+ this._dataSourceTransformer = inject(FD_DATA_SOURCE_TRANSFORMER);
43
+ }
44
+ /**
45
+ * Data source.
46
+ * @param source
47
+ */
48
+ set dataSource(source) {
49
+ this._dataSource = source;
50
+ this._initializeDataSource();
51
+ this.dataSourceChanged.next();
52
+ }
53
+ get dataSource() {
54
+ return this._dataSource;
55
55
  }
56
56
  /** @hidden */
57
57
  _initializeDataSource() {
@@ -89,7 +89,7 @@ class DataSourceDirective {
89
89
  : undefined;
90
90
  }
91
91
  }
92
- DataSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, deps: [{ token: i1.DestroyedService }, { token: FD_DATA_SOURCE_TRANSFORMER }], target: i0.ɵɵFactoryTarget.Directive });
92
+ DataSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
93
93
  DataSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: DataSourceDirective, isStandalone: true, selector: "[fdkDataSource]", inputs: { dataSource: "dataSource" }, outputs: { dataSourceChanged: "dataSourceChanged", dataChanged: "dataChanged", isLoading: "isLoading" }, providers: [DestroyedService], ngImport: i0 });
94
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DataSourceDirective, decorators: [{
95
95
  type: Directive,
@@ -98,12 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
98
98
  standalone: true,
99
99
  providers: [DestroyedService]
100
100
  }]
101
- }], ctorParameters: function () {
102
- return [{ type: i1.DestroyedService }, { type: undefined, decorators: [{
103
- type: Inject,
104
- args: [FD_DATA_SOURCE_TRANSFORMER]
105
- }] }];
106
- }, propDecorators: { dataSource: [{
101
+ }], propDecorators: { dataSource: [{
107
102
  type: Input
108
103
  }], dataSourceChanged: [{
109
104
  type: Output
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-cdk-data-source.mjs","sources":["../../../../libs/cdk/src/lib/data-source/helpers/is-datasource.ts","../../../../libs/cdk/src/lib/data-source/tokens.ts","../../../../libs/cdk/src/lib/data-source/data-source.directive.ts","../../../../libs/cdk/src/lib/data-source/data-source.module.ts","../../../../libs/cdk/src/lib/data-source/models/matching-strategy.ts","../../../../libs/cdk/src/lib/data-source/base/base-data-source.class.ts","../../../../libs/cdk/src/lib/data-source/helpers/common.ts","../../../../libs/cdk/src/lib/data-source/base/abstract-data-provider.class.ts","../../../../libs/cdk/src/lib/data-source/helpers/apply-datasource-directive.ts","../../../../libs/cdk/src/lib/data-source/fundamental-ngx-cdk-data-source.ts"],"sourcesContent":["import { DataSourceProvider } from '../models/data-source-provider';\n\n/**\n * Checks whether passed value is a valid data source.\n */\nexport function isDataSource<T = any>(value: any): value is DataSourceProvider<T> {\n return value && typeof value.unsubscribe === 'function' && value.dataChanges;\n}\n","import { InjectionToken } from '@angular/core';\nimport { DataSourceParser } from './models/data-source';\n\n/**\n * Injection token used for passing custom datasource transformer into DataSourceProvider.\n */\nexport const FD_DATA_SOURCE_TRANSFORMER = new InjectionToken<DataSourceParser>('FdDataSourceTransformer');\n","import { Directive, EventEmitter, Inject, Input, OnDestroy, Output } from '@angular/core';\nimport { DestroyedService } from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { isDataSource } from './helpers/is-datasource';\nimport { DataSource, DataSourceParser, DataSourceProvider } from './models';\nimport { FD_DATA_SOURCE_TRANSFORMER } from './tokens';\n\n@Directive({\n selector: '[fdkDataSource]',\n standalone: true,\n providers: [DestroyedService]\n})\nexport class DataSourceDirective<T = any, P extends DataSourceProvider<T> = DataSourceProvider<T>>\n implements OnDestroy\n{\n /**\n * Data source.\n * @param source\n */\n @Input()\n set dataSource(source: DataSource<T, P> | null) {\n this._dataSource = source;\n this._initializeDataSource();\n this.dataSourceChanged.next();\n }\n\n get dataSource(): DataSource<T, P> | null {\n return this._dataSource;\n }\n\n /** @hidden */\n private _dataSource: DataSource<T, P> | null;\n\n /** @hidden */\n dataSourceProvider: P | undefined;\n\n /** @hidden */\n private _dsSubscription = new Subscription();\n\n /**\n * Data stream. Emits when new data retrieved.\n */\n readonly dataChanged$ = new BehaviorSubject<T[]>([]);\n\n /**\n * Emits when the data source object has been changed.\n */\n @Output()\n readonly dataSourceChanged = new EventEmitter<void>();\n\n /**\n * Event emitted when datasource content has been changed.\n */\n @Output()\n readonly dataChanged = new EventEmitter<T[]>();\n\n /**\n * Event emitted when data provider loading state has been changed.\n */\n @Output()\n readonly isLoading = new EventEmitter<boolean>();\n\n /** @hidden */\n constructor(\n private readonly _destroyed$: DestroyedService,\n @Inject(FD_DATA_SOURCE_TRANSFORMER) private readonly _dataSourceTransformer: DataSourceParser<T, P>\n ) {}\n\n /** @hidden */\n private _initializeDataSource(): void {\n if (isDataSource(this.dataSource)) {\n this.dataSourceProvider?.unsubscribe();\n\n this._dsSubscription?.unsubscribe();\n }\n // Convert whatever comes in as DataSource, so we can work with it identically\n this.dataSourceProvider = this._toDataStream(this.dataSource);\n\n if (!this.dataSourceProvider) {\n return;\n }\n\n this._dsSubscription = new Subscription();\n\n this._dsSubscription.add(\n this.dataSourceProvider.dataLoading\n .pipe(takeUntil(this._destroyed$))\n .subscribe((isLoading) => this.isLoading.emit(isLoading))\n );\n\n this._dsSubscription.add(\n this.dataSourceProvider.dataChanges.pipe(takeUntil(this._destroyed$)).subscribe((data) => {\n this.dataChanged.emit(data);\n this.dataChanged$.next(data);\n })\n );\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.dataSourceProvider?.unsubscribe();\n this._dsSubscription?.unsubscribe();\n }\n\n /** @Hidden */\n private _toDataStream(source: DataSource<T> | null): P | undefined {\n return !source\n ? undefined\n : this._dataSourceTransformer\n ? this._dataSourceTransformer.parse(source)\n : undefined;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { DataSourceDirective } from './data-source.directive';\n\n@NgModule({\n imports: [DataSourceDirective],\n exports: [DataSourceDirective]\n})\nexport class DataSourceModule {}\n","export enum MatchingStrategy {\n STARTS_WITH_PER_TERM = 'starts with per term',\n STARTS_WITH = 'starts with',\n CONTAINS = 'contains'\n}\n\nexport type MatchBy = (item: any) => any;\n\nexport interface MatchingBy {\n firstBy: MatchBy;\n secondaryBy?: MatchBy;\n}\n","import { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { DataSourceProvider } from '../models';\nimport { AbstractDataProvider } from './abstract-data-provider.class';\n\nexport abstract class BaseDataSource<T> implements DataSourceProvider<T> {\n /**\n * Max limit of items to be returned.\n */\n static readonly MaxLimit = 5;\n\n /**\n * Whether to enable limit of max items.\n */\n limitless = false;\n\n /** @hidden */\n protected readonly _dataChanges$: BehaviorSubject<T[]> = new BehaviorSubject<T[]>([]);\n /** @hidden */\n protected readonly _dataRequested$ = new BehaviorSubject<boolean>(false);\n /** @hidden */\n protected readonly _dataReceived$ = new BehaviorSubject<boolean>(false);\n /** @hidden */\n protected readonly _destroy$ = new Subject<void>();\n\n /** @hidden */\n protected readonly _dataLoading$ = new BehaviorSubject<boolean>(false);\n\n /**\n * Emitted when new data has been requested.\n * @returns Observable\n */\n get dataRequested(): Observable<boolean> {\n return this._dataRequested$.asObservable();\n }\n\n /**\n * Emitted when new data has been received.\n * @returns Observable\n */\n get dataReceived(): Observable<boolean> {\n return this._dataReceived$.asObservable();\n }\n\n /**\n * Emitted when loading state has been changed.\n * @returns Observable.\n */\n get dataLoading(): Observable<boolean> {\n return this._dataLoading$.asObservable();\n }\n\n /**\n * Emits when the data from the provider has been changed.\n * @returns Observable of data source objects.\n */\n get dataChanges(): Observable<T[]> {\n return this._dataChanges$.asObservable().pipe(takeUntil(this._destroy$));\n }\n\n /** @hidden */\n protected constructor(public dataProvider: AbstractDataProvider<any>) {}\n\n /**\n * Searches through the data source with defined parameters.\n * @param predicate Search query.\n * @param start start index.\n * @param end end index.\n */\n match(predicate: string | Map<string, string> = new Map<string, string>(), start = 0, end = Infinity): void {\n this._dataRequested$.next(true);\n this._dataLoading$.next(true);\n const searchParam = this._getSearchParams(predicate);\n\n this.dataProvider\n .fetch(searchParam, start, end)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (result: T[]) => {\n this._dataReceived$.next(true);\n this._dataLoading$.next(false);\n this._dataChanges$.next(result);\n },\n error: () => {\n this._dataReceived$.next(false);\n this._dataLoading$.next(false);\n }\n });\n }\n\n /**\n * Returns the Observable of a total items number filtered by the `predicate` param.\n * @param predicate Search query.\n */\n getTotalItems(predicate: string | Map<string, string> = new Map<string, string>()): Observable<number> {\n const searchParam = this._getSearchParams(predicate);\n\n return this.dataProvider.getTotalItems(searchParam);\n }\n\n /**\n * Closes the stream\n */\n unsubscribe(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n /** @hidden */\n private _getSearchParams(predicate: string | Map<string, string>): Map<string, any> {\n const searchParam = new Map<string, any>();\n\n if (typeof predicate === 'string') {\n searchParam.set('query', predicate);\n } else if (predicate instanceof Map) {\n predicate.forEach((v, k) => searchParam.set(k, v));\n } else {\n throw new Error('DataSource.match() predicate can only accepts string and Map');\n }\n\n if (!searchParam.has('limit') && !this.limitless) {\n searchParam.set('limit', BaseDataSource.MaxLimit);\n }\n\n return searchParam;\n }\n}\n","import { isBlank, isStringMap, isType } from '@fundamental-ngx/cdk/utils';\n\nexport type ProviderParams = ReadonlyMap<string, any>;\n\n/** @Hidden */\nexport function getMatchingStrategyStartsWithPerTermReqexp(value: string): RegExp {\n return new RegExp(`(\\\\s|^)(${value})`, 'gi');\n}\n\n/** @hidden */\nexport function objectValues(obj: any): any[] {\n return Object.keys(obj).map((key) => obj[key]);\n}\n\n/** @hidden */\nexport function objectToName(target: any): string {\n if (isBlank(target) || (!isStringMap(target) && !isType(target))) {\n throw new Error(' Cannot convert. Uknown object');\n }\n\n return isType(target) ? target.prototype.constructor.name : target.constructor.name;\n}\n","import { isFunction, isJsObject } from '@fundamental-ngx/cdk/utils';\nimport { isObservable, Observable, of } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport {\n getMatchingStrategyStartsWithPerTermReqexp,\n objectToName,\n objectValues,\n ProviderParams\n} from '../helpers/common';\nimport { MatchBy, MatchingBy, MatchingStrategy } from '../models/matching-strategy';\n\n/**\n * Base data provider class.\n */\nexport abstract class AbstractDataProvider<T> {\n /** @hidden */\n protected _keyPath: string;\n\n /** @hidden */\n protected _matchingStrategy: MatchingStrategy = MatchingStrategy.STARTS_WITH;\n\n /** @hidden */\n protected _matchingBy: MatchingBy | null = null;\n\n abstract fetch(params: ProviderParams, start?: number, end?: number): Observable<T[]>;\n\n /** @hidden */\n setLookupKey(key: string): void {\n this._keyPath = key;\n }\n\n /** @hidden */\n setMatchingBy(matchingBy: MatchingBy): void {\n this._matchingBy = matchingBy;\n }\n\n /** @hidden */\n setMatchingStrategy(strategy: MatchingStrategy): void {\n this._matchingStrategy = strategy;\n }\n\n /** @hidden */\n abstract getTotalItems(params?: Map<string, any>): Observable<number>;\n}\n\n/**\n * Default data provider class used for other components to extend from.\n */\nexport class DataProvider<T> extends AbstractDataProvider<T> {\n /** Default limit for the pagination. */\n public defaultLimit = 50;\n /** @hidden */\n constructor(protected values: Observable<T[]> | T[]) {\n super();\n }\n\n /** @hidden */\n fetch(params: Map<string, any>): Observable<T[]> {\n const observable = isObservable(this.values) ? this.values : of(this.values);\n\n const queryString = params.get('query');\n const limit = params.get('limit') || this.defaultLimit;\n\n if (!queryString || queryString === '*') {\n return observable.pipe(map((items) => this.withLimit(items, limit)));\n }\n\n const toLowerPattern = queryString.toLowerCase();\n\n return observable.pipe(\n map((items) => {\n const result: any[] = [];\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n if (this.matches(item, toLowerPattern)) {\n result.push(item);\n if (result.length >= limit) {\n break;\n }\n }\n }\n\n return result;\n })\n );\n }\n\n /**\n * Returns observable with the number of total items that satisfy the search query.\n * Warning: this is a naive implementation of the number of the filtered items.\n * For real-world scenarios, it is recommended to override this method with its own logic.\n */\n getTotalItems(params: Map<string, any>): Observable<number> {\n const observable = isObservable(this.values) ? this.values : of(this.values);\n const queryString = params.get('query');\n\n if (!queryString) {\n return observable.pipe(map((items) => items.length));\n }\n\n const toLowerPattern = queryString.toLowerCase();\n\n return observable.pipe(map((items) => items.filter((item) => this.matches(item, toLowerPattern)).length));\n }\n\n /**\n * Warning: If you don't supply search Key and you want fulltext search, and you use this\n * default implementation, be aware that it can perform poorly as it is a naive implementation\n * that does not do deep compare.\n */\n matches(item: T, pattern: string): boolean {\n if (!this._matchingBy) {\n return false;\n }\n const { firstBy, secondaryBy } = this._matchingBy;\n\n let matched = this.matchesBy(item, pattern, firstBy);\n if (!matched && secondaryBy) {\n matched = this.matchesBy(item, pattern, secondaryBy);\n }\n\n return matched;\n }\n\n /** @hidden */\n matchesBy(item: any, pattern: string, matchingBy: MatchBy): boolean {\n const value = isJsObject(item) && matchingBy ? matchingBy(item) : item;\n\n if (isFunction(value)) {\n return value.call(item);\n } else if (isJsObject(value)) {\n return this.hasObjectValue(item, pattern);\n } else if (this._matchingStrategy === MatchingStrategy.STARTS_WITH_PER_TERM) {\n const reqexp = getMatchingStrategyStartsWithPerTermReqexp(pattern);\n return !!pattern && !!value && !!value.match(reqexp);\n } else if (this._matchingStrategy === MatchingStrategy.STARTS_WITH) {\n return !!pattern && !!value && value.toString().toLowerCase().startsWith(pattern.toLowerCase());\n } else if (this._matchingStrategy === MatchingStrategy.CONTAINS) {\n return !!pattern && !!value && value.toString().toLowerCase().indexOf(pattern) > -1;\n } else {\n return !!pattern && !!value && value.toString().toLowerCase() === pattern;\n }\n }\n\n /** @hidden */\n protected hasObjectValue(obj: any, pattern: string): boolean {\n const values = objectValues(obj);\n const parentObj = objectToName(obj);\n const length2 = values.filter((value: any) => {\n if (!value || Array.isArray(value)) {\n return false;\n } else if (!isJsObject(value) && !isFunction(value)) {\n return value.toString().toLowerCase().indexOf(pattern) !== -1;\n } else if (isJsObject(value) && objectToName(value) !== parentObj) {\n return this.hasObjectValue(value, pattern);\n }\n\n return false;\n }).length;\n return length2 > 0;\n }\n\n /** @hidden */\n private withLimit(data: Array<T>, limit?: number): Array<T> {\n if (limit && data.length > limit) {\n return data.slice(0, limit);\n }\n return data;\n }\n}\n","import { Type } from '@angular/core';\nimport { DataSourceDirective } from '../data-source.directive';\n\nexport const applyDatasourceDirective:\n | Type<unknown>\n | {\n directive: Type<unknown>;\n inputs?: string[];\n outputs?: string[];\n } = {\n directive: DataSourceDirective,\n inputs: ['dataSource'],\n outputs: ['dataChanged']\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-cdk-data-source.mjs","sources":["../../../../libs/cdk/src/lib/data-source/helpers/is-datasource.ts","../../../../libs/cdk/src/lib/data-source/tokens.ts","../../../../libs/cdk/src/lib/data-source/data-source.directive.ts","../../../../libs/cdk/src/lib/data-source/data-source.module.ts","../../../../libs/cdk/src/lib/data-source/models/matching-strategy.ts","../../../../libs/cdk/src/lib/data-source/base/base-data-source.class.ts","../../../../libs/cdk/src/lib/data-source/helpers/common.ts","../../../../libs/cdk/src/lib/data-source/base/abstract-data-provider.class.ts","../../../../libs/cdk/src/lib/data-source/helpers/apply-datasource-directive.ts","../../../../libs/cdk/src/lib/data-source/fundamental-ngx-cdk-data-source.ts"],"sourcesContent":["import { DataSourceProvider } from '../models/data-source-provider';\n\n/**\n * Checks whether passed value is a valid data source.\n */\nexport function isDataSource<T = any>(value: any): value is DataSourceProvider<T> {\n return value && typeof value.unsubscribe === 'function' && value.dataChanges;\n}\n","import { InjectionToken } from '@angular/core';\nimport { DataSourceParser } from './models/data-source';\n\n/**\n * Injection token used for passing custom datasource transformer into DataSourceProvider.\n */\nexport const FD_DATA_SOURCE_TRANSFORMER = new InjectionToken<DataSourceParser>('FdDataSourceTransformer');\n","import { Directive, EventEmitter, inject, Input, OnDestroy, Output } from '@angular/core';\nimport { DestroyedService } from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { isDataSource } from './helpers/is-datasource';\nimport { DataSource, DataSourceParser, DataSourceProvider } from './models';\nimport { FD_DATA_SOURCE_TRANSFORMER } from './tokens';\n\n@Directive({\n selector: '[fdkDataSource]',\n standalone: true,\n providers: [DestroyedService]\n})\nexport class DataSourceDirective<T = any, P extends DataSourceProvider<T> = DataSourceProvider<T>>\n implements OnDestroy\n{\n /**\n * Data source.\n * @param source\n */\n @Input()\n set dataSource(source: DataSource<T, P> | null) {\n this._dataSource = source;\n this._initializeDataSource();\n this.dataSourceChanged.next();\n }\n\n get dataSource(): DataSource<T, P> | null {\n return this._dataSource;\n }\n\n /** @hidden */\n private _dataSource: DataSource<T, P> | null;\n\n /** @hidden */\n dataSourceProvider: P | undefined;\n\n /** @hidden */\n private _dsSubscription = new Subscription();\n\n /**\n * Data stream. Emits when new data retrieved.\n */\n readonly dataChanged$ = new BehaviorSubject<T[]>([]);\n\n /**\n * Emits when the data source object has been changed.\n */\n @Output()\n readonly dataSourceChanged = new EventEmitter<void>();\n\n /**\n * Event emitted when datasource content has been changed.\n */\n @Output()\n readonly dataChanged = new EventEmitter<T[]>();\n\n /**\n * Event emitted when data provider loading state has been changed.\n */\n @Output()\n readonly isLoading = new EventEmitter<boolean>();\n\n /** @hidden */\n protected readonly _destroyed$ = inject(DestroyedService);\n\n /** @hidden */\n private readonly _dataSourceTransformer = inject<DataSourceParser<T, P>>(FD_DATA_SOURCE_TRANSFORMER);\n\n /** @hidden */\n private _initializeDataSource(): void {\n if (isDataSource(this.dataSource)) {\n this.dataSourceProvider?.unsubscribe();\n\n this._dsSubscription?.unsubscribe();\n }\n // Convert whatever comes in as DataSource, so we can work with it identically\n this.dataSourceProvider = this._toDataStream(this.dataSource);\n\n if (!this.dataSourceProvider) {\n return;\n }\n\n this._dsSubscription = new Subscription();\n\n this._dsSubscription.add(\n this.dataSourceProvider.dataLoading\n .pipe(takeUntil(this._destroyed$))\n .subscribe((isLoading) => this.isLoading.emit(isLoading))\n );\n\n this._dsSubscription.add(\n this.dataSourceProvider.dataChanges.pipe(takeUntil(this._destroyed$)).subscribe((data) => {\n this.dataChanged.emit(data);\n this.dataChanged$.next(data);\n })\n );\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.dataSourceProvider?.unsubscribe();\n this._dsSubscription?.unsubscribe();\n }\n\n /** @Hidden */\n protected _toDataStream(source: DataSource<T> | null): P | undefined {\n return !source\n ? undefined\n : this._dataSourceTransformer\n ? this._dataSourceTransformer.parse(source)\n : undefined;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { DataSourceDirective } from './data-source.directive';\n\n@NgModule({\n imports: [DataSourceDirective],\n exports: [DataSourceDirective]\n})\nexport class DataSourceModule {}\n","export enum MatchingStrategy {\n STARTS_WITH_PER_TERM = 'starts with per term',\n STARTS_WITH = 'starts with',\n CONTAINS = 'contains'\n}\n\nexport type MatchBy = (item: any) => any;\n\nexport interface MatchingBy {\n firstBy: MatchBy;\n secondaryBy?: MatchBy;\n}\n","import { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { DataSourceProvider } from '../models';\nimport { AbstractDataProvider } from './abstract-data-provider.class';\n\nexport abstract class BaseDataSource<T> implements DataSourceProvider<T> {\n /**\n * Max limit of items to be returned.\n */\n static readonly MaxLimit = 5;\n\n /**\n * Whether to enable limit of max items.\n */\n limitless = false;\n\n /** @hidden */\n protected readonly _dataChanges$: BehaviorSubject<T[]> = new BehaviorSubject<T[]>([]);\n /** @hidden */\n protected readonly _dataRequested$ = new BehaviorSubject<boolean>(false);\n /** @hidden */\n protected readonly _dataReceived$ = new BehaviorSubject<boolean>(false);\n /** @hidden */\n protected readonly _destroy$ = new Subject<void>();\n\n /** @hidden */\n protected readonly _dataLoading$ = new BehaviorSubject<boolean>(false);\n\n /**\n * Emitted when new data has been requested.\n * @returns Observable\n */\n get dataRequested(): Observable<boolean> {\n return this._dataRequested$.asObservable();\n }\n\n /**\n * Emitted when new data has been received.\n * @returns Observable\n */\n get dataReceived(): Observable<boolean> {\n return this._dataReceived$.asObservable();\n }\n\n /**\n * Emitted when loading state has been changed.\n * @returns Observable.\n */\n get dataLoading(): Observable<boolean> {\n return this._dataLoading$.asObservable();\n }\n\n /**\n * Emits when the data from the provider has been changed.\n * @returns Observable of data source objects.\n */\n get dataChanges(): Observable<T[]> {\n return this._dataChanges$.asObservable().pipe(takeUntil(this._destroy$));\n }\n\n /** @hidden */\n protected constructor(public dataProvider: AbstractDataProvider<any>) {}\n\n /**\n * Searches through the data source with defined parameters.\n * @param predicate Search query.\n * @param start start index.\n * @param end end index.\n */\n match(predicate: string | Map<string, string> = new Map<string, string>(), start = 0, end = Infinity): void {\n this._dataRequested$.next(true);\n this._dataLoading$.next(true);\n const searchParam = this._getSearchParams(predicate);\n\n this.dataProvider\n .fetch(searchParam, start, end)\n .pipe(takeUntil(this._destroy$))\n .subscribe({\n next: (result: T[]) => {\n this._dataReceived$.next(true);\n this._dataLoading$.next(false);\n this._dataChanges$.next(result);\n },\n error: () => {\n this._dataReceived$.next(false);\n this._dataLoading$.next(false);\n }\n });\n }\n\n /**\n * Returns the Observable of a total items number filtered by the `predicate` param.\n * @param predicate Search query.\n */\n getTotalItems(predicate: string | Map<string, string> = new Map<string, string>()): Observable<number> {\n const searchParam = this._getSearchParams(predicate);\n\n return this.dataProvider.getTotalItems(searchParam);\n }\n\n /**\n * Closes the stream\n */\n unsubscribe(): void {\n this._destroy$.next();\n this._destroy$.complete();\n }\n\n /** @hidden */\n private _getSearchParams(predicate: string | Map<string, string>): Map<string, any> {\n const searchParam = new Map<string, any>();\n\n if (typeof predicate === 'string') {\n searchParam.set('query', predicate);\n } else if (predicate instanceof Map) {\n predicate.forEach((v, k) => searchParam.set(k, v));\n } else {\n throw new Error('DataSource.match() predicate can only accepts string and Map');\n }\n\n if (!searchParam.has('limit') && !this.limitless) {\n searchParam.set('limit', BaseDataSource.MaxLimit);\n }\n\n return searchParam;\n }\n}\n","import { isBlank, isStringMap, isType } from '@fundamental-ngx/cdk/utils';\n\nexport type ProviderParams = ReadonlyMap<string, any>;\n\n/** @Hidden */\nexport function getMatchingStrategyStartsWithPerTermReqexp(value: string): RegExp {\n return new RegExp(`(\\\\s|^)(${value})`, 'gi');\n}\n\n/** @hidden */\nexport function objectValues(obj: any): any[] {\n return Object.keys(obj).map((key) => obj[key]);\n}\n\n/** @hidden */\nexport function objectToName(target: any): string {\n if (isBlank(target) || (!isStringMap(target) && !isType(target))) {\n throw new Error(' Cannot convert. Uknown object');\n }\n\n return isType(target) ? target.prototype.constructor.name : target.constructor.name;\n}\n","import { isFunction, isJsObject } from '@fundamental-ngx/cdk/utils';\nimport { isObservable, Observable, of } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport {\n getMatchingStrategyStartsWithPerTermReqexp,\n objectToName,\n objectValues,\n ProviderParams\n} from '../helpers/common';\nimport { MatchBy, MatchingBy, MatchingStrategy } from '../models/matching-strategy';\n\n/**\n * Base data provider class.\n */\nexport abstract class AbstractDataProvider<T> {\n /** @hidden */\n protected _keyPath: string;\n\n /** @hidden */\n protected _matchingStrategy: MatchingStrategy = MatchingStrategy.STARTS_WITH;\n\n /** @hidden */\n protected _matchingBy: MatchingBy | null = null;\n\n abstract fetch(params: ProviderParams, start?: number, end?: number): Observable<T[]>;\n\n /** @hidden */\n setLookupKey(key: string): void {\n this._keyPath = key;\n }\n\n /** @hidden */\n setMatchingBy(matchingBy: MatchingBy): void {\n this._matchingBy = matchingBy;\n }\n\n /** @hidden */\n setMatchingStrategy(strategy: MatchingStrategy): void {\n this._matchingStrategy = strategy;\n }\n\n /** @hidden */\n abstract getTotalItems(params?: Map<string, any>): Observable<number>;\n}\n\n/**\n * Default data provider class used for other components to extend from.\n */\nexport class DataProvider<T> extends AbstractDataProvider<T> {\n /** Default limit for the pagination. */\n public defaultLimit = 50;\n /** @hidden */\n constructor(protected values: Observable<T[]> | T[]) {\n super();\n }\n\n /** @hidden */\n fetch(params: Map<string, any>): Observable<T[]> {\n const observable = isObservable(this.values) ? this.values : of(this.values);\n\n const queryString = params.get('query');\n const limit = params.get('limit') || this.defaultLimit;\n\n if (!queryString || queryString === '*') {\n return observable.pipe(map((items) => this.withLimit(items, limit)));\n }\n\n const toLowerPattern = queryString.toLowerCase();\n\n return observable.pipe(\n map((items) => {\n const result: any[] = [];\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n if (this.matches(item, toLowerPattern)) {\n result.push(item);\n if (result.length >= limit) {\n break;\n }\n }\n }\n\n return result;\n })\n );\n }\n\n /**\n * Returns observable with the number of total items that satisfy the search query.\n * Warning: this is a naive implementation of the number of the filtered items.\n * For real-world scenarios, it is recommended to override this method with its own logic.\n */\n getTotalItems(params: Map<string, any>): Observable<number> {\n const observable = isObservable(this.values) ? this.values : of(this.values);\n const queryString = params.get('query');\n\n if (!queryString) {\n return observable.pipe(map((items) => items.length));\n }\n\n const toLowerPattern = queryString.toLowerCase();\n\n return observable.pipe(map((items) => items.filter((item) => this.matches(item, toLowerPattern)).length));\n }\n\n /**\n * Warning: If you don't supply search Key and you want fulltext search, and you use this\n * default implementation, be aware that it can perform poorly as it is a naive implementation\n * that does not do deep compare.\n */\n matches(item: T, pattern: string): boolean {\n if (!this._matchingBy) {\n return false;\n }\n const { firstBy, secondaryBy } = this._matchingBy;\n\n let matched = this.matchesBy(item, pattern, firstBy);\n if (!matched && secondaryBy) {\n matched = this.matchesBy(item, pattern, secondaryBy);\n }\n\n return matched;\n }\n\n /** @hidden */\n matchesBy(item: any, pattern: string, matchingBy: MatchBy): boolean {\n const value = isJsObject(item) && matchingBy ? matchingBy(item) : item;\n\n if (isFunction(value)) {\n return value.call(item);\n } else if (isJsObject(value)) {\n return this.hasObjectValue(item, pattern);\n } else if (this._matchingStrategy === MatchingStrategy.STARTS_WITH_PER_TERM) {\n const reqexp = getMatchingStrategyStartsWithPerTermReqexp(pattern);\n return !!pattern && !!value && !!value.match(reqexp);\n } else if (this._matchingStrategy === MatchingStrategy.STARTS_WITH) {\n return !!pattern && !!value && value.toString().toLowerCase().startsWith(pattern.toLowerCase());\n } else if (this._matchingStrategy === MatchingStrategy.CONTAINS) {\n return !!pattern && !!value && value.toString().toLowerCase().indexOf(pattern) > -1;\n } else {\n return !!pattern && !!value && value.toString().toLowerCase() === pattern;\n }\n }\n\n /** @hidden */\n protected hasObjectValue(obj: any, pattern: string): boolean {\n const values = objectValues(obj);\n const parentObj = objectToName(obj);\n const length2 = values.filter((value: any) => {\n if (!value || Array.isArray(value)) {\n return false;\n } else if (!isJsObject(value) && !isFunction(value)) {\n return value.toString().toLowerCase().indexOf(pattern) !== -1;\n } else if (isJsObject(value) && objectToName(value) !== parentObj) {\n return this.hasObjectValue(value, pattern);\n }\n\n return false;\n }).length;\n return length2 > 0;\n }\n\n /** @hidden */\n private withLimit(data: Array<T>, limit?: number): Array<T> {\n if (limit && data.length > limit) {\n return data.slice(0, limit);\n }\n return data;\n }\n}\n","import { Type } from '@angular/core';\nimport { DataSourceDirective } from '../data-source.directive';\n\nexport const applyDatasourceDirective:\n | Type<unknown>\n | {\n directive: Type<unknown>;\n inputs?: string[];\n outputs?: string[];\n } = {\n directive: DataSourceDirective,\n inputs: ['dataSource'],\n outputs: ['dataChanged']\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}