ngssm-ag-grid 16.2.2 → 16.2.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.
- package/esm2022/lib/components/index.mjs +2 -1
- package/esm2022/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer.component.mjs +4 -4
- package/esm2022/lib/components/ngssm-ag-grid-config.mjs +1 -1
- package/esm2022/lib/components/ngssm-ag-grid-theme.directive.mjs +16 -8
- package/esm2022/lib/components/ngssm-ag-grid.directive.mjs +15 -18
- package/esm2022/lib/components/ngssm-base-cell-editor.mjs +25 -0
- package/esm2022/lib/effects/local-storage.effect.mjs +4 -4
- package/esm2022/lib/helpers.mjs +6 -1
- package/esm2022/lib/ngssm-ag-grid-options.mjs +2 -1
- package/esm2022/lib/reducers/grid-states.reducer.mjs +4 -4
- package/esm2022/lib/reducers/selected-rows.reducer.mjs +4 -4
- package/fesm2022/ngssm-ag-grid.mjs +69 -33
- package/fesm2022/ngssm-ag-grid.mjs.map +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/ngssm-ag-grid-config.d.ts +5 -0
- package/lib/components/ngssm-ag-grid-theme.directive.d.ts +4 -2
- package/lib/components/ngssm-ag-grid.directive.d.ts +2 -3
- package/lib/components/ngssm-base-cell-editor.d.ts +13 -0
- package/lib/helpers.d.ts +1 -0
- package/lib/ngssm-ag-grid-options.d.ts +2 -1
- package/package.json +2 -2
- package/styles/styles.scss +13 -0
|
@@ -2,4 +2,5 @@ export * from './ngssm-actions-cell-renderer';
|
|
|
2
2
|
export * from './ngssm-ag-grid-config';
|
|
3
3
|
export * from './ngssm-ag-grid-theme.directive';
|
|
4
4
|
export * from './ngssm-ag-grid.directive';
|
|
5
|
-
|
|
5
|
+
export * from './ngssm-base-cell-editor';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25nc3NtLWFjdGlvbnMtY2VsbC1yZW5kZXJlcic7XG5leHBvcnQgKiBmcm9tICcuL25nc3NtLWFnLWdyaWQtY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbmdzc20tYWctZ3JpZC10aGVtZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL25nc3NtLWJhc2UtY2VsbC1lZGl0b3InO1xuIl19
|
package/esm2022/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer.component.mjs
CHANGED
|
@@ -64,11 +64,11 @@ export class NgssmActionsCellRendererComponent extends NgSsmComponent {
|
|
|
64
64
|
});
|
|
65
65
|
this._actionButtons$.next(actionButtons);
|
|
66
66
|
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
67
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmActionsCellRendererComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgssmActionsCellRendererComponent, isStandalone: true, selector: "ngssm-actions-cell-renderer", usesInheritance: true, ngImport: i0, template: "<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
69
69
|
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmActionsCellRendererComponent, decorators: [{
|
|
71
71
|
type: Component,
|
|
72
72
|
args: [{ selector: 'ngssm-actions-cell-renderer', standalone: true, imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>" }]
|
|
73
73
|
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWN0aW9ucy1jZWxsLXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL2xpYi9jb21wb25lbnRzL25nc3NtLWFjdGlvbnMtY2VsbC1yZW5kZXJlci9uZ3NzbS1hY3Rpb25zLWNlbGwtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tYWctZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvbmdzc20tYWN0aW9ucy1jZWxsLXJlbmRlcmVyL25nc3NtLWFjdGlvbnMtY2VsbC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUs1RSxPQUFPLEVBQUUsY0FBYyxFQUFTLE1BQU0sYUFBYSxDQUFDOzs7Ozs7O0FBd0JwRCxNQUFNLE9BQU8saUNBQWtDLFNBQVEsY0FBYztJQUtuRSxZQUFZLEtBQVk7UUFDdEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBTEUsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBaUIsRUFBRSxDQUFDLENBQUM7SUFNM0UsQ0FBQztJQUVELElBQVcsY0FBYztRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsWUFB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Q0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0MsQ0FBQzsrR0EvRFUsaUNBQWlDO21HQUFqQyxpQ0FBaUMsOEdDbEM5QywwaUJBU00seUREb0JNLFlBQVksb1RBQUUsZUFBZSwyTEFBRSxhQUFhLG1MQUFFLGdCQUFnQjs7NEZBSzdELGlDQUFpQztrQkFSN0MsU0FBUzsrQkFDRSw2QkFBNkIsY0FDM0IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsbUJBR3hELHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaXNPYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IElDZWxsUmVuZGVyZXJQYXJhbXMgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5cbmltcG9ydCB7IE5nU3NtQ29tcG9uZW50LCBTdG9yZSB9IGZyb20gJ25nc3NtLXN0b3JlJztcblxuaW1wb3J0IHsgTmdzc21BY3Rpb25zQ2VsbFJlbmRlcmVyUGFyYW1zIH0gZnJvbSAnLi9uZ3NzbS1hY3Rpb25zLWNlbGwtcmVuZGVyZXItcGFyYW1zJztcbmltcG9ydCB7IEFjdGlvbkNvbmZpZyB9IGZyb20gJy4vYWN0aW9uLWNvbmZpZyc7XG5cbmludGVyZmFjZSBBY3Rpb25CdXR0b24ge1xuICBjc3NDbGFzczogc3RyaW5nO1xuICBjb2xvcjogc3RyaW5nO1xuICBkaXNhYmxlZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgaGlkZGVuJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuXG4gIGFjdGlvbkNvbmZpZzogQWN0aW9uQ29uZmlnO1xuXG4gIHRvb2x0aXA6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tYWN0aW9ucy1jZWxsLXJlbmRlcmVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL25nc3NtLWFjdGlvbnMtY2VsbC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25nc3NtLWFjdGlvbnMtY2VsbC1yZW5kZXJlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOZ3NzbUFjdGlvbnNDZWxsUmVuZGVyZXJDb21wb25lbnQgZXh0ZW5kcyBOZ1NzbUNvbXBvbmVudCBpbXBsZW1lbnRzIElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGlvbkJ1dHRvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBY3Rpb25CdXR0b25bXT4oW10pO1xuXG4gIHByaXZhdGUgY2VsbFBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtczxhbnksIGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3Ioc3RvcmU6IFN0b3JlKSB7XG4gICAgc3VwZXIoc3RvcmUpO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3Rpb25CdXR0b25zJCgpOiBPYnNlcnZhYmxlPEFjdGlvbkJ1dHRvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbkJ1dHRvbnMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGFnSW5pdChwYXJhbXM6IElDZWxsUmVuZGVyZXJQYXJhbXM8YW55LCBhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5jZWxsUGFyYW1zID0gcGFyYW1zO1xuICAgIHRoaXMuc2V0dXBBY3Rpb25zKHBhcmFtcyBhcyBhbnkpO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2gocGFyYW1zOiBJQ2VsbFJlbmRlcmVyUGFyYW1zPGFueSwgYW55Pik6IGJvb2xlYW4ge1xuICAgIHRoaXMuY2VsbFBhcmFtcyA9IHBhcmFtcztcbiAgICB0aGlzLl9hY3Rpb25CdXR0b25zJC5nZXRWYWx1ZSgpLmZvckVhY2goKGEpID0+IHtcbiAgICAgIGlmIChhLmFjdGlvbkNvbmZpZy5pc0Rpc2FibGVkIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgICAgYS5kaXNhYmxlZCQubmV4dChhLmFjdGlvbkNvbmZpZy5pc0Rpc2FibGVkKHBhcmFtcyBhcyBhbnkpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGEuYWN0aW9uQ29uZmlnLmlzSGlkZGVuIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgICAgYS5oaWRkZW4kLm5leHQoYS5hY3Rpb25Db25maWcuaXNIaWRkZW4ocGFyYW1zIGFzIGFueSkpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGV4ZWN1dGVBY3Rpb24oYWN0aW9uOiBBY3Rpb25CdXR0b24pOiB2b2lkIHtcbiAgICBhY3Rpb24uYWN0aW9uQ29uZmlnLmNsaWNrPy4odGhpcy5jZWxsUGFyYW1zIGFzIGFueSk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwQWN0aW9ucyhyZW5kZXJlclBhcmFtczogTmdzc21BY3Rpb25zQ2VsbFJlbmRlcmVyUGFyYW1zKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aW9uQnV0dG9uczogQWN0aW9uQnV0dG9uW10gPSAocmVuZGVyZXJQYXJhbXM/LmFjdGlvbnMgPz8gW10pLm1hcCgoYSkgPT4ge1xuICAgICAgY29uc3QgYWN0aW9uQnV0dG9uOiBBY3Rpb25CdXR0b24gPSB7XG4gICAgICAgIGNzc0NsYXNzOiBhLmNzc0NsYXNzLFxuICAgICAgICBjb2xvcjogYS5jb2xvciA/PyAncHJpbWFyeScsXG4gICAgICAgIGRpc2FibGVkJDogbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSksXG4gICAgICAgIGhpZGRlbiQ6IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpLFxuICAgICAgICBhY3Rpb25Db25maWc6IGEsXG4gICAgICAgIHRvb2x0aXA6IGEudG9vbHRpcCA/PyAnJ1xuICAgICAgfTtcblxuICAgICAgaWYgKGEuaXNEaXNhYmxlZCBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgICAgIGFjdGlvbkJ1dHRvbi5kaXNhYmxlZCQubmV4dChhLmlzRGlzYWJsZWQocmVuZGVyZXJQYXJhbXMgYXMgYW55KSk7XG4gICAgICB9IGVsc2UgaWYgKGlzT2JzZXJ2YWJsZShhLmlzRGlzYWJsZWQpKSB7XG4gICAgICAgIGEuaXNEaXNhYmxlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlQWxsJCkpLnN1YnNjcmliZSgodikgPT4gYWN0aW9uQnV0dG9uLmRpc2FibGVkJC5uZXh0KHYpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGEuaXNIaWRkZW4gaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICBhY3Rpb25CdXR0b24uaGlkZGVuJC5uZXh0KGEuaXNIaWRkZW4ocmVuZGVyZXJQYXJhbXMgYXMgYW55KSk7XG4gICAgICB9IGVsc2UgaWYgKGlzT2JzZXJ2YWJsZShhLmlzSGlkZGVuKSkge1xuICAgICAgICBhLmlzSGlkZGVuLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVBbGwkKSkuc3Vic2NyaWJlKCh2KSA9PiBhY3Rpb25CdXR0b24uaGlkZGVuJC5uZXh0KHYpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjdGlvbkJ1dHRvbjtcbiAgICB9KTtcblxuICAgIHRoaXMuX2FjdGlvbkJ1dHRvbnMkLm5leHQoYWN0aW9uQnV0dG9ucyk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJuZ3NzbS1hY3Rpb25zLWNlbGxcIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBhY3Rpb25CdXR0b24gb2YgYWN0aW9uQnV0dG9ucyQgfCBhc3luYzsgbGV0IGluZGV4PWluZGV4XCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNsYXNzPVwibmdzc20tYWN0aW9ucy1jZWxsLWJ1dHRvblwiIFtjb2xvcl09XCJhY3Rpb25CdXR0b24uY29sb3JcIiBpZD1cImFjdGlvbl97e2luZGV4fX1cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImFjdGlvbkJ1dHRvbi5kaXNhYmxlZCQgfCBhc3luY1wiIChjbGljayk9XCJleGVjdXRlQWN0aW9uKGFjdGlvbkJ1dHRvbilcIlxuICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiYWN0aW9uQnV0dG9uLnRvb2x0aXBcIiAqbmdJZj1cIihhY3Rpb25CdXR0b24uaGlkZGVuJCB8IGFzeW5jKSA9PT0gZmFsc2VcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBbY2xhc3NdPVwiYWN0aW9uQnV0dG9uLmNzc0NsYXNzXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbjwvZGl2PiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0Q29udGV4dE1lbnVJdGVtcyB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIHBhcmFtZXRlcnMgb2YgdGhlIHtAbGluayBOZ3NzbUFnR3JpZERpcmVjdGl2ZX0gZGlyZWN0aXZlIHRvIGFwcGx5IG9uIGFcbiAqIHtAbGluayBodHRwczovL3d3dy5hZy1ncmlkLmNvbS8gYWctZ3JpZCBpbnN0YW5jZX1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZ3NzbUFnR3JpZENvbmZpZyB7XG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgZ3JpZCBvbiB3aGljaCB0aGUgZGlyZWN0aXZlIGlzIGFwcGxpZWRcbiAgICovXG4gIGdyaWRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgc2VsZWN0ZWQgcm93cyBhcmUgc3RvcmVkIGluIHRoZSBzdGF0ZSBhbmQgcmVzdG9yZWQgd2hlbiB0aGUgZGlyZWN0aXZlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBrZWVwU2VsZWN0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgY29udGV4dCBtZW51cyBhcmUgYWRkZWQgdG8gdGhlIGdyaWQgdG8gc2F2ZSB0aGUgY29sdW1ucyBzdGF0ZSBpbnRvIHRoZSBsb2NhbCBzdG9yYWdlXG4gICAqIGFuZCB0byByZXN0b3JlIGZyb20gdGhlIGxvY2FsIHN0b3JhZ2UuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqXG4gICAqIHRoaXMgZnVuY3Rpb25uYWxpdHkgaXMgb25seSBhdmFpbGFibGUgZm9yIGVudGVycHJpc2UgdmVyc2lvbiBvZiB7QGxpbmsgaHR0cHM6Ly93d3cuYWctZ3JpZC5jb20vfS5cbiAgICovXG4gIGNhblNhdmVPbkRpc2tDb2x1bW5zU3RhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVc2VkIHRvIG92ZXJyaWRlIGRlZmF1bHQgY29udGV4dCBtZW51IGl0ZW1zLlxuICAgKi9cbiAgZ2V0Q29udGV4dE1lbnVJdGVtcz86IEdldENvbnRleHRNZW51SXRlbXM7XG59XG4iXX0=
|
|
@@ -1,28 +1,36 @@
|
|
|
1
1
|
import { Directive, HostBinding, Inject, Optional } from '@angular/core';
|
|
2
2
|
import { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
4
|
+
import * as i1 from "ag-grid-angular";
|
|
5
|
+
import * as i2 from "../ngssm-ag-grid-options";
|
|
5
6
|
export class NgssmAgGridThemeDirective {
|
|
6
|
-
constructor(options) {
|
|
7
|
+
constructor(options, agGridAngular) {
|
|
8
|
+
this.agGridAngular = agGridAngular;
|
|
7
9
|
this.className = '';
|
|
8
10
|
this.className = (options ?? new NgssmAgGridOptions()).theme;
|
|
11
|
+
if (this.agGridAngular.statusBar === undefined) {
|
|
12
|
+
this.agGridAngular.statusBar = options?.statusBar;
|
|
13
|
+
}
|
|
14
|
+
if (this.agGridAngular.defaultColDef === undefined) {
|
|
15
|
+
this.agGridAngular.defaultColDef = options?.defaultColDef;
|
|
16
|
+
}
|
|
9
17
|
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
11
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridThemeDirective, deps: [{ token: NGSSM_AG_GRID_OPTIONS, optional: true }, { token: i1.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
19
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgssmAgGridThemeDirective, isStandalone: true, selector: "[ngssmAgGridTheme]", host: { properties: { "class": "this.className" } }, ngImport: i0 }); }
|
|
12
20
|
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridThemeDirective, decorators: [{
|
|
14
22
|
type: Directive,
|
|
15
23
|
args: [{
|
|
16
24
|
selector: '[ngssmAgGridTheme]',
|
|
17
25
|
standalone: true
|
|
18
26
|
}]
|
|
19
|
-
}], ctorParameters: function () { return [{ type:
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i2.NgssmAgGridOptions, decorators: [{
|
|
20
28
|
type: Inject,
|
|
21
29
|
args: [NGSSM_AG_GRID_OPTIONS]
|
|
22
30
|
}, {
|
|
23
31
|
type: Optional
|
|
24
|
-
}] }]; }, propDecorators: { className: [{
|
|
32
|
+
}] }, { type: i1.AgGridAngular }]; }, propDecorators: { className: [{
|
|
25
33
|
type: HostBinding,
|
|
26
34
|
args: ['class']
|
|
27
35
|
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC10aGVtZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLXRoZW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSXpFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBTXJGLE1BQU0sT0FBTyx5QkFBeUI7SUFHcEMsWUFDNkMsT0FBMkIsRUFDOUQsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFKaEIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQU1uQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsT0FBTyxJQUFJLElBQUksa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUM3RCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTtZQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxDQUFDO1NBQ25EO1FBRUQsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEdBQUcsT0FBTyxFQUFFLGFBQWEsQ0FBQztTQUMzRDtJQUNILENBQUM7K0dBZlUseUJBQXlCLGtCQUkxQixxQkFBcUI7bUdBSnBCLHlCQUF5Qjs7NEZBQXpCLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OzBCQUtJLE1BQU07MkJBQUMscUJBQXFCOzswQkFBRyxRQUFRO3dFQUhwQixTQUFTO3NCQUE5QixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuXG5pbXBvcnQgeyBOZ3NzbUFnR3JpZE9wdGlvbnMsIE5HU1NNX0FHX0dSSURfT1BUSU9OUyB9IGZyb20gJy4uL25nc3NtLWFnLWdyaWQtb3B0aW9ucyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ3NzbUFnR3JpZFRoZW1lXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTmdzc21BZ0dyaWRUaGVtZURpcmVjdGl2ZSB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzc05hbWUgPSAnJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KE5HU1NNX0FHX0dSSURfT1BUSU9OUykgQE9wdGlvbmFsKCkgb3B0aW9uczogTmdzc21BZ0dyaWRPcHRpb25zLFxuICAgIHByaXZhdGUgYWdHcmlkQW5ndWxhcjogQWdHcmlkQW5ndWxhclxuICApIHtcbiAgICB0aGlzLmNsYXNzTmFtZSA9IChvcHRpb25zID8/IG5ldyBOZ3NzbUFnR3JpZE9wdGlvbnMoKSkudGhlbWU7XG4gICAgaWYgKHRoaXMuYWdHcmlkQW5ndWxhci5zdGF0dXNCYXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLnN0YXR1c0JhciA9IG9wdGlvbnM/LnN0YXR1c0JhcjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hZ0dyaWRBbmd1bGFyLmRlZmF1bHRDb2xEZWYgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmRlZmF1bHRDb2xEZWYgPSBvcHRpb25zPy5kZWZhdWx0Q29sRGVmO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
import { Directive,
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
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';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
import * as i1 from "ngssm-store";
|
|
8
7
|
import * as i2 from "ag-grid-angular";
|
|
9
|
-
import * as i3 from "../ngssm-ag-grid-options";
|
|
10
8
|
export class NgssmAgGridDirective {
|
|
11
|
-
constructor(store, agGridAngular
|
|
9
|
+
constructor(store, agGridAngular) {
|
|
12
10
|
this.store = store;
|
|
13
11
|
this.agGridAngular = agGridAngular;
|
|
14
12
|
this.unsubsribeAll$ = new Subject();
|
|
15
13
|
this._config$ = new BehaviorSubject({
|
|
16
14
|
gridId: ''
|
|
17
15
|
});
|
|
18
|
-
if (this.agGridAngular.statusBar === undefined) {
|
|
19
|
-
this.agGridAngular.statusBar = options?.statusBar;
|
|
20
|
-
}
|
|
21
16
|
this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {
|
|
22
17
|
combineLatest([
|
|
23
18
|
this.store.state$.pipe(take(1), map((s) => selectAgGridState(s))),
|
|
@@ -108,7 +103,14 @@ export class NgssmAgGridDirective {
|
|
|
108
103
|
});
|
|
109
104
|
}
|
|
110
105
|
getContextMenuItems(params) {
|
|
111
|
-
const menuItems = [
|
|
106
|
+
const menuItems = [];
|
|
107
|
+
const getContextMenuItems = this._config$.getValue().getContextMenuItems;
|
|
108
|
+
if (getContextMenuItems) {
|
|
109
|
+
menuItems.push(...getContextMenuItems(params));
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
menuItems.push(...(params.defaultItems ?? []));
|
|
113
|
+
}
|
|
112
114
|
if (this._config$.getValue().canSaveOnDiskColumnsState === true) {
|
|
113
115
|
menuItems.push(...[
|
|
114
116
|
'separator',
|
|
@@ -135,22 +137,17 @@ export class NgssmAgGridDirective {
|
|
|
135
137
|
}
|
|
136
138
|
return menuItems;
|
|
137
139
|
}
|
|
138
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
139
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
140
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i2.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
141
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgssmAgGridDirective, isStandalone: true, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 }); }
|
|
140
142
|
}
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
|
|
142
144
|
type: Directive,
|
|
143
145
|
args: [{
|
|
144
146
|
selector: '[ngssmAgGrid]',
|
|
145
147
|
standalone: true
|
|
146
148
|
}]
|
|
147
|
-
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular },
|
|
148
|
-
type: Inject,
|
|
149
|
-
args: [NGSSM_AG_GRID_OPTIONS]
|
|
150
|
-
}, {
|
|
151
|
-
type: Optional
|
|
152
|
-
}] }]; }, propDecorators: { config: [{
|
|
149
|
+
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.AgGridAngular }]; }, propDecorators: { config: [{
|
|
153
150
|
type: Input,
|
|
154
151
|
args: ['ngssmAgGrid']
|
|
155
152
|
}] } });
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU9yRixPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLHlCQUF5QixFQUFFLDBCQUEwQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFM0QsT0FBTyxFQUFzQixxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQU1yRixNQUFNLE9BQU8sb0JBQW9CO0lBTS9CLFlBQ1UsS0FBWSxFQUNaLGFBQTRCLEVBQ08sT0FBMkI7UUFGOUQsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBUHJCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxhQUFRLEdBQUcsSUFBSSxlQUFlLENBQW9CO1lBQ2pFLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO1FBT0QsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztTQUNuRDtRQUVELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FB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LElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO29CQUM3RCxJQUFJLEVBQUUsK0NBQStDO2lCQUN0RDthQUNGLENBQ0YsQ0FBQztTQUNIO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs4R0F0SlUsb0JBQW9CLG9FQVNyQixxQkFBcUI7a0dBVHBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFVSSxNQUFNOzJCQUFDLHFCQUFxQjs7MEJBQUcsUUFBUTs0Q0FpRVQsTUFBTTtzQkFBdEMsS0FBSzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgU3ViamVjdCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHsgR2V0Q29udGV4dE1lbnVJdGVtc1BhcmFtcywgTWVudUl0ZW1EZWYgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5cbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBBZ0dyaWRBY3Rpb24sIEFnR3JpZEFjdGlvblR5cGUsIFJlZ2lzdGVyQWdHcmlkU3RhdGVBY3Rpb24sIFJlZ2lzdGVyU2VsZWN0ZWRSb3dzQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBDaGFuZ2VPcmlnaW4sIHNlbGVjdEFnR3JpZFN0YXRlIH0gZnJvbSAnLi4vc3RhdGUnO1xuaW1wb3J0IHsgTmdzc21BZ0dyaWRDb25maWcgfSBmcm9tICcuL25nc3NtLWFnLWdyaWQtY29uZmlnJztcbmltcG9ydCB7IE5nc3NtQWdHcmlkT3B0aW9ucywgTkdTU01fQUdfR1JJRF9PUFRJT05TIH0gZnJvbSAnLi4vbmdzc20tYWctZ3JpZC1vcHRpb25zJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW25nc3NtQWdHcmlkXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTmdzc21BZ0dyaWREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IHVuc3Vic3JpYmVBbGwkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlnJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tmdzc21BZ0dyaWRDb25maWc+KHtcbiAgICBncmlkSWQ6ICcnXG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlLFxuICAgIHByaXZhdGUgYWdHcmlkQW5ndWxhcjogQWdHcmlkQW5ndWxhcixcbiAgICBASW5qZWN0KE5HU1NNX0FHX0dSSURfT1BUSU9OUykgQE9wdGlvbmFsKCkgb3B0aW9uczogTmdzc21BZ0dyaWRPcHRpb25zXG4gICkge1xuICAgIGlmICh0aGlzLmFnR3JpZEFuZ3VsYXIuc3RhdHVzQmFyID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5zdGF0dXNCYXIgPSBvcHRpb25zPy5zdGF0dXNCYXI7XG4gICAgfVxuXG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmdyaWRSZWFkeS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgodikgPT4ge1xuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuc3RvcmUuc3RhdGUkLnBpcGUoXG4gICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICBtYXAoKHMpID0+IHNlbGVjdEFnR3JpZFN0YXRlKHMpKVxuICAgICAgICApLFxuICAgICAgICB0aGlzLl9jb25maWckXG4gICAgICBdKVxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgICBpZiAodmFsdWVzWzBdLmdyaWRTdGF0ZXNbdmFsdWVzWzFdLmdyaWRJZF0pIHtcbiAgICAgICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5BcGkuYXBwbHlDb2x1bW5TdGF0ZSh7XG4gICAgICAgICAgICAgIHN0YXRlOiB2YWx1ZXNbMF0uZ3JpZFN0YXRlc1t2YWx1ZXNbMV0uZ3JpZElkXS5jb2x1bW5zU3RhdGUsXG4gICAgICAgICAgICAgIGFwcGx5T3JkZXI6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh2YWx1ZXNbMF0uc2VsZWN0ZWRSb3dzW3ZhbHVlc1sxXS5ncmlkSWRdKSB7XG4gICAgICAgICAgICBpZiAodmFsdWVzWzFdLmtlZXBTZWxlY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgY29uc3QgaWRzID0gdmFsdWVzWzBdLnNlbGVjdGVkUm93c1t2YWx1ZXNbMV0uZ3JpZElkXT8uaWRzID8/IFtdO1xuICAgICAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuYXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5vZGUuaWQpIHtcbiAgICAgICAgICAgICAgICAgIG5vZGUuc2V0U2VsZWN0ZWQoaWRzLmluY2x1ZGVzKG5vZGUuaWQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuaW5pdFNhdGVDaGFuZ2VMaXN0ZW5lcigpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RvcmUuc3RhdGUkLnBpcGUobWFwKChzKSA9PiBzZWxlY3RBZ0dyaWRTdGF0ZShzKS5ncmlkU3RhdGVzKSksIHRoaXMuX2NvbmZpZyRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKVxuICAgICAgLnN1YnNjcmliZSgodmFsdWVzKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0/Lm9yaWdpbiA9PT0gQ2hhbmdlT3JpZ2luLm90aGVyKSB7XG4gICAgICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtbkFwaS5hcHBseUNvbHVtblN0YXRlKHtcbiAgICAgICAgICAgIHN0YXRlOiB2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0uY29sdW1uc1N0YXRlLFxuICAgICAgICAgICAgYXBwbHlPcmRlcjogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RvcmUuc3RhdGUkLnBpcGUobWFwKChzKSA9PiBzZWxlY3RBZ0dyaWRTdGF0ZShzKS5zZWxlY3RlZFJvd3MpKSwgdGhpcy5fY29uZmlnJF0pXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlc1swXVt2YWx1ZXNbMV0uZ3JpZElkXT8ub3JpZ2luID09PSBDaGFuZ2VPcmlnaW4ub3RoZXIgJiYgdmFsdWVzWzFdLmtlZXBTZWxlY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICBjb25zdCBpZHMgPSB2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0/LmlkcyA/PyBbXTtcbiAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuYXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgICBpZiAobm9kZS5pZCkge1xuICAgICAgICAgICAgICBub2RlLnNldFNlbGVjdGVkKGlkcy5pbmNsdWRlcyhub2RlLmlkKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmdldENvbnRleHRNZW51SXRlbXMgPSAocGFyYW1zKSA9PiB0aGlzLmdldENvbnRleHRNZW51SXRlbXMocGFyYW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgnbmdzc21BZ0dyaWQnKSBwdWJsaWMgc2V0IGNvbmZpZyh2YWx1ZTogc3RyaW5nIHwgTmdzc21BZ0dyaWRDb25maWcpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5fY29uZmlnJC5uZXh0KHtcbiAgICAgICAgZ3JpZElkOiB2YWx1ZSBhcyBzdHJpbmdcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jb25maWckLm5leHQodmFsdWUgYXMgTmdzc21BZ0dyaWRDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic3JpYmVBbGwkLm5leHQoKTtcbiAgICB0aGlzLnVuc3Vic3JpYmVBbGwkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRTYXRlQ2hhbmdlTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLnNvcnRDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5maWx0ZXJDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5QaW5uZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtblJlc2l6ZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmRpc3BsYXllZENvbHVtbnNDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5yb3dTZWxlY3RlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMucHJvY2Vzc1NlbGVjdGlvbkNoYW5nZWQoKSk7XG4gIH1cblxuICBwcml2YXRlIHNhdmVHcmlkU3RhdGUoKTogdm9pZCB7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLmdldENvbHVtblN0YXRlKCk7XG4gICAgdGhpcy5fY29uZmlnJFxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKGdyaWRJZCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgUmVnaXN0ZXJBZ0dyaWRTdGF0ZUFjdGlvbihncmlkSWQuZ3JpZElkLCBDaGFuZ2VPcmlnaW4uYWdHcmlkLCBzdGF0ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc1NlbGVjdGlvbkNoYW5nZWQoKTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWRSb3dzID0gdGhpcy5hZ0dyaWRBbmd1bGFyLmFwaVxuICAgICAgLmdldFNlbGVjdGVkTm9kZXMoKVxuICAgICAgLm1hcCgobikgPT4gbi5pZCA/PyAnJylcbiAgICAgIC5maWx0ZXIoKG4pID0+IG4gIT09ICcnKTtcbiAgICB0aGlzLl9jb25maWckLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgIGlmIChjb25maWcua2VlcFNlbGVjdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbihjb25maWcuZ3JpZElkLCBDaGFuZ2VPcmlnaW4uYWdHcmlkLCBzZWxlY3RlZFJvd3MpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGV4dE1lbnVJdGVtcyhwYXJhbXM6IEdldENvbnRleHRNZW51SXRlbXNQYXJhbXMpOiAoc3RyaW5nIHwgTWVudUl0ZW1EZWYpW10ge1xuICAgIGNvbnN0IG1lbnVJdGVtczogKHN0cmluZyB8IE1lbnVJdGVtRGVmKVtdID0gWy4uLihwYXJhbXMuZGVmYXVsdEl0ZW1zID8/IFtdKV07XG4gICAgaWYgKHRoaXMuX2NvbmZpZyQuZ2V0VmFsdWUoKS5jYW5TYXZlT25EaXNrQ29sdW1uc1N0YXRlID09PSB0cnVlKSB7XG4gICAgICBtZW51SXRlbXMucHVzaChcbiAgICAgICAgLi4uW1xuICAgICAgICAgICdzZXBhcmF0b3InLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdTYXZlIGNvbHVtbnMgc3RhdGUnLFxuICAgICAgICAgICAgYWN0aW9uOiAoKSA9PlxuICAgICAgICAgICAgICB0aGlzLl9jb25maWckXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChjb25maWcpID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2hBY3Rpb24obmV3IEFnR3JpZEFjdGlvbihBZ0dyaWRBY3Rpb25UeXBlLnNhdmVDb2x1bW5zU3RhdGVPbkRpc2ssIGNvbmZpZy5ncmlkSWQpKSksXG4gICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYS1yZWd1bGFyIGZhLWZsb3BweS1kaXNrXCI+PC9pPidcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdSZXN0b3JlIGNvbHVtbnMgc3RhdGUnLFxuICAgICAgICAgICAgYWN0aW9uOiAoKSA9PlxuICAgICAgICAgICAgICB0aGlzLl9jb25maWckXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChjb25maWcpID0+XG4gICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBBZ0dyaWRBY3Rpb24oQWdHcmlkQWN0aW9uVHlwZS5yZXNldENvbHVtbnNTdGF0ZUZyb21EaXNrLCBjb25maWcuZ3JpZElkKSlcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgaWNvbjogJzxpIGNsYXNzPVwiZmEtc29saWQgZmEtcm90YXRlLXJpZ2h0XCI+PC9pPidcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdSZXNldCBjb2x1bW5zIHN0YXRlIHRvIGRlZmF1bHQnLFxuICAgICAgICAgICAgYWN0aW9uOiAoKSA9PiB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLnJlc2V0Q29sdW1uU3RhdGUoKSxcbiAgICAgICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWNsb2NrLXJvdGF0ZS1sZWZ0XCI+PC9pPidcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBtZW51SXRlbXM7XG4gIH1cbn1cbiJdfQ==
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1hZy1ncmlkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPckYsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7O0FBTzNELE1BQU0sT0FBTyxvQkFBb0I7SUFNL0IsWUFDVSxLQUFZLEVBQ1osYUFBNEI7UUFENUIsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBUHJCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxhQUFRLEdBQUcsSUFBSSxlQUFlLENBQW9CO1lBQ2pFLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO1FBTUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3pELGFBQWEsQ0FBQztnQkFDWixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3BCLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFp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QUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFO29CQUM3RCxJQUFJLEVBQUUsK0NBQStDO2lCQUN0RDthQUNGLENBQ0YsQ0FBQztTQUNIO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzsrR0F4SlUsb0JBQW9CO21HQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjt3SEFzRWtDLE1BQU07c0JBQXRDLEtBQUs7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIFN1YmplY3QsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBZ0dyaWRBbmd1bGFyIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IEdldENvbnRleHRNZW51SXRlbXNQYXJhbXMsIE1lbnVJdGVtRGVmIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ25nc3NtLXN0b3JlJztcblxuaW1wb3J0IHsgQWdHcmlkQWN0aW9uLCBBZ0dyaWRBY3Rpb25UeXBlLCBSZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uLCBSZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMnO1xuaW1wb3J0IHsgQ2hhbmdlT3JpZ2luLCBzZWxlY3RBZ0dyaWRTdGF0ZSB9IGZyb20gJy4uL3N0YXRlJztcbmltcG9ydCB7IE5nc3NtQWdHcmlkQ29uZmlnIH0gZnJvbSAnLi9uZ3NzbS1hZy1ncmlkLWNvbmZpZyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ3NzbUFnR3JpZF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIE5nc3NtQWdHcmlkRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNyaWJlQWxsJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5nc3NtQWdHcmlkQ29uZmlnPih7XG4gICAgZ3JpZElkOiAnJ1xuICB9KTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIGFnR3JpZEFuZ3VsYXI6IEFnR3JpZEFuZ3VsYXJcbiAgKSB7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmdyaWRSZWFkeS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgodikgPT4ge1xuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuc3RvcmUuc3RhdGUkLnBpcGUoXG4gICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICBtYXAoKHMpID0+IHNlbGVjdEFnR3JpZFN0YXRlKHMpKVxuICAgICAgICApLFxuICAgICAgICB0aGlzLl9jb25maWckXG4gICAgICBdKVxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgICBpZiAodmFsdWVzWzBdLmdyaWRTdGF0ZXNbdmFsdWVzWzFdLmdyaWRJZF0pIHtcbiAgICAgICAgICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5BcGkuYXBwbHlDb2x1bW5TdGF0ZSh7XG4gICAgICAgICAgICAgIHN0YXRlOiB2YWx1ZXNbMF0uZ3JpZFN0YXRlc1t2YWx1ZXNbMV0uZ3JpZElkXS5jb2x1bW5zU3RhdGUsXG4gICAgICAgICAgICAgIGFwcGx5T3JkZXI6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh2YWx1ZXNbMF0uc2VsZWN0ZWRSb3dzW3ZhbHVlc1sxXS5ncmlkSWRdKSB7XG4gICAgICAgICAgICBpZiAodmFsdWVzWzFdLmtlZXBTZWxlY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgY29uc3QgaWRzID0gdmFsdWVzWzBdLnNlbGVjdGVkUm93c1t2YWx1ZXNbMV0uZ3JpZElkXT8uaWRzID8/IFtdO1xuICAgICAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuYXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5vZGUuaWQpIHtcbiAgICAgICAgICAgICAgICAgIG5vZGUuc2V0U2VsZWN0ZWQoaWRzLmluY2x1ZGVzKG5vZGUuaWQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuaW5pdFNhdGVDaGFuZ2VMaXN0ZW5lcigpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RvcmUuc3RhdGUkLnBpcGUobWFwKChzKSA9PiBzZWxlY3RBZ0dyaWRTdGF0ZShzKS5ncmlkU3RhdGVzKSksIHRoaXMuX2NvbmZpZyRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKVxuICAgICAgLnN1YnNjcmliZSgodmFsdWVzKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0/Lm9yaWdpbiA9PT0gQ2hhbmdlT3JpZ2luLm90aGVyKSB7XG4gICAgICAgICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtbkFwaS5hcHBseUNvbHVtblN0YXRlKHtcbiAgICAgICAgICAgIHN0YXRlOiB2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0uY29sdW1uc1N0YXRlLFxuICAgICAgICAgICAgYXBwbHlPcmRlcjogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RvcmUuc3RhdGUkLnBpcGUobWFwKChzKSA9PiBzZWxlY3RBZ0dyaWRTdGF0ZShzKS5zZWxlY3RlZFJvd3MpKSwgdGhpcy5fY29uZmlnJF0pXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlc1swXVt2YWx1ZXNbMV0uZ3JpZElkXT8ub3JpZ2luID09PSBDaGFuZ2VPcmlnaW4ub3RoZXIgJiYgdmFsdWVzWzFdLmtlZXBTZWxlY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICBjb25zdCBpZHMgPSB2YWx1ZXNbMF1bdmFsdWVzWzFdLmdyaWRJZF0/LmlkcyA/PyBbXTtcbiAgICAgICAgICB0aGlzLmFnR3JpZEFuZ3VsYXIuYXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgICBpZiAobm9kZS5pZCkge1xuICAgICAgICAgICAgICBub2RlLnNldFNlbGVjdGVkKGlkcy5pbmNsdWRlcyhub2RlLmlkKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmdldENvbnRleHRNZW51SXRlbXMgPSAocGFyYW1zKSA9PiB0aGlzLmdldENvbnRleHRNZW51SXRlbXMocGFyYW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgnbmdzc21BZ0dyaWQnKSBwdWJsaWMgc2V0IGNvbmZpZyh2YWx1ZTogc3RyaW5nIHwgTmdzc21BZ0dyaWRDb25maWcpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5fY29uZmlnJC5uZXh0KHtcbiAgICAgICAgZ3JpZElkOiB2YWx1ZSBhcyBzdHJpbmdcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jb25maWckLm5leHQodmFsdWUgYXMgTmdzc21BZ0dyaWRDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic3JpYmVBbGwkLm5leHQoKTtcbiAgICB0aGlzLnVuc3Vic3JpYmVBbGwkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRTYXRlQ2hhbmdlTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLnNvcnRDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5maWx0ZXJDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5jb2x1bW5QaW5uZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtblJlc2l6ZWQucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNyaWJlQWxsJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNhdmVHcmlkU3RhdGUoKSk7XG4gICAgdGhpcy5hZ0dyaWRBbmd1bGFyLmRpc3BsYXllZENvbHVtbnNDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlR3JpZFN0YXRlKCkpO1xuICAgIHRoaXMuYWdHcmlkQW5ndWxhci5yb3dTZWxlY3RlZC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic3JpYmVBbGwkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMucHJvY2Vzc1NlbGVjdGlvbkNoYW5nZWQoKSk7XG4gIH1cblxuICBwcml2YXRlIHNhdmVHcmlkU3RhdGUoKTogdm9pZCB7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLmFnR3JpZEFuZ3VsYXIuY29sdW1uQXBpLmdldENvbHVtblN0YXRlKCk7XG4gICAgdGhpcy5fY29uZmlnJFxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKGdyaWRJZCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgUmVnaXN0ZXJBZ0dyaWRTdGF0ZUFjdGlvbihncmlkSWQuZ3JpZElkLCBDaGFuZ2VPcmlnaW4uYWdHcmlkLCBzdGF0ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc1NlbGVjdGlvbkNoYW5nZWQoKTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWRSb3dzID0gdGhpcy5hZ0dyaWRBbmd1bGFyLmFwaVxuICAgICAgLmdldFNlbGVjdGVkTm9kZXMoKVxuICAgICAgLm1hcCgobikgPT4gbi5pZCA/PyAnJylcbiAgICAgIC5maWx0ZXIoKG4pID0+IG4gIT09ICcnKTtcbiAgICB0aGlzLl9jb25maWckLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgIGlmIChjb25maWcua2VlcFNlbGVjdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbihjb25maWcuZ3JpZElkLCBDaGFuZ2VPcmlnaW4uYWdHcmlkLCBzZWxlY3RlZFJvd3MpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGV4dE1lbnVJdGVtcyhwYXJhbXM6IEdldENvbnRleHRNZW51SXRlbXNQYXJhbXMpOiAoc3RyaW5nIHwgTWVudUl0ZW1EZWYpW10ge1xuICAgIGNvbnN0IG1lbnVJdGVtczogKHN0cmluZyB8IE1lbnVJdGVtRGVmKVtdID0gW107XG4gICAgY29uc3QgZ2V0Q29udGV4dE1lbnVJdGVtcyA9IHRoaXMuX2NvbmZpZyQuZ2V0VmFsdWUoKS5nZXRDb250ZXh0TWVudUl0ZW1zO1xuICAgIGlmIChnZXRDb250ZXh0TWVudUl0ZW1zKSB7XG4gICAgICBtZW51SXRlbXMucHVzaCguLi5nZXRDb250ZXh0TWVudUl0ZW1zKHBhcmFtcykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBtZW51SXRlbXMucHVzaCguLi4ocGFyYW1zLmRlZmF1bHRJdGVtcyA/PyBbXSkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWckLmdldFZhbHVlKCkuY2FuU2F2ZU9uRGlza0NvbHVtbnNTdGF0ZSA9PT0gdHJ1ZSkge1xuICAgICAgbWVudUl0ZW1zLnB1c2goXG4gICAgICAgIC4uLltcbiAgICAgICAgICAnc2VwYXJhdG9yJyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnU2F2ZSBjb2x1bW5zIHN0YXRlJyxcbiAgICAgICAgICAgIGFjdGlvbjogKCkgPT5cbiAgICAgICAgICAgICAgdGhpcy5fY29uZmlnJFxuICAgICAgICAgICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoY29uZmlnKSA9PiB0aGlzLnN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBBZ0dyaWRBY3Rpb24oQWdHcmlkQWN0aW9uVHlwZS5zYXZlQ29sdW1uc1N0YXRlT25EaXNrLCBjb25maWcuZ3JpZElkKSkpLFxuICAgICAgICAgICAgaWNvbjogJzxpIGNsYXNzPVwiZmEtcmVndWxhciBmYS1mbG9wcHktZGlza1wiPjwvaT4nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnUmVzdG9yZSBjb2x1bW5zIHN0YXRlJyxcbiAgICAgICAgICAgIGFjdGlvbjogKCkgPT5cbiAgICAgICAgICAgICAgdGhpcy5fY29uZmlnJFxuICAgICAgICAgICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoY29uZmlnKSA9PlxuICAgICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaEFjdGlvbihuZXcgQWdHcmlkQWN0aW9uKEFnR3JpZEFjdGlvblR5cGUucmVzZXRDb2x1bW5zU3RhdGVGcm9tRGlzaywgY29uZmlnLmdyaWRJZCkpXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGljb246ICc8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXJvdGF0ZS1yaWdodFwiPjwvaT4nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnUmVzZXQgY29sdW1ucyBzdGF0ZSB0byBkZWZhdWx0JyxcbiAgICAgICAgICAgIGFjdGlvbjogKCkgPT4gdGhpcy5hZ0dyaWRBbmd1bGFyLmNvbHVtbkFwaS5yZXNldENvbHVtblN0YXRlKCksXG4gICAgICAgICAgICBpY29uOiAnPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1jbG9jay1yb3RhdGUtbGVmdFwiPjwvaT4nXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gbWVudUl0ZW1zO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { NgSsmComponent } from 'ngssm-store';
|
|
2
|
+
export class NgssmBaseCellEditor extends NgSsmComponent {
|
|
3
|
+
constructor(store) {
|
|
4
|
+
super(store);
|
|
5
|
+
}
|
|
6
|
+
agInit(params) {
|
|
7
|
+
this.params = params;
|
|
8
|
+
}
|
|
9
|
+
getValue() {
|
|
10
|
+
return '';
|
|
11
|
+
}
|
|
12
|
+
isPopup() {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
getPopupPosition() {
|
|
16
|
+
return 'over';
|
|
17
|
+
}
|
|
18
|
+
isCancelAfterEnd() {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
cancel() {
|
|
22
|
+
this.params?.stopEditing();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYmFzZS1jZWxsLWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL2xpYi9jb21wb25lbnRzL25nc3NtLWJhc2UtY2VsbC1lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGNBQWMsRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUVwRCxNQUFNLE9BQWdCLG1CQUFvQixTQUFRLGNBQWM7SUFHOUQsWUFBWSxLQUFZO1FBQ3RCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBd0M7UUFDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFTSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNlbGxFZGl0b3JBbmd1bGFyQ29tcCB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBJQ2VsbEVkaXRvclBhcmFtcyB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuaW1wb3J0IHsgTmdTc21Db21wb25lbnQsIFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTmdzc21CYXNlQ2VsbEVkaXRvciBleHRlbmRzIE5nU3NtQ29tcG9uZW50IGltcGxlbWVudHMgSUNlbGxFZGl0b3JBbmd1bGFyQ29tcCB7XG4gIHByb3RlY3RlZCBwYXJhbXM/OiBJQ2VsbEVkaXRvclBhcmFtcztcblxuICBjb25zdHJ1Y3RvcihzdG9yZTogU3RvcmUpIHtcbiAgICBzdXBlcihzdG9yZSk7XG4gIH1cblxuICBwdWJsaWMgYWdJbml0KHBhcmFtczogSUNlbGxFZGl0b3JQYXJhbXM8YW55LCBhbnksIGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZSgpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBwdWJsaWMgaXNQb3B1cCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQb3B1cFBvc2l0aW9uKCk6ICdvdmVyJyB8ICd1bmRlcicgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAnb3Zlcic7XG4gIH1cblxuICBwdWJsaWMgaXNDYW5jZWxBZnRlckVuZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5wYXJhbXM/LnN0b3BFZGl0aW5nKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -40,10 +40,10 @@ export class LocalStorageEffect {
|
|
|
40
40
|
getColumnsStateLocalStorageKey(gridId) {
|
|
41
41
|
return `ngssm-ag-grid_${gridId}`;
|
|
42
42
|
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
44
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
44
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect }); }
|
|
45
45
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect, decorators: [{
|
|
47
47
|
type: Injectable
|
|
48
48
|
}], ctorParameters: function () { return [{ type: i1.Logger }]; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5lZmZlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS1hZy1ncmlkL3NyYy9saWIvZWZmZWN0cy9sb2NhbC1zdG9yYWdlLmVmZmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBZ0IsZ0JBQWdCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBRzNELE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGbEIscUJBQWdCLEdBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRTlGLENBQUM7SUFFL0IsYUFBYSxDQUFDLEtBQVksRUFBRSxLQUFZLEVBQUUsTUFBYztRQUM3RCxNQUFNLFlBQVksR0FBRyxNQUFzQixDQUFDO1FBRTVDLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtZQUNuQixLQUFLLGdCQUFnQixDQUFDLHNCQUFzQjtnQkFDMUMsTUFBTSxZQUFZLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDOUUsSUFBSSxZQUFZLEVBQUU7b0JBQ2hCLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2lCQUMzSDtnQkFFRCxNQUFNO1lBRVIsS0FBSyxnQkFBZ0IsQ0FBQyx5QkFBeUI7Z0JBQzdDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUM5RixPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNwQixJQUFJLE1BQU0sRUFBRTtvQkFDVixJQUFJO3dCQUNGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQ3hDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTs0QkFDL0IsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO3lCQUM1Rzs2QkFBTTs0QkFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx3Q0FBd0MsWUFBWSxDQUFDLE1BQU0sR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO3lCQUMzRjtxQkFDRjtvQkFBQyxPQUFPLEtBQUssRUFBRTt3QkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxtQ0FBbUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO3FCQUNyRjtpQkFDRjtnQkFFRCxNQUFNO1NBQ1Q7SUFDSCxDQUFDO0lBRU8sOEJBQThCLENBQUMsTUFBYztRQUNuRCxPQUFPLGlCQUFpQixNQUFNLEVBQUUsQ0FBQztJQUNuQyxDQUFDOytHQXZDVSxrQkFBa0I7bUhBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRWZmZWN0LCBTdG9yZSwgU3RhdGUsIEFjdGlvbiwgTG9nZ2VyIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBBZ0dyaWRBY3Rpb24sIEFnR3JpZEFjdGlvblR5cGUsIFJlZ2lzdGVyQWdHcmlkU3RhdGVBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IENoYW5nZU9yaWdpbiwgc2VsZWN0QWdHcmlkU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VFZmZlY3QgaW1wbGVtZW50cyBFZmZlY3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvY2Vzc2VkQWN0aW9uczogc3RyaW5nW10gPSBbQWdHcmlkQWN0aW9uVHlwZS5zYXZlQ29sdW1uc1N0YXRlT25EaXNrLCBBZ0dyaWRBY3Rpb25UeXBlLnJlc2V0Q29sdW1uc1N0YXRlRnJvbURpc2tdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9nZ2VyOiBMb2dnZXIpIHt9XG5cbiAgcHVibGljIHByb2Nlc3NBY3Rpb24oc3RvcmU6IFN0b3JlLCBzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgYWdHcmlkQWN0aW9uID0gYWN0aW9uIGFzIEFnR3JpZEFjdGlvbjtcblxuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgQWdHcmlkQWN0aW9uVHlwZS5zYXZlQ29sdW1uc1N0YXRlT25EaXNrOlxuICAgICAgICBjb25zdCBjb2x1bW5zU3RhdGUgPSBzZWxlY3RBZ0dyaWRTdGF0ZShzdGF0ZSkuZ3JpZFN0YXRlc1thZ0dyaWRBY3Rpb24uZ3JpZElkXTtcbiAgICAgICAgaWYgKGNvbHVtbnNTdGF0ZSkge1xuICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuZ2V0Q29sdW1uc1N0YXRlTG9jYWxTdG9yYWdlS2V5KGFnR3JpZEFjdGlvbi5ncmlkSWQpLCBKU09OLnN0cmluZ2lmeShjb2x1bW5zU3RhdGUuY29sdW1uc1N0YXRlKSk7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBBZ0dyaWRBY3Rpb25UeXBlLnJlc2V0Q29sdW1uc1N0YXRlRnJvbURpc2s6XG4gICAgICAgIGNvbnN0IHN0b3JlZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuZ2V0Q29sdW1uc1N0YXRlTG9jYWxTdG9yYWdlS2V5KGFnR3JpZEFjdGlvbi5ncmlkSWQpKTtcbiAgICAgICAgY29uc29sZS5sb2coc3RvcmVkKTtcbiAgICAgICAgaWYgKHN0b3JlZCkge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5zU3RhdGUgPSBKU09OLnBhcnNlKHN0b3JlZCk7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjb2x1bW5zU3RhdGUpKSB7XG4gICAgICAgICAgICAgIHN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uKGFnR3JpZEFjdGlvbi5ncmlkSWQsIENoYW5nZU9yaWdpbi5vdGhlciwgY29sdW1uc1N0YXRlKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihgV3JvbmcgY29sdW1ucyBzdGF0ZSBjb25maWcgZm9yIGdyaWQgJyR7YWdHcmlkQWN0aW9uLmdyaWRJZH0nYCwgc3RvcmVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoYFVuYWJsZSB0byBsb2FkIGNvbmZpZyBmb3IgZ3JpZCAnJHthZ0dyaWRBY3Rpb24uZ3JpZElkfSdgLCBlcnJvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2x1bW5zU3RhdGVMb2NhbFN0b3JhZ2VLZXkoZ3JpZElkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgbmdzc20tYWctZ3JpZF8ke2dyaWRJZH1gO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/helpers.mjs
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
export const getColDefWithNoPadding = () => ({
|
|
2
2
|
cellClass: ['cell-with-no-padding']
|
|
3
3
|
});
|
|
4
|
-
|
|
4
|
+
export const getColDefForEditableColumn = () => ({
|
|
5
|
+
editable: true,
|
|
6
|
+
headerClass: 'ngssm-ag-editable-cell',
|
|
7
|
+
valueSetter: () => false
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL2xpYi9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEdBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQzVELFNBQVMsRUFBRSxDQUFDLHNCQUFzQixDQUFDO0NBQ3BDLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLEdBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLFFBQVEsRUFBRSxJQUFJO0lBQ2QsV0FBVyxFQUFFLHdCQUF3QjtJQUNyQyxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSztDQUN6QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xEZWYgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5cbmV4cG9ydCBjb25zdCBnZXRDb2xEZWZXaXRoTm9QYWRkaW5nID0gKCk6IFBhcnRpYWw8Q29sRGVmPiA9PiAoe1xuICBjZWxsQ2xhc3M6IFsnY2VsbC13aXRoLW5vLXBhZGRpbmcnXVxufSk7XG5cbmV4cG9ydCBjb25zdCBnZXRDb2xEZWZGb3JFZGl0YWJsZUNvbHVtbiA9ICgpOiBQYXJ0aWFsPENvbERlZj4gPT4gKHtcbiAgZWRpdGFibGU6IHRydWUsXG4gIGhlYWRlckNsYXNzOiAnbmdzc20tYWctZWRpdGFibGUtY2VsbCcsXG4gIHZhbHVlU2V0dGVyOiAoKSA9PiBmYWxzZVxufSk7XG4iXX0=
|
|
@@ -3,7 +3,8 @@ export class NgssmAgGridOptions {
|
|
|
3
3
|
constructor() {
|
|
4
4
|
this.theme = 'ag-theme-material';
|
|
5
5
|
this.statusBar = undefined;
|
|
6
|
+
this.defaultColDef = undefined;
|
|
6
7
|
}
|
|
7
8
|
}
|
|
8
9
|
export const NGSSM_AG_GRID_OPTIONS = new InjectionToken('NGSSM_AG_GRID_OPTIONS');
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYWctZ3JpZC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tYWctZ3JpZC9zcmMvbGliL25nc3NtLWFnLWdyaWQtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sT0FBTyxrQkFBa0I7SUFBL0I7UUFDRSxVQUFLLEdBQUcsbUJBQW1CLENBQUM7UUFDNUIsY0FBUyxHQUlPLFNBQVMsQ0FBQztRQUMxQixrQkFBYSxHQUF1QixTQUFTLENBQUM7SUFDaEQsQ0FBQztDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQXFCLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sRGVmLCBTdGF0dXNQYW5lbERlZiB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuZXhwb3J0IGNsYXNzIE5nc3NtQWdHcmlkT3B0aW9ucyB7XG4gIHRoZW1lID0gJ2FnLXRoZW1lLW1hdGVyaWFsJztcbiAgc3RhdHVzQmFyOlxuICAgIHwge1xuICAgICAgICBzdGF0dXNQYW5lbHM6IFN0YXR1c1BhbmVsRGVmW107XG4gICAgICB9XG4gICAgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gIGRlZmF1bHRDb2xEZWY6IENvbERlZiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGNvbnN0IE5HU1NNX0FHX0dSSURfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3NzbUFnR3JpZE9wdGlvbnM+KCdOR1NTTV9BR19HUklEX09QVElPTlMnKTtcbiJdfQ==
|
|
@@ -23,10 +23,10 @@ export class GridStatesReducer {
|
|
|
23
23
|
}
|
|
24
24
|
return state;
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
27
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
27
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer }); }
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer, decorators: [{
|
|
30
30
|
type: Injectable
|
|
31
31
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zdGF0ZXMucmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLWFnLWdyaWQvc3JjL2xpYi9yZWR1Y2Vycy9ncmlkLXN0YXRlcy5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsT0FBTyxFQUFFLGdCQUFnQixFQUE2QixNQUFNLFlBQVksQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBRzdDLE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFa0IscUJBQWdCLEdBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBb0JyRjtJQWxCUSxXQUFXLENBQUMsS0FBWSxFQUFFLE1BQWM7UUFDN0MsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ25CLEtBQUssZ0JBQWdCLENBQUMsbUJBQW1CO2dCQUN2QyxNQUFNLHlCQUF5QixHQUFHLE1BQW1DLENBQUM7Z0JBQ3RFLE9BQU8saUJBQWlCLENBQUMsS0FBSyxFQUFFO29CQUM5QixVQUFVLEVBQUU7d0JBQ1YsQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsRUFBRTs0QkFDbEMsSUFBSSxFQUFFO2dDQUNKLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxNQUFNO2dDQUN4QyxZQUFZLEVBQUUseUJBQXlCLENBQUMsWUFBWTs2QkFDckQ7eUJBQ0Y7cUJBQ0Y7aUJBQ0YsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBcEJVLGlCQUFpQjttSEFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBSZWR1Y2VyLCBTdGF0ZSwgQWN0aW9uIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBBZ0dyaWRBY3Rpb25UeXBlLCBSZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyB1cGRhdGVBZ0dyaWRTdGF0ZSB9IGZyb20gJy4uL3N0YXRlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdyaWRTdGF0ZXNSZWR1Y2VyIGltcGxlbWVudHMgUmVkdWNlciB7XG4gIHB1YmxpYyByZWFkb25seSBwcm9jZXNzZWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtBZ0dyaWRBY3Rpb25UeXBlLnJlZ2lzdGVyQWdHcmlkU3RhdGVdO1xuXG4gIHB1YmxpYyB1cGRhdGVTdGF0ZShzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogU3RhdGUge1xuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgQWdHcmlkQWN0aW9uVHlwZS5yZWdpc3RlckFnR3JpZFN0YXRlOlxuICAgICAgICBjb25zdCByZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uID0gYWN0aW9uIGFzIFJlZ2lzdGVyQWdHcmlkU3RhdGVBY3Rpb247XG4gICAgICAgIHJldHVybiB1cGRhdGVBZ0dyaWRTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgIGdyaWRTdGF0ZXM6IHtcbiAgICAgICAgICAgIFtyZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uLmdyaWRJZF06IHtcbiAgICAgICAgICAgICAgJHNldDoge1xuICAgICAgICAgICAgICAgIG9yaWdpbjogcmVnaXN0ZXJBZ0dyaWRTdGF0ZUFjdGlvbi5vcmlnaW4sXG4gICAgICAgICAgICAgICAgY29sdW1uc1N0YXRlOiByZWdpc3RlckFnR3JpZFN0YXRlQWN0aW9uLmNvbHVtblN0YXRlc1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -23,10 +23,10 @@ export class SelectedRowsReducer {
|
|
|
23
23
|
}
|
|
24
24
|
return state;
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
27
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
27
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer }); }
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer, decorators: [{
|
|
30
30
|
type: Injectable
|
|
31
31
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0ZWQtcm93cy5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tYWctZ3JpZC9zcmMvbGliL3JlZHVjZXJzL3NlbGVjdGVkLXJvd3MucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBOEIsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUc3QyxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRWtCLHFCQUFnQixHQUFhLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQW9CdEY7SUFsQlEsV0FBVyxDQUFDLEtBQVksRUFBRSxNQUFjO1FBQzdDLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtZQUNuQixLQUFLLGdCQUFnQixDQUFDLG9CQUFvQjtnQkFDeEMsTUFBTSwwQkFBMEIsR0FBRyxNQUFvQyxDQUFDO2dCQUN4RSxPQUFPLGlCQUFpQixDQUFDLEtBQUssRUFBRTtvQkFDOUIsWUFBWSxFQUFFO3dCQUNaLENBQUMsMEJBQTBCLENBQUMsTUFBTSxDQUFDLEVBQUU7NEJBQ25DLElBQUksRUFBRTtnQ0FDSixNQUFNLEVBQUUsMEJBQTBCLENBQUMsTUFBTTtnQ0FDekMsR0FBRyxFQUFFLDBCQUEwQixDQUFDLEdBQUc7NkJBQ3BDO3lCQUNGO3FCQUNGO2lCQUNGLENBQUMsQ0FBQztTQUNOO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOytHQXBCVSxtQkFBbUI7bUhBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUmVkdWNlciwgU3RhdGUsIEFjdGlvbiB9IGZyb20gJ25nc3NtLXN0b3JlJztcblxuaW1wb3J0IHsgQWdHcmlkQWN0aW9uVHlwZSwgUmVnaXN0ZXJTZWxlY3RlZFJvd3NBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IHVwZGF0ZUFnR3JpZFN0YXRlIH0gZnJvbSAnLi4vc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2VsZWN0ZWRSb3dzUmVkdWNlciBpbXBsZW1lbnRzIFJlZHVjZXIge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvY2Vzc2VkQWN0aW9uczogc3RyaW5nW10gPSBbQWdHcmlkQWN0aW9uVHlwZS5yZWdpc3RlclNlbGVjdGVkUm93c107XG5cbiAgcHVibGljIHVwZGF0ZVN0YXRlKHN0YXRlOiBTdGF0ZSwgYWN0aW9uOiBBY3Rpb24pOiBTdGF0ZSB7XG4gICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgY2FzZSBBZ0dyaWRBY3Rpb25UeXBlLnJlZ2lzdGVyU2VsZWN0ZWRSb3dzOlxuICAgICAgICBjb25zdCByZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbiA9IGFjdGlvbiBhcyBSZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbjtcbiAgICAgICAgcmV0dXJuIHVwZGF0ZUFnR3JpZFN0YXRlKHN0YXRlLCB7XG4gICAgICAgICAgc2VsZWN0ZWRSb3dzOiB7XG4gICAgICAgICAgICBbcmVnaXN0ZXJTZWxlY3RlZFJvd3NBY3Rpb24uZ3JpZElkXToge1xuICAgICAgICAgICAgICAkc2V0OiB7XG4gICAgICAgICAgICAgICAgb3JpZ2luOiByZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbi5vcmlnaW4sXG4gICAgICAgICAgICAgICAgaWRzOiByZWdpc3RlclNlbGVjdGVkUm93c0FjdGlvbi5pZHNcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlO1xuICB9XG59XG4iXX0=
|
|
@@ -13,7 +13,7 @@ import { MatIconModule } from '@angular/material/icon';
|
|
|
13
13
|
import * as i5 from '@angular/material/tooltip';
|
|
14
14
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
15
15
|
import { BehaviorSubject, isObservable, takeUntil, Subject, take, combineLatest, map } from 'rxjs';
|
|
16
|
-
import * as
|
|
16
|
+
import * as i1$1 from 'ag-grid-angular';
|
|
17
17
|
|
|
18
18
|
var AgGridActionType;
|
|
19
19
|
(function (AgGridActionType) {
|
|
@@ -127,10 +127,10 @@ class NgssmActionsCellRendererComponent extends NgSsmComponent {
|
|
|
127
127
|
});
|
|
128
128
|
this._actionButtons$.next(actionButtons);
|
|
129
129
|
}
|
|
130
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
131
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
130
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmActionsCellRendererComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgssmActionsCellRendererComponent, isStandalone: true, selector: "ngssm-actions-cell-renderer", usesInheritance: true, ngImport: i0, template: "<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
132
132
|
}
|
|
133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmActionsCellRendererComponent, decorators: [{
|
|
134
134
|
type: Component,
|
|
135
135
|
args: [{ selector: 'ngssm-actions-cell-renderer', standalone: true, imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>" }]
|
|
136
136
|
}], ctorParameters: function () { return [{ type: i1.Store }]; } });
|
|
@@ -144,19 +144,27 @@ class NgssmAgGridOptions {
|
|
|
144
144
|
constructor() {
|
|
145
145
|
this.theme = 'ag-theme-material';
|
|
146
146
|
this.statusBar = undefined;
|
|
147
|
+
this.defaultColDef = undefined;
|
|
147
148
|
}
|
|
148
149
|
}
|
|
149
150
|
const NGSSM_AG_GRID_OPTIONS = new InjectionToken('NGSSM_AG_GRID_OPTIONS');
|
|
150
151
|
|
|
151
152
|
class NgssmAgGridThemeDirective {
|
|
152
|
-
constructor(options) {
|
|
153
|
+
constructor(options, agGridAngular) {
|
|
154
|
+
this.agGridAngular = agGridAngular;
|
|
153
155
|
this.className = '';
|
|
154
156
|
this.className = (options ?? new NgssmAgGridOptions()).theme;
|
|
157
|
+
if (this.agGridAngular.statusBar === undefined) {
|
|
158
|
+
this.agGridAngular.statusBar = options?.statusBar;
|
|
159
|
+
}
|
|
160
|
+
if (this.agGridAngular.defaultColDef === undefined) {
|
|
161
|
+
this.agGridAngular.defaultColDef = options?.defaultColDef;
|
|
162
|
+
}
|
|
155
163
|
}
|
|
156
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
157
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
164
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridThemeDirective, deps: [{ token: NGSSM_AG_GRID_OPTIONS, optional: true }, { token: i1$1.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
165
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgssmAgGridThemeDirective, isStandalone: true, selector: "[ngssmAgGridTheme]", host: { properties: { "class": "this.className" } }, ngImport: i0 }); }
|
|
158
166
|
}
|
|
159
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
167
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridThemeDirective, decorators: [{
|
|
160
168
|
type: Directive,
|
|
161
169
|
args: [{
|
|
162
170
|
selector: '[ngssmAgGridTheme]',
|
|
@@ -167,22 +175,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
|
|
|
167
175
|
args: [NGSSM_AG_GRID_OPTIONS]
|
|
168
176
|
}, {
|
|
169
177
|
type: Optional
|
|
170
|
-
}] }]; }, propDecorators: { className: [{
|
|
178
|
+
}] }, { type: i1$1.AgGridAngular }]; }, propDecorators: { className: [{
|
|
171
179
|
type: HostBinding,
|
|
172
180
|
args: ['class']
|
|
173
181
|
}] } });
|
|
174
182
|
|
|
175
183
|
class NgssmAgGridDirective {
|
|
176
|
-
constructor(store, agGridAngular
|
|
184
|
+
constructor(store, agGridAngular) {
|
|
177
185
|
this.store = store;
|
|
178
186
|
this.agGridAngular = agGridAngular;
|
|
179
187
|
this.unsubsribeAll$ = new Subject();
|
|
180
188
|
this._config$ = new BehaviorSubject({
|
|
181
189
|
gridId: ''
|
|
182
190
|
});
|
|
183
|
-
if (this.agGridAngular.statusBar === undefined) {
|
|
184
|
-
this.agGridAngular.statusBar = options?.statusBar;
|
|
185
|
-
}
|
|
186
191
|
this.agGridAngular.gridReady.pipe(take(1)).subscribe((v) => {
|
|
187
192
|
combineLatest([
|
|
188
193
|
this.store.state$.pipe(take(1), map((s) => selectAgGridState(s))),
|
|
@@ -273,7 +278,14 @@ class NgssmAgGridDirective {
|
|
|
273
278
|
});
|
|
274
279
|
}
|
|
275
280
|
getContextMenuItems(params) {
|
|
276
|
-
const menuItems = [
|
|
281
|
+
const menuItems = [];
|
|
282
|
+
const getContextMenuItems = this._config$.getValue().getContextMenuItems;
|
|
283
|
+
if (getContextMenuItems) {
|
|
284
|
+
menuItems.push(...getContextMenuItems(params));
|
|
285
|
+
}
|
|
286
|
+
else {
|
|
287
|
+
menuItems.push(...(params.defaultItems ?? []));
|
|
288
|
+
}
|
|
277
289
|
if (this._config$.getValue().canSaveOnDiskColumnsState === true) {
|
|
278
290
|
menuItems.push(...[
|
|
279
291
|
'separator',
|
|
@@ -300,28 +312,52 @@ class NgssmAgGridDirective {
|
|
|
300
312
|
}
|
|
301
313
|
return menuItems;
|
|
302
314
|
}
|
|
303
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
304
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
315
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridDirective, deps: [{ token: i1.Store }, { token: i1$1.AgGridAngular }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
316
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgssmAgGridDirective, isStandalone: true, selector: "[ngssmAgGrid]", inputs: { config: ["ngssmAgGrid", "config"] }, ngImport: i0 }); }
|
|
305
317
|
}
|
|
306
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
318
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgssmAgGridDirective, decorators: [{
|
|
307
319
|
type: Directive,
|
|
308
320
|
args: [{
|
|
309
321
|
selector: '[ngssmAgGrid]',
|
|
310
322
|
standalone: true
|
|
311
323
|
}]
|
|
312
|
-
}], ctorParameters: function () { return [{ type: i1.Store }, { type:
|
|
313
|
-
type: Inject,
|
|
314
|
-
args: [NGSSM_AG_GRID_OPTIONS]
|
|
315
|
-
}, {
|
|
316
|
-
type: Optional
|
|
317
|
-
}] }]; }, propDecorators: { config: [{
|
|
324
|
+
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i1$1.AgGridAngular }]; }, propDecorators: { config: [{
|
|
318
325
|
type: Input,
|
|
319
326
|
args: ['ngssmAgGrid']
|
|
320
327
|
}] } });
|
|
321
328
|
|
|
329
|
+
class NgssmBaseCellEditor extends NgSsmComponent {
|
|
330
|
+
constructor(store) {
|
|
331
|
+
super(store);
|
|
332
|
+
}
|
|
333
|
+
agInit(params) {
|
|
334
|
+
this.params = params;
|
|
335
|
+
}
|
|
336
|
+
getValue() {
|
|
337
|
+
return '';
|
|
338
|
+
}
|
|
339
|
+
isPopup() {
|
|
340
|
+
return true;
|
|
341
|
+
}
|
|
342
|
+
getPopupPosition() {
|
|
343
|
+
return 'over';
|
|
344
|
+
}
|
|
345
|
+
isCancelAfterEnd() {
|
|
346
|
+
return true;
|
|
347
|
+
}
|
|
348
|
+
cancel() {
|
|
349
|
+
this.params?.stopEditing();
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
|
|
322
353
|
const getColDefWithNoPadding = () => ({
|
|
323
354
|
cellClass: ['cell-with-no-padding']
|
|
324
355
|
});
|
|
356
|
+
const getColDefForEditableColumn = () => ({
|
|
357
|
+
editable: true,
|
|
358
|
+
headerClass: 'ngssm-ag-editable-cell',
|
|
359
|
+
valueSetter: () => false
|
|
360
|
+
});
|
|
325
361
|
|
|
326
362
|
class LocalStorageEffect {
|
|
327
363
|
constructor(logger) {
|
|
@@ -360,10 +396,10 @@ class LocalStorageEffect {
|
|
|
360
396
|
getColumnsStateLocalStorageKey(gridId) {
|
|
361
397
|
return `ngssm-ag-grid_${gridId}`;
|
|
362
398
|
}
|
|
363
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
364
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
399
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect, deps: [{ token: i1.Logger }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
400
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect }); }
|
|
365
401
|
}
|
|
366
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
402
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalStorageEffect, decorators: [{
|
|
367
403
|
type: Injectable
|
|
368
404
|
}], ctorParameters: function () { return [{ type: i1.Logger }]; } });
|
|
369
405
|
|
|
@@ -388,10 +424,10 @@ class GridStatesReducer {
|
|
|
388
424
|
}
|
|
389
425
|
return state;
|
|
390
426
|
}
|
|
391
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
392
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
427
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
428
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer }); }
|
|
393
429
|
}
|
|
394
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridStatesReducer, decorators: [{
|
|
395
431
|
type: Injectable
|
|
396
432
|
}] });
|
|
397
433
|
|
|
@@ -416,10 +452,10 @@ class SelectedRowsReducer {
|
|
|
416
452
|
}
|
|
417
453
|
return state;
|
|
418
454
|
}
|
|
419
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
420
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
455
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
456
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer }); }
|
|
421
457
|
}
|
|
422
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
458
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectedRowsReducer, decorators: [{
|
|
423
459
|
type: Injectable
|
|
424
460
|
}] });
|
|
425
461
|
|
|
@@ -435,5 +471,5 @@ const provideNgssmAgGrid = () => {
|
|
|
435
471
|
* Generated bundle index. Do not edit.
|
|
436
472
|
*/
|
|
437
473
|
|
|
438
|
-
export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NGSSM_AG_GRID_OPTIONS, NgssmActionsCellRendererComponent, NgssmAgGridDirective, NgssmAgGridOptions, NgssmAgGridThemeDirective, RegisterAgGridStateAction, RegisterSelectedRowsAction, getColDefWithNoPadding, getNgssmActionsCellColDef, provideNgssmAgGrid, selectAgGridState, updateAgGridState };
|
|
474
|
+
export { AgGridAction, AgGridActionType, AgGridStateSpecification, ChangeOrigin, NGSSM_AG_GRID_OPTIONS, NgssmActionsCellRendererComponent, NgssmAgGridDirective, NgssmAgGridOptions, NgssmAgGridThemeDirective, NgssmBaseCellEditor, RegisterAgGridStateAction, RegisterSelectedRowsAction, getColDefForEditableColumn, getColDefWithNoPadding, getNgssmActionsCellColDef, provideNgssmAgGrid, selectAgGridState, updateAgGridState };
|
|
439
475
|
//# 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-actions-cell-renderer/ngssm-actions-cell-renderer.component.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer.component.html","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer-params.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid-options.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid-theme.directive.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/helpers.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.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/provide-ngssm-ag-grid.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(\n public readonly gridId: string,\n public readonly origin: ChangeOrigin,\n public readonly columnStates: ColumnState[]\n ) {}\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(\n public readonly gridId: string,\n public readonly origin: ChangeOrigin,\n public readonly ids: string[]\n ) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(\n public readonly type: string,\n public readonly gridId: string\n ) {}\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 { Component, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BehaviorSubject, isObservable, Observable, takeUntil } from 'rxjs';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { NgSsmComponent, Store } from 'ngssm-store';\n\nimport { NgssmActionsCellRendererParams } from './ngssm-actions-cell-renderer-params';\nimport { ActionConfig } from './action-config';\n\ninterface ActionButton {\n cssClass: string;\n color: string;\n disabled$: BehaviorSubject<boolean>;\n hidden$: BehaviorSubject<boolean>;\n\n actionConfig: ActionConfig;\n\n tooltip: string;\n}\n\n@Component({\n selector: 'ngssm-actions-cell-renderer',\n standalone: true,\n imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule],\n templateUrl: './ngssm-actions-cell-renderer.component.html',\n styleUrls: ['./ngssm-actions-cell-renderer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NgssmActionsCellRendererComponent extends NgSsmComponent implements ICellRendererAngularComp {\n private readonly _actionButtons$ = new BehaviorSubject<ActionButton[]>([]);\n\n private cellParams: ICellRendererParams<any, any> | undefined;\n\n constructor(store: Store) {\n super(store);\n }\n\n public get actionButtons$(): Observable<ActionButton[]> {\n return this._actionButtons$.asObservable();\n }\n\n public agInit(params: ICellRendererParams<any, any>): void {\n this.cellParams = params;\n this.setupActions(params as any);\n }\n\n public refresh(params: ICellRendererParams<any, any>): boolean {\n this.cellParams = params;\n this._actionButtons$.getValue().forEach((a) => {\n if (a.actionConfig.isDisabled instanceof Function) {\n a.disabled$.next(a.actionConfig.isDisabled(params as any));\n }\n\n if (a.actionConfig.isHidden instanceof Function) {\n a.hidden$.next(a.actionConfig.isHidden(params as any));\n }\n });\n return true;\n }\n\n public executeAction(action: ActionButton): void {\n action.actionConfig.click?.(this.cellParams as any);\n }\n\n private setupActions(rendererParams: NgssmActionsCellRendererParams): void {\n const actionButtons: ActionButton[] = (rendererParams?.actions ?? []).map((a) => {\n const actionButton: ActionButton = {\n cssClass: a.cssClass,\n color: a.color ?? 'primary',\n disabled$: new BehaviorSubject<boolean>(false),\n hidden$: new BehaviorSubject<boolean>(false),\n actionConfig: a,\n tooltip: a.tooltip ?? ''\n };\n\n if (a.isDisabled instanceof Function) {\n actionButton.disabled$.next(a.isDisabled(rendererParams as any));\n } else if (isObservable(a.isDisabled)) {\n a.isDisabled.pipe(takeUntil(this.unsubscribeAll$)).subscribe((v) => actionButton.disabled$.next(v));\n }\n\n if (a.isHidden instanceof Function) {\n actionButton.hidden$.next(a.isHidden(rendererParams as any));\n } else if (isObservable(a.isHidden)) {\n a.isHidden.pipe(takeUntil(this.unsubscribeAll$)).subscribe((v) => actionButton.hidden$.next(v));\n }\n\n return actionButton;\n });\n\n this._actionButtons$.next(actionButtons);\n }\n}\n","<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>","import { ColDef } from 'ag-grid-community';\n\nimport { ActionConfig } from './action-config';\nimport { NgssmActionsCellRendererComponent } from './ngssm-actions-cell-renderer.component';\n\n// Parameters of the actions cell renderer\n// For now, an action is rendered as a mat-icon-button with the class passed in ActionConfig\nexport interface NgssmActionsCellRendererParams<TData = any, TValue = any> {\n actions: ActionConfig<TData, TValue>[];\n}\n\nexport const getNgssmActionsCellColDef = <TData = any, TValue = any>(\n params: NgssmActionsCellRendererParams<TData, TValue>\n): Partial<ColDef> => ({\n cellRenderer: NgssmActionsCellRendererComponent,\n cellRendererParams: params\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, 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 standalone: true\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 { 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 standalone: true\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.setSelected(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.setSelected(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 { ColDef } from 'ag-grid-community';\n\nexport const getColDefWithNoPadding = (): Partial<ColDef> => ({\n cellClass: ['cell-with-no-padding']\n});\n","import { Injectable } from '@angular/core';\n\nimport { Effect, Store, State, Action, Logger } from 'ngssm-store';\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","import { Injectable } from '@angular/core';\n\nimport { Reducer, State, Action } 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","import { Injectable } from '@angular/core';\n\nimport { Reducer, State, Action } 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","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport { provideEffect, provideReducers } from 'ngssm-store';\n\nimport { LocalStorageEffect } from './effects/local-storage.effect';\nimport { GridStatesReducer } from './reducers/grid-states.reducer';\nimport { SelectedRowsReducer } from './reducers/selected-rows.reducer';\n\nexport const provideNgssmAgGrid = (): EnvironmentProviders => {\n return makeEnvironmentProviders([provideReducers(GridStatesReducer, SelectedRowsReducer), provideEffect(LocalStorageEffect)]);\n};\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components';\nexport * from './lib/ngssm-ag-grid-options';\nexport * from './lib/helpers';\nexport * from './lib/provide-ngssm-ag-grid';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"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/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer.component.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer.component.html","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-actions-cell-renderer/ngssm-actions-cell-renderer-params.ts","../../../projects/ngssm-ag-grid/src/lib/ngssm-ag-grid-options.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid-theme.directive.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-ag-grid.directive.ts","../../../projects/ngssm-ag-grid/src/lib/components/ngssm-base-cell-editor.ts","../../../projects/ngssm-ag-grid/src/lib/helpers.ts","../../../projects/ngssm-ag-grid/src/lib/effects/local-storage.effect.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/provide-ngssm-ag-grid.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(\n public readonly gridId: string,\n public readonly origin: ChangeOrigin,\n public readonly columnStates: ColumnState[]\n ) {}\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(\n public readonly gridId: string,\n public readonly origin: ChangeOrigin,\n public readonly ids: string[]\n ) {}\n}\n","import { Action } from 'ngssm-store';\n\nexport class AgGridAction implements Action {\n constructor(\n public readonly type: string,\n public readonly gridId: string\n ) {}\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 { Component, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BehaviorSubject, isObservable, Observable, takeUntil } from 'rxjs';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { NgSsmComponent, Store } from 'ngssm-store';\n\nimport { NgssmActionsCellRendererParams } from './ngssm-actions-cell-renderer-params';\nimport { ActionConfig } from './action-config';\n\ninterface ActionButton {\n cssClass: string;\n color: string;\n disabled$: BehaviorSubject<boolean>;\n hidden$: BehaviorSubject<boolean>;\n\n actionConfig: ActionConfig;\n\n tooltip: string;\n}\n\n@Component({\n selector: 'ngssm-actions-cell-renderer',\n standalone: true,\n imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule],\n templateUrl: './ngssm-actions-cell-renderer.component.html',\n styleUrls: ['./ngssm-actions-cell-renderer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NgssmActionsCellRendererComponent extends NgSsmComponent implements ICellRendererAngularComp {\n private readonly _actionButtons$ = new BehaviorSubject<ActionButton[]>([]);\n\n private cellParams: ICellRendererParams<any, any> | undefined;\n\n constructor(store: Store) {\n super(store);\n }\n\n public get actionButtons$(): Observable<ActionButton[]> {\n return this._actionButtons$.asObservable();\n }\n\n public agInit(params: ICellRendererParams<any, any>): void {\n this.cellParams = params;\n this.setupActions(params as any);\n }\n\n public refresh(params: ICellRendererParams<any, any>): boolean {\n this.cellParams = params;\n this._actionButtons$.getValue().forEach((a) => {\n if (a.actionConfig.isDisabled instanceof Function) {\n a.disabled$.next(a.actionConfig.isDisabled(params as any));\n }\n\n if (a.actionConfig.isHidden instanceof Function) {\n a.hidden$.next(a.actionConfig.isHidden(params as any));\n }\n });\n return true;\n }\n\n public executeAction(action: ActionButton): void {\n action.actionConfig.click?.(this.cellParams as any);\n }\n\n private setupActions(rendererParams: NgssmActionsCellRendererParams): void {\n const actionButtons: ActionButton[] = (rendererParams?.actions ?? []).map((a) => {\n const actionButton: ActionButton = {\n cssClass: a.cssClass,\n color: a.color ?? 'primary',\n disabled$: new BehaviorSubject<boolean>(false),\n hidden$: new BehaviorSubject<boolean>(false),\n actionConfig: a,\n tooltip: a.tooltip ?? ''\n };\n\n if (a.isDisabled instanceof Function) {\n actionButton.disabled$.next(a.isDisabled(rendererParams as any));\n } else if (isObservable(a.isDisabled)) {\n a.isDisabled.pipe(takeUntil(this.unsubscribeAll$)).subscribe((v) => actionButton.disabled$.next(v));\n }\n\n if (a.isHidden instanceof Function) {\n actionButton.hidden$.next(a.isHidden(rendererParams as any));\n } else if (isObservable(a.isHidden)) {\n a.isHidden.pipe(takeUntil(this.unsubscribeAll$)).subscribe((v) => actionButton.hidden$.next(v));\n }\n\n return actionButton;\n });\n\n this._actionButtons$.next(actionButtons);\n }\n}\n","<div class=\"ngssm-actions-cell\">\n <div *ngFor=\"let actionButton of actionButtons$ | async; let index=index\">\n <button mat-icon-button class=\"ngssm-actions-cell-button\" [color]=\"actionButton.color\" id=\"action_{{index}}\"\n [disabled]=\"actionButton.disabled$ | async\" (click)=\"executeAction(actionButton)\"\n [matTooltip]=\"actionButton.tooltip\" *ngIf=\"(actionButton.hidden$ | async) === false\">\n <mat-icon [class]=\"actionButton.cssClass\"></mat-icon>\n </button>\n </div>\n\n</div>","import { ColDef } from 'ag-grid-community';\n\nimport { ActionConfig } from './action-config';\nimport { NgssmActionsCellRendererComponent } from './ngssm-actions-cell-renderer.component';\n\n// Parameters of the actions cell renderer\n// For now, an action is rendered as a mat-icon-button with the class passed in ActionConfig\nexport interface NgssmActionsCellRendererParams<TData = any, TValue = any> {\n actions: ActionConfig<TData, TValue>[];\n}\n\nexport const getNgssmActionsCellColDef = <TData = any, TValue = any>(\n params: NgssmActionsCellRendererParams<TData, TValue>\n): Partial<ColDef> => ({\n cellRenderer: NgssmActionsCellRendererComponent,\n cellRendererParams: params\n});\n","import { InjectionToken } from '@angular/core';\nimport { ColDef, 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 defaultColDef: ColDef | undefined = undefined;\n}\n\nexport const NGSSM_AG_GRID_OPTIONS = new InjectionToken<NgssmAgGridOptions>('NGSSM_AG_GRID_OPTIONS');\n","import { Directive, HostBinding, Inject, Optional } from '@angular/core';\n\nimport { AgGridAngular } from 'ag-grid-angular';\n\nimport { NgssmAgGridOptions, NGSSM_AG_GRID_OPTIONS } from '../ngssm-ag-grid-options';\n\n@Directive({\n selector: '[ngssmAgGridTheme]',\n standalone: true\n})\nexport class NgssmAgGridThemeDirective {\n @HostBinding('class') className = '';\n\n constructor(\n @Inject(NGSSM_AG_GRID_OPTIONS) @Optional() options: NgssmAgGridOptions,\n private agGridAngular: AgGridAngular\n ) {\n this.className = (options ?? new NgssmAgGridOptions()).theme;\n if (this.agGridAngular.statusBar === undefined) {\n this.agGridAngular.statusBar = options?.statusBar;\n }\n\n if (this.agGridAngular.defaultColDef === undefined) {\n this.agGridAngular.defaultColDef = options?.defaultColDef;\n }\n }\n}\n","import { Directive, Input, OnDestroy } 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';\n\n@Directive({\n selector: '[ngssmAgGrid]',\n standalone: true\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 ) {\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.setSelected(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.setSelected(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)[] = [];\n const getContextMenuItems = this._config$.getValue().getContextMenuItems;\n if (getContextMenuItems) {\n menuItems.push(...getContextMenuItems(params));\n } else {\n menuItems.push(...(params.defaultItems ?? []));\n }\n\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 { ICellEditorAngularComp } from 'ag-grid-angular';\nimport { ICellEditorParams } from 'ag-grid-community';\n\nimport { NgSsmComponent, Store } from 'ngssm-store';\n\nexport abstract class NgssmBaseCellEditor extends NgSsmComponent implements ICellEditorAngularComp {\n protected params?: ICellEditorParams;\n\n constructor(store: Store) {\n super(store);\n }\n\n public agInit(params: ICellEditorParams<any, any, any>): void {\n this.params = params;\n }\n\n public getValue() {\n return '';\n }\n\n public isPopup(): boolean {\n return true;\n }\n\n public getPopupPosition(): 'over' | 'under' | undefined {\n return 'over';\n }\n\n public isCancelAfterEnd(): boolean {\n return true;\n }\n\n public cancel(): void {\n this.params?.stopEditing();\n }\n}\n","import { ColDef } from 'ag-grid-community';\n\nexport const getColDefWithNoPadding = (): Partial<ColDef> => ({\n cellClass: ['cell-with-no-padding']\n});\n\nexport const getColDefForEditableColumn = (): Partial<ColDef> => ({\n editable: true,\n headerClass: 'ngssm-ag-editable-cell',\n valueSetter: () => false\n});\n","import { Injectable } from '@angular/core';\n\nimport { Effect, Store, State, Action, Logger } from 'ngssm-store';\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","import { Injectable } from '@angular/core';\n\nimport { Reducer, State, Action } 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","import { Injectable } from '@angular/core';\n\nimport { Reducer, State, Action } 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","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport { provideEffect, provideReducers } from 'ngssm-store';\n\nimport { LocalStorageEffect } from './effects/local-storage.effect';\nimport { GridStatesReducer } from './reducers/grid-states.reducer';\nimport { SelectedRowsReducer } from './reducers/selected-rows.reducer';\n\nexport const provideNgssmAgGrid = (): EnvironmentProviders => {\n return makeEnvironmentProviders([provideReducers(GridStatesReducer, SelectedRowsReducer), provideEffect(LocalStorageEffect)]);\n};\n","/*\n * Public API Surface of ngssm-ag-grid\n */\n\nexport * from './lib/actions';\nexport * from './lib/state';\nexport * from './lib/components';\nexport * from './lib/ngssm-ag-grid-options';\nexport * from './lib/helpers';\nexport * from './lib/provide-ngssm-ag-grid';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GetContextMenuItems } from 'ag-grid-community';
|
|
1
2
|
/**
|
|
2
3
|
* Configuration parameters of the {@link NgssmAgGridDirective} directive to apply on a
|
|
3
4
|
* {@link https://www.ag-grid.com/ ag-grid instance}
|
|
@@ -20,4 +21,8 @@ export interface NgssmAgGridConfig {
|
|
|
20
21
|
* this functionnality is only available for enterprise version of {@link https://www.ag-grid.com/}.
|
|
21
22
|
*/
|
|
22
23
|
canSaveOnDiskColumnsState?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Used to override default context menu items.
|
|
26
|
+
*/
|
|
27
|
+
getContextMenuItems?: GetContextMenuItems;
|
|
23
28
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { AgGridAngular } from 'ag-grid-angular';
|
|
1
2
|
import { NgssmAgGridOptions } from '../ngssm-ag-grid-options';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class NgssmAgGridThemeDirective {
|
|
5
|
+
private agGridAngular;
|
|
4
6
|
className: string;
|
|
5
|
-
constructor(options: NgssmAgGridOptions);
|
|
6
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridThemeDirective, [{ optional: true; }]>;
|
|
7
|
+
constructor(options: NgssmAgGridOptions, agGridAngular: AgGridAngular);
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridThemeDirective, [{ optional: true; }, null]>;
|
|
7
9
|
static ɵdir: i0.ɵɵDirectiveDeclaration<NgssmAgGridThemeDirective, "[ngssmAgGridTheme]", never, {}, {}, never, never, true, never>;
|
|
8
10
|
}
|
|
@@ -2,20 +2,19 @@ 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';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class NgssmAgGridDirective implements OnDestroy {
|
|
8
7
|
private store;
|
|
9
8
|
private agGridAngular;
|
|
10
9
|
private readonly unsubsribeAll$;
|
|
11
10
|
private readonly _config$;
|
|
12
|
-
constructor(store: Store, agGridAngular: AgGridAngular
|
|
11
|
+
constructor(store: Store, agGridAngular: AgGridAngular);
|
|
13
12
|
set config(value: string | NgssmAgGridConfig);
|
|
14
13
|
ngOnDestroy(): void;
|
|
15
14
|
private initSateChangeListener;
|
|
16
15
|
private saveGridState;
|
|
17
16
|
private processSelectionChanged;
|
|
18
17
|
private getContextMenuItems;
|
|
19
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridDirective,
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgssmAgGridDirective, never>;
|
|
20
19
|
static ɵdir: i0.ɵɵDirectiveDeclaration<NgssmAgGridDirective, "[ngssmAgGrid]", never, { "config": { "alias": "ngssmAgGrid"; "required": false; }; }, {}, never, never, true, never>;
|
|
21
20
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ICellEditorAngularComp } from 'ag-grid-angular';
|
|
2
|
+
import { ICellEditorParams } from 'ag-grid-community';
|
|
3
|
+
import { NgSsmComponent, Store } from 'ngssm-store';
|
|
4
|
+
export declare abstract class NgssmBaseCellEditor extends NgSsmComponent implements ICellEditorAngularComp {
|
|
5
|
+
protected params?: ICellEditorParams;
|
|
6
|
+
constructor(store: Store);
|
|
7
|
+
agInit(params: ICellEditorParams<any, any, any>): void;
|
|
8
|
+
getValue(): string;
|
|
9
|
+
isPopup(): boolean;
|
|
10
|
+
getPopupPosition(): 'over' | 'under' | undefined;
|
|
11
|
+
isCancelAfterEnd(): boolean;
|
|
12
|
+
cancel(): void;
|
|
13
|
+
}
|
package/lib/helpers.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { StatusPanelDef } from 'ag-grid-community';
|
|
2
|
+
import { ColDef, StatusPanelDef } from 'ag-grid-community';
|
|
3
3
|
export declare class NgssmAgGridOptions {
|
|
4
4
|
theme: string;
|
|
5
5
|
statusBar: {
|
|
6
6
|
statusPanels: StatusPanelDef[];
|
|
7
7
|
} | undefined;
|
|
8
|
+
defaultColDef: ColDef | undefined;
|
|
8
9
|
}
|
|
9
10
|
export declare const NGSSM_AG_GRID_OPTIONS: InjectionToken<NgssmAgGridOptions>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ngssm-ag-grid",
|
|
3
|
-
"version": "16.2.
|
|
3
|
+
"version": "16.2.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": ">=16.0.0",
|
|
10
10
|
"ag-grid-angular": ">=29.0.0",
|
|
11
11
|
"ag-grid-community": ">=29.0.0",
|
|
12
|
-
"ngssm-store": "16.2.
|
|
12
|
+
"ngssm-store": "16.2.4"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"tslib": ">=2.4.0"
|
package/styles/styles.scss
CHANGED
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
.cell-with-no-padding {
|
|
2
2
|
padding-right: 0 !important;
|
|
3
3
|
padding-left: 0 !important;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.ngssm-ag-editable-cell {
|
|
7
|
+
display: flex !important;
|
|
8
|
+
flex-direction: row;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.ngssm-ag-editable-cell::before {
|
|
12
|
+
font-family: 'FontAwesome', sans-serif;
|
|
13
|
+
display: inline-block;
|
|
14
|
+
padding-right: 6px;
|
|
15
|
+
vertical-align: middle;
|
|
16
|
+
content: "\f303";
|
|
4
17
|
}
|