ngssm-ag-grid 15.0.2 → 15.0.4

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.
@@ -0,0 +1,27 @@
1
+ import { Directive, HostBinding, Inject, Optional } from '@angular/core';
2
+ import { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../ngssm-ag-grid-options";
5
+ export class NgssmAgGridThemeDirective {
6
+ constructor(options) {
7
+ this.className = '';
8
+ this.className = (options ?? new NgssmAgGridOptions()).theme;
9
+ }
10
+ }
11
+ NgssmAgGridThemeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, deps: [{ token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
12
+ NgssmAgGridThemeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridThemeDirective, selector: "[ngssmAgGridTheme]", host: { properties: { "class": "this.className" } }, ngImport: i0 });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[ngssmAgGridTheme]'
17
+ }]
18
+ }], ctorParameters: function () { return [{ type: i1.NgssmAgGridOptions, decorators: [{
19
+ type: Inject,
20
+ args: [NGSSM_AG_GRID_OPTIONS]
21
+ }, {
22
+ type: Optional
23
+ }] }]; }, propDecorators: { className: [{
24
+ type: HostBinding,
25
+ args: ['class']
26
+ }] } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC10aGVtZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLXRoZW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFLckYsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxZQUF1RCxPQUEyQjtRQUY1RCxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBR25DLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxPQUFPLElBQUksSUFBSSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQy9ELENBQUM7O3NIQUxVLHlCQUF5QixrQkFHaEIscUJBQXFCOzBHQUg5Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFIckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2lCQUMvQjs7MEJBSWMsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUFHLFFBQVE7NENBRjlCLFNBQVM7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEluamVjdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTmdzc21BZ0dyaWRPcHRpb25zLCBOR1NTTV9BR19HUklEX09QVElPTlMgfSBmcm9tICcuLi9uZ3NzbS1hZy1ncmlkLW9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmdzc21BZ0dyaWRUaGVtZV0nXG59KVxuZXhwb3J0IGNsYXNzIE5nc3NtQWdHcmlkVGhlbWVEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3NOYW1lID0gJyc7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1NTTV9BR19HUklEX09QVElPTlMpIEBPcHRpb25hbCgpIG9wdGlvbnM6IE5nc3NtQWdHcmlkT3B0aW9ucykge1xuICAgIHRoaXMuY2xhc3NOYW1lID0gKG9wdGlvbnMgPz8gbmV3IE5nc3NtQWdHcmlkT3B0aW9ucygpKS50aGVtZTtcbiAgfVxufVxuIl19
@@ -1,16 +1,23 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { combineLatest, map, ReplaySubject, Subject, take, takeUntil } from 'rxjs';
1
+ import { Directive, Inject, Input, Optional } from '@angular/core';
2
+ import { BehaviorSubject, combineLatest, map, Subject, take, takeUntil } from 'rxjs';
3
3
  import { AgGridAction, AgGridActionType, RegisterAgGridStateAction, RegisterSelectedRowsAction } from '../actions';
4
4
  import { ChangeOrigin, selectAgGridState } from '../state';
5
+ import { NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "ngssm-store";
7
8
  import * as i2 from "ag-grid-angular";
9
+ import * as i3 from "../ngssm-ag-grid-options";
8
10
  export class NgssmAgGridDirective {
9
- constructor(store, agGridAngular) {
11
+ constructor(store, agGridAngular, options) {
10
12
  this.store = store;
11
13
  this.agGridAngular = agGridAngular;
12
14
  this.unsubsribeAll$ = new Subject();
13
- this._config$ = new ReplaySubject();
15
+ this._config$ = new BehaviorSubject({
16
+ gridId: ''
17
+ });
18
+ if (this.agGridAngular.statusBar === undefined) {
19
+ this.agGridAngular.statusBar = options?.statusBar;
20
+ }
14
21
  this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {
15
22
  combineLatest([
16
23
  this.store.state$.pipe(take(1), map((s) => selectAgGridState(s))),
@@ -59,11 +66,7 @@ export class NgssmAgGridDirective {
59
66
  });
60
67
  }
61
68
  });
62
- this._config$.pipe(take(1)).subscribe((config) => {
63
- if (config.canSaveOnDiskColumnsState === true) {
64
- this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
65
- }
66
- });
69
+ this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
67
70
  }
68
71
  set config(value) {
69
72
  if (typeof value === 'string') {
@@ -105,41 +108,48 @@ export class NgssmAgGridDirective {
105
108
  });
106
109
  }
107
110
  getContextMenuItems(params) {
108
- console.log(params.defaultItems);
109
- return [
110
- ...(params.defaultItems ?? []),
111
- 'separator',
112
- {
113
- name: 'Save columns state',
114
- action: () => this._config$
115
- .pipe(take(1))
116
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
117
- icon: '<i class="fa-regular fa-floppy-disk"></i>'
118
- },
119
- {
120
- name: 'Restore columns state',
121
- action: () => this._config$
122
- .pipe(take(1))
123
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
124
- icon: '<i class="fa-solid fa-rotate-right"></i>'
125
- },
126
- {
127
- name: 'Reset columns state to default',
128
- action: () => this.agGridAngular.columnApi.resetColumnState(),
129
- icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
130
- }
131
- ];
111
+ const menuItems = [...(params.defaultItems ?? [])];
112
+ if (this._config$.getValue().canSaveOnDiskColumnsState === true) {
113
+ menuItems.push(...[
114
+ 'separator',
115
+ {
116
+ name: 'Save columns state',
117
+ action: () => this._config$
118
+ .pipe(take(1))
119
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
120
+ icon: '<i class="fa-regular fa-floppy-disk"></i>'
121
+ },
122
+ {
123
+ name: 'Restore columns state',
124
+ action: () => this._config$
125
+ .pipe(take(1))
126
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
127
+ icon: '<i class="fa-solid fa-rotate-right"></i>'
128
+ },
129
+ {
130
+ name: 'Reset columns state to default',
131
+ action: () => this.agGridAngular.columnApi.resetColumnState(),
132
+ icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
133
+ }
134
+ ]);
135
+ }
136
+ return menuItems;
132
137
  }
133
138
  }
134
- NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive });
135
- NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.3", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
139
+ NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }, { token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
140
+ NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
137
142
  type: Directive,
138
143
  args: [{
139
144
  selector: '[ngssmAgGrid]'
140
145
  }]
141
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }]; }, propDecorators: { config: [{
146
+ }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }, { type: i3.NgssmAgGridOptions, decorators: [{
147
+ type: Inject,
148
+ args: [NGSSM_AG_GRID_OPTIONS]
149
+ }, {
150
+ type: Optional
151
+ }] }]; }, propDecorators: { config: [{
142
152
  type: Input,
143
153
  args: ['ngssmAgGrid']
144
154
  }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7O0FBTTNELE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFBb0IsS0FBWSxFQUFVLGFBQTRCO1FBQWxELFVBQUssR0FBTCxLQUFLLENBQU87UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUhyRCxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksYUFBYSxFQUFxQixDQUFDO1FBR2pFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6RCxhQUFhLENBQUM7Z0JBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNwQixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNqQztn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b0JBQW9CO2tCQUhoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO2lCQUMxQjt3SEFxRWtDLE1BQU07c0JBQXRDLEtBQUs7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0LCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWdHcmlkQW5ndWxhciB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBHZXRDb250ZXh0TWVudUl0ZW1zUGFyYW1zLCBNZW51SXRlbURlZiB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICduZ3NzbS1zdG9yZSc7XG5cbmltcG9ydCB7IEFnR3JpZEFjdGlvbiwgQWdHcmlkQWN0aW9uVHlwZSwgUmVnaXN0ZXJBZ0dyaWRTdGF0ZUFjdGlvbiwgUmVnaXN0ZXJTZWxlY3RlZFJvd3NBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IENoYW5nZU9yaWdpbiwgc2VsZWN0QWdHcmlkU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5pbXBvcnQgeyBOZ3NzbUFnR3JpZENvbmZpZyB9IGZyb20gJy4vbmdzc20tYWctZ3JpZC1jb25maWcnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmdzc21BZ0dyaWRdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZ3NzbUFnR3JpZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzcmliZUFsbCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWckID0gbmV3IFJlcGxheVN1YmplY3Q8Tmdzc21BZ0dyaWRDb25maWc+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgYWdHcmlkQW5ndWxhcjogQWdHcmlkQW5ndWxhcikge1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5ncmlkUmVhZHkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKHYpID0+IHtcbiAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLnN0b3JlLnN0YXRlJC5waXBlKFxuICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgbWFwKChzKSA9PiBzZWxlY3RBZ0dyaWRTdGF0ZShzKSlcbiAgICAgICAgKSxcbiAgICAgICAgdGhpcy5fY29uZmlnJFxuICAgICAgXSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWVzKSA9PiB7XG4gICAgICAgICAgaWYgKHZhbHVlc1swXS5ncmlkU3RhdGVzW3ZhbHVlc1sxXS5ncmlkSWRdKSB7XG4gICAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLmFwcGx5Q29sdW1uU3RhdGUoe1xuICAgICAgICAgICAgICBzdGF0ZTogdmFsdWVzWzBdLmdyaWRTdGF0ZXNbdmFsdWVzWzFdLmdyaWRJZF0uY29sdW1uc1N0YXRlLFxuICAgICAgICAgICAgICBhcHBseU9yZGVyOiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodmFsdWVzWzBdLnNlbGVjdGVkUm93c1t2YWx1ZXNbMV0uZ3JpZElkXSkge1xuICAgICAgICAgICAgaWYgKHZhbHVlc1sxXS5rZWVwU2VsZWN0aW9uID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGlkcyA9IHZhbHVlc1swXS5zZWxlY3RlZFJvd3NbdmFsdWVzWzFdLmdyaWRJZF0/LmlkcyA/PyBbXTtcbiAgICAgICAgICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmFwaS5mb3JFYWNoTm9kZSgobm9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChub2RlLmlkKSB7XG4gICAgICAgICAgICAgICAgICBub2RlLnNlbGVjdFRoaXNOb2RlKGlkcy5pbmNsdWRlcyhub2RlLmlkKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmluaXRTYXRlQ2hhbmdlTGlzdGVuZXIoKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnN0b3JlLnN0YXRlJC5waXBlKG1hcCgocykgPT4gc2VsZWN0QWdHcmlkU3RhdGUocykuZ3JpZFN0YXRlcykpLCB0aGlzLl9jb25maWckXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlcykgPT4ge1xuICAgICAgICBpZiAodmFsdWVzWzBdW3ZhbHVlc1sxXS5ncmlkSWRdPy5vcmlnaW4gPT09IENoYW5nZU9yaWdpbi5vdGhlcikge1xuICAgICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5BcGkuYXBwbHlDb2x1bW5TdGF0ZSh7XG4gICAgICAgICAgICBzdGF0ZTogdmFsdWVzWzBdW3ZhbHVlc1sxXS5ncmlkSWRdLmNvbHVtbnNTdGF0ZSxcbiAgICAgICAgICAgIGFwcGx5T3JkZXI6IHRydWVcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnN0b3JlLnN0YXRlJC5waXBlKG1hcCgocykgPT4gc2VsZWN0QWdHcmlkU3RhdGUocykuc2VsZWN0ZWRSb3dzKSksIHRoaXMuX2NvbmZpZyRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKVxuICAgICAgLnN1YnNjcmliZSgodmFsdWVzKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0/Lm9yaWdpbiA9PT0gQ2hhbmdlT3JpZ2luLm90aGVyICYmIHZhbHVlc1sxXS5rZWVwU2VsZWN0aW9uID09PSB0cnVlKSB7XG4gICAgICAgICAgY29uc3QgaWRzID0gdmFsdWVzWzBdW3ZhbHVlc1sxXS5ncmlkSWRdPy5pZHMgPz8gW107XG4gICAgICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmFwaS5mb3JFYWNoTm9kZSgobm9kZSkgPT4ge1xuICAgICAgICAgICAgaWYgKG5vZGUuaWQpIHtcbiAgICAgICAgICAgICAgbm9kZS5zZWxlY3RUaGlzTm9kZShpZHMuaW5jbHVkZXMobm9kZS5pZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuX2NvbmZpZyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xuICAgICAgaWYgKGNvbmZpZy5jYW5TYXZlT25EaXNrQ29sdW1uc1N0YXRlID09PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5nZXRDb250ZXh0TWVudUl0ZW1zID0gKHBhcmFtcykgPT4gdGhpcy5nZXRDb250ZXh0TWVudUl0ZW1zKHBhcmFtcyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBASW5wdXQoJ25nc3NtQWdHcmlkJykgcHVibGljIHNldCBjb25maWcodmFsdWU6IHN0cmluZyB8IE5nc3NtQWdHcmlkQ29uZmlnKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMuX2NvbmZpZyQubmV4dCh7XG4gICAgICAgIGdyaWRJZDogdmFsdWUgYXMgc3RyaW5nXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fY29uZmlnJC5uZXh0KHZhbHVlIGFzIE5nc3NtQWdHcmlkQ29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNyaWJlQWxsJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNyaWJlQWxsJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U2F0ZUNoYW5nZUxpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5zb3J0Q2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2F2ZUdyaWRTdGF0ZSgpKTtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuZmlsdGVyQ2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2F2ZUdyaWRTdGF0ZSgpKTtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uUGlubmVkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5SZXNpemVkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5kaXNwbGF5ZWRDb2x1bW5zQ2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2F2ZUdyaWRTdGF0ZSgpKTtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIucm93U2VsZWN0ZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnByb2Nlc3NTZWxlY3Rpb25DaGFuZ2VkKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzYXZlR3JpZFN0YXRlKCk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuICAgIHRoaXMuX2NvbmZpZyRcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChncmlkSWQpID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2hBY3Rpb24obmV3IFJlZ2lzdGVyQWdHcmlkU3RhdGVBY3Rpb24oZ3JpZElkLmdyaWRJZCwgQ2hhbmdlT3JpZ2luLmFnR3JpZCwgc3RhdGUpKSk7XG4gIH1cblxuICBwcml2YXRlIHByb2Nlc3NTZWxlY3Rpb25DaGFuZ2VkKCk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGVkUm93cyA9IHRoaXMuYWdHcmlkQW5ndWxhci5hcGlcbiAgICAgIC5nZXRTZWxlY3RlZE5vZGVzKClcbiAgICAgIC5tYXAoKG4pID0+IG4uaWQgPz8gJycpXG4gICAgICAuZmlsdGVyKChuKSA9PiBuICE9PSAnJyk7XG4gICAgdGhpcy5fY29uZmlnJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoY29uZmlnKSA9PiB7XG4gICAgICBpZiAoY29uZmlnLmtlZXBTZWxlY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgUmVnaXN0ZXJTZWxlY3RlZFJvd3NBY3Rpb24oY29uZmlnLmdyaWRJZCwgQ2hhbmdlT3JpZ2luLmFnR3JpZCwgc2VsZWN0ZWRSb3dzKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRleHRNZW51SXRlbXMocGFyYW1zOiBHZXRDb250ZXh0TWVudUl0ZW1zUGFyYW1zKTogKHN0cmluZyB8IE1lbnVJdGVtRGVmKVtdIHtcbiAgICBjb25zb2xlLmxvZyhwYXJhbXMuZGVmYXVsdEl0ZW1zKTtcbiAgICByZXR1cm4gW1xuICAgICAgLi4uKHBhcmFtcy5kZWZhdWx0SXRlbXMgPz8gW10pLFxuICAgICAgJ3NlcGFyYXRvcicsXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdTYXZlIGNvbHVtbnMgc3RhdGUnLFxuICAgICAgICBhY3Rpb246ICgpID0+XG4gICAgICAgICAgdGhpcy5fY29uZmlnJFxuICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbmZpZykgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgQWdHcmlkQWN0aW9uKEFnR3JpZEFjdGlvblR5cGUuc2F2ZUNvbHVtbnNTdGF0ZU9uRGlzaywgY29uZmlnLmdyaWRJZCkpKSxcbiAgICAgICAgaWNvbjogJzxpIGNsYXNzPVwiZmEtcmVndWxhciBmYS1mbG9wcHktZGlza1wiPjwvaT4nXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnUmVzdG9yZSBjb2x1bW5zIHN0YXRlJyxcbiAgICAgICAgYWN0aW9uOiAoKSA9PlxuICAgICAgICAgIHRoaXMuX2NvbmZpZyRcbiAgICAgICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjb25maWcpID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2hBY3Rpb24obmV3IEFnR3JpZEFjdGlvbihBZ0dyaWRBY3Rpb25UeXBlLnJlc2V0Q29sdW1uc1N0YXRlRnJvbURpc2ssIGNvbmZpZy5ncmlkSWQpKSksXG4gICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXJvdGF0ZS1yaWdodFwiPjwvaT4nXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnUmVzZXQgY29sdW1ucyBzdGF0ZSB0byBkZWZhdWx0JyxcbiAgICAgICAgYWN0aW9uOiAoKSA9PiB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLnJlc2V0Q29sdW1uU3RhdGUoKSxcbiAgICAgICAgaWNvbjogJzxpIGNsYXNzPVwiZmEtc29saWQgZmEtY2xvY2stcm90YXRlLWxlZnRcIj48L2k+J1xuICAgICAgfVxuICAgIF07XG4gIH1cbn1cbiJdfQ==
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU9yRixPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLHlCQUF5QixFQUFFLDBCQUEwQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFM0QsT0FBTyxFQUFzQixxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQUtyRixNQUFNLE9BQU8sb0JBQW9CO0lBTS9CLFlBQ1UsS0FBWSxFQUNaLGFBQTRCLEVBQ08sT0FBMkI7UUFGOUQsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBUHJCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxhQUFRLEdBQUcsSUFBSSxlQUFlLENBQW9CO1lBQ2pFLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO1FBT0QsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztTQUNuRDtRQUVELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FB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LElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO29CQUM3RCxJQUFJLEVBQUUsK0NBQStDO2lCQUN0RDthQUNGLENBQ0YsQ0FBQztTQUNIO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7aUhBdEpVLG9CQUFvQixvRUFTckIscUJBQXFCO3FHQVRwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFIaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtpQkFDMUI7OzBCQVVJLE1BQU07MkJBQUMscUJBQXFCOzswQkFBRyxRQUFROzRDQWlFVCxNQUFNO3NCQUF0QyxLQUFLO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBTdWJqZWN0LCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWdHcmlkQW5ndWxhciB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBHZXRDb250ZXh0TWVudUl0ZW1zUGFyYW1zLCBNZW51SXRlbURlZiB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICduZ3NzbS1zdG9yZSc7XG5cbmltcG9ydCB7IEFnR3JpZEFjdGlvbiwgQWdHcmlkQWN0aW9uVHlwZSwgUmVnaXN0ZXJBZ0dyaWRTdGF0ZUFjdGlvbiwgUmVnaXN0ZXJTZWxlY3RlZFJvd3NBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IENoYW5nZU9yaWdpbiwgc2VsZWN0QWdHcmlkU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5pbXBvcnQgeyBOZ3NzbUFnR3JpZENvbmZpZyB9IGZyb20gJy4vbmdzc20tYWctZ3JpZC1jb25maWcnO1xuaW1wb3J0IHsgTmdzc21BZ0dyaWRPcHRpb25zLCBOR1NTTV9BR19HUklEX09QVElPTlMgfSBmcm9tICcuLi9uZ3NzbS1hZy1ncmlkLW9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmdzc21BZ0dyaWRdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZ3NzbUFnR3JpZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzcmliZUFsbCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZ3NzbUFnR3JpZENvbmZpZz4oe1xuICAgIGdyaWRJZDogJydcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBhZ0dyaWRBbmd1bGFyOiBBZ0dyaWRBbmd1bGFyLFxuICAgIEBJbmplY3QoTkdTU01fQUdfR1JJRF9PUFRJT05TKSBAT3B0aW9uYWwoKSBvcHRpb25zOiBOZ3NzbUFnR3JpZE9wdGlvbnNcbiAgKSB7XG4gICAgaWYgKHRoaXMuYWdHcmlkQW5ndWxhci5zdGF0dXNCYXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLnN0YXR1c0JhciA9IG9wdGlvbnM/LnN0YXR1c0JhcjtcbiAgICB9XG5cbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuZ3JpZFJlYWR5LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCh2KSA9PiB7XG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5zdG9yZS5zdGF0ZSQucGlwZShcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIG1hcCgocykgPT4gc2VsZWN0QWdHcmlkU3RhdGUocykpXG4gICAgICAgICksXG4gICAgICAgIHRoaXMuX2NvbmZpZyRcbiAgICAgIF0pXG4gICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlcykgPT4ge1xuICAgICAgICAgIGlmICh2YWx1ZXNbMF0uZ3JpZFN0YXRlc1t2YWx1ZXNbMV0uZ3JpZElkXSkge1xuICAgICAgICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtbkFwaS5hcHBseUNvbHVtblN0YXRlKHtcbiAgICAgICAgICAgICAgc3RhdGU6IHZhbHVlc1swXS5ncmlkU3RhdGVzW3ZhbHVlc1sxXS5ncmlkSWRdLmNvbHVtbnNTdGF0ZSxcbiAgICAgICAgICAgICAgYXBwbHlPcmRlcjogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHZhbHVlc1swXS5zZWxlY3RlZFJvd3NbdmFsdWVzWzFdLmdyaWRJZF0pIHtcbiAgICAgICAgICAgIGlmICh2YWx1ZXNbMV0ua2VlcFNlbGVjdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICBjb25zdCBpZHMgPSB2YWx1ZXNbMF0uc2VsZWN0ZWRSb3dzW3ZhbHVlc1sxXS5ncmlkSWRdPy5pZHMgPz8gW107XG4gICAgICAgICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5hcGkuZm9yRWFjaE5vZGUoKG5vZGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAobm9kZS5pZCkge1xuICAgICAgICAgICAgICAgICAgbm9kZS5zZWxlY3RUaGlzTm9kZShpZHMuaW5jbHVkZXMobm9kZS5pZCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5pbml0U2F0ZUNoYW5nZUxpc3RlbmVyKCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5zdG9yZS5zdGF0ZSQucGlwZShtYXAoKHMpID0+IHNlbGVjdEFnR3JpZFN0YXRlKHMpLmdyaWRTdGF0ZXMpKSwgdGhpcy5fY29uZmlnJF0pXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlc1swXVt2YWx1ZXNbMV0uZ3JpZElkXT8ub3JpZ2luID09PSBDaGFuZ2VPcmlnaW4ub3RoZXIpIHtcbiAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLmFwcGx5Q29sdW1uU3RhdGUoe1xuICAgICAgICAgICAgc3RhdGU6IHZhbHVlc1swXVt2YWx1ZXNbMV0uZ3JpZElkXS5jb2x1bW5zU3RhdGUsXG4gICAgICAgICAgICBhcHBseU9yZGVyOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5zdG9yZS5zdGF0ZSQucGlwZShtYXAoKHMpID0+IHNlbGVjdEFnR3JpZFN0YXRlKHMpLnNlbGVjdGVkUm93cykpLCB0aGlzLl9jb25maWckXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlcykgPT4ge1xuICAgICAgICBpZiAodmFsdWVzWzBdW3ZhbHVlc1sxXS5ncmlkSWRdPy5vcmlnaW4gPT09IENoYW5nZU9yaWdpbi5vdGhlciAmJiB2YWx1ZXNbMV0ua2VlcFNlbGVjdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgICAgIGNvbnN0IGlkcyA9IHZhbHVlc1swXVt2YWx1ZXNbMV0uZ3JpZElkXT8uaWRzID8/IFtdO1xuICAgICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5hcGkuZm9yRWFjaE5vZGUoKG5vZGUpID0+IHtcbiAgICAgICAgICAgIGlmIChub2RlLmlkKSB7XG4gICAgICAgICAgICAgIG5vZGUuc2VsZWN0VGhpc05vZGUoaWRzLmluY2x1ZGVzKG5vZGUuaWQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuZ2V0Q29udGV4dE1lbnVJdGVtcyA9IChwYXJhbXMpID0+IHRoaXMuZ2V0Q29udGV4dE1lbnVJdGVtcyhwYXJhbXMpO1xuICB9XG5cbiAgQElucHV0KCduZ3NzbUFnR3JpZCcpIHB1YmxpYyBzZXQgY29uZmlnKHZhbHVlOiBzdHJpbmcgfCBOZ3NzbUFnR3JpZENvbmZpZykge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLl9jb25maWckLm5leHQoe1xuICAgICAgICBncmlkSWQ6IHZhbHVlIGFzIHN0cmluZ1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2NvbmZpZyQubmV4dCh2YWx1ZSBhcyBOZ3NzbUFnR3JpZENvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudW5zdWJzcmliZUFsbCQubmV4dCgpO1xuICAgIHRoaXMudW5zdWJzcmliZUFsbCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFNhdGVDaGFuZ2VMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuc29ydENoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmZpbHRlckNoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtblBpbm5lZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2F2ZUdyaWRTdGF0ZSgpKTtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uUmVzaXplZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2F2ZUdyaWRTdGF0ZSgpKTtcbiAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuZGlzcGxheWVkQ29sdW1uc0NoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLnJvd1NlbGVjdGVkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5wcm9jZXNzU2VsZWN0aW9uQ2hhbmdlZCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2F2ZUdyaWRTdGF0ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5BcGkuZ2V0Q29sdW1uU3RhdGUoKTtcbiAgICB0aGlzLl9jb25maWckXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoZ3JpZElkKSA9PiB0aGlzLnN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uKGdyaWRJZC5ncmlkSWQsIENoYW5nZU9yaWdpbi5hZ0dyaWQsIHN0YXRlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzU2VsZWN0aW9uQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZFJvd3MgPSB0aGlzLmFnR3JpZEFuZ3VsYXIuYXBpXG4gICAgICAuZ2V0U2VsZWN0ZWROb2RlcygpXG4gICAgICAubWFwKChuKSA9PiBuLmlkID8/ICcnKVxuICAgICAgLmZpbHRlcigobikgPT4gbiAhPT0gJycpO1xuICAgIHRoaXMuX2NvbmZpZyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xuICAgICAgaWYgKGNvbmZpZy5rZWVwU2VsZWN0aW9uID09PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2hBY3Rpb24obmV3IFJlZ2lzdGVyU2VsZWN0ZWRSb3dzQWN0aW9uKGNvbmZpZy5ncmlkSWQsIENoYW5nZU9yaWdpbi5hZ0dyaWQsIHNlbGVjdGVkUm93cykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb250ZXh0TWVudUl0ZW1zKHBhcmFtczogR2V0Q29udGV4dE1lbnVJdGVtc1BhcmFtcyk6IChzdHJpbmcgfCBNZW51SXRlbURlZilbXSB7XG4gICAgY29uc3QgbWVudUl0ZW1zOiAoc3RyaW5nIHwgTWVudUl0ZW1EZWYpW10gPSBbLi4uKHBhcmFtcy5kZWZhdWx0SXRlbXMgPz8gW10pXTtcbiAgICBpZiAodGhpcy5fY29uZmlnJC5nZXRWYWx1ZSgpLmNhblNhdmVPbkRpc2tDb2x1bW5zU3RhdGUgPT09IHRydWUpIHtcbiAgICAgIG1lbnVJdGVtcy5wdXNoKFxuICAgICAgICAuLi5bXG4gICAgICAgICAgJ3NlcGFyYXRvcicsXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1NhdmUgY29sdW1ucyBzdGF0ZScsXG4gICAgICAgICAgICBhY3Rpb246ICgpID0+XG4gICAgICAgICAgICAgIHRoaXMuX2NvbmZpZyRcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbmZpZykgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgQWdHcmlkQWN0aW9uKEFnR3JpZEFjdGlvblR5cGUuc2F2ZUNvbHVtbnNTdGF0ZU9uRGlzaywgY29uZmlnLmdyaWRJZCkpKSxcbiAgICAgICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtZmxvcHB5LWRpc2tcIj48L2k+J1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1Jlc3RvcmUgY29sdW1ucyBzdGF0ZScsXG4gICAgICAgICAgICBhY3Rpb246ICgpID0+XG4gICAgICAgICAgICAgIHRoaXMuX2NvbmZpZyRcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbmZpZykgPT5cbiAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2hBY3Rpb24obmV3IEFnR3JpZEFjdGlvbihBZ0dyaWRBY3Rpb25UeXBlLnJlc2V0Q29sdW1uc1N0YXRlRnJvbURpc2ssIGNvbmZpZy5ncmlkSWQpKVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1yb3RhdGUtcmlnaHRcIj48L2k+J1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1Jlc2V0IGNvbHVtbnMgc3RhdGUgdG8gZGVmYXVsdCcsXG4gICAgICAgICAgICBhY3Rpb246ICgpID0+IHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5BcGkucmVzZXRDb2x1bW5TdGF0ZSgpLFxuICAgICAgICAgICAgaWNvbjogJzxpIGNsYXNzPVwiZmEtc29saWQgZmEtY2xvY2stcm90YXRlLWxlZnRcIj48L2k+J1xuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG1lbnVJdGVtcztcbiAgfVxufVxuIl19
@@ -42,9 +42,9 @@ export class LocalStorageEffect {
42
42
  return `ngssm-ag-grid_${gridId}`;
43
43
  }
44
44
  }
45
- LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
46
- LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect });
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, decorators: [{
45
+ LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
46
+ LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, decorators: [{
48
48
  type: Injectable
49
49
  }], ctorParameters: function () { return [{ type: i1.Logger }]; } });
50
50
  export const localStorageEffectProvider = {
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export class NgssmAgGridOptions {
3
+ constructor() {
4
+ this.theme = 'ag-theme-material';
5
+ this.statusBar = undefined;
6
+ }
7
+ }
8
+ export const NGSSM_AG_GRID_OPTIONS = new InjectionToken('NGSSM_AG_GRID_OPTIONS');
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tYWctZ3JpZC9zcmMvbGliL25nc3NtLWFnLWdyaWQtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sT0FBTyxrQkFBa0I7SUFBL0I7UUFDRSxVQUFLLEdBQUcsbUJBQW1CLENBQUM7UUFDNUIsY0FBUyxHQUlPLFNBQVMsQ0FBQztJQUM1QixDQUFDO0NBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBcUIsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGF0dXNQYW5lbERlZiB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuZXhwb3J0IGNsYXNzIE5nc3NtQWdHcmlkT3B0aW9ucyB7XG4gIHRoZW1lID0gJ2FnLXRoZW1lLW1hdGVyaWFsJztcbiAgc3RhdHVzQmFyOlxuICAgIHwge1xuICAgICAgICBzdGF0dXNQYW5lbHM6IFN0YXR1c1BhbmVsRGVmW107XG4gICAgICB9XG4gICAgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBjb25zdCBOR1NTTV9BR19HUklEX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48Tmdzc21BZ0dyaWRPcHRpb25zPignTkdTU01fQUdfR1JJRF9PUFRJT05TJyk7XG4iXX0=
@@ -3,6 +3,7 @@ import { NgssmAgGridDirective } from './components/ngssm-ag-grid.directive';
3
3
  import { gridStatesReducerProvider } from './reducers/grid-states.reducer';
4
4
  import { selectedRowsReducerProvider } from './reducers/selected-rows.reducer';
5
5
  import { localStorageEffectProvider } from './effects/local-storage.effect';
6
+ import { NgssmAgGridThemeDirective } from './components/ngssm-ag-grid-theme.directive';
6
7
  import * as i0 from "@angular/core";
7
8
  export class NgssmAgGridModule {
8
9
  static forRoot() {
@@ -12,16 +13,16 @@ export class NgssmAgGridModule {
12
13
  };
13
14
  }
14
15
  }
15
- NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective], exports: [NgssmAgGridDirective] });
17
- NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, decorators: [{
16
+ NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
+ NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective], exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective] });
18
+ NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, decorators: [{
19
20
  type: NgModule,
20
21
  args: [{
21
- declarations: [NgssmAgGridDirective],
22
+ declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
22
23
  imports: [],
23
- exports: [NgssmAgGridDirective],
24
+ exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
24
25
  providers: []
25
26
  }]
26
27
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvbmdzc20tYWctZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBUTVFLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSwyQkFBMkIsRUFBRSwwQkFBMEIsQ0FBQztTQUNoRyxDQUFDO0lBQ0osQ0FBQzs7OEdBTlUsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBTGIsb0JBQW9CLGFBRXpCLG9CQUFvQjsrR0FHbkIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBTjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUMvQixTQUFTLEVBQUUsRUFBRTtpQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3NzbUFnR3JpZERpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBncmlkU3RhdGVzUmVkdWNlclByb3ZpZGVyIH0gZnJvbSAnLi9yZWR1Y2Vycy9ncmlkLXN0YXRlcy5yZWR1Y2VyJztcbmltcG9ydCB7IHNlbGVjdGVkUm93c1JlZHVjZXJQcm92aWRlciB9IGZyb20gJy4vcmVkdWNlcnMvc2VsZWN0ZWQtcm93cy5yZWR1Y2VyJztcbmltcG9ydCB7IGxvY2FsU3RvcmFnZUVmZmVjdFByb3ZpZGVyIH0gZnJvbSAnLi9lZmZlY3RzL2xvY2FsLXN0b3JhZ2UuZWZmZWN0JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTmdzc21BZ0dyaWREaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbXSxcbiAgZXhwb3J0czogW05nc3NtQWdHcmlkRGlyZWN0aXZlXSxcbiAgcHJvdmlkZXJzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3NzbUFnR3JpZE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmdzc21BZ0dyaWRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5nc3NtQWdHcmlkTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbZ3JpZFN0YXRlc1JlZHVjZXJQcm92aWRlciwgc2VsZWN0ZWRSb3dzUmVkdWNlclByb3ZpZGVyLCBsb2NhbFN0b3JhZ2VFZmZlY3RQcm92aWRlcl1cbiAgICB9O1xuICB9XG59XG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvbmdzc20tYWctZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBUXZGLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSwyQkFBMkIsRUFBRSwwQkFBMEIsQ0FBQztTQUNoRyxDQUFDO0lBQ0osQ0FBQzs7OEdBTlUsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBTGIsb0JBQW9CLEVBQUUseUJBQXlCLGFBRXBELG9CQUFvQixFQUFFLHlCQUF5QjsrR0FHOUMsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBTjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUseUJBQXlCLENBQUM7b0JBQy9ELE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLHlCQUF5QixDQUFDO29CQUMxRCxTQUFTLEVBQUUsRUFBRTtpQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3NzbUFnR3JpZERpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBncmlkU3RhdGVzUmVkdWNlclByb3ZpZGVyIH0gZnJvbSAnLi9yZWR1Y2Vycy9ncmlkLXN0YXRlcy5yZWR1Y2VyJztcbmltcG9ydCB7IHNlbGVjdGVkUm93c1JlZHVjZXJQcm92aWRlciB9IGZyb20gJy4vcmVkdWNlcnMvc2VsZWN0ZWQtcm93cy5yZWR1Y2VyJztcbmltcG9ydCB7IGxvY2FsU3RvcmFnZUVmZmVjdFByb3ZpZGVyIH0gZnJvbSAnLi9lZmZlY3RzL2xvY2FsLXN0b3JhZ2UuZWZmZWN0JztcbmltcG9ydCB7IE5nc3NtQWdHcmlkVGhlbWVEaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvbmVudHMvbmdzc20tYWctZ3JpZC10aGVtZS5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtOZ3NzbUFnR3JpZERpcmVjdGl2ZSwgTmdzc21BZ0dyaWRUaGVtZURpcmVjdGl2ZV0sXG4gIGltcG9ydHM6IFtdLFxuICBleHBvcnRzOiBbTmdzc21BZ0dyaWREaXJlY3RpdmUsIE5nc3NtQWdHcmlkVGhlbWVEaXJlY3RpdmVdLFxuICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIE5nc3NtQWdHcmlkTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3NzbUFnR3JpZE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTmdzc21BZ0dyaWRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtncmlkU3RhdGVzUmVkdWNlclByb3ZpZGVyLCBzZWxlY3RlZFJvd3NSZWR1Y2VyUHJvdmlkZXIsIGxvY2FsU3RvcmFnZUVmZmVjdFByb3ZpZGVyXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -25,9 +25,9 @@ export class GridStatesReducer {
25
25
  return state;
26
26
  }
27
27
  }
28
- GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
- GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, decorators: [{
28
+ GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
+ GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, decorators: [{
31
31
  type: Injectable
32
32
  }] });
33
33
  export const gridStatesReducerProvider = {
@@ -25,9 +25,9 @@ export class SelectedRowsReducer {
25
25
  return state;
26
26
  }
27
27
  }
28
- SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
- SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, decorators: [{
28
+ SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
+ SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, decorators: [{
31
31
  type: Injectable
32
32
  }] });
33
33
  export const selectedRowsReducerProvider = {
@@ -6,4 +6,6 @@ export * from './lib/actions';
6
6
  export * from './lib/state';
7
7
  export * from './lib/components/ngssm-ag-grid.directive';
8
8
  export * from './lib/components/ngssm-ag-grid-config';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmdzc20tYWctZ3JpZFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25nc3NtLWFnLWdyaWQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL25nc3NtLWFnLWdyaWQtY29uZmlnJztcbiJdfQ==
9
+ export * from './lib/ngssm-ag-grid-options';
10
+ export * from './lib/components/ngssm-ag-grid-theme.directive';
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0RBQWdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5nc3NtLWFnLWdyaWRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3NzbS1hZy1ncmlkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmdzc20tYWctZ3JpZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLWNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3NzbS1hZy1ncmlkLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLXRoZW1lLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, Input, Injectable, NgModule } from '@angular/core';
3
- import { Subject, ReplaySubject, take, combineLatest, map, takeUntil } from 'rxjs';
2
+ import { InjectionToken, Directive, Inject, Optional, Input, Injectable, HostBinding, NgModule } from '@angular/core';
3
+ import { Subject, BehaviorSubject, take, combineLatest, map, takeUntil } from 'rxjs';
4
4
  import { __decorate } from 'tslib';
5
5
  import update from 'immutability-helper';
6
6
  import * as i1 from 'ngssm-store';
@@ -66,12 +66,25 @@ var ChangeOrigin;
66
66
  ChangeOrigin["other"] = "other";
67
67
  })(ChangeOrigin || (ChangeOrigin = {}));
68
68
 
69
+ class NgssmAgGridOptions {
70
+ constructor() {
71
+ this.theme = 'ag-theme-material';
72
+ this.statusBar = undefined;
73
+ }
74
+ }
75
+ const NGSSM_AG_GRID_OPTIONS = new InjectionToken('NGSSM_AG_GRID_OPTIONS');
76
+
69
77
  class NgssmAgGridDirective {
70
- constructor(store, agGridAngular) {
78
+ constructor(store, agGridAngular, options) {
71
79
  this.store = store;
72
80
  this.agGridAngular = agGridAngular;
73
81
  this.unsubsribeAll$ = new Subject();
74
- this._config$ = new ReplaySubject();
82
+ this._config$ = new BehaviorSubject({
83
+ gridId: ''
84
+ });
85
+ if (this.agGridAngular.statusBar === undefined) {
86
+ this.agGridAngular.statusBar = options === null || options === void 0 ? void 0 : options.statusBar;
87
+ }
75
88
  this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {
76
89
  combineLatest([
77
90
  this.store.state$.pipe(take(1), map((s) => selectAgGridState(s))),
@@ -123,11 +136,7 @@ class NgssmAgGridDirective {
123
136
  });
124
137
  }
125
138
  });
126
- this._config$.pipe(take(1)).subscribe((config) => {
127
- if (config.canSaveOnDiskColumnsState === true) {
128
- this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
129
- }
130
- });
139
+ this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
131
140
  }
132
141
  set config(value) {
133
142
  if (typeof value === 'string') {
@@ -170,40 +179,49 @@ class NgssmAgGridDirective {
170
179
  }
171
180
  getContextMenuItems(params) {
172
181
  var _a;
173
- console.log(params.defaultItems);
174
- return [
175
- ...((_a = params.defaultItems) !== null && _a !== void 0 ? _a : []),
176
- 'separator',
177
- {
178
- name: 'Save columns state',
179
- action: () => this._config$
180
- .pipe(take(1))
181
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
182
- icon: '<i class="fa-regular fa-floppy-disk"></i>'
183
- },
184
- {
185
- name: 'Restore columns state',
186
- action: () => this._config$
187
- .pipe(take(1))
188
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
189
- icon: '<i class="fa-solid fa-rotate-right"></i>'
190
- },
191
- {
192
- name: 'Reset columns state to default',
193
- action: () => this.agGridAngular.columnApi.resetColumnState(),
194
- icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
195
- }
196
- ];
182
+ const menuItems = [...((_a = params.defaultItems) !== null && _a !== void 0 ? _a : [])];
183
+ if (this._config$.getValue().canSaveOnDiskColumnsState === true) {
184
+ menuItems.push(...[
185
+ 'separator',
186
+ {
187
+ name: 'Save columns state',
188
+ action: () => this._config$
189
+ .pipe(take(1))
190
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
191
+ icon: '<i class="fa-regular fa-floppy-disk"></i>'
192
+ },
193
+ {
194
+ name: 'Restore columns state',
195
+ action: () => this._config$
196
+ .pipe(take(1))
197
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
198
+ icon: '<i class="fa-solid fa-rotate-right"></i>'
199
+ },
200
+ {
201
+ name: 'Reset columns state to default',
202
+ action: () => this.agGridAngular.columnApi.resetColumnState(),
203
+ icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
204
+ }
205
+ ]);
206
+ }
207
+ return menuItems;
197
208
  }
198
209
  }
199
- NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive });
200
- NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.3", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
210
+ NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }, { token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
211
+ NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
202
213
  type: Directive,
203
214
  args: [{
204
215
  selector: '[ngssmAgGrid]'
205
216
  }]
206
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }]; }, propDecorators: { config: [{
217
+ }], ctorParameters: function () {
218
+ return [{ type: i1.Store }, { type: i2.AgGridAngular }, { type: NgssmAgGridOptions, decorators: [{
219
+ type: Inject,
220
+ args: [NGSSM_AG_GRID_OPTIONS]
221
+ }, {
222
+ type: Optional
223
+ }] }];
224
+ }, propDecorators: { config: [{
207
225
  type: Input,
208
226
  args: ['ngssmAgGrid']
209
227
  }] } });
@@ -230,9 +248,9 @@ class GridStatesReducer {
230
248
  return state;
231
249
  }
232
250
  }
233
- GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
234
- GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer });
235
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, decorators: [{
251
+ GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
252
+ GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer });
253
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, decorators: [{
236
254
  type: Injectable
237
255
  }] });
238
256
  const gridStatesReducerProvider = {
@@ -263,9 +281,9 @@ class SelectedRowsReducer {
263
281
  return state;
264
282
  }
265
283
  }
266
- SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
267
- SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer });
268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, decorators: [{
284
+ SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
285
+ SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer });
286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, decorators: [{
269
287
  type: Injectable
270
288
  }] });
271
289
  const selectedRowsReducerProvider = {
@@ -312,9 +330,9 @@ class LocalStorageEffect {
312
330
  return `ngssm-ag-grid_${gridId}`;
313
331
  }
314
332
  }
315
- LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1$1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
316
- LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect });
317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, decorators: [{
333
+ LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1$1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
334
+ LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect });
335
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, decorators: [{
318
336
  type: Injectable
319
337
  }], ctorParameters: function () { return [{ type: i1$1.Logger }]; } });
320
338
  const localStorageEffectProvider = {
@@ -323,6 +341,31 @@ const localStorageEffectProvider = {
323
341
  multi: true
324
342
  };
325
343
 
344
+ class NgssmAgGridThemeDirective {
345
+ constructor(options) {
346
+ this.className = '';
347
+ this.className = (options !== null && options !== void 0 ? options : new NgssmAgGridOptions()).theme;
348
+ }
349
+ }
350
+ NgssmAgGridThemeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, deps: [{ token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
351
+ NgssmAgGridThemeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridThemeDirective, selector: "[ngssmAgGridTheme]", host: { properties: { "class": "this.className" } }, ngImport: i0 });
352
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, decorators: [{
353
+ type: Directive,
354
+ args: [{
355
+ selector: '[ngssmAgGridTheme]'
356
+ }]
357
+ }], ctorParameters: function () {
358
+ return [{ type: NgssmAgGridOptions, decorators: [{
359
+ type: Inject,
360
+ args: [NGSSM_AG_GRID_OPTIONS]
361
+ }, {
362
+ type: Optional
363
+ }] }];
364
+ }, propDecorators: { className: [{
365
+ type: HostBinding,
366
+ args: ['class']
367
+ }] } });
368
+
326
369
  class NgssmAgGridModule {
327
370
  static forRoot() {
328
371
  return {
@@ -331,15 +374,15 @@ class NgssmAgGridModule {
331
374
  };
332
375
  }
333
376
  }
334
- NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
335
- NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective], exports: [NgssmAgGridDirective] });
336
- NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule });
337
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, decorators: [{
377
+ NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
378
+ NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective], exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective] });
379
+ NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule });
380
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, decorators: [{
338
381
  type: NgModule,
339
382
  args: [{
340
- declarations: [NgssmAgGridDirective],
383
+ declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
341
384
  imports: [],
342
- exports: [NgssmAgGridDirective],
385
+ exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
343
386
  providers: []
344
387
  }]
345
388
  }] });
@@ -352,5 +395,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
352
395
  * Generated bundle index. Do not edit.
353
396
  */
354
397
 
355
- export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NgssmAgGridDirective, NgssmAgGridModule, RegisterAgGridStateAction, RegisterSelectedRowsAction, selectAgGridState, updateAgGridState };
398
+ export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NGSSM_AG_GRID_OPTIONS, NgssmAgGridDirective, NgssmAgGridModule, NgssmAgGridOptions, NgssmAgGridThemeDirective, RegisterAgGridStateAction, RegisterSelectedRowsAction, selectAgGridState, updateAgGridState };
356
399
  //# sourceMappingURL=ngssm-ag-grid.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngssm-ag-grid.mjs","sources":["../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid-action-type.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-ag-grid-state.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-selected-rows.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid.action.ts","../../../projects/ngssm-ag-grid/src/lib/state/ag-grid.state.ts","../../../projects/ngssm-ag-grid/src/lib/state/change-origin.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/grid-states.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/selected-rows.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid.module.ts","../../../projects/ngssm-ag-grid/src/public-api.ts","../../../projects/ngssm-ag-grid/src/ngssm-ag-grid.ts"],"sourcesContent":["export enum AgGridActionType {\n registerAgGridState = '[AgGridActionType] registerAgGridState',\n registerSelectedRows = '[AgGridActionType] registerSelectedRows',\n saveColumnsStateOnDisk = '[AgGridActionType] saveColumnsStateOnDisk',\n resetColumnsStateFromDisk = '[AgGridActionType] resetColumnsStateFromDisk'\n}\n","import { ColumnState } from 'ag-grid-community';\n\nimport { Action } from 'ngssm-store';\n\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterAgGridStateAction implements Action {\n public readonly type: string = AgGridActionType.registerAgGridState;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly columnStates: ColumnState[]) {}\n}\n","import { Action } from 'ngssm-store';\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterSelectedRowsAction implements Action {\n public readonly type: string = AgGridActionType.registerSelectedRows;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly ids: string[]) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(public readonly type: string, public readonly gridId: string) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\nimport { GridState } from './grid-state';\nimport { SelectedRows } from './selected-rows';\n\nexport const selectAgGridState = (state: State): AgGridState => state[AgGridStateSpecification.featureStateKey] as AgGridState;\n\nexport const updateAgGridState = (state: State, command: Spec<AgGridState, never>): State =>\n update(state, {\n [AgGridStateSpecification.featureStateKey]: command\n });\n\nexport interface AgGridState {\n gridStates: { [key: string]: GridState };\n selectedRows: { [key: string]: SelectedRows };\n}\n\n@NgSsmFeatureState({\n featureStateKey: AgGridStateSpecification.featureStateKey,\n initialState: AgGridStateSpecification.initialState\n})\nexport class AgGridStateSpecification {\n public static readonly featureStateKey = 'ag-grid-state';\n public static readonly initialState: AgGridState = {\n gridStates: {},\n selectedRows: {}\n };\n}\n","export enum ChangeOrigin {\n agGrid = 'agGrid',\n other = 'other'\n}\n","import { Directive, Input, OnDestroy } from '@angular/core';\nimport { combineLatest, map, ReplaySubject, Subject, take, takeUntil } from 'rxjs';\n\nimport { AgGridAngular } from 'ag-grid-angular';\nimport { GetContextMenuItemsParams, MenuItemDef } from 'ag-grid-community';\n\nimport { Store } from 'ngssm-store';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction, RegisterSelectedRowsAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\nimport { NgssmAgGridConfig } from './ngssm-ag-grid-config';\n\n@Directive({\n selector: '[ngssmAgGrid]'\n})\nexport class NgssmAgGridDirective implements OnDestroy {\n private readonly unsubsribeAll$ = new Subject<void>();\n private readonly _config$ = new ReplaySubject<NgssmAgGridConfig>();\n\n constructor(private store: Store, private agGridAngular: AgGridAngular) {\n this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {\n combineLatest([\n this.store.state$.pipe(\n take(1),\n map((s) => selectAgGridState(s))\n ),\n this._config$\n ])\n .pipe(take(1))\n .subscribe((values) => {\n if (values[0].gridStates[values[1].gridId]) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0].gridStates[values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n\n if (values[0].selectedRows[values[1].gridId]) {\n if (values[1].keepSelection === true) {\n const ids = values[0].selectedRows[values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n }\n\n this.initSateChangeListener();\n });\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).gridStates)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0][values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).selectedRows)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other && values[1].keepSelection === true) {\n const ids = values[0][values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n });\n\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.canSaveOnDiskColumnsState === true) {\n this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);\n }\n });\n }\n\n @Input('ngssmAgGrid') public set config(value: string | NgssmAgGridConfig) {\n if (typeof value === 'string') {\n this._config$.next({\n gridId: value as string\n });\n } else {\n this._config$.next(value as NgssmAgGridConfig);\n }\n }\n\n public ngOnDestroy(): void {\n this.unsubsribeAll$.next();\n this.unsubsribeAll$.complete();\n }\n\n private initSateChangeListener(): void {\n this.agGridAngular.sortChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.filterChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnPinned.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnResized.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.displayedColumnsChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.rowSelected.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.processSelectionChanged());\n }\n\n private saveGridState(): void {\n const state = this.agGridAngular.columnApi.getColumnState();\n this._config$\n .pipe(take(1))\n .subscribe((gridId) => this.store.dispatchAction(new RegisterAgGridStateAction(gridId.gridId, ChangeOrigin.agGrid, state)));\n }\n\n private processSelectionChanged(): void {\n const selectedRows = this.agGridAngular.api\n .getSelectedNodes()\n .map((n) => n.id ?? '')\n .filter((n) => n !== '');\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.keepSelection === true) {\n this.store.dispatchAction(new RegisterSelectedRowsAction(config.gridId, ChangeOrigin.agGrid, selectedRows));\n }\n });\n }\n\n private getContextMenuItems(params: GetContextMenuItemsParams): (string | MenuItemDef)[] {\n console.log(params.defaultItems);\n return [\n ...(params.defaultItems ?? []),\n 'separator',\n {\n name: 'Save columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),\n icon: '<i class=\"fa-regular fa-floppy-disk\"></i>'\n },\n {\n name: 'Restore columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),\n icon: '<i class=\"fa-solid fa-rotate-right\"></i>'\n },\n {\n name: 'Reset columns state to default',\n action: () => this.agGridAngular.columnApi.resetColumnState(),\n icon: '<i class=\"fa-solid fa-clock-rotate-left\"></i>'\n }\n ];\n }\n}\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class GridStatesReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerAgGridState];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerAgGridState:\n const registerAgGridStateAction = action as RegisterAgGridStateAction;\n return updateAgGridState(state, {\n gridStates: {\n [registerAgGridStateAction.gridId]: {\n $set: {\n origin: registerAgGridStateAction.origin,\n columnsState: registerAgGridStateAction.columnStates\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const gridStatesReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: GridStatesReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterSelectedRowsAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class SelectedRowsReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerSelectedRows];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerSelectedRows:\n const registerSelectedRowsAction = action as RegisterSelectedRowsAction;\n return updateAgGridState(state, {\n selectedRows: {\n [registerSelectedRowsAction.gridId]: {\n $set: {\n origin: registerSelectedRowsAction.origin,\n ids: registerSelectedRowsAction.ids\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const selectedRowsReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: SelectedRowsReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Effect, Store, State, Action, NGSSM_EFFECT } from 'ngssm-store';\nimport { Logger } from 'ngssm-toolkit';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\n\n@Injectable()\nexport class LocalStorageEffect implements Effect {\n public readonly processedActions: string[] = [AgGridActionType.saveColumnsStateOnDisk, AgGridActionType.resetColumnsStateFromDisk];\n\n constructor(private logger: Logger) {}\n\n public processAction(store: Store, state: State, action: Action): void {\n const agGridAction = action as AgGridAction;\n\n switch (action.type) {\n case AgGridActionType.saveColumnsStateOnDisk:\n const columnsState = selectAgGridState(state).gridStates[agGridAction.gridId];\n if (columnsState) {\n localStorage.setItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId), JSON.stringify(columnsState.columnsState));\n }\n\n break;\n\n case AgGridActionType.resetColumnsStateFromDisk:\n const stored = localStorage.getItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId));\n console.log(stored);\n if (stored) {\n try {\n const columnsState = JSON.parse(stored);\n if (Array.isArray(columnsState)) {\n store.dispatchAction(new RegisterAgGridStateAction(agGridAction.gridId, ChangeOrigin.other, columnsState));\n } else {\n this.logger.error(`Wrong columns state config for grid '${agGridAction.gridId}'`, stored);\n }\n } catch (error) {\n this.logger.error(`Unable to load config for grid '${agGridAction.gridId}'`, error);\n }\n }\n\n break;\n }\n }\n\n private getColumnsStateLocalStorageKey(gridId: string): string {\n return `ngssm-ag-grid_${gridId}`;\n }\n}\n\nexport const localStorageEffectProvider: Provider = {\n provide: NGSSM_EFFECT,\n useClass: LocalStorageEffect,\n multi: true\n};\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgssmAgGridDirective } from './components/ngssm-ag-grid.directive';\nimport { gridStatesReducerProvider } from './reducers/grid-states.reducer';\nimport { selectedRowsReducerProvider } from './reducers/selected-rows.reducer';\nimport { localStorageEffectProvider } from './effects/local-storage.effect';\n\n@NgModule({\n declarations: [NgssmAgGridDirective],\n imports: [],\n exports: [NgssmAgGridDirective],\n providers: []\n})\nexport class NgssmAgGridModule {\n static forRoot(): ModuleWithProviders<NgssmAgGridModule> {\n return {\n ngModule: NgssmAgGridModule,\n providers: [gridStatesReducerProvider, selectedRowsReducerProvider, localStorageEffectProvider]\n };\n }\n}\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/ngssm-ag-grid.module';\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components/ngssm-ag-grid.directive';\nexport * from './lib/components/ngssm-ag-grid-config';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"ngssm-ag-grid.mjs","sources":["../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid-action-type.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-ag-grid-state.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-selected-rows.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid.action.ts","../../../projects/ngssm-ag-grid/src/lib/state/ag-grid.state.ts","../../../projects/ngssm-ag-grid/src/lib/state/change-origin.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid-options.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/grid-states.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/selected-rows.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid-theme.directive.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid.module.ts","../../../projects/ngssm-ag-grid/src/public-api.ts","../../../projects/ngssm-ag-grid/src/ngssm-ag-grid.ts"],"sourcesContent":["export enum AgGridActionType {\n registerAgGridState = '[AgGridActionType] registerAgGridState',\n registerSelectedRows = '[AgGridActionType] registerSelectedRows',\n saveColumnsStateOnDisk = '[AgGridActionType] saveColumnsStateOnDisk',\n resetColumnsStateFromDisk = '[AgGridActionType] resetColumnsStateFromDisk'\n}\n","import { ColumnState } from 'ag-grid-community';\n\nimport { Action } from 'ngssm-store';\n\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterAgGridStateAction implements Action {\n public readonly type: string = AgGridActionType.registerAgGridState;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly columnStates: ColumnState[]) {}\n}\n","import { Action } from 'ngssm-store';\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterSelectedRowsAction implements Action {\n public readonly type: string = AgGridActionType.registerSelectedRows;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly ids: string[]) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(public readonly type: string, public readonly gridId: string) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\nimport { GridState } from './grid-state';\nimport { SelectedRows } from './selected-rows';\n\nexport const selectAgGridState = (state: State): AgGridState => state[AgGridStateSpecification.featureStateKey] as AgGridState;\n\nexport const updateAgGridState = (state: State, command: Spec<AgGridState, never>): State =>\n update(state, {\n [AgGridStateSpecification.featureStateKey]: command\n });\n\nexport interface AgGridState {\n gridStates: { [key: string]: GridState };\n selectedRows: { [key: string]: SelectedRows };\n}\n\n@NgSsmFeatureState({\n featureStateKey: AgGridStateSpecification.featureStateKey,\n initialState: AgGridStateSpecification.initialState\n})\nexport class AgGridStateSpecification {\n public static readonly featureStateKey = 'ag-grid-state';\n public static readonly initialState: AgGridState = {\n gridStates: {},\n selectedRows: {}\n };\n}\n","export enum ChangeOrigin {\n agGrid = 'agGrid',\n other = 'other'\n}\n","import { InjectionToken } from '@angular/core';\nimport { StatusPanelDef } from 'ag-grid-community';\n\nexport class NgssmAgGridOptions {\n theme = 'ag-theme-material';\n statusBar:\n | {\n statusPanels: StatusPanelDef[];\n }\n | undefined = undefined;\n}\n\nexport const NGSSM_AG_GRID_OPTIONS = new InjectionToken<NgssmAgGridOptions>('NGSSM_AG_GRID_OPTIONS');\n","import { Directive, Inject, Input, OnDestroy, Optional } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Subject, take, takeUntil } from 'rxjs';\n\nimport { AgGridAngular } from 'ag-grid-angular';\nimport { GetContextMenuItemsParams, MenuItemDef } from 'ag-grid-community';\n\nimport { Store } from 'ngssm-store';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction, RegisterSelectedRowsAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\nimport { NgssmAgGridConfig } from './ngssm-ag-grid-config';\nimport { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';\n\n@Directive({\n selector: '[ngssmAgGrid]'\n})\nexport class NgssmAgGridDirective implements OnDestroy {\n private readonly unsubsribeAll$ = new Subject<void>();\n private readonly _config$ = new BehaviorSubject<NgssmAgGridConfig>({\n gridId: ''\n });\n\n constructor(\n private store: Store,\n private agGridAngular: AgGridAngular,\n @Inject(NGSSM_AG_GRID_OPTIONS) @Optional() options: NgssmAgGridOptions\n ) {\n if (this.agGridAngular.statusBar === undefined) {\n this.agGridAngular.statusBar = options?.statusBar;\n }\n\n this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {\n combineLatest([\n this.store.state$.pipe(\n take(1),\n map((s) => selectAgGridState(s))\n ),\n this._config$\n ])\n .pipe(take(1))\n .subscribe((values) => {\n if (values[0].gridStates[values[1].gridId]) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0].gridStates[values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n\n if (values[0].selectedRows[values[1].gridId]) {\n if (values[1].keepSelection === true) {\n const ids = values[0].selectedRows[values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n }\n\n this.initSateChangeListener();\n });\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).gridStates)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0][values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).selectedRows)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other && values[1].keepSelection === true) {\n const ids = values[0][values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n });\n\n this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);\n }\n\n @Input('ngssmAgGrid') public set config(value: string | NgssmAgGridConfig) {\n if (typeof value === 'string') {\n this._config$.next({\n gridId: value as string\n });\n } else {\n this._config$.next(value as NgssmAgGridConfig);\n }\n }\n\n public ngOnDestroy(): void {\n this.unsubsribeAll$.next();\n this.unsubsribeAll$.complete();\n }\n\n private initSateChangeListener(): void {\n this.agGridAngular.sortChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.filterChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnPinned.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnResized.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.displayedColumnsChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.rowSelected.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.processSelectionChanged());\n }\n\n private saveGridState(): void {\n const state = this.agGridAngular.columnApi.getColumnState();\n this._config$\n .pipe(take(1))\n .subscribe((gridId) => this.store.dispatchAction(new RegisterAgGridStateAction(gridId.gridId, ChangeOrigin.agGrid, state)));\n }\n\n private processSelectionChanged(): void {\n const selectedRows = this.agGridAngular.api\n .getSelectedNodes()\n .map((n) => n.id ?? '')\n .filter((n) => n !== '');\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.keepSelection === true) {\n this.store.dispatchAction(new RegisterSelectedRowsAction(config.gridId, ChangeOrigin.agGrid, selectedRows));\n }\n });\n }\n\n private getContextMenuItems(params: GetContextMenuItemsParams): (string | MenuItemDef)[] {\n const menuItems: (string | MenuItemDef)[] = [...(params.defaultItems ?? [])];\n if (this._config$.getValue().canSaveOnDiskColumnsState === true) {\n menuItems.push(\n ...[\n 'separator',\n {\n name: 'Save columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),\n icon: '<i class=\"fa-regular fa-floppy-disk\"></i>'\n },\n {\n name: 'Restore columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) =>\n this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))\n ),\n icon: '<i class=\"fa-solid fa-rotate-right\"></i>'\n },\n {\n name: 'Reset columns state to default',\n action: () => this.agGridAngular.columnApi.resetColumnState(),\n icon: '<i class=\"fa-solid fa-clock-rotate-left\"></i>'\n }\n ]\n );\n }\n return menuItems;\n }\n}\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class GridStatesReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerAgGridState];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerAgGridState:\n const registerAgGridStateAction = action as RegisterAgGridStateAction;\n return updateAgGridState(state, {\n gridStates: {\n [registerAgGridStateAction.gridId]: {\n $set: {\n origin: registerAgGridStateAction.origin,\n columnsState: registerAgGridStateAction.columnStates\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const gridStatesReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: GridStatesReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterSelectedRowsAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class SelectedRowsReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerSelectedRows];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerSelectedRows:\n const registerSelectedRowsAction = action as RegisterSelectedRowsAction;\n return updateAgGridState(state, {\n selectedRows: {\n [registerSelectedRowsAction.gridId]: {\n $set: {\n origin: registerSelectedRowsAction.origin,\n ids: registerSelectedRowsAction.ids\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const selectedRowsReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: SelectedRowsReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Effect, Store, State, Action, NGSSM_EFFECT } from 'ngssm-store';\nimport { Logger } from 'ngssm-toolkit';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\n\n@Injectable()\nexport class LocalStorageEffect implements Effect {\n public readonly processedActions: string[] = [AgGridActionType.saveColumnsStateOnDisk, AgGridActionType.resetColumnsStateFromDisk];\n\n constructor(private logger: Logger) {}\n\n public processAction(store: Store, state: State, action: Action): void {\n const agGridAction = action as AgGridAction;\n\n switch (action.type) {\n case AgGridActionType.saveColumnsStateOnDisk:\n const columnsState = selectAgGridState(state).gridStates[agGridAction.gridId];\n if (columnsState) {\n localStorage.setItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId), JSON.stringify(columnsState.columnsState));\n }\n\n break;\n\n case AgGridActionType.resetColumnsStateFromDisk:\n const stored = localStorage.getItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId));\n console.log(stored);\n if (stored) {\n try {\n const columnsState = JSON.parse(stored);\n if (Array.isArray(columnsState)) {\n store.dispatchAction(new RegisterAgGridStateAction(agGridAction.gridId, ChangeOrigin.other, columnsState));\n } else {\n this.logger.error(`Wrong columns state config for grid '${agGridAction.gridId}'`, stored);\n }\n } catch (error) {\n this.logger.error(`Unable to load config for grid '${agGridAction.gridId}'`, error);\n }\n }\n\n break;\n }\n }\n\n private getColumnsStateLocalStorageKey(gridId: string): string {\n return `ngssm-ag-grid_${gridId}`;\n }\n}\n\nexport const localStorageEffectProvider: Provider = {\n provide: NGSSM_EFFECT,\n useClass: LocalStorageEffect,\n multi: true\n};\n","import { Directive, HostBinding, Inject, Optional } from '@angular/core';\n\nimport { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';\n\n@Directive({\n selector: '[ngssmAgGridTheme]'\n})\nexport class NgssmAgGridThemeDirective {\n @HostBinding('class') className = '';\n\n constructor(@Inject(NGSSM_AG_GRID_OPTIONS) @Optional() options: NgssmAgGridOptions) {\n this.className = (options ?? new NgssmAgGridOptions()).theme;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgssmAgGridDirective } from './components/ngssm-ag-grid.directive';\nimport { gridStatesReducerProvider } from './reducers/grid-states.reducer';\nimport { selectedRowsReducerProvider } from './reducers/selected-rows.reducer';\nimport { localStorageEffectProvider } from './effects/local-storage.effect';\nimport { NgssmAgGridThemeDirective } from './components/ngssm-ag-grid-theme.directive';\n\n@NgModule({\n declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective],\n imports: [],\n exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective],\n providers: []\n})\nexport class NgssmAgGridModule {\n static forRoot(): ModuleWithProviders<NgssmAgGridModule> {\n return {\n ngModule: NgssmAgGridModule,\n providers: [gridStatesReducerProvider, selectedRowsReducerProvider, localStorageEffectProvider]\n };\n }\n}\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/ngssm-ag-grid.module';\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components/ngssm-ag-grid.directive';\nexport * from './lib/components/ngssm-ag-grid-config';\nexport * from './lib/ngssm-ag-grid-options';\nexport * from './lib/components/ngssm-ag-grid-theme.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, Input, Injectable, NgModule } from '@angular/core';
3
- import { Subject, ReplaySubject, take, combineLatest, map, takeUntil } from 'rxjs';
2
+ import { InjectionToken, Directive, Inject, Optional, Input, Injectable, HostBinding, NgModule } from '@angular/core';
3
+ import { Subject, BehaviorSubject, take, combineLatest, map, takeUntil } from 'rxjs';
4
4
  import { __decorate } from 'tslib';
5
5
  import update from 'immutability-helper';
6
6
  import * as i1 from 'ngssm-store';
@@ -66,12 +66,25 @@ var ChangeOrigin;
66
66
  ChangeOrigin["other"] = "other";
67
67
  })(ChangeOrigin || (ChangeOrigin = {}));
68
68
 
69
+ class NgssmAgGridOptions {
70
+ constructor() {
71
+ this.theme = 'ag-theme-material';
72
+ this.statusBar = undefined;
73
+ }
74
+ }
75
+ const NGSSM_AG_GRID_OPTIONS = new InjectionToken('NGSSM_AG_GRID_OPTIONS');
76
+
69
77
  class NgssmAgGridDirective {
70
- constructor(store, agGridAngular) {
78
+ constructor(store, agGridAngular, options) {
71
79
  this.store = store;
72
80
  this.agGridAngular = agGridAngular;
73
81
  this.unsubsribeAll$ = new Subject();
74
- this._config$ = new ReplaySubject();
82
+ this._config$ = new BehaviorSubject({
83
+ gridId: ''
84
+ });
85
+ if (this.agGridAngular.statusBar === undefined) {
86
+ this.agGridAngular.statusBar = options?.statusBar;
87
+ }
75
88
  this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {
76
89
  combineLatest([
77
90
  this.store.state$.pipe(take(1), map((s) => selectAgGridState(s))),
@@ -120,11 +133,7 @@ class NgssmAgGridDirective {
120
133
  });
121
134
  }
122
135
  });
123
- this._config$.pipe(take(1)).subscribe((config) => {
124
- if (config.canSaveOnDiskColumnsState === true) {
125
- this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
126
- }
127
- });
136
+ this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);
128
137
  }
129
138
  set config(value) {
130
139
  if (typeof value === 'string') {
@@ -166,40 +175,47 @@ class NgssmAgGridDirective {
166
175
  });
167
176
  }
168
177
  getContextMenuItems(params) {
169
- console.log(params.defaultItems);
170
- return [
171
- ...(params.defaultItems ?? []),
172
- 'separator',
173
- {
174
- name: 'Save columns state',
175
- action: () => this._config$
176
- .pipe(take(1))
177
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
178
- icon: '<i class="fa-regular fa-floppy-disk"></i>'
179
- },
180
- {
181
- name: 'Restore columns state',
182
- action: () => this._config$
183
- .pipe(take(1))
184
- .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
185
- icon: '<i class="fa-solid fa-rotate-right"></i>'
186
- },
187
- {
188
- name: 'Reset columns state to default',
189
- action: () => this.agGridAngular.columnApi.resetColumnState(),
190
- icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
191
- }
192
- ];
178
+ const menuItems = [...(params.defaultItems ?? [])];
179
+ if (this._config$.getValue().canSaveOnDiskColumnsState === true) {
180
+ menuItems.push(...[
181
+ 'separator',
182
+ {
183
+ name: 'Save columns state',
184
+ action: () => this._config$
185
+ .pipe(take(1))
186
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),
187
+ icon: '<i class="fa-regular fa-floppy-disk"></i>'
188
+ },
189
+ {
190
+ name: 'Restore columns state',
191
+ action: () => this._config$
192
+ .pipe(take(1))
193
+ .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),
194
+ icon: '<i class="fa-solid fa-rotate-right"></i>'
195
+ },
196
+ {
197
+ name: 'Reset columns state to default',
198
+ action: () => this.agGridAngular.columnApi.resetColumnState(),
199
+ icon: '<i class="fa-solid fa-clock-rotate-left"></i>'
200
+ }
201
+ ]);
202
+ }
203
+ return menuItems;
193
204
  }
194
205
  }
195
- NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive });
196
- NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.3", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
197
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
206
+ NgssmAgGridDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }, { token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
207
+ NgssmAgGridDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridDirective, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 });
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
198
209
  type: Directive,
199
210
  args: [{
200
211
  selector: '[ngssmAgGrid]'
201
212
  }]
202
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }]; }, propDecorators: { config: [{
213
+ }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }, { type: NgssmAgGridOptions, decorators: [{
214
+ type: Inject,
215
+ args: [NGSSM_AG_GRID_OPTIONS]
216
+ }, {
217
+ type: Optional
218
+ }] }]; }, propDecorators: { config: [{
203
219
  type: Input,
204
220
  args: ['ngssmAgGrid']
205
221
  }] } });
@@ -226,9 +242,9 @@ class GridStatesReducer {
226
242
  return state;
227
243
  }
228
244
  }
229
- GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
230
- GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer });
231
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: GridStatesReducer, decorators: [{
245
+ GridStatesReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
246
+ GridStatesReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer });
247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: GridStatesReducer, decorators: [{
232
248
  type: Injectable
233
249
  }] });
234
250
  const gridStatesReducerProvider = {
@@ -259,9 +275,9 @@ class SelectedRowsReducer {
259
275
  return state;
260
276
  }
261
277
  }
262
- SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
263
- SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer });
264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectedRowsReducer, decorators: [{
278
+ SelectedRowsReducer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
279
+ SelectedRowsReducer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer });
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SelectedRowsReducer, decorators: [{
265
281
  type: Injectable
266
282
  }] });
267
283
  const selectedRowsReducerProvider = {
@@ -308,9 +324,9 @@ class LocalStorageEffect {
308
324
  return `ngssm-ag-grid_${gridId}`;
309
325
  }
310
326
  }
311
- LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1$1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
312
- LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect });
313
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: LocalStorageEffect, decorators: [{
327
+ LocalStorageEffect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1$1.Logger }], target: i0.ɵɵFactoryTarget.Injectable });
328
+ LocalStorageEffect.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect });
329
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalStorageEffect, decorators: [{
314
330
  type: Injectable
315
331
  }], ctorParameters: function () { return [{ type: i1$1.Logger }]; } });
316
332
  const localStorageEffectProvider = {
@@ -319,6 +335,29 @@ const localStorageEffectProvider = {
319
335
  multi: true
320
336
  };
321
337
 
338
+ class NgssmAgGridThemeDirective {
339
+ constructor(options) {
340
+ this.className = '';
341
+ this.className = (options ?? new NgssmAgGridOptions()).theme;
342
+ }
343
+ }
344
+ NgssmAgGridThemeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, deps: [{ token: NGSSM_AG_GRID_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
345
+ NgssmAgGridThemeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NgssmAgGridThemeDirective, selector: "[ngssmAgGridTheme]", host: { properties: { "class": "this.className" } }, ngImport: i0 });
346
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridThemeDirective, decorators: [{
347
+ type: Directive,
348
+ args: [{
349
+ selector: '[ngssmAgGridTheme]'
350
+ }]
351
+ }], ctorParameters: function () { return [{ type: NgssmAgGridOptions, decorators: [{
352
+ type: Inject,
353
+ args: [NGSSM_AG_GRID_OPTIONS]
354
+ }, {
355
+ type: Optional
356
+ }] }]; }, propDecorators: { className: [{
357
+ type: HostBinding,
358
+ args: ['class']
359
+ }] } });
360
+
322
361
  class NgssmAgGridModule {
323
362
  static forRoot() {
324
363
  return {
@@ -327,15 +366,15 @@ class NgssmAgGridModule {
327
366
  };
328
367
  }
329
368
  }
330
- NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
331
- NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective], exports: [NgssmAgGridDirective] });
332
- NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule });
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: NgssmAgGridModule, decorators: [{
369
+ NgssmAgGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
370
+ NgssmAgGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective], exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective] });
371
+ NgssmAgGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule });
372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NgssmAgGridModule, decorators: [{
334
373
  type: NgModule,
335
374
  args: [{
336
- declarations: [NgssmAgGridDirective],
375
+ declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
337
376
  imports: [],
338
- exports: [NgssmAgGridDirective],
377
+ exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective],
339
378
  providers: []
340
379
  }]
341
380
  }] });
@@ -348,5 +387,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
348
387
  * Generated bundle index. Do not edit.
349
388
  */
350
389
 
351
- export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NgssmAgGridDirective, NgssmAgGridModule, RegisterAgGridStateAction, RegisterSelectedRowsAction, selectAgGridState, updateAgGridState };
390
+ export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NGSSM_AG_GRID_OPTIONS, NgssmAgGridDirective, NgssmAgGridModule, NgssmAgGridOptions, NgssmAgGridThemeDirective, RegisterAgGridStateAction, RegisterSelectedRowsAction, selectAgGridState, updateAgGridState };
352
391
  //# sourceMappingURL=ngssm-ag-grid.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngssm-ag-grid.mjs","sources":["../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid-action-type.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-ag-grid-state.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-selected-rows.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid.action.ts","../../../projects/ngssm-ag-grid/src/lib/state/ag-grid.state.ts","../../../projects/ngssm-ag-grid/src/lib/state/change-origin.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/grid-states.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/selected-rows.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid.module.ts","../../../projects/ngssm-ag-grid/src/public-api.ts","../../../projects/ngssm-ag-grid/src/ngssm-ag-grid.ts"],"sourcesContent":["export enum AgGridActionType {\n registerAgGridState = '[AgGridActionType] registerAgGridState',\n registerSelectedRows = '[AgGridActionType] registerSelectedRows',\n saveColumnsStateOnDisk = '[AgGridActionType] saveColumnsStateOnDisk',\n resetColumnsStateFromDisk = '[AgGridActionType] resetColumnsStateFromDisk'\n}\n","import { ColumnState } from 'ag-grid-community';\n\nimport { Action } from 'ngssm-store';\n\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterAgGridStateAction implements Action {\n public readonly type: string = AgGridActionType.registerAgGridState;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly columnStates: ColumnState[]) {}\n}\n","import { Action } from 'ngssm-store';\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterSelectedRowsAction implements Action {\n public readonly type: string = AgGridActionType.registerSelectedRows;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly ids: string[]) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(public readonly type: string, public readonly gridId: string) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\nimport { GridState } from './grid-state';\nimport { SelectedRows } from './selected-rows';\n\nexport const selectAgGridState = (state: State): AgGridState => state[AgGridStateSpecification.featureStateKey] as AgGridState;\n\nexport const updateAgGridState = (state: State, command: Spec<AgGridState, never>): State =>\n update(state, {\n [AgGridStateSpecification.featureStateKey]: command\n });\n\nexport interface AgGridState {\n gridStates: { [key: string]: GridState };\n selectedRows: { [key: string]: SelectedRows };\n}\n\n@NgSsmFeatureState({\n featureStateKey: AgGridStateSpecification.featureStateKey,\n initialState: AgGridStateSpecification.initialState\n})\nexport class AgGridStateSpecification {\n public static readonly featureStateKey = 'ag-grid-state';\n public static readonly initialState: AgGridState = {\n gridStates: {},\n selectedRows: {}\n };\n}\n","export enum ChangeOrigin {\n agGrid = 'agGrid',\n other = 'other'\n}\n","import { Directive, Input, OnDestroy } from '@angular/core';\nimport { combineLatest, map, ReplaySubject, Subject, take, takeUntil } from 'rxjs';\n\nimport { AgGridAngular } from 'ag-grid-angular';\nimport { GetContextMenuItemsParams, MenuItemDef } from 'ag-grid-community';\n\nimport { Store } from 'ngssm-store';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction, RegisterSelectedRowsAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\nimport { NgssmAgGridConfig } from './ngssm-ag-grid-config';\n\n@Directive({\n selector: '[ngssmAgGrid]'\n})\nexport class NgssmAgGridDirective implements OnDestroy {\n private readonly unsubsribeAll$ = new Subject<void>();\n private readonly _config$ = new ReplaySubject<NgssmAgGridConfig>();\n\n constructor(private store: Store, private agGridAngular: AgGridAngular) {\n this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {\n combineLatest([\n this.store.state$.pipe(\n take(1),\n map((s) => selectAgGridState(s))\n ),\n this._config$\n ])\n .pipe(take(1))\n .subscribe((values) => {\n if (values[0].gridStates[values[1].gridId]) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0].gridStates[values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n\n if (values[0].selectedRows[values[1].gridId]) {\n if (values[1].keepSelection === true) {\n const ids = values[0].selectedRows[values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n }\n\n this.initSateChangeListener();\n });\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).gridStates)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0][values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).selectedRows)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other && values[1].keepSelection === true) {\n const ids = values[0][values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n });\n\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.canSaveOnDiskColumnsState === true) {\n this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);\n }\n });\n }\n\n @Input('ngssmAgGrid') public set config(value: string | NgssmAgGridConfig) {\n if (typeof value === 'string') {\n this._config$.next({\n gridId: value as string\n });\n } else {\n this._config$.next(value as NgssmAgGridConfig);\n }\n }\n\n public ngOnDestroy(): void {\n this.unsubsribeAll$.next();\n this.unsubsribeAll$.complete();\n }\n\n private initSateChangeListener(): void {\n this.agGridAngular.sortChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.filterChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnPinned.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnResized.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.displayedColumnsChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.rowSelected.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.processSelectionChanged());\n }\n\n private saveGridState(): void {\n const state = this.agGridAngular.columnApi.getColumnState();\n this._config$\n .pipe(take(1))\n .subscribe((gridId) => this.store.dispatchAction(new RegisterAgGridStateAction(gridId.gridId, ChangeOrigin.agGrid, state)));\n }\n\n private processSelectionChanged(): void {\n const selectedRows = this.agGridAngular.api\n .getSelectedNodes()\n .map((n) => n.id ?? '')\n .filter((n) => n !== '');\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.keepSelection === true) {\n this.store.dispatchAction(new RegisterSelectedRowsAction(config.gridId, ChangeOrigin.agGrid, selectedRows));\n }\n });\n }\n\n private getContextMenuItems(params: GetContextMenuItemsParams): (string | MenuItemDef)[] {\n console.log(params.defaultItems);\n return [\n ...(params.defaultItems ?? []),\n 'separator',\n {\n name: 'Save columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),\n icon: '<i class=\"fa-regular fa-floppy-disk\"></i>'\n },\n {\n name: 'Restore columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))),\n icon: '<i class=\"fa-solid fa-rotate-right\"></i>'\n },\n {\n name: 'Reset columns state to default',\n action: () => this.agGridAngular.columnApi.resetColumnState(),\n icon: '<i class=\"fa-solid fa-clock-rotate-left\"></i>'\n }\n ];\n }\n}\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class GridStatesReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerAgGridState];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerAgGridState:\n const registerAgGridStateAction = action as RegisterAgGridStateAction;\n return updateAgGridState(state, {\n gridStates: {\n [registerAgGridStateAction.gridId]: {\n $set: {\n origin: registerAgGridStateAction.origin,\n columnsState: registerAgGridStateAction.columnStates\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const gridStatesReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: GridStatesReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterSelectedRowsAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class SelectedRowsReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerSelectedRows];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerSelectedRows:\n const registerSelectedRowsAction = action as RegisterSelectedRowsAction;\n return updateAgGridState(state, {\n selectedRows: {\n [registerSelectedRowsAction.gridId]: {\n $set: {\n origin: registerSelectedRowsAction.origin,\n ids: registerSelectedRowsAction.ids\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const selectedRowsReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: SelectedRowsReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Effect, Store, State, Action, NGSSM_EFFECT } from 'ngssm-store';\nimport { Logger } from 'ngssm-toolkit';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\n\n@Injectable()\nexport class LocalStorageEffect implements Effect {\n public readonly processedActions: string[] = [AgGridActionType.saveColumnsStateOnDisk, AgGridActionType.resetColumnsStateFromDisk];\n\n constructor(private logger: Logger) {}\n\n public processAction(store: Store, state: State, action: Action): void {\n const agGridAction = action as AgGridAction;\n\n switch (action.type) {\n case AgGridActionType.saveColumnsStateOnDisk:\n const columnsState = selectAgGridState(state).gridStates[agGridAction.gridId];\n if (columnsState) {\n localStorage.setItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId), JSON.stringify(columnsState.columnsState));\n }\n\n break;\n\n case AgGridActionType.resetColumnsStateFromDisk:\n const stored = localStorage.getItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId));\n console.log(stored);\n if (stored) {\n try {\n const columnsState = JSON.parse(stored);\n if (Array.isArray(columnsState)) {\n store.dispatchAction(new RegisterAgGridStateAction(agGridAction.gridId, ChangeOrigin.other, columnsState));\n } else {\n this.logger.error(`Wrong columns state config for grid '${agGridAction.gridId}'`, stored);\n }\n } catch (error) {\n this.logger.error(`Unable to load config for grid '${agGridAction.gridId}'`, error);\n }\n }\n\n break;\n }\n }\n\n private getColumnsStateLocalStorageKey(gridId: string): string {\n return `ngssm-ag-grid_${gridId}`;\n }\n}\n\nexport const localStorageEffectProvider: Provider = {\n provide: NGSSM_EFFECT,\n useClass: LocalStorageEffect,\n multi: true\n};\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgssmAgGridDirective } from './components/ngssm-ag-grid.directive';\nimport { gridStatesReducerProvider } from './reducers/grid-states.reducer';\nimport { selectedRowsReducerProvider } from './reducers/selected-rows.reducer';\nimport { localStorageEffectProvider } from './effects/local-storage.effect';\n\n@NgModule({\n declarations: [NgssmAgGridDirective],\n imports: [],\n exports: [NgssmAgGridDirective],\n providers: []\n})\nexport class NgssmAgGridModule {\n static forRoot(): ModuleWithProviders<NgssmAgGridModule> {\n return {\n ngModule: NgssmAgGridModule,\n providers: [gridStatesReducerProvider, selectedRowsReducerProvider, localStorageEffectProvider]\n };\n }\n}\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/ngssm-ag-grid.module';\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components/ngssm-ag-grid.directive';\nexport * from './lib/components/ngssm-ag-grid-config';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"ngssm-ag-grid.mjs","sources":["../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid-action-type.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-ag-grid-state.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/register-selected-rows.action.ts","../../../projects/ngssm-ag-grid/src/lib/actions/ag-grid.action.ts","../../../projects/ngssm-ag-grid/src/lib/state/ag-grid.state.ts","../../../projects/ngssm-ag-grid/src/lib/state/change-origin.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid-options.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/grid-states.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/reducers/selected-rows.reducer.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid-theme.directive.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid.module.ts","../../../projects/ngssm-ag-grid/src/public-api.ts","../../../projects/ngssm-ag-grid/src/ngssm-ag-grid.ts"],"sourcesContent":["export enum AgGridActionType {\n registerAgGridState = '[AgGridActionType] registerAgGridState',\n registerSelectedRows = '[AgGridActionType] registerSelectedRows',\n saveColumnsStateOnDisk = '[AgGridActionType] saveColumnsStateOnDisk',\n resetColumnsStateFromDisk = '[AgGridActionType] resetColumnsStateFromDisk'\n}\n","import { ColumnState } from 'ag-grid-community';\n\nimport { Action } from 'ngssm-store';\n\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterAgGridStateAction implements Action {\n public readonly type: string = AgGridActionType.registerAgGridState;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly columnStates: ColumnState[]) {}\n}\n","import { Action } from 'ngssm-store';\nimport { ChangeOrigin } from '../state';\nimport { AgGridActionType } from './ag-grid-action-type';\n\nexport class RegisterSelectedRowsAction implements Action {\n public readonly type: string = AgGridActionType.registerSelectedRows;\n\n constructor(public readonly gridId: string, public readonly origin: ChangeOrigin, public readonly ids: string[]) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(public readonly type: string, public readonly gridId: string) {}\n}\n","import update, { Spec } from 'immutability-helper';\n\nimport { NgSsmFeatureState, State } from 'ngssm-store';\nimport { GridState } from './grid-state';\nimport { SelectedRows } from './selected-rows';\n\nexport const selectAgGridState = (state: State): AgGridState => state[AgGridStateSpecification.featureStateKey] as AgGridState;\n\nexport const updateAgGridState = (state: State, command: Spec<AgGridState, never>): State =>\n update(state, {\n [AgGridStateSpecification.featureStateKey]: command\n });\n\nexport interface AgGridState {\n gridStates: { [key: string]: GridState };\n selectedRows: { [key: string]: SelectedRows };\n}\n\n@NgSsmFeatureState({\n featureStateKey: AgGridStateSpecification.featureStateKey,\n initialState: AgGridStateSpecification.initialState\n})\nexport class AgGridStateSpecification {\n public static readonly featureStateKey = 'ag-grid-state';\n public static readonly initialState: AgGridState = {\n gridStates: {},\n selectedRows: {}\n };\n}\n","export enum ChangeOrigin {\n agGrid = 'agGrid',\n other = 'other'\n}\n","import { InjectionToken } from '@angular/core';\nimport { StatusPanelDef } from 'ag-grid-community';\n\nexport class NgssmAgGridOptions {\n theme = 'ag-theme-material';\n statusBar:\n | {\n statusPanels: StatusPanelDef[];\n }\n | undefined = undefined;\n}\n\nexport const NGSSM_AG_GRID_OPTIONS = new InjectionToken<NgssmAgGridOptions>('NGSSM_AG_GRID_OPTIONS');\n","import { Directive, Inject, Input, OnDestroy, Optional } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Subject, take, takeUntil } from 'rxjs';\n\nimport { AgGridAngular } from 'ag-grid-angular';\nimport { GetContextMenuItemsParams, MenuItemDef } from 'ag-grid-community';\n\nimport { Store } from 'ngssm-store';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction, RegisterSelectedRowsAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\nimport { NgssmAgGridConfig } from './ngssm-ag-grid-config';\nimport { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';\n\n@Directive({\n selector: '[ngssmAgGrid]'\n})\nexport class NgssmAgGridDirective implements OnDestroy {\n private readonly unsubsribeAll$ = new Subject<void>();\n private readonly _config$ = new BehaviorSubject<NgssmAgGridConfig>({\n gridId: ''\n });\n\n constructor(\n private store: Store,\n private agGridAngular: AgGridAngular,\n @Inject(NGSSM_AG_GRID_OPTIONS) @Optional() options: NgssmAgGridOptions\n ) {\n if (this.agGridAngular.statusBar === undefined) {\n this.agGridAngular.statusBar = options?.statusBar;\n }\n\n this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {\n combineLatest([\n this.store.state$.pipe(\n take(1),\n map((s) => selectAgGridState(s))\n ),\n this._config$\n ])\n .pipe(take(1))\n .subscribe((values) => {\n if (values[0].gridStates[values[1].gridId]) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0].gridStates[values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n\n if (values[0].selectedRows[values[1].gridId]) {\n if (values[1].keepSelection === true) {\n const ids = values[0].selectedRows[values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n }\n\n this.initSateChangeListener();\n });\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).gridStates)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other) {\n this.agGridAngular.columnApi.applyColumnState({\n state: values[0][values[1].gridId].columnsState,\n applyOrder: true\n });\n }\n });\n\n combineLatest([this.store.state$.pipe(map((s) => selectAgGridState(s).selectedRows)), this._config$])\n .pipe(takeUntil(this.unsubsribeAll$))\n .subscribe((values) => {\n if (values[0][values[1].gridId]?.origin === ChangeOrigin.other && values[1].keepSelection === true) {\n const ids = values[0][values[1].gridId]?.ids ?? [];\n this.agGridAngular.api.forEachNode((node) => {\n if (node.id) {\n node.selectThisNode(ids.includes(node.id));\n }\n });\n }\n });\n\n this.agGridAngular.getContextMenuItems = (params) => this.getContextMenuItems(params);\n }\n\n @Input('ngssmAgGrid') public set config(value: string | NgssmAgGridConfig) {\n if (typeof value === 'string') {\n this._config$.next({\n gridId: value as string\n });\n } else {\n this._config$.next(value as NgssmAgGridConfig);\n }\n }\n\n public ngOnDestroy(): void {\n this.unsubsribeAll$.next();\n this.unsubsribeAll$.complete();\n }\n\n private initSateChangeListener(): void {\n this.agGridAngular.sortChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.filterChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnPinned.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.columnResized.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.displayedColumnsChanged.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.saveGridState());\n this.agGridAngular.rowSelected.pipe(takeUntil(this.unsubsribeAll$)).subscribe(() => this.processSelectionChanged());\n }\n\n private saveGridState(): void {\n const state = this.agGridAngular.columnApi.getColumnState();\n this._config$\n .pipe(take(1))\n .subscribe((gridId) => this.store.dispatchAction(new RegisterAgGridStateAction(gridId.gridId, ChangeOrigin.agGrid, state)));\n }\n\n private processSelectionChanged(): void {\n const selectedRows = this.agGridAngular.api\n .getSelectedNodes()\n .map((n) => n.id ?? '')\n .filter((n) => n !== '');\n this._config$.pipe(take(1)).subscribe((config) => {\n if (config.keepSelection === true) {\n this.store.dispatchAction(new RegisterSelectedRowsAction(config.gridId, ChangeOrigin.agGrid, selectedRows));\n }\n });\n }\n\n private getContextMenuItems(params: GetContextMenuItemsParams): (string | MenuItemDef)[] {\n const menuItems: (string | MenuItemDef)[] = [...(params.defaultItems ?? [])];\n if (this._config$.getValue().canSaveOnDiskColumnsState === true) {\n menuItems.push(\n ...[\n 'separator',\n {\n name: 'Save columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) => this.store.dispatchAction(new AgGridAction(AgGridActionType.saveColumnsStateOnDisk, config.gridId))),\n icon: '<i class=\"fa-regular fa-floppy-disk\"></i>'\n },\n {\n name: 'Restore columns state',\n action: () =>\n this._config$\n .pipe(take(1))\n .subscribe((config) =>\n this.store.dispatchAction(new AgGridAction(AgGridActionType.resetColumnsStateFromDisk, config.gridId))\n ),\n icon: '<i class=\"fa-solid fa-rotate-right\"></i>'\n },\n {\n name: 'Reset columns state to default',\n action: () => this.agGridAngular.columnApi.resetColumnState(),\n icon: '<i class=\"fa-solid fa-clock-rotate-left\"></i>'\n }\n ]\n );\n }\n return menuItems;\n }\n}\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class GridStatesReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerAgGridState];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerAgGridState:\n const registerAgGridStateAction = action as RegisterAgGridStateAction;\n return updateAgGridState(state, {\n gridStates: {\n [registerAgGridStateAction.gridId]: {\n $set: {\n origin: registerAgGridStateAction.origin,\n columnsState: registerAgGridStateAction.columnStates\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const gridStatesReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: GridStatesReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Reducer, State, Action, NGSSM_REDUCER } from 'ngssm-store';\n\nimport { AgGridActionType, RegisterSelectedRowsAction } from '../actions';\nimport { updateAgGridState } from '../state';\n\n@Injectable()\nexport class SelectedRowsReducer implements Reducer {\n public readonly processedActions: string[] = [AgGridActionType.registerSelectedRows];\n\n public updateState(state: State, action: Action): State {\n switch (action.type) {\n case AgGridActionType.registerSelectedRows:\n const registerSelectedRowsAction = action as RegisterSelectedRowsAction;\n return updateAgGridState(state, {\n selectedRows: {\n [registerSelectedRowsAction.gridId]: {\n $set: {\n origin: registerSelectedRowsAction.origin,\n ids: registerSelectedRowsAction.ids\n }\n }\n }\n });\n }\n\n return state;\n }\n}\n\nexport const selectedRowsReducerProvider: Provider = {\n provide: NGSSM_REDUCER,\n useClass: SelectedRowsReducer,\n multi: true\n};\n","import { Injectable, Provider } from '@angular/core';\n\nimport { Effect, Store, State, Action, NGSSM_EFFECT } from 'ngssm-store';\nimport { Logger } from 'ngssm-toolkit';\n\nimport { AgGridAction, AgGridActionType, RegisterAgGridStateAction } from '../actions';\nimport { ChangeOrigin, selectAgGridState } from '../state';\n\n@Injectable()\nexport class LocalStorageEffect implements Effect {\n public readonly processedActions: string[] = [AgGridActionType.saveColumnsStateOnDisk, AgGridActionType.resetColumnsStateFromDisk];\n\n constructor(private logger: Logger) {}\n\n public processAction(store: Store, state: State, action: Action): void {\n const agGridAction = action as AgGridAction;\n\n switch (action.type) {\n case AgGridActionType.saveColumnsStateOnDisk:\n const columnsState = selectAgGridState(state).gridStates[agGridAction.gridId];\n if (columnsState) {\n localStorage.setItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId), JSON.stringify(columnsState.columnsState));\n }\n\n break;\n\n case AgGridActionType.resetColumnsStateFromDisk:\n const stored = localStorage.getItem(this.getColumnsStateLocalStorageKey(agGridAction.gridId));\n console.log(stored);\n if (stored) {\n try {\n const columnsState = JSON.parse(stored);\n if (Array.isArray(columnsState)) {\n store.dispatchAction(new RegisterAgGridStateAction(agGridAction.gridId, ChangeOrigin.other, columnsState));\n } else {\n this.logger.error(`Wrong columns state config for grid '${agGridAction.gridId}'`, stored);\n }\n } catch (error) {\n this.logger.error(`Unable to load config for grid '${agGridAction.gridId}'`, error);\n }\n }\n\n break;\n }\n }\n\n private getColumnsStateLocalStorageKey(gridId: string): string {\n return `ngssm-ag-grid_${gridId}`;\n }\n}\n\nexport const localStorageEffectProvider: Provider = {\n provide: NGSSM_EFFECT,\n useClass: LocalStorageEffect,\n multi: true\n};\n","import { Directive, HostBinding, Inject, Optional } from '@angular/core';\n\nimport { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';\n\n@Directive({\n selector: '[ngssmAgGridTheme]'\n})\nexport class NgssmAgGridThemeDirective {\n @HostBinding('class') className = '';\n\n constructor(@Inject(NGSSM_AG_GRID_OPTIONS) @Optional() options: NgssmAgGridOptions) {\n this.className = (options ?? new NgssmAgGridOptions()).theme;\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgssmAgGridDirective } from './components/ngssm-ag-grid.directive';\nimport { gridStatesReducerProvider } from './reducers/grid-states.reducer';\nimport { selectedRowsReducerProvider } from './reducers/selected-rows.reducer';\nimport { localStorageEffectProvider } from './effects/local-storage.effect';\nimport { NgssmAgGridThemeDirective } from './components/ngssm-ag-grid-theme.directive';\n\n@NgModule({\n declarations: [NgssmAgGridDirective, NgssmAgGridThemeDirective],\n imports: [],\n exports: [NgssmAgGridDirective, NgssmAgGridThemeDirective],\n providers: []\n})\nexport class NgssmAgGridModule {\n static forRoot(): ModuleWithProviders<NgssmAgGridModule> {\n return {\n ngModule: NgssmAgGridModule,\n providers: [gridStatesReducerProvider, selectedRowsReducerProvider, localStorageEffectProvider]\n };\n }\n}\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/ngssm-ag-grid.module';\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components/ngssm-ag-grid.directive';\nexport * from './lib/components/ngssm-ag-grid-config';\nexport * from './lib/ngssm-ag-grid-options';\nexport * from './lib/components/ngssm-ag-grid-theme.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":";;;;;;;;;;IAAY,iBAKX;AALD,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,qBAAA,CAAA,GAAA,wCAA8D,CAAA;AAC9D,IAAA,gBAAA,CAAA,sBAAA,CAAA,GAAA,yCAAgE,CAAA;AAChE,IAAA,gBAAA,CAAA,wBAAA,CAAA,GAAA,2CAAoE,CAAA;AACpE,IAAA,gBAAA,CAAA,2BAAA,CAAA,GAAA,8CAA0E,CAAA;AAC5E,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,GAK3B,EAAA,CAAA,CAAA;;MCEY,yBAAyB,CAAA;AAGpC,IAAA,WAAA,CAA4B,MAAc,EAAkB,MAAoB,EAAkB,YAA2B,EAAA;QAAjG,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAAkB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAc;QAAkB,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAe;AAF7G,QAAA,IAAA,CAAA,IAAI,GAAW,gBAAgB,CAAC,mBAAmB,CAAC;KAE6D;AAClI;;MCPY,0BAA0B,CAAA;AAGrC,IAAA,WAAA,CAA4B,MAAc,EAAkB,MAAoB,EAAkB,GAAa,EAAA;QAAnF,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAAkB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAc;QAAkB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAU;AAF/F,QAAA,IAAA,CAAA,IAAI,GAAW,gBAAgB,CAAC,oBAAoB,CAAC;KAE8C;AACpH;;MCNY,YAAY,CAAA;IACvB,WAA4B,CAAA,IAAY,EAAkB,MAAc,EAAA;QAA5C,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAQ;QAAkB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;KAAI;AAC7E;;;ACEM,MAAM,iBAAiB,GAAG,CAAC,KAAY,KAAkB,KAAK,CAAC,wBAAwB,CAAC,eAAe,EAAiB;AAExH,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAE,OAAiC,KAC/E,MAAM,CAAC,KAAK,EAAE;AACZ,IAAA,CAAC,wBAAwB,CAAC,eAAe,GAAG,OAAO;AACpD,CAAA,EAAE;AAWQ,IAAA,wBAAwB,GAA9B,0BAAA,GAAA,MAAM,wBAAwB,CAAA;;AACZ,wBAAe,CAAA,eAAA,GAAG,eAAe,CAAC;AAClC,wBAAA,CAAA,YAAY,GAAgB;AACjD,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,YAAY,EAAE,EAAE;CACjB,CAAC;AALS,wBAAwB,GAAA,0BAAA,GAAA,UAAA,CAAA;AAJpC,IAAA,iBAAiB,CAAC;QACjB,eAAe,EAAE,0BAAwB,CAAC,eAAe;QACzD,YAAY,EAAE,0BAAwB,CAAC,YAAY;KACpD,CAAC;AACW,CAAA,EAAA,wBAAwB,CAMpC;;IC5BW,aAGX;AAHD,CAAA,UAAY,YAAY,EAAA;AACtB,IAAA,YAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,YAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACjB,CAAC,EAHW,YAAY,KAAZ,YAAY,GAGvB,EAAA,CAAA,CAAA;;MCAY,kBAAkB,CAAA;AAA/B,IAAA,WAAA,GAAA;QACE,IAAK,CAAA,KAAA,GAAG,mBAAmB,CAAC;QAC5B,IAAS,CAAA,SAAA,GAIO,SAAS,CAAC;KAC3B;AAAA,CAAA;MAEY,qBAAqB,GAAG,IAAI,cAAc,CAAqB,uBAAuB;;MCItF,oBAAoB,CAAA;AAM/B,IAAA,WAAA,CACU,KAAY,EACZ,aAA4B,EACO,OAA2B,EAAA;QAF9D,IAAK,CAAA,KAAA,GAAL,KAAK,CAAO;QACZ,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;AAPrB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAC;QACrC,IAAQ,CAAA,QAAA,GAAG,IAAI,eAAe,CAAoB;AACjE,YAAA,MAAM,EAAE,EAAE;AACX,SAAA,CAAC,CAAC;AAOD,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE;YAC9C,IAAI,CAAC,aAAa,CAAC,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;AACnD,SAAA;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AACzD,YAAA,aAAa,CAAC;gBACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACpB,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CACjC;AACD,gBAAA,IAAI,CAAC,QAAQ;aACd,CAAC;AACC,iBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,iBAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,gBAAA,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;AAC1C,oBAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC;AAC5C,wBAAA,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY;AAC1D,wBAAA,UAAU,EAAE,IAAI;AACjB,qBAAA,CAAC,CAAC;AACJ,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;oBAC5C,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE;wBACpC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;wBAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,KAAI;4BAC1C,IAAI,IAAI,CAAC,EAAE,EAAE;AACX,gCAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5C,6BAAA;AACH,yBAAC,CAAC,CAAC;AACJ,qBAAA;AACF,iBAAA;gBAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAChC,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;AAEH,QAAA,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChG,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,YAAA,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,KAAK,EAAE;AAC9D,gBAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC;AAC5C,oBAAA,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY;AAC/C,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;AAEL,QAAA,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClG,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;YACpB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE;AAClG,gBAAA,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;gBACnD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,KAAI;oBAC1C,IAAI,IAAI,CAAC,EAAE,EAAE;AACX,wBAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5C,qBAAA;AACH,iBAAC,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;AAEL,QAAA,IAAI,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;KACvF;IAED,IAAiC,MAAM,CAAC,KAAiC,EAAA;AACvE,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjB,gBAAA,MAAM,EAAE,KAAe;AACxB,aAAA,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAA0B,CAAC,CAAC;AAChD,SAAA;KACF;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;KAChC;IAEO,sBAAsB,GAAA;QAC5B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5G,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3G,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5G,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACtH,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;KACrH;IAEO,aAAa,GAAA;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;AAC5D,QAAA,IAAI,CAAC,QAAQ;AACV,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACb,SAAS,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,yBAAyB,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;KAC/H;IAEO,uBAAuB,GAAA;AAC7B,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG;AACxC,aAAA,gBAAgB,EAAE;aAClB,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;aACtB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;AAC3B,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,KAAI;AAC/C,YAAA,IAAI,MAAM,CAAC,aAAa,KAAK,IAAI,EAAE;AACjC,gBAAA,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;AAC7G,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAEO,IAAA,mBAAmB,CAAC,MAAiC,EAAA;AAC3D,QAAA,MAAM,SAAS,GAA6B,CAAC,IAAI,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,yBAAyB,KAAK,IAAI,EAAE;YAC/D,SAAS,CAAC,IAAI,CACZ,GAAG;gBACD,WAAW;AACX,gBAAA;AACE,oBAAA,IAAI,EAAE,oBAAoB;AAC1B,oBAAA,MAAM,EAAE,MACN,IAAI,CAAC,QAAQ;AACV,yBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACb,SAAS,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/H,oBAAA,IAAI,EAAE,2CAA2C;AAClD,iBAAA;AACD,gBAAA;AACE,oBAAA,IAAI,EAAE,uBAAuB;AAC7B,oBAAA,MAAM,EAAE,MACN,IAAI,CAAC,QAAQ;AACV,yBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACb,SAAS,CAAC,CAAC,MAAM,KAChB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CACvG;AACL,oBAAA,IAAI,EAAE,0CAA0C;AACjD,iBAAA;AACD,gBAAA;AACE,oBAAA,IAAI,EAAE,gCAAgC;oBACtC,MAAM,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE;AAC7D,oBAAA,IAAI,EAAE,+CAA+C;AACtD,iBAAA;AACF,aAAA,CACF,CAAC;AACH,SAAA;AACD,QAAA,OAAO,SAAS,CAAC;KAClB;;AAtJU,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,oEASrB,qBAAqB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGATpB,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,QAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA,CAAA;;0BAUI,MAAM;2BAAC,qBAAqB,CAAA;;0BAAG,QAAQ;4CAiET,MAAM,EAAA,CAAA;sBAAtC,KAAK;uBAAC,aAAa,CAAA;;;MClFT,iBAAiB,CAAA;AAD9B,IAAA,WAAA,GAAA;AAEkB,QAAA,IAAA,CAAA,gBAAgB,GAAa,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;AAoBrF,KAAA;IAlBQ,WAAW,CAAC,KAAY,EAAE,MAAc,EAAA;QAC7C,QAAQ,MAAM,CAAC,IAAI;YACjB,KAAK,gBAAgB,CAAC,mBAAmB;gBACvC,MAAM,yBAAyB,GAAG,MAAmC,CAAC;gBACtE,OAAO,iBAAiB,CAAC,KAAK,EAAE;AAC9B,oBAAA,UAAU,EAAE;AACV,wBAAA,CAAC,yBAAyB,CAAC,MAAM,GAAG;AAClC,4BAAA,IAAI,EAAE;gCACJ,MAAM,EAAE,yBAAyB,CAAC,MAAM;gCACxC,YAAY,EAAE,yBAAyB,CAAC,YAAY;AACrD,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAC,CAAC;AACN,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KACd;;8GApBU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAjB,iBAAiB,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;;AAwBJ,MAAM,yBAAyB,GAAa;AACjD,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,QAAQ,EAAE,iBAAiB;AAC3B,IAAA,KAAK,EAAE,IAAI;CACZ;;MC3BY,mBAAmB,CAAA;AADhC,IAAA,WAAA,GAAA;AAEkB,QAAA,IAAA,CAAA,gBAAgB,GAAa,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAoBtF,KAAA;IAlBQ,WAAW,CAAC,KAAY,EAAE,MAAc,EAAA;QAC7C,QAAQ,MAAM,CAAC,IAAI;YACjB,KAAK,gBAAgB,CAAC,oBAAoB;gBACxC,MAAM,0BAA0B,GAAG,MAAoC,CAAC;gBACxE,OAAO,iBAAiB,CAAC,KAAK,EAAE;AAC9B,oBAAA,YAAY,EAAE;AACZ,wBAAA,CAAC,0BAA0B,CAAC,MAAM,GAAG;AACnC,4BAAA,IAAI,EAAE;gCACJ,MAAM,EAAE,0BAA0B,CAAC,MAAM;gCACzC,GAAG,EAAE,0BAA0B,CAAC,GAAG;AACpC,6BAAA;AACF,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAC,CAAC;AACN,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KACd;;gHApBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;oHAAnB,mBAAmB,EAAA,CAAA,CAAA;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,UAAU;;AAwBJ,MAAM,2BAA2B,GAAa;AACnD,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,QAAQ,EAAE,mBAAmB;AAC7B,IAAA,KAAK,EAAE,IAAI;CACZ;;MC1BY,kBAAkB,CAAA;AAG7B,IAAA,WAAA,CAAoB,MAAc,EAAA;QAAd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAFlB,IAAgB,CAAA,gBAAA,GAAa,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;KAE7F;AAE/B,IAAA,aAAa,CAAC,KAAY,EAAE,KAAY,EAAE,MAAc,EAAA;QAC7D,MAAM,YAAY,GAAG,MAAsB,CAAC;QAE5C,QAAQ,MAAM,CAAC,IAAI;YACjB,KAAK,gBAAgB,CAAC,sBAAsB;AAC1C,gBAAA,MAAM,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9E,gBAAA,IAAI,YAAY,EAAE;oBAChB,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;AAC3H,iBAAA;gBAED,MAAM;YAER,KAAK,gBAAgB,CAAC,yBAAyB;AAC7C,gBAAA,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9F,gBAAA,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACpB,gBAAA,IAAI,MAAM,EAAE;oBACV,IAAI;wBACF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACxC,wBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,4BAAA,KAAK,CAAC,cAAc,CAAC,IAAI,yBAAyB,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;AAC5G,yBAAA;AAAM,6BAAA;AACL,4BAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,qCAAA,EAAwC,YAAY,CAAC,MAAM,CAAA,CAAA,CAAG,EAAE,MAAM,CAAC,CAAC;AAC3F,yBAAA;AACF,qBAAA;AAAC,oBAAA,OAAO,KAAK,EAAE;AACd,wBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,gCAAA,EAAmC,YAAY,CAAC,MAAM,CAAA,CAAA,CAAG,EAAE,KAAK,CAAC,CAAC;AACrF,qBAAA;AACF,iBAAA;gBAED,MAAM;AACT,SAAA;KACF;AAEO,IAAA,8BAA8B,CAAC,MAAc,EAAA;QACnD,OAAO,CAAA,cAAA,EAAiB,MAAM,CAAA,CAAE,CAAC;KAClC;;+GAvCU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAlB,kBAAkB,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;;AA2CJ,MAAM,0BAA0B,GAAa;AAClD,IAAA,OAAO,EAAE,YAAY;AACrB,IAAA,QAAQ,EAAE,kBAAkB;AAC5B,IAAA,KAAK,EAAE,IAAI;CACZ;;MChDY,yBAAyB,CAAA;AAGpC,IAAA,WAAA,CAAuD,OAA2B,EAAA;QAF5D,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;AAGnC,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,IAAI,IAAI,kBAAkB,EAAE,EAAE,KAAK,CAAC;KAC9D;;AALU,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,kBAGhB,qBAAqB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAH9B,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA,CAAA;;0BAIc,MAAM;2BAAC,qBAAqB,CAAA;;0BAAG,QAAQ;4CAF9B,SAAS,EAAA,CAAA;sBAA9B,WAAW;uBAAC,OAAO,CAAA;;;MCKT,iBAAiB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,iBAAiB;AAC3B,YAAA,SAAS,EAAE,CAAC,yBAAyB,EAAE,2BAA2B,EAAE,0BAA0B,CAAC;SAChG,CAAC;KACH;;8GANU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBALb,oBAAoB,EAAE,yBAAyB,CAEpD,EAAA,OAAA,EAAA,CAAA,oBAAoB,EAAE,yBAAyB,CAAA,EAAA,CAAA,CAAA;+GAG9C,iBAAiB,EAAA,CAAA,CAAA;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;AAC/D,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,OAAO,EAAE,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;AAC1D,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACZD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -0,0 +1,8 @@
1
+ import { NgssmAgGridOptions } from '../ngssm-ag-grid-options';
2
+ import * as i0 from "@angular/core";
3
+ export declare class NgssmAgGridThemeDirective {
4
+ className: string;
5
+ constructor(options: NgssmAgGridOptions);
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridThemeDirective, [{ optional: true; }]>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgssmAgGridThemeDirective, "[ngssmAgGridTheme]", never, {}, {}, never, never, false, never>;
8
+ }
@@ -2,19 +2,20 @@ import { OnDestroy } from '@angular/core';
2
2
  import { AgGridAngular } from 'ag-grid-angular';
3
3
  import { Store } from 'ngssm-store';
4
4
  import { NgssmAgGridConfig } from './ngssm-ag-grid-config';
5
+ import { NgssmAgGridOptions } from '../ngssm-ag-grid-options';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class NgssmAgGridDirective implements OnDestroy {
7
8
  private store;
8
9
  private agGridAngular;
9
10
  private readonly unsubsribeAll$;
10
11
  private readonly _config$;
11
- constructor(store: Store, agGridAngular: AgGridAngular);
12
+ constructor(store: Store, agGridAngular: AgGridAngular, options: NgssmAgGridOptions);
12
13
  set config(value: string | NgssmAgGridConfig);
13
14
  ngOnDestroy(): void;
14
15
  private initSateChangeListener;
15
16
  private saveGridState;
16
17
  private processSelectionChanged;
17
18
  private getContextMenuItems;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridDirective, never>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridDirective, [null, null, { optional: true; }]>;
19
20
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgssmAgGridDirective, "[ngssmAgGrid]", never, { "config": "ngssmAgGrid"; }, {}, never, never, false, never>;
20
21
  }
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { StatusPanelDef } from 'ag-grid-community';
3
+ export declare class NgssmAgGridOptions {
4
+ theme: string;
5
+ statusBar: {
6
+ statusPanels: StatusPanelDef[];
7
+ } | undefined;
8
+ }
9
+ export declare const NGSSM_AG_GRID_OPTIONS: InjectionToken<NgssmAgGridOptions>;
@@ -1,9 +1,10 @@
1
1
  import { ModuleWithProviders } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "./components/ngssm-ag-grid.directive";
4
+ import * as i2 from "./components/ngssm-ag-grid-theme.directive";
4
5
  export declare class NgssmAgGridModule {
5
6
  static forRoot(): ModuleWithProviders<NgssmAgGridModule>;
6
7
  static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridModule, never>;
7
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgssmAgGridModule, [typeof i1.NgssmAgGridDirective], never, [typeof i1.NgssmAgGridDirective]>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NgssmAgGridModule, [typeof i1.NgssmAgGridDirective, typeof i2.NgssmAgGridThemeDirective], never, [typeof i1.NgssmAgGridDirective, typeof i2.NgssmAgGridThemeDirective]>;
8
9
  static ɵinj: i0.ɵɵInjectorDeclaration<NgssmAgGridModule>;
9
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngssm-ag-grid",
3
- "version": "15.0.2",
3
+ "version": "15.0.4",
4
4
  "description": "NgSsm - Helpers for ag-grid and columns state save/restore feature.",
5
5
  "author": "Lion Marc",
6
6
  "license": "MIT",
@@ -9,7 +9,7 @@
9
9
  "@angular/core": ">=15.0.0",
10
10
  "ag-grid-angular": ">=28.1.1",
11
11
  "ag-grid-community": ">=28.1.1",
12
- "ngssm-store": "15.0.2"
12
+ "ngssm-store": "15.0.4"
13
13
  },
14
14
  "dependencies": {
15
15
  "tslib": ">=2.4.0"
package/public-api.d.ts CHANGED
@@ -3,3 +3,5 @@ export * from './lib/actions';
3
3
  export * from './lib/state';
4
4
  export * from './lib/components/ngssm-ag-grid.directive';
5
5
  export * from './lib/components/ngssm-ag-grid-config';
6
+ export * from './lib/ngssm-ag-grid-options';
7
+ export * from './lib/components/ngssm-ag-grid-theme.directive';