ng2-qgrid
Version:
Angular data grid
43 lines • 4.75 kB
JavaScript
import { Directive, ContentChild, EventEmitter, Output, } from '@angular/core';
import { MatMenuTrigger } from '@angular/material/menu';
import { Disposable, Guard } from 'ng2-qgrid';
import * as i0 from "@angular/core";
import * as i1 from "ng2-qgrid";
export class MenuTriggerDirective {
constructor(disposable) {
this.disposable = disposable;
this.close = new EventEmitter();
}
ngAfterViewInit() {
Guard.notNull(this.trigger, 'trigger');
setTimeout(() => this.trigger.openMenu(), 10);
this.disposable.add(this.trigger
.menuClosed
.subscribe(() => {
if (this.close) {
setTimeout(() => this.close.emit(), 10);
}
}));
}
}
MenuTriggerDirective.ɵfac = function MenuTriggerDirective_Factory(t) { return new (t || MenuTriggerDirective)(i0.ɵɵdirectiveInject(i1.Disposable)); };
MenuTriggerDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: MenuTriggerDirective, selectors: [["", "q-grid-menu-trigger", ""]], contentQueries: function MenuTriggerDirective_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
i0.ɵɵcontentQuery(dirIndex, MatMenuTrigger, 7);
} if (rf & 2) {
let _t;
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.trigger = _t.first);
} }, outputs: { close: "q-grid-menu-trigger" }, features: [i0.ɵɵProvidersFeature([Disposable])] });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuTriggerDirective, [{
type: Directive,
args: [{
selector: '[q-grid-menu-trigger]',
providers: [Disposable],
}]
}], function () { return [{ type: i1.Disposable }]; }, { trigger: [{
type: ContentChild,
args: [MatMenuTrigger, { static: true }]
}], close: [{
type: Output,
args: ['q-grid-menu-trigger']
}] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUtdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQU05QyxNQUFNLE9BQU8sb0JBQW9CO0lBSS9CLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGWCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUcvRCxDQUFDO0lBRUQsZUFBZTtRQUNiLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUV2QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDakIsSUFBSSxDQUFDLE9BQU87YUFDVCxVQUFVO2FBQ1YsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDZCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUN6QztRQUNILENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDSixDQUFDOzt3RkFyQlUsb0JBQW9CO3VFQUFwQixvQkFBb0I7b0NBQ2pCLGNBQWM7Ozs7cUZBSGpCLENBQUMsVUFBVSxDQUFDO3VGQUVaLG9CQUFvQjtjQUpoQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQ3hCOzZEQUVpRCxPQUFPO2tCQUF0RCxZQUFZO21CQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFDZixLQUFLO2tCQUFuQyxNQUFNO21CQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgQ29udGVudENoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRNZW51VHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZSwgR3VhcmQgfSBmcm9tICduZzItcWdyaWQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbcS1ncmlkLW1lbnUtdHJpZ2dlcl0nLFxuICBwcm92aWRlcnM6IFtEaXNwb3NhYmxlXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudVRyaWdnZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQENvbnRlbnRDaGlsZChNYXRNZW51VHJpZ2dlciwgeyBzdGF0aWM6IHRydWUgfSkgdHJpZ2dlcjogTWF0TWVudVRyaWdnZXI7XG4gIEBPdXRwdXQoJ3EtZ3JpZC1tZW51LXRyaWdnZXInKSBjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGlzcG9zYWJsZTogRGlzcG9zYWJsZSkge1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIEd1YXJkLm5vdE51bGwodGhpcy50cmlnZ2VyLCAndHJpZ2dlcicpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnRyaWdnZXIub3Blbk1lbnUoKSwgMTApO1xuXG4gICAgdGhpcy5kaXNwb3NhYmxlLmFkZChcbiAgICAgIHRoaXMudHJpZ2dlclxuICAgICAgICAubWVudUNsb3NlZFxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5jbG9zZSkge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNsb3NlLmVtaXQoKSwgMTApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIl19