@dotglitch/ngx-common 1.1.48 → 1.1.49
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.
|
@@ -22,9 +22,15 @@ export declare class MenuDirective {
|
|
|
22
22
|
* Configuration for opening the app menu
|
|
23
23
|
*/
|
|
24
24
|
config: MenuOptions;
|
|
25
|
+
private triggers;
|
|
25
26
|
constructor(dialog: MatDialog, viewContainer: ViewContainerRef);
|
|
27
|
+
ngOnInit(): void;
|
|
28
|
+
ngOnChanges(): void;
|
|
26
29
|
ngAfterViewInit(): void;
|
|
27
30
|
openMenu(evt: PointerEvent, items?: MenuItem[], keepOpen?: boolean): Promise<[value: any]>;
|
|
31
|
+
onCtxMenu(e: any): void;
|
|
32
|
+
onClick(e: any): void;
|
|
33
|
+
onDblClick(e: any): void;
|
|
28
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuDirective, never>;
|
|
29
35
|
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuDirective, "[ngx-contextmenu],[ngx-menu]", never, { "data": { "alias": "ngx-menu-context"; "required": false; }; "ctxMenuItems": { "alias": "ngx-contextmenu"; "required": false; }; "menuItems": { "alias": "ngx-menu"; "required": false; }; "config": { "alias": "ngx-menu-config"; "required": false; }; }, {}, never, never, true, never>;
|
|
30
36
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive, Input } from '@angular/core';
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
2
|
import { MatDialog } from '@angular/material/dialog';
|
|
3
3
|
import { getPosition } from './utils';
|
|
4
4
|
import { MenuComponent, calcMenuItemBounds } from '../components/menu/menu.component';
|
|
@@ -14,39 +14,47 @@ export class MenuDirective {
|
|
|
14
14
|
* Configuration for opening the app menu
|
|
15
15
|
*/
|
|
16
16
|
this.config = {};
|
|
17
|
+
this.triggers = [];
|
|
17
18
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (this.
|
|
23
|
-
|
|
24
|
-
e.preventDefault();
|
|
25
|
-
this.openMenu(e, this.ctxMenuItems, true);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
if (this.menuItems?.length > 0) {
|
|
29
|
-
if (!this.config?.trigger) {
|
|
30
|
-
el.addEventListener('click', (e) => {
|
|
31
|
-
this.openMenu(e, this.menuItems, true);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
const triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
|
|
36
|
-
triggers.forEach(t => {
|
|
37
|
-
if (["contextmenu", "click"].includes(t)) {
|
|
38
|
-
el.addEventListener(t, (e) => {
|
|
39
|
-
e.preventDefault();
|
|
40
|
-
this.openMenu(e, this.ctxMenuItems, true);
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
el.addEventListener(t, this.openMenu.bind(this));
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.ngOnChanges();
|
|
21
|
+
}
|
|
22
|
+
ngOnChanges() {
|
|
23
|
+
if (this.config.trigger) {
|
|
24
|
+
this.triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
|
|
48
25
|
}
|
|
49
26
|
}
|
|
27
|
+
ngAfterViewInit() {
|
|
28
|
+
// const el = this.viewContainer.element.nativeElement as HTMLElement;
|
|
29
|
+
// // Automatically attach context menu items to
|
|
30
|
+
// // the contextmenu event
|
|
31
|
+
// if (this.ctxMenuItems) {
|
|
32
|
+
// el.addEventListener('contextmenu', (e) => {
|
|
33
|
+
// e.preventDefault();
|
|
34
|
+
// this.openMenu(e as any, this.ctxMenuItems, true);
|
|
35
|
+
// });
|
|
36
|
+
// }
|
|
37
|
+
// if (this.menuItems?.length > 0) {
|
|
38
|
+
// if (!this.config?.trigger) {
|
|
39
|
+
// el.addEventListener('click', (e) => {
|
|
40
|
+
// this.openMenu(e as any, this.menuItems, true);
|
|
41
|
+
// });
|
|
42
|
+
// }
|
|
43
|
+
// else {
|
|
44
|
+
// triggers.forEach(t => {
|
|
45
|
+
// if (["contextmenu", "click"].includes(t)) {
|
|
46
|
+
// el.addEventListener(t, (e) => {
|
|
47
|
+
// e.preventDefault();
|
|
48
|
+
// this.openMenu(e as any, this.ctxMenuItems, true);
|
|
49
|
+
// });
|
|
50
|
+
// }
|
|
51
|
+
// else {
|
|
52
|
+
// el.addEventListener(t, this.openMenu.bind(this));
|
|
53
|
+
// }
|
|
54
|
+
// });
|
|
55
|
+
// }
|
|
56
|
+
// }
|
|
57
|
+
}
|
|
50
58
|
async openMenu(evt, items = this.menuItems, keepOpen = false) {
|
|
51
59
|
const el = this.viewContainer.element.nativeElement;
|
|
52
60
|
el.classList.add("ngx-menu-open");
|
|
@@ -63,10 +71,31 @@ export class MenuDirective {
|
|
|
63
71
|
throw ex;
|
|
64
72
|
});
|
|
65
73
|
}
|
|
74
|
+
onCtxMenu(e) {
|
|
75
|
+
if (this.ctxMenuItems || this.triggers.includes("contextmenu")) {
|
|
76
|
+
e.preventDefault();
|
|
77
|
+
this.openMenu(e, this.ctxMenuItems, true);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
onClick(e) {
|
|
81
|
+
if (this.menuItems &&
|
|
82
|
+
(this.triggers.length == 0 ||
|
|
83
|
+
this.triggers.includes("click"))) {
|
|
84
|
+
e.preventDefault();
|
|
85
|
+
this.openMenu(e, this.menuItems, true);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
onDblClick(e) {
|
|
89
|
+
if (this.menuItems && this.triggers.length == 0 ||
|
|
90
|
+
this.menuItems && this.triggers.includes("dblclick")) {
|
|
91
|
+
e.preventDefault();
|
|
92
|
+
this.openMenu(e, this.menuItems, true);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
66
95
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MenuDirective, deps: [{ token: i1.MatDialog }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
67
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: MenuDirective, isStandalone: true, selector: "[ngx-contextmenu],[ngx-menu]", inputs: { data: ["ngx-menu-context", "data"], ctxMenuItems: ["ngx-contextmenu", "ctxMenuItems"], menuItems: ["ngx-menu", "menuItems"], config: ["ngx-menu-config", "config"] }, providers: [
|
|
96
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: MenuDirective, isStandalone: true, selector: "[ngx-contextmenu],[ngx-menu]", inputs: { data: ["ngx-menu-context", "data"], ctxMenuItems: ["ngx-contextmenu", "ctxMenuItems"], menuItems: ["ngx-menu", "menuItems"], config: ["ngx-menu-config", "config"] }, host: { listeners: { "contextmenu": "onCtxMenu($event)", "click": "onClick($event)", "dblclick": "onDblClick($event)" } }, providers: [
|
|
68
97
|
MatDialog
|
|
69
|
-
], ngImport: i0 }); }
|
|
98
|
+
], usesOnChanges: true, ngImport: i0 }); }
|
|
70
99
|
}
|
|
71
100
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MenuDirective, decorators: [{
|
|
72
101
|
type: Directive,
|
|
@@ -89,6 +118,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
89
118
|
}], config: [{
|
|
90
119
|
type: Input,
|
|
91
120
|
args: ["ngx-menu-config"]
|
|
121
|
+
}], onCtxMenu: [{
|
|
122
|
+
type: HostListener,
|
|
123
|
+
args: ["contextmenu", ['$event']]
|
|
124
|
+
}], onClick: [{
|
|
125
|
+
type: HostListener,
|
|
126
|
+
args: ["click", ['$event']]
|
|
127
|
+
}], onDblClick: [{
|
|
128
|
+
type: HostListener,
|
|
129
|
+
args: ["dblclick", ['$event']]
|
|
92
130
|
}] } });
|
|
93
131
|
// Helper to open the menu without using the directive.
|
|
94
132
|
export const openMenu = async (dialog, menuItems, data, evt, config = {}, el) => {
|
|
@@ -118,4 +156,4 @@ export const openMenu = async (dialog, menuItems, data, evt, config = {}, el) =>
|
|
|
118
156
|
})
|
|
119
157
|
.afterClosed());
|
|
120
158
|
};
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRDLE9BQU8sRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN0RixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVN0QyxNQUFNLE9BQU8sYUFBYTtJQXVCdEIsWUFDWSxNQUFpQixFQUNqQixhQUErQjtRQUQvQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQVAzQzs7V0FFRztRQUN1QixXQUFNLEdBQWdCLEVBQUUsQ0FBQztJQUsvQyxDQUFDO0lBRUwsZUFBZTtRQUNYLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGFBQTRCLENBQUM7UUFFbkUsNkNBQTZDO1FBQzdDLHdCQUF3QjtRQUN4QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3JDLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNyRCxDQUFDLENBQUMsQ0FBQztR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VUFBVSxFQUFFLENBQUMsVUFBVSxFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDL0UsUUFBUSxFQUFFLEtBQUs7UUFDZixhQUFhLEVBQUUsbUJBQW1CO0tBQ3JDLENBQUM7U0FDRCxXQUFXLEVBQUUsQ0FBQyxDQUFDO0FBQ3hCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFZpZXdDb250YWluZXJSZWYsIFNlY3VyaXR5Q29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IGdldFBvc2l0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBNZW51SXRlbSwgTWVudU9wdGlvbnMgfSBmcm9tICcuLi90eXBlcy9tZW51JztcbmltcG9ydCB7IE1lbnVDb21wb25lbnQsIGNhbGNNZW51SXRlbUJvdW5kcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyB1bGlkIH0gZnJvbSAndWxpZHgnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbbmd4LWNvbnRleHRtZW51XSxbbmd4LW1lbnVdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTWF0RGlhbG9nXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVEaXJlY3RpdmUge1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgcmVwcmVzZW50aW5nIHRoZSBpdGVtIHRoZSBtZW51IHdhcyBvcGVuZWQgZm9yLlxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neC1tZW51LWNvbnRleHRcIikgZGF0YTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGl0ZW1zIHRoYXQgd2lsbCBiZSBib3VuZCB0byB0aGUgY29udGV4dCBtZW51LlxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neC1jb250ZXh0bWVudVwiKSBjdHhNZW51SXRlbXM6IE1lbnVJdGVtW107XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaXRlbXMgdGhhdCB3aWxsIGJlIGJvdW5kIHRvIHRoZSBtZW51IHRoYXQgcG9wc1xuICAgICAqIHVwIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBlbGVtZW50LlxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neC1tZW51XCIpIG1lbnVJdGVtczogTWVudUl0ZW1bXTtcblxuICAgIC8qKlxuICAgICAqIENvbmZpZ3VyYXRpb24gZm9yIG9wZW5pbmcgdGhlIGFwcCBtZW51XG4gICAgICovXG4gICAgQElucHV0KFwibmd4LW1lbnUtY29uZmlnXCIpIGNvbmZpZzogTWVudU9wdGlvbnMgPSB7fTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWZcbiAgICApIHsgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBjb25zdCBlbCA9IHRoaXMudmlld0NvbnRhaW5lci5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgLy8gQXV0b21hdGljYWxseSBhdHRhY2ggY29udGV4dCBtZW51IGl0ZW1zIHRvXG4gICAgICAgIC8vIHRoZSBjb250ZXh0bWVudSBldmVudFxuICAgICAgICBpZiAodGhpcy5jdHhNZW51SXRlbXMpIHtcbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgKGUpID0+IHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5vcGVuTWVudShlIGFzIGFueSwgdGhpcy5jdHhNZW51SXRlbXMsIHRydWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5tZW51SXRlbXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5jb25maWc/LnRyaWdnZXIpIHtcbiAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoZSBhcyBhbnksIHRoaXMubWVudUl0ZW1zLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRyaWdnZXJzID0gQXJyYXkuaXNBcnJheSh0aGlzLmNvbmZpZy50cmlnZ2VyKSA/IHRoaXMuY29uZmlnLnRyaWdnZXIgOiBbdGhpcy5jb25maWcudHJpZ2dlcl07XG5cbiAgICAgICAgICAgICAgICB0cmlnZ2Vycy5mb3JFYWNoKHQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoW1wiY29udGV4dG1lbnVcIiwgXCJjbGlja1wiXS5pbmNsdWRlcyh0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcih0LCAoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9wZW5NZW51KGUgYXMgYW55LCB0aGlzLmN0eE1lbnVJdGVtcywgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIodCwgdGhpcy5vcGVuTWVudS5iaW5kKHRoaXMpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgb3Blbk1lbnUoZXZ0OiBQb2ludGVyRXZlbnQsIGl0ZW1zID0gdGhpcy5tZW51SXRlbXMsIGtlZXBPcGVuID0gZmFsc2UpIHtcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLnZpZXdDb250YWluZXIuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoXCJuZ3gtbWVudS1vcGVuXCIpO1xuXG4gICAgICAgIGNvbnN0IGlzQ3R4RXZlbnQgPSBldnQuYnV0dG9uID09IDI7XG5cbiAgICAgICAgY29uc3QgY29uZmlnID0gc3RydWN0dXJlZENsb25lKHRoaXMuY29uZmlnKTtcbiAgICAgICAgY29uZmlnWydfaXNMb2NrZWRPcGVuJ10gPSBrZWVwT3BlbjtcblxuICAgICAgICByZXR1cm4gb3Blbk1lbnUoXG4gICAgICAgICAgICB0aGlzLmRpYWxvZyxcbiAgICAgICAgICAgIGl0ZW1zLFxuICAgICAgICAgICAgdGhpcy5kYXRhLFxuICAgICAgICAgICAgZXZ0LFxuICAgICAgICAgICAgdGhpcy5jb25maWcsXG4gICAgICAgICAgICBpc0N0eEV2ZW50ID8gbnVsbCA6IGVsXG4gICAgICAgIClcbiAgICAgICAgICAgIC50aGVuKCguLi5yZXMpID0+IHtcbiAgICAgICAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKFwibmd4LW1lbnUtb3BlblwiKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXgpID0+IHtcbiAgICAgICAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKFwibmd4LW1lbnUtb3BlblwiKTtcbiAgICAgICAgICAgICAgICB0aHJvdyBleDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cblxuLy8gSGVscGVyIHRvIG9wZW4gdGhlIG1lbnUgd2l0aG91dCB1c2luZyB0aGUgZGlyZWN0aXZlLlxuZXhwb3J0IGNvbnN0IG9wZW5NZW51ID0gYXN5bmMgKFxuICAgIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIG1lbnVJdGVtczogTWVudUl0ZW1bXSxcbiAgICBkYXRhOiBhbnksXG4gICAgZXZ0OiBQb2ludGVyRXZlbnQsXG4gICAgY29uZmlnOiBNZW51T3B0aW9ucyA9IHt9LFxuICAgIGVsPzogSFRNTEVsZW1lbnRcbikgPT4ge1xuICAgIC8vIGNvbnNvbGUubG9nKHsgZGlhbG9nLCBtZW51SXRlbXMsIGRhdGEsIGV2dCwgY29uZmlnLCBlbCB9KTtcblxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIC8vIEFwcGx5IGRlZmF1bHRzLlxuICAgIGlmICghY29uZmlnLmFsaWdubWVudClcbiAgICAgICAgY29uZmlnLmFsaWdubWVudCA9IFwic3RhcnRcIjtcblxuICAgIGNvbnN0IGluaXRpYWxCb3VuZHMgPSBhd2FpdCBjYWxjTWVudUl0ZW1Cb3VuZHMobWVudUl0ZW1zLCBkYXRhKTtcbiAgICBjb25zdCBjb3JkcyA9IGdldFBvc2l0aW9uKGVsIHx8IGV2dCwgY29uZmlnLCBpbml0aWFsQm91bmRzKTtcbiAgICBjb25zdCBzcGVjaWZpY0lkID0gdWxpZCgpO1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICBkaWFsb2cub3BlbihNZW51Q29tcG9uZW50LCB7XG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZGlhbG9nLFxuICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgICAgICAgICAgb3duZXJDb3JkczogZWw/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgICAgICAgICAgIHNlbGZDb3JkczogY29yZHMsXG4gICAgICAgICAgICAgICAgaXRlbXM6IG1lbnVJdGVtcyxcbiAgICAgICAgICAgICAgICBjb25maWc6IGNvbmZpZyxcbiAgICAgICAgICAgICAgICBpZDogc3BlY2lmaWNJZCxcbiAgICAgICAgICAgICAgICB0YXJnZXRCb3VuZHM6IGluaXRpYWxCb3VuZHNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbXCJuZ3gtbWVudVwiLCAnbmd4LScgKyBzcGVjaWZpY0lkXS5jb25jYXQoY29uZmlnPy5jdXN0b21DbGFzcyB8fCBbXSksXG4gICAgICAgICAgICBwb3NpdGlvbjogY29yZHMsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiBcIm5neC1tZW51LWJhY2tkcm9wXCJcbiAgICAgICAgfSlcbiAgICAgICAgLmFmdGVyQ2xvc2VkKCkpO1xufTtcbiJdfQ==
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM3QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFTdEMsTUFBTSxPQUFPLGFBQWE7SUF5QnRCLFlBQ1ksTUFBaUIsRUFDakIsYUFBK0I7UUFEL0IsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFUM0M7O1dBRUc7UUFDdUIsV0FBTSxHQUFnQixFQUFFLENBQUM7UUFFM0MsYUFBUSxHQUFhLEVBQUUsQ0FBQztJQUs1QixDQUFDO0lBRUwsUUFBUTtRQUNKLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVztRQUVQLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNy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QUFHLE1BQU0sa0JBQWtCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hFLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxFQUFFLElBQUksR0FBRyxFQUFFLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUM1RCxNQUFNLFVBQVUsR0FBRyxJQUFJLEVBQUUsQ0FBQztJQUUxQixPQUFPLGNBQWMsQ0FDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7UUFDdkIsSUFBSSxFQUFFO1lBQ0YsTUFBTTtZQUNOLElBQUksRUFBRSxJQUFJO1lBQ1YsVUFBVSxFQUFFLEVBQUUsRUFBRSxxQkFBcUIsRUFBRTtZQUN2QyxTQUFTLEVBQUUsS0FBSztZQUNoQixLQUFLLEVBQUUsU0FBUztZQUNoQixNQUFNLEVBQUUsTUFBTTtZQUNkLEVBQUUsRUFBRSxVQUFVO1lBQ2QsWUFBWSxFQUFFLGFBQWE7U0FDOUI7UUFDRCxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUMvRSxRQUFRLEVBQUUsS0FBSztRQUNmLGFBQWEsRUFBRSxtQkFBbUI7S0FDckMsQ0FBQztTQUNELFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgZ2V0UG9zaXRpb24gfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IE1lbnVJdGVtLCBNZW51T3B0aW9ucyB9IGZyb20gJy4uL3R5cGVzL21lbnUnO1xuaW1wb3J0IHsgTWVudUNvbXBvbmVudCwgY2FsY01lbnVJdGVtQm91bmRzIH0gZnJvbSAnLi4vY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IHVsaWQgfSBmcm9tICd1bGlkeCc7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tuZ3gtY29udGV4dG1lbnVdLFtuZ3gtbWVudV0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBNYXREaWFsb2dcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTWVudURpcmVjdGl2ZSB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSByZXByZXNlbnRpbmcgdGhlIGl0ZW0gdGhlIG1lbnUgd2FzIG9wZW5lZCBmb3IuXG4gICAgICovXG4gICAgQElucHV0KFwibmd4LW1lbnUtY29udGV4dFwiKSBkYXRhOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaXRlbXMgdGhhdCB3aWxsIGJlIGJvdW5kIHRvIHRoZSBjb250ZXh0IG1lbnUuXG4gICAgICovXG4gICAgQElucHV0KFwibmd4LWNvbnRleHRtZW51XCIpIGN0eE1lbnVJdGVtczogTWVudUl0ZW1bXTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBpdGVtcyB0aGF0IHdpbGwgYmUgYm91bmQgdG8gdGhlIG1lbnUgdGhhdCBwb3BzXG4gICAgICogdXAgd2hlbiB0aGUgdXNlciBjbGlja3MgdGhlIGVsZW1lbnQuXG4gICAgICovXG4gICAgQElucHV0KFwibmd4LW1lbnVcIikgbWVudUl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gICAgLyoqXG4gICAgICogQ29uZmlndXJhdGlvbiBmb3Igb3BlbmluZyB0aGUgYXBwIG1lbnVcbiAgICAgKi9cbiAgICBASW5wdXQoXCJuZ3gtbWVudS1jb25maWdcIikgY29uZmlnOiBNZW51T3B0aW9ucyA9IHt9O1xuXG4gICAgcHJpdmF0ZSB0cmlnZ2Vyczogc3RyaW5nW10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWZcbiAgICApIHsgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMubmdPbkNoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcygpIHtcblxuICAgICAgICBpZiAodGhpcy5jb25maWcudHJpZ2dlcikge1xuICAgICAgICAgICAgdGhpcy50cmlnZ2VycyA9IEFycmF5LmlzQXJyYXkodGhpcy5jb25maWcudHJpZ2dlcikgPyB0aGlzLmNvbmZpZy50cmlnZ2VyIDogW3RoaXMuY29uZmlnLnRyaWdnZXJdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICAvLyBjb25zdCBlbCA9IHRoaXMudmlld0NvbnRhaW5lci5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgLy8gLy8gQXV0b21hdGljYWxseSBhdHRhY2ggY29udGV4dCBtZW51IGl0ZW1zIHRvXG4gICAgICAgIC8vIC8vIHRoZSBjb250ZXh0bWVudSBldmVudFxuICAgICAgICAvLyBpZiAodGhpcy5jdHhNZW51SXRlbXMpIHtcbiAgICAgICAgLy8gICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgKGUpID0+IHtcbiAgICAgICAgLy8gICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIC8vICAgICAgICAgdGhpcy5vcGVuTWVudShlIGFzIGFueSwgdGhpcy5jdHhNZW51SXRlbXMsIHRydWUpO1xuICAgICAgICAvLyAgICAgfSk7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAvLyBpZiAodGhpcy5tZW51SXRlbXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgLy8gICAgIGlmICghdGhpcy5jb25maWc/LnRyaWdnZXIpIHtcbiAgICAgICAgLy8gICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChlKSA9PiB7XG4gICAgICAgIC8vICAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoZSBhcyBhbnksIHRoaXMubWVudUl0ZW1zLCB0cnVlKTtcbiAgICAgICAgLy8gICAgICAgICB9KTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gICAgIGVsc2Uge1xuXG4gICAgICAgIC8vICAgICAgICAgdHJpZ2dlcnMuZm9yRWFjaCh0ID0+IHtcbiAgICAgICAgLy8gICAgICAgICAgICAgaWYgKFtcImNvbnRleHRtZW51XCIsIFwiY2xpY2tcIl0uaW5jbHVkZXModCkpIHtcbiAgICAgICAgLy8gICAgICAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIodCwgKGUpID0+IHtcbiAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcGVuTWVudShlIGFzIGFueSwgdGhpcy5jdHhNZW51SXRlbXMsIHRydWUpO1xuICAgICAgICAvLyAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIC8vICAgICAgICAgICAgIH1cbiAgICAgICAgLy8gICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgIC8vICAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKHQsIHRoaXMub3Blbk1lbnUuYmluZCh0aGlzKSk7XG4gICAgICAgIC8vICAgICAgICAgICAgIH1cbiAgICAgICAgLy8gICAgICAgICB9KTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIGFzeW5jIG9wZW5NZW51KGV2dDogUG9pbnRlckV2ZW50LCBpdGVtcyA9IHRoaXMubWVudUl0ZW1zLCBrZWVwT3BlbiA9IGZhbHNlKSB7XG4gICAgICAgIGNvbnN0IGVsID0gdGhpcy52aWV3Q29udGFpbmVyLmVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKFwibmd4LW1lbnUtb3BlblwiKTtcblxuICAgICAgICBjb25zdCBpc0N0eEV2ZW50ID0gZXZ0LmJ1dHRvbiA9PSAyO1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHN0cnVjdHVyZWRDbG9uZSh0aGlzLmNvbmZpZyk7XG4gICAgICAgIGNvbmZpZ1snX2lzTG9ja2VkT3BlbiddID0ga2VlcE9wZW47XG5cbiAgICAgICAgcmV0dXJuIG9wZW5NZW51KFxuICAgICAgICAgICAgdGhpcy5kaWFsb2csXG4gICAgICAgICAgICBpdGVtcyxcbiAgICAgICAgICAgIHRoaXMuZGF0YSxcbiAgICAgICAgICAgIGV2dCxcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLFxuICAgICAgICAgICAgaXNDdHhFdmVudCA/IG51bGwgOiBlbFxuICAgICAgICApXG4gICAgICAgICAgICAudGhlbigoLi4ucmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZShcIm5neC1tZW51LW9wZW5cIik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZShcIm5neC1tZW51LW9wZW5cIik7XG4gICAgICAgICAgICAgICAgdGhyb3cgZXg7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKFwiY29udGV4dG1lbnVcIiwgWyckZXZlbnQnXSlcbiAgICBvbkN0eE1lbnUoZSkge1xuICAgICAgICBpZiAodGhpcy5jdHhNZW51SXRlbXMgfHwgdGhpcy50cmlnZ2Vycy5pbmNsdWRlcyhcImNvbnRleHRtZW51XCIpKSB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLm9wZW5NZW51KGUgYXMgYW55LCB0aGlzLmN0eE1lbnVJdGVtcywgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIiwgWyckZXZlbnQnXSlcbiAgICBvbkNsaWNrKGUpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5tZW51SXRlbXMgJiZcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICB0aGlzLnRyaWdnZXJzLmxlbmd0aCA9PSAwIHx8XG4gICAgICAgICAgICAgICAgdGhpcy50cmlnZ2Vycy5pbmNsdWRlcyhcImNsaWNrXCIpXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5vcGVuTWVudShlIGFzIGFueSwgdGhpcy5tZW51SXRlbXMsIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihcImRibGNsaWNrXCIsIFsnJGV2ZW50J10pXG4gICAgb25EYmxDbGljayhlKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMubWVudUl0ZW1zICYmIHRoaXMudHJpZ2dlcnMubGVuZ3RoID09IDAgfHxcbiAgICAgICAgICAgIHRoaXMubWVudUl0ZW1zICYmIHRoaXMudHJpZ2dlcnMuaW5jbHVkZXMoXCJkYmxjbGlja1wiKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoZSBhcyBhbnksIHRoaXMubWVudUl0ZW1zLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSGVscGVyIHRvIG9wZW4gdGhlIG1lbnUgd2l0aG91dCB1c2luZyB0aGUgZGlyZWN0aXZlLlxuZXhwb3J0IGNvbnN0IG9wZW5NZW51ID0gYXN5bmMgKFxuICAgIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIG1lbnVJdGVtczogTWVudUl0ZW1bXSxcbiAgICBkYXRhOiBhbnksXG4gICAgZXZ0OiBQb2ludGVyRXZlbnQsXG4gICAgY29uZmlnOiBNZW51T3B0aW9ucyA9IHt9LFxuICAgIGVsPzogSFRNTEVsZW1lbnRcbikgPT4ge1xuICAgIC8vIGNvbnNvbGUubG9nKHsgZGlhbG9nLCBtZW51SXRlbXMsIGRhdGEsIGV2dCwgY29uZmlnLCBlbCB9KTtcblxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIC8vIEFwcGx5IGRlZmF1bHRzLlxuICAgIGlmICghY29uZmlnLmFsaWdubWVudClcbiAgICAgICAgY29uZmlnLmFsaWdubWVudCA9IFwic3RhcnRcIjtcblxuICAgIGNvbnN0IGluaXRpYWxCb3VuZHMgPSBhd2FpdCBjYWxjTWVudUl0ZW1Cb3VuZHMobWVudUl0ZW1zLCBkYXRhKTtcbiAgICBjb25zdCBjb3JkcyA9IGdldFBvc2l0aW9uKGVsIHx8IGV2dCwgY29uZmlnLCBpbml0aWFsQm91bmRzKTtcbiAgICBjb25zdCBzcGVjaWZpY0lkID0gdWxpZCgpO1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICBkaWFsb2cub3BlbihNZW51Q29tcG9uZW50LCB7XG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZGlhbG9nLFxuICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgICAgICAgICAgb3duZXJDb3JkczogZWw/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgICAgICAgICAgIHNlbGZDb3JkczogY29yZHMsXG4gICAgICAgICAgICAgICAgaXRlbXM6IG1lbnVJdGVtcyxcbiAgICAgICAgICAgICAgICBjb25maWc6IGNvbmZpZyxcbiAgICAgICAgICAgICAgICBpZDogc3BlY2lmaWNJZCxcbiAgICAgICAgICAgICAgICB0YXJnZXRCb3VuZHM6IGluaXRpYWxCb3VuZHNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbXCJuZ3gtbWVudVwiLCAnbmd4LScgKyBzcGVjaWZpY0lkXS5jb25jYXQoY29uZmlnPy5jdXN0b21DbGFzcyB8fCBbXSksXG4gICAgICAgICAgICBwb3NpdGlvbjogY29yZHMsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiBcIm5neC1tZW51LWJhY2tkcm9wXCJcbiAgICAgICAgfSlcbiAgICAgICAgLmFmdGVyQ2xvc2VkKCkpO1xufTtcbiJdfQ==
|
|
@@ -933,39 +933,47 @@ class MenuDirective {
|
|
|
933
933
|
* Configuration for opening the app menu
|
|
934
934
|
*/
|
|
935
935
|
this.config = {};
|
|
936
|
+
this.triggers = [];
|
|
936
937
|
}
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
if (this.
|
|
942
|
-
|
|
943
|
-
e.preventDefault();
|
|
944
|
-
this.openMenu(e, this.ctxMenuItems, true);
|
|
945
|
-
});
|
|
946
|
-
}
|
|
947
|
-
if (this.menuItems?.length > 0) {
|
|
948
|
-
if (!this.config?.trigger) {
|
|
949
|
-
el.addEventListener('click', (e) => {
|
|
950
|
-
this.openMenu(e, this.menuItems, true);
|
|
951
|
-
});
|
|
952
|
-
}
|
|
953
|
-
else {
|
|
954
|
-
const triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
|
|
955
|
-
triggers.forEach(t => {
|
|
956
|
-
if (["contextmenu", "click"].includes(t)) {
|
|
957
|
-
el.addEventListener(t, (e) => {
|
|
958
|
-
e.preventDefault();
|
|
959
|
-
this.openMenu(e, this.ctxMenuItems, true);
|
|
960
|
-
});
|
|
961
|
-
}
|
|
962
|
-
else {
|
|
963
|
-
el.addEventListener(t, this.openMenu.bind(this));
|
|
964
|
-
}
|
|
965
|
-
});
|
|
966
|
-
}
|
|
938
|
+
ngOnInit() {
|
|
939
|
+
this.ngOnChanges();
|
|
940
|
+
}
|
|
941
|
+
ngOnChanges() {
|
|
942
|
+
if (this.config.trigger) {
|
|
943
|
+
this.triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
|
|
967
944
|
}
|
|
968
945
|
}
|
|
946
|
+
ngAfterViewInit() {
|
|
947
|
+
// const el = this.viewContainer.element.nativeElement as HTMLElement;
|
|
948
|
+
// // Automatically attach context menu items to
|
|
949
|
+
// // the contextmenu event
|
|
950
|
+
// if (this.ctxMenuItems) {
|
|
951
|
+
// el.addEventListener('contextmenu', (e) => {
|
|
952
|
+
// e.preventDefault();
|
|
953
|
+
// this.openMenu(e as any, this.ctxMenuItems, true);
|
|
954
|
+
// });
|
|
955
|
+
// }
|
|
956
|
+
// if (this.menuItems?.length > 0) {
|
|
957
|
+
// if (!this.config?.trigger) {
|
|
958
|
+
// el.addEventListener('click', (e) => {
|
|
959
|
+
// this.openMenu(e as any, this.menuItems, true);
|
|
960
|
+
// });
|
|
961
|
+
// }
|
|
962
|
+
// else {
|
|
963
|
+
// triggers.forEach(t => {
|
|
964
|
+
// if (["contextmenu", "click"].includes(t)) {
|
|
965
|
+
// el.addEventListener(t, (e) => {
|
|
966
|
+
// e.preventDefault();
|
|
967
|
+
// this.openMenu(e as any, this.ctxMenuItems, true);
|
|
968
|
+
// });
|
|
969
|
+
// }
|
|
970
|
+
// else {
|
|
971
|
+
// el.addEventListener(t, this.openMenu.bind(this));
|
|
972
|
+
// }
|
|
973
|
+
// });
|
|
974
|
+
// }
|
|
975
|
+
// }
|
|
976
|
+
}
|
|
969
977
|
async openMenu(evt, items = this.menuItems, keepOpen = false) {
|
|
970
978
|
const el = this.viewContainer.element.nativeElement;
|
|
971
979
|
el.classList.add("ngx-menu-open");
|
|
@@ -982,10 +990,31 @@ class MenuDirective {
|
|
|
982
990
|
throw ex;
|
|
983
991
|
});
|
|
984
992
|
}
|
|
993
|
+
onCtxMenu(e) {
|
|
994
|
+
if (this.ctxMenuItems || this.triggers.includes("contextmenu")) {
|
|
995
|
+
e.preventDefault();
|
|
996
|
+
this.openMenu(e, this.ctxMenuItems, true);
|
|
997
|
+
}
|
|
998
|
+
}
|
|
999
|
+
onClick(e) {
|
|
1000
|
+
if (this.menuItems &&
|
|
1001
|
+
(this.triggers.length == 0 ||
|
|
1002
|
+
this.triggers.includes("click"))) {
|
|
1003
|
+
e.preventDefault();
|
|
1004
|
+
this.openMenu(e, this.menuItems, true);
|
|
1005
|
+
}
|
|
1006
|
+
}
|
|
1007
|
+
onDblClick(e) {
|
|
1008
|
+
if (this.menuItems && this.triggers.length == 0 ||
|
|
1009
|
+
this.menuItems && this.triggers.includes("dblclick")) {
|
|
1010
|
+
e.preventDefault();
|
|
1011
|
+
this.openMenu(e, this.menuItems, true);
|
|
1012
|
+
}
|
|
1013
|
+
}
|
|
985
1014
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MenuDirective, deps: [{ token: i1$1.MatDialog }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
986
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: MenuDirective, isStandalone: true, selector: "[ngx-contextmenu],[ngx-menu]", inputs: { data: ["ngx-menu-context", "data"], ctxMenuItems: ["ngx-contextmenu", "ctxMenuItems"], menuItems: ["ngx-menu", "menuItems"], config: ["ngx-menu-config", "config"] }, providers: [
|
|
1015
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.2", type: MenuDirective, isStandalone: true, selector: "[ngx-contextmenu],[ngx-menu]", inputs: { data: ["ngx-menu-context", "data"], ctxMenuItems: ["ngx-contextmenu", "ctxMenuItems"], menuItems: ["ngx-menu", "menuItems"], config: ["ngx-menu-config", "config"] }, host: { listeners: { "contextmenu": "onCtxMenu($event)", "click": "onClick($event)", "dblclick": "onDblClick($event)" } }, providers: [
|
|
987
1016
|
MatDialog
|
|
988
|
-
], ngImport: i0 }); }
|
|
1017
|
+
], usesOnChanges: true, ngImport: i0 }); }
|
|
989
1018
|
}
|
|
990
1019
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MenuDirective, decorators: [{
|
|
991
1020
|
type: Directive,
|
|
@@ -1008,6 +1037,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
1008
1037
|
}], config: [{
|
|
1009
1038
|
type: Input,
|
|
1010
1039
|
args: ["ngx-menu-config"]
|
|
1040
|
+
}], onCtxMenu: [{
|
|
1041
|
+
type: HostListener,
|
|
1042
|
+
args: ["contextmenu", ['$event']]
|
|
1043
|
+
}], onClick: [{
|
|
1044
|
+
type: HostListener,
|
|
1045
|
+
args: ["click", ['$event']]
|
|
1046
|
+
}], onDblClick: [{
|
|
1047
|
+
type: HostListener,
|
|
1048
|
+
args: ["dblclick", ['$event']]
|
|
1011
1049
|
}] } });
|
|
1012
1050
|
// Helper to open the menu without using the directive.
|
|
1013
1051
|
const openMenu = async (dialog, menuItems, data, evt, config = {}, el) => {
|