UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

54 lines 8.06 kB
import { ReplaySubject, Subscription } from 'rxjs'; import { Component } from '@angular/core'; import { ConfigParams } from '../../panel/configuration/config-params'; import * as i0 from "@angular/core"; import * as i1 from "./sortable-view"; import * as i2 from "@angular/router"; export class AbstractViewWithHeadersComponent { _sortableView; _activatedRoute; config; _selectedHeaders$; _subscriptions; constructor(_sortableView, _activatedRoute) { this._sortableView = _sortableView; this._activatedRoute = _activatedRoute; this._selectedHeaders$ = new ReplaySubject(1); this._subscriptions = new Subscription(); if (!!_activatedRoute) { this._subscriptions.add(this._activatedRoute.queryParams.subscribe(paramMap => this.config = paramMap)); } } get selectedHeaders$() { return this._selectedHeaders$.asObservable(); } initializeHeader(headerComponent) { this._subscriptions.add(headerComponent.headerService.selectedHeaders$.subscribe(selectedHeaders => { this._selectedHeaders$.next(selectedHeaders); })); if (!!this._sortableView) { this._sortableView.registerHeaderChange(headerComponent.headerService.headerChange$); this._subscriptions.add(headerComponent.headerService.appliedSorts$.subscribe(appliedSorts => { this._sortableView.registerPreferredSortableHeaders(appliedSorts); this._sortableView.reload(); })); } } ngOnDestroy() { this._subscriptions.unsubscribe(); this._selectedHeaders$.complete(); } showHeader() { return !(this.config?.[ConfigParams.PANEL_HEADER] === 'false'); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractViewWithHeadersComponent, deps: [{ token: i1.AbstractSortableViewComponent }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AbstractViewWithHeadersComponent, selector: "ncc-abstract-view-with-headers", ngImport: i0, template: '', isInline: true }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractViewWithHeadersComponent, decorators: [{ type: Component, args: [{ selector: 'ncc-abstract-view-with-headers', template: '' }] }], ctorParameters: () => [{ type: i1.AbstractSortableViewComponent }, { type: i2.ActivatedRoute }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy13aXRoLWhlYWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3ZpZXcvYWJzdHJhY3Qvdmlldy13aXRoLWhlYWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLGFBQWEsRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFJN0QsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7QUFNdkUsTUFBTSxPQUFnQixnQ0FBZ0M7SUFNbEI7SUFBeUQ7SUFKbEYsTUFBTSxDQUFTO0lBQ1osaUJBQWlCLENBQXFDO0lBQ3RELGNBQWMsQ0FBZTtJQUV2QyxZQUFnQyxhQUE2QyxFQUFZLGVBQWdDO1FBQXpGLGtCQUFhLEdBQWIsYUFBYSxDQUFnQztRQUFZLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNySCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxhQUFhLENBQXNCLENBQUMsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QyxJQUFJLENBQUMsQ0FBQyxlQUFlLEVBQUU7WUFDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQzNHO0lBQ0wsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFUyxnQkFBZ0IsQ0FBQyxlQUF3QztRQUMvRCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUMvRixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNyRixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQ3pGLElBQUksQ0FBQyxhQUFhLENBQUMsZ0NBQWdDLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xFLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNQO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsVUFBVTtRQUNOLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUE7SUFDbEUsQ0FBQzt3R0F0Q2lCLGdDQUFnQzs0RkFBaEMsZ0NBQWdDLHNFQUZ4QyxFQUFFOzs0RkFFTSxnQ0FBZ0M7a0JBSnJELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdDQUFnQztvQkFDMUMsUUFBUSxFQUFFLEVBQUU7aUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0hlYWRlckNvbHVtbn0gZnJvbSAnLi4vLi4vaGVhZGVyL21vZGVscy9oZWFkZXItY29sdW1uJztcbmltcG9ydCB7QWJzdHJhY3RIZWFkZXJDb21wb25lbnR9IGZyb20gJy4uLy4uL2hlYWRlci9hYnN0cmFjdC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7QWJzdHJhY3RTb3J0YWJsZVZpZXdDb21wb25lbnR9IGZyb20gJy4vc29ydGFibGUtdmlldyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb25maWdQYXJhbXMgfSBmcm9tICcuLi8uLi9wYW5lbC9jb25maWd1cmF0aW9uL2NvbmZpZy1wYXJhbXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC12aWV3LXdpdGgtaGVhZGVycycsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Vmlld1dpdGhIZWFkZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIHB1YmxpYyBjb25maWc6IFBhcmFtcztcbiAgICBwcm90ZWN0ZWQgX3NlbGVjdGVkSGVhZGVycyQ6IFJlcGxheVN1YmplY3Q8QXJyYXk8SGVhZGVyQ29sdW1uPj47XG4gICAgcHJvdGVjdGVkIF9zdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb247XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIF9zb3J0YWJsZVZpZXc/OiBBYnN0cmFjdFNvcnRhYmxlVmlld0NvbXBvbmVudCwgcHJvdGVjdGVkIF9hY3RpdmF0ZWRSb3V0ZT86IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSGVhZGVycyQgPSBuZXcgUmVwbGF5U3ViamVjdDxBcnJheTxIZWFkZXJDb2x1bW4+PigxKTtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgaWYgKCEhX2FjdGl2YXRlZFJvdXRlKSB7XG4gICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZCh0aGlzLl9hY3RpdmF0ZWRSb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUocGFyYW1NYXAgPT4gdGhpcy5jb25maWcgPSBwYXJhbU1hcCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzZWxlY3RlZEhlYWRlcnMkKCk6IE9ic2VydmFibGU8QXJyYXk8SGVhZGVyQ29sdW1uPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRIZWFkZXJzJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZUhlYWRlcihoZWFkZXJDb21wb25lbnQ6IEFic3RyYWN0SGVhZGVyQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKGhlYWRlckNvbXBvbmVudC5oZWFkZXJTZXJ2aWNlLnNlbGVjdGVkSGVhZGVycyQuc3Vic2NyaWJlKHNlbGVjdGVkSGVhZGVycyA9PiB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEhlYWRlcnMkLm5leHQoc2VsZWN0ZWRIZWFkZXJzKTtcbiAgICAgICAgfSkpO1xuICAgICAgICBpZiAoISF0aGlzLl9zb3J0YWJsZVZpZXcpIHtcbiAgICAgICAgICAgIHRoaXMuX3NvcnRhYmxlVmlldy5yZWdpc3RlckhlYWRlckNoYW5nZShoZWFkZXJDb21wb25lbnQuaGVhZGVyU2VydmljZS5oZWFkZXJDaGFuZ2UkKTtcbiAgICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKGhlYWRlckNvbXBvbmVudC5oZWFkZXJTZXJ2aWNlLmFwcGxpZWRTb3J0cyQuc3Vic2NyaWJlKGFwcGxpZWRTb3J0cyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc29ydGFibGVWaWV3LnJlZ2lzdGVyUHJlZmVycmVkU29ydGFibGVIZWFkZXJzKGFwcGxpZWRTb3J0cyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fc29ydGFibGVWaWV3LnJlbG9hZCgpO1xuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRIZWFkZXJzJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHNob3dIZWFkZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhKHRoaXMuY29uZmlnPy5bQ29uZmlnUGFyYW1zLlBBTkVMX0hFQURFUl0gPT09ICdmYWxzZScpXG4gICAgfVxufVxuIl19