UNPKG

ng2-qgrid

Version:

Angular data grid

42 lines 5.52 kB
import { Directive, ElementRef, Renderer2 } from '@angular/core'; import { GridError, GridPlugin } from 'ng2-qgrid'; import * as i0 from "@angular/core"; import * as i1 from "ng2-qgrid"; export class ThemeOverlayDirective { constructor(plugin, elementRef, renderer) { this.plugin = plugin; this.elementRef = elementRef; this.renderer = renderer; } ngAfterViewInit() { const { model } = this.plugin; const element = this.elementRef.nativeElement; let parent = this.renderer.parentNode(element); let overlayContainer = null; while (parent && !(parent.id && parent.id.startsWith('cdk-overlay'))) { parent = this.renderer.parentNode(parent); if (parent.nodeName === 'BODY') { break; } } if (parent.nodeName !== 'BODY') { overlayContainer = parent; } if (!overlayContainer) { throw new GridError('theme-overlay.directive', 'cdk-overlay container is not found'); } model.style().classList.forEach(cssClass => { this.renderer.addClass(overlayContainer, cssClass); }); } } ThemeOverlayDirective.ɵfac = function ThemeOverlayDirective_Factory(t) { return new (t || ThemeOverlayDirective)(i0.ɵɵdirectiveInject(i1.GridPlugin), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2)); }; ThemeOverlayDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ThemeOverlayDirective, selectors: [["", "q-grid-theme-overlay", ""]], features: [i0.ɵɵProvidersFeature([GridPlugin])] }); (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ThemeOverlayDirective, [{ type: Directive, args: [{ selector: '[q-grid-theme-overlay]', providers: [GridPlugin], }] }], function () { return [{ type: i1.GridPlugin }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, null); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtb3ZlcmxheS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvdGhlbWUtb3ZlcmxheS90aGVtZS1vdmVybGF5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7QUFNbEQsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUNRLE1BQWtCLEVBQ2xCLFVBQXNCLEVBQ3RCLFFBQW1CO1FBRm5CLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDbEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDOUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDOUMsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsSUFBSSxnQkFBZ0IsR0FBUSxJQUFJLENBQUM7UUFFakMsT0FBTyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRTtZQUNwRSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDMUMsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLE1BQU0sRUFBRTtnQkFDOUIsTUFBTTthQUNQO1NBQ0Y7UUFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFFO1lBQzlCLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztTQUMzQjtRQUVELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNyQixNQUFNLElBQUksU0FBUyxDQUNqQix5QkFBeUIsRUFDekIsb0NBQW9DLENBQ3JDLENBQUM7U0FDSDtRQUVELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEZBbkNVLHFCQUFxQjt3RUFBckIscUJBQXFCLGtGQUZyQixDQUFDLFVBQVUsQ0FBQzt1RkFFWixxQkFBcUI7Y0FKakMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQzthQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgUmVuZGVyZXIyLCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHcmlkRXJyb3IsIEdyaWRQbHVnaW4gfSBmcm9tICduZzItcWdyaWQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbcS1ncmlkLXRoZW1lLW92ZXJsYXldJyxcbiAgcHJvdmlkZXJzOiBbR3JpZFBsdWdpbl0sXG59KVxuZXhwb3J0IGNsYXNzIFRoZW1lT3ZlcmxheURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgcGx1Z2luOiBHcmlkUGx1Z2luLFxuXHRcdHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcblx0XHRwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB7IG1vZGVsIH0gPSB0aGlzLnBsdWdpbjtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShlbGVtZW50KTtcbiAgICBsZXQgb3ZlcmxheUNvbnRhaW5lcjogYW55ID0gbnVsbDtcblxuICAgIHdoaWxlIChwYXJlbnQgJiYgIShwYXJlbnQuaWQgJiYgcGFyZW50LmlkLnN0YXJ0c1dpdGgoJ2Nkay1vdmVybGF5JykpKSB7XG4gICAgICBwYXJlbnQgPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUocGFyZW50KTtcbiAgICAgIGlmIChwYXJlbnQubm9kZU5hbWUgPT09ICdCT0RZJykge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGFyZW50Lm5vZGVOYW1lICE9PSAnQk9EWScpIHtcbiAgICAgIG92ZXJsYXlDb250YWluZXIgPSBwYXJlbnQ7XG4gICAgfVxuXG4gICAgaWYgKCFvdmVybGF5Q29udGFpbmVyKSB7XG4gICAgICB0aHJvdyBuZXcgR3JpZEVycm9yKFxuICAgICAgICAndGhlbWUtb3ZlcmxheS5kaXJlY3RpdmUnLFxuICAgICAgICAnY2RrLW92ZXJsYXkgY29udGFpbmVyIGlzIG5vdCBmb3VuZCcsXG4gICAgICApO1xuICAgIH1cblxuICAgIG1vZGVsLnN0eWxlKCkuY2xhc3NMaXN0LmZvckVhY2goY3NzQ2xhc3MgPT4ge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhvdmVybGF5Q29udGFpbmVyLCBjc3NDbGFzcyk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==