@worktile/theia 17.3.0 → 17.3.2
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/components/action/prevent-default.mjs +3 -3
- package/esm2022/components/column-resize/column-resize-notifier.mjs +3 -3
- package/esm2022/components/column-resize/column-resize.directive.mjs +3 -3
- package/esm2022/components/column-resize/event-dispatcher.mjs +3 -3
- package/esm2022/components/column-resize/overlay-handle.component.mjs +3 -3
- package/esm2022/components/column-resize/resizing.store.mjs +3 -3
- package/esm2022/components/contextmenu/contextmenu.component.mjs +3 -3
- package/esm2022/components/conversion-hint/conversion-hint.component.mjs +3 -3
- package/esm2022/components/element/element.component.mjs +3 -3
- package/esm2022/components/inline-toolbar/inline-toolbar.component.mjs +3 -3
- package/esm2022/components/listbox/listbox.mjs +9 -9
- package/esm2022/components/plugin-menu/plugin-menu.component.mjs +18 -4
- package/esm2022/components/table-select/table-select.component.mjs +3 -3
- package/esm2022/components/template/template.component.mjs +3 -3
- package/esm2022/components/text/text.component.mjs +3 -3
- package/esm2022/components/toolbar/toolbar.component.mjs +3 -3
- package/esm2022/components/toolbar-dropdown/toolbar-dropdown.component.mjs +3 -3
- package/esm2022/components/toolbar-group/toolbar-group.component.mjs +3 -3
- package/esm2022/components/toolbar-item/toolbar-item.component.mjs +3 -3
- package/esm2022/core/toolbar-item/base-toolbar-item.mjs +6 -6
- package/esm2022/core/utils/plugin-menu.mjs +5 -8
- package/esm2022/editor.component.mjs +3 -3
- package/esm2022/editor.module.mjs +4 -4
- package/esm2022/interfaces/view-base.mjs +3 -3
- package/esm2022/pipes.mjs +9 -9
- package/esm2022/plugins/blockquote/blockquote.component.mjs +3 -3
- package/esm2022/plugins/code/code.component.mjs +15 -10
- package/esm2022/plugins/color/toolbar-item.component.mjs +3 -3
- package/esm2022/plugins/hr/hr.component.mjs +3 -3
- package/esm2022/plugins/image/image.component.mjs +3 -3
- package/esm2022/plugins/inline-code/inline-code.component.mjs +3 -3
- package/esm2022/plugins/link/edit/link-edit.component.mjs +3 -3
- package/esm2022/plugins/link/hover/link-hover.component.mjs +3 -3
- package/esm2022/plugins/link/link.component.mjs +6 -6
- package/esm2022/plugins/list/components/bulleted-list.component.mjs +3 -3
- package/esm2022/plugins/list/components/list-item.component.mjs +3 -3
- package/esm2022/plugins/list/components/numbered-list.component.mjs +3 -3
- package/esm2022/plugins/mention/suggestion.component.mjs +3 -3
- package/esm2022/plugins/quick-insert/components/quick-insert.component.mjs +3 -3
- package/esm2022/plugins/quick-insert/quick-insert.plugin.mjs +3 -1
- package/esm2022/plugins/table/components/insert-mark/insert-mark.component.mjs +3 -3
- package/esm2022/plugins/table/components/row/row.component.mjs +3 -3
- package/esm2022/plugins/table/components/table.component.mjs +3 -3
- package/esm2022/plugins/table/components/td/td.component.mjs +3 -3
- package/esm2022/plugins/table/components/toolbar/table-options.component.mjs +3 -3
- package/esm2022/plugins/table/components/toolbar/table-toolbar.component.mjs +3 -3
- package/esm2022/plugins/table/table.pipe.mjs +9 -9
- package/esm2022/plugins/table/table.service.mjs +3 -3
- package/esm2022/plugins/table/table.store.mjs +3 -3
- package/esm2022/plugins/table/toolbar-item.component.mjs +3 -3
- package/esm2022/plugins/todo-item/todo-item.component.mjs +3 -3
- package/esm2022/plugins/vertical-align/toolbar-item.component.mjs +3 -3
- package/esm2022/services/context.service.mjs +3 -3
- package/esm2022/services/table-contextmenu.service.mjs +3 -3
- package/esm2022/services/toolbar.service.mjs +3 -3
- package/esm2022/test/basic/basic.component.mjs +3 -3
- package/esm2022/test/faker/tethys-icon-faker.mjs +3 -3
- package/fesm2022/worktile-theia.mjs +220 -203
- package/fesm2022/worktile-theia.mjs.map +1 -1
- package/interfaces/editor.d.ts +3 -3
- package/package.json +1 -1
- package/plugins/table/components/table.component.d.ts +1 -1
|
@@ -4,10 +4,10 @@ export class ThePreventDefaultDirective {
|
|
|
4
4
|
mousedown(event) {
|
|
5
5
|
event.preventDefault();
|
|
6
6
|
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ThePreventDefaultDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ThePreventDefaultDirective, isStandalone: true, selector: "[thePreventDefault]", host: { listeners: { "mousedown": "mousedown($event)" } }, exportAs: ["thePreventDefault"], ngImport: i0 }); }
|
|
9
9
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ThePreventDefaultDirective, decorators: [{
|
|
11
11
|
type: Directive,
|
|
12
12
|
args: [{
|
|
13
13
|
selector: '[thePreventDefault]',
|
|
@@ -22,10 +22,10 @@ export class ColumnResizeNotifierSource {
|
|
|
22
22
|
/** Triggers a resize action. */
|
|
23
23
|
this.triggerResize = new Subject();
|
|
24
24
|
}
|
|
25
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
26
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizeNotifierSource, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
26
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizeNotifierSource }); }
|
|
27
27
|
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizeNotifierSource, decorators: [{
|
|
29
29
|
type: Injectable
|
|
30
30
|
}] });
|
|
31
31
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXJlc2l6ZS1ub3RpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb21wb25lbnRzL2NvbHVtbi1yZXNpemUvY29sdW1uLXJlc2l6ZS1ub3RpZmllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBd0IvQjs7O0dBR0c7QUFFSCxNQUFNLE9BQU8sMEJBQTBCO0lBRHZDO1FBRUksb0RBQW9EO1FBQzNDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQW9CLENBQUM7UUFFMUQsc0NBQXNDO1FBQzdCLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUU1QyxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7UUFFbkQsZ0NBQWdDO1FBQ3ZCLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQW9CLENBQUM7S0FDNUQ7OEdBWFksMEJBQTBCO2tIQUExQiwwQkFBMEI7OzJGQUExQiwwQkFBMEI7a0JBRHRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG4vKiogSW5kaWNhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29sdW1uU2l6ZSB7XG4gICAgLyoqIFRoZSBJRC9uYW1lIG9mIHRoZSBjb2x1bW4sIGFzIGRlZmluZWQgaW4gQ2RrQ29sdW1uRGVmLiAqL1xuICAgIHJlYWRvbmx5IHRhYmxlQ2VsbDogSFRNTEVsZW1lbnQ7XG5cbiAgICAvKiogVGhlIHdpZHRoIC8gaGVpZ2h0IGluIHBpeGVscyBvZiB0aGUgY29sdW1uIC8gcm93LiAqL1xuICAgIHJlYWRvbmx5IGRlbHRhU2l6ZT86IG51bWJlcjtcblxuICAgIC8qKiBUaGUgd2lkdGggLyBoZWlnaHQgaW4gcGl4ZWxzIG9mIHRoZSBjb2x1bW4gLyByb3cgcHJpb3IgdG8gdGhpcyB1cGRhdGUsIGlmIGtub3duLiAqL1xuICAgIHJlYWRvbmx5IHByZXZpb3VzU2l6ZT86IG51bWJlcjtcbn1cblxuLyoqIEludGVyZmFjZSBkZXNjcmliaW5nIGNvbHVtbiBzaXplIGNoYW5nZXMuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbHVtblNpemVBY3Rpb24gZXh0ZW5kcyBDb2x1bW5TaXplIHtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSByZXNpemUgYWN0aW9uIHNob3VsZCBiZSBhcHBsaWVkIGluc3RhbnRhbmVvdXNseS4gRmFsc2UgZm9yIGV2ZW50cyB0cmlnZ2VyZWQgZHVyaW5nXG4gICAgICogYSBVSS10cmlnZ2VyZWQgcmVzaXplIChzdWNoIGFzIHdpdGggdGhlIG1vdXNlKSB1bnRpbCB0aGUgbW91c2UgYnV0dG9uIGlzIHJlbGVhc2VkLiBUcnVlXG4gICAgICogZm9yIGFsbCBwcm9ncmFtYXRpY2FsbHkgdHJpZ2dlcmVkIHJlc2l6ZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY29tcGxldGVJbW1lZGlhdGVseT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogT3JpZ2luYXRpbmcgc291cmNlIG9mIGNvbHVtbiByZXNpemUgZXZlbnRzIHdpdGhpbiBhIHRhYmxlLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29sdW1uUmVzaXplTm90aWZpZXJTb3VyY2Uge1xuICAgIC8qKiBFbWl0cyB3aGVuIGFuIGluLXByb2dyZXNzIHJlc2l6ZSBpcyBjYW5jZWxlZC4gKi9cbiAgICByZWFkb25seSByZXNpemVDYW5jZWxlZCA9IG5ldyBTdWJqZWN0PENvbHVtblNpemVBY3Rpb24+KCk7XG5cbiAgICAvKiogRW1pdHMgd2hlbiBhIHJlc2l6ZSBpcyBhcHBsaWVkLiAqL1xuICAgIHJlYWRvbmx5IHJlc2l6ZUNvbXBsZXRlZCA9IG5ldyBTdWJqZWN0PENvbHVtblNpemU+KCk7XG5cbiAgICByZWFkb25seSByZXNpemVTdGFydGVkID0gbmV3IFN1YmplY3Q8Q29sdW1uU2l6ZT4oKTtcblxuICAgIC8qKiBUcmlnZ2VycyBhIHJlc2l6ZSBhY3Rpb24uICovXG4gICAgcmVhZG9ubHkgdHJpZ2dlclJlc2l6ZSA9IG5ldyBTdWJqZWN0PENvbHVtblNpemVBY3Rpb24+KCk7XG59XG4iXX0=
|
|
@@ -108,10 +108,10 @@ export class TheColumnResizeDirective {
|
|
|
108
108
|
this.destroyed.next();
|
|
109
109
|
this.destroyed.complete();
|
|
110
110
|
}
|
|
111
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
112
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
111
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheColumnResizeDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.TableCellEventDispatcher }, { token: i2.ColumnResizeNotifierSource }, { token: THE_TABLE_COMPONENT_TOKEN }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
112
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TheColumnResizeDirective, isStandalone: true, selector: "div[theColumnResize]", ngImport: i0 }); }
|
|
113
113
|
}
|
|
114
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
114
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheColumnResizeDirective, decorators: [{
|
|
115
115
|
type: Directive,
|
|
116
116
|
args: [{
|
|
117
117
|
selector: 'div[theColumnResize]',
|
|
@@ -47,10 +47,10 @@ export class TableCellEventDispatcher {
|
|
|
47
47
|
complete: () => observer.complete()
|
|
48
48
|
}));
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
51
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TableCellEventDispatcher, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TableCellEventDispatcher }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TableCellEventDispatcher, decorators: [{
|
|
54
54
|
type: Injectable
|
|
55
55
|
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
56
56
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb21wb25lbnRzL2NvbHVtbi1yZXNpemUvZXZlbnQtZGlzcGF0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQTRCLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBTyxNQUFNLGdCQUFnQixDQUFDOztBQUV4RixNQUFNLENBQU4sSUFBWSxRQUtYO0FBTEQsV0FBWSxRQUFRO0lBQ2hCLHVCQUFXLENBQUE7SUFDWCwyQkFBZSxDQUFBO0lBQ2YsNkJBQWlCLENBQUE7SUFDakIseUJBQWEsQ0FBQTtBQUNqQixDQUFDLEVBTFcsUUFBUSxLQUFSLFFBQVEsUUFLbkI7QUFDRCxNQUFNLE9BQU8sZUFBZTtDQUczQjtBQUdELE1BQU0sT0FBTyx3QkFBd0I7SUFLakMsWUFBNkIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFKbEMscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQTBCLENBQUM7UUFFekQsK0JBQTBCLEdBQUcsSUFBSSxPQUFPLEVBQTBCLENBQUM7UUFJbkUscUNBQWdDLEdBQUcsYUFBYSxDQUNyRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLEVBQ25FLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FDaEYsQ0FBQyxJQUFJLENBQ0YsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHdDQUF3QztRQUNqRCxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxFQUM3QyxvQkFBb0IsRUFBRSxFQUN0QixLQUFLLEVBQUUsQ0FDVixDQUFDO1FBRWUseUNBQW9DLEdBQUcsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUV2SCxrQkFBYSxHQUFtQixJQUFJLENBQUM7UUFDckMsdUJBQWtCLEdBQXVDLElBQUksQ0FBQztJQWZ4QixDQUFDO0lBaUIvQzs7O09BR0c7SUFDSCxnQ0FBZ0MsQ0FBQyxJQUFhO1FBQzFDLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLElBQUksQ0FDcEUsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUNkLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQzNDLE9BQU8sV0FBVyxDQUFDO2dCQUN2QixDQUFDO3FCQUFNLENBQUM7b0JBQ0osT0FBTyxJQUFJLENBQUM7Z0JBQ2hCLENBQUM7WUFDTCxDQUFDLENBQUMsRUFDRixvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUNyRyxLQUFLLEVBQUUsQ0FDVixDQUFDO1FBQ04sQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLGtCQUFtQixDQUFDO0lBQ3BDLENBQUM7SUFFTyxVQUFVO1FBQ2QsT0FBTyxDQUFDLE1BQXFCLEVBQUUsRUFBRSxDQUM3QixJQUFJLFVBQVUsQ0FBSSxRQUFRLENBQUMsRUFBRSxDQUN6QixNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUNqQyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTtTQUN0QyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7OEdBdERRLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb24sIE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBzaGFyZSwgbWFwLCBzdGFydFdpdGgsIHNraXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGVudW0gUG9zaXRpb24ge1xuICAgIHRvcCA9ICd0b3AnLFxuICAgIHJpZ2h0ID0gJ3JpZ2h0JyxcbiAgICBib3R0b20gPSAnYm90dG9tJyxcbiAgICBsZWZ0ID0gJ2xlZnQnXG59XG5leHBvcnQgY2xhc3MgSG92ZXJlZENlbGxJbmZvIHtcbiAgICBjZWxsOiBIVE1MVGFibGVDZWxsRWxlbWVudDtcbiAgICBwb3NpdGlvbjogUG9zaXRpb247XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxFdmVudERpc3BhdGNoZXIge1xuICAgIHJlYWRvbmx5IHRhYmxlQ2VsbEhvdmVyZWQgPSBuZXcgU3ViamVjdDxIb3ZlcmVkQ2VsbEluZm8gfCBudWxsPigpO1xuXG4gICAgcmVhZG9ubHkgb3ZlcmxheUhhbmRsZUFjdGl2ZUZvckNlbGwgPSBuZXcgU3ViamVjdDxIb3ZlcmVkQ2VsbEluZm8gfCBudWxsPigpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSkge31cblxuICAgIHJlYWRvbmx5IHRhYmxlQ2VsbEhvdmVyZWRPckFjdGl2ZURpc3RpbmN0ID0gY29tYmluZUxhdGVzdChcbiAgICAgICAgdGhpcy50YWJsZUNlbGxIb3ZlcmVkLnBpcGUoc3RhcnRXaXRoKG51bGwpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKSxcbiAgICAgICAgdGhpcy5vdmVybGF5SGFuZGxlQWN0aXZlRm9yQ2VsbC5waXBlKHN0YXJ0V2l0aChudWxsKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICApLnBpcGUoXG4gICAgICAgIHNraXAoMSksIC8vIElnbm9yZSBpbml0aWFsIFtudWxsLCBudWxsXSBlbWlzc2lvbi5cbiAgICAgICAgbWFwKChbaG92ZXJlZCwgYWN0aXZlXSkgPT4gYWN0aXZlIHx8IGhvdmVyZWQpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICBzaGFyZSgpXG4gICAgKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlQ2VsbEhvdmVyZWREaXN0aW5jdFJlZW50ZXJab25lID0gdGhpcy50YWJsZUNlbGxIb3ZlcmVkT3JBY3RpdmVEaXN0aW5jdC5waXBlKHRoaXMuX2VudGVyWm9uZSgpLCBzaGFyZSgpKTtcblxuICAgIHByaXZhdGUgX2xhc3RTZWVuQ2VsbDogRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgX2xhc3RTZWVuQ2VsbEhvdmVyOiBPYnNlcnZhYmxlPEhvdmVyZWRDZWxsSW5mbz4gfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIEVtaXRzIHdoZXRoZXIgdGhlIHNwZWNpZmllZCByb3cgc2hvdWxkIHNob3cgaXRzIG92ZXJsYXkgY29udHJvbHMuXG4gICAgICogRW1pc3Npb24gb2NjdXJzIHdpdGhpbiB0aGUgTmdab25lLlxuICAgICAqL1xuICAgIHJlc2l6ZU92ZXJsYXlWaXNpYmxlRm9yVGFibGVDZWxsKGNlbGw6IEVsZW1lbnQpOiBPYnNlcnZhYmxlPEhvdmVyZWRDZWxsSW5mbz4ge1xuICAgICAgICBpZiAoY2VsbCAhPT0gdGhpcy5fbGFzdFNlZW5DZWxsKSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0U2VlbkNlbGwgPSBjZWxsO1xuICAgICAgICAgICAgdGhpcy5fbGFzdFNlZW5DZWxsSG92ZXIgPSB0aGlzLl90YWJsZUNlbGxIb3ZlcmVkRGlzdGluY3RSZWVudGVyWm9uZS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChob3ZlcmVkQ2VsbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChob3ZlcmVkQ2VsbCAmJiBob3ZlcmVkQ2VsbC5jZWxsID09PSBjZWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaG92ZXJlZENlbGw7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB4ID09PSB5IHx8ICh4ICYmIHkgJiYgeC5jZWxsID09PSB5LmNlbGwgJiYgeC5wb3NpdGlvbiA9PT0geS5wb3NpdGlvbikpLFxuICAgICAgICAgICAgICAgIHNoYXJlKClcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fbGFzdFNlZW5DZWxsSG92ZXIhO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2VudGVyWm9uZTxUPigpOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICAgICAgICByZXR1cm4gKHNvdXJjZTogT2JzZXJ2YWJsZTxUPikgPT5cbiAgICAgICAgICAgIG5ldyBPYnNlcnZhYmxlPFQ+KG9ic2VydmVyID0+XG4gICAgICAgICAgICAgICAgc291cmNlLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgICAgIG5leHQ6IHZhbHVlID0+IHRoaXMubmdab25lLnJ1bigoKSA9PiBvYnNlcnZlci5uZXh0KHZhbHVlKSksXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiBlcnIgPT4gb2JzZXJ2ZXIuZXJyb3IoZXJyKSxcbiAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6ICgpID0+IG9ic2VydmVyLmNvbXBsZXRlKClcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -126,10 +126,10 @@ export class TheColumnResizeOverlayHandle {
|
|
|
126
126
|
this.resizeNotifier.resizeStarted.next(sizeMessage);
|
|
127
127
|
});
|
|
128
128
|
}
|
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
130
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
129
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheColumnResizeOverlayHandle, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.ResizeRef }, { token: i2.TableCellEventDispatcher }, { token: DOCUMENT }, { token: i3.ColumnResizeNotifierSource }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
130
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheColumnResizeOverlayHandle, isStandalone: true, selector: "ng-component", host: { classAttribute: "the-table-resize-overlay-thumb" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
131
131
|
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheColumnResizeOverlayHandle, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
134
|
args: [{
|
|
135
135
|
host: { class: 'the-table-resize-overlay-thumb' },
|
|
@@ -83,10 +83,10 @@ export class ColumnResizingStore {
|
|
|
83
83
|
popCol() {
|
|
84
84
|
this.resizeCols.pop();
|
|
85
85
|
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
87
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizingStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
87
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizingStore }); }
|
|
88
88
|
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ColumnResizingStore, decorators: [{
|
|
90
90
|
type: Injectable
|
|
91
91
|
}], ctorParameters: () => [] });
|
|
92
92
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXppbmcuc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy9jb2x1bW4tcmVzaXplL3Jlc2l6aW5nLnN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUcvRixNQUFNLE9BQU8sbUJBQW1CO0lBQzVCO1FBQ0ksSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUtELGdCQUFnQixDQUFDLFVBQStCO1FBQzVDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDakUsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsZUFBZSxDQUFDLElBQTJCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNsRSxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJ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O1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQTVGUSxtQkFBbUI7a0hBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvZXJjZUNzc1BpeGVsVmFsdWUgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlUGl4ZWxzRnJvbUNzc1ZhbHVlLCBnZXRDb2xzVG90YWxXaWR0aCwgZ2V0RWxlbWVudFdpZHRoIH0gZnJvbSAnLi4vLi4vdXRpbHMvZG9tJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbHVtblJlc2l6aW5nU3RvcmUge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLnJlc2l6ZUNvbHMgPSBbXTtcbiAgICB9XG4gICAgcHJpdmF0ZSBkaXJlY3Rpb246ICdsZWZ0JyB8ICdyaWdodCcgfCAndG9wJyB8ICdib3R0b20nO1xuICAgIHByaXZhdGUgcmVzaXplQ29sczogeyBjb2xFbGVtZW50OiBIVE1MVGFibGVDb2xFbGVtZW50OyBiYXNlV2lkdGg6IG51bWJlciB9W107XG4gICAgcHJpdmF0ZSB0YWJsZUNvbHM6IHsgY29sczogSFRNTFRhYmxlQ29sRWxlbWVudFtdOyBiYXNlV2lkdGg6IG51bWJlciB9O1xuXG4gICAgc3RvcmVSZXNpemluZ0NvbChjb2xFbGVtZW50OiBIVE1MVGFibGVDb2xFbGVtZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZUNvbHMuc29tZShjYWNoZSA9PiBjYWNoZS5jb2xFbGVtZW50ID09PSBjb2xFbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVzaXplQ29scy5wdXNoKHsgY29sRWxlbWVudCwgYmFzZVdpZHRoOiBnZXRFbGVtZW50V2lkdGgoY29sRWxlbWVudCkgfSk7XG4gICAgfVxuXG4gICAgc3RvcmVUYWJsZVdpZHRoKGNvbHM6IEhUTUxUYWJsZUNvbEVsZW1lbnRbXSkge1xuICAgICAgICBpZiAoIXRoaXMudGFibGVDb2xzKSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlQ29scyA9IHsgY29scywgYmFzZVdpZHRoOiBnZXRDb2xzVG90YWxXaWR0aChjb2xzKSB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xlYW5SZXNpemluZygpIHtcbiAgICAgICAgdGhpcy50YWJsZUNvbHMgPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZUNvbHMgPSBbXTtcbiAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSBudWxsO1xuICAgIH1cblxuICAgIHJlc3RvcmVMZWZ0Q29scyhkZWx0YVg6IG51bWJlcikge1xuICAgICAgICBsZXQgaW5kZXggPSB0aGlzLnJlc2l6ZUNvbHMubGVuZ3RoIC0gMTtcbiAgICAgICAgd2hpbGUgKGluZGV4ID49IDAgJiYgZGVsdGFYID4gMCkge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFdpZHRoID0gY29lcmNlUGl4ZWxzRnJvbUNzc1ZhbHVlKHRoaXMucmVzaXplQ29sc1tpbmRleF0uY29sRWxlbWVudC5zdHlsZS53aWR0aCk7XG4gICAgICAgICAgICBpZiAodGhpcy5yZXNpemVDb2xzW2luZGV4XS5iYXNlV2lkdGggPiBjdXJyZW50V2lkdGgpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5yZXNpemVDb2xzW2luZGV4XS5iYXNlV2lkdGggPiBjdXJyZW50V2lkdGggKyBkZWx0YVgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNpemVDb2xzW2luZGV4XS5jb2xFbGVtZW50LnN0eWxlLndpZHRoID0gY29lcmNlQ3NzUGl4ZWxWYWx1ZShjdXJyZW50V2lkdGggKyBkZWx0YVgpO1xuICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbHRhWCAtPSB0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmJhc2VXaWR0aCAtIGN1cnJlbnRXaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNpemVDb2xzW2luZGV4XS5jb2xFbGVtZW50LnN0eWxlLndpZHRoID0gY29lcmNlQ3NzUGl4ZWxWYWx1ZSh0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmJhc2VXaWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9wQ29sKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5kZXgtLTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGVsdGFYO1xuICAgIH1cblxuICAgIHJlc3RvcmVSaWdodENvbHMoZGVsdGFYOiBudW1iZXIpIHtcbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5yZXNpemVDb2xzLmxlbmd0aCAtIDE7XG4gICAgICAgIHdoaWxlIChpbmRleCA+PSAwICYmIGRlbHRhWCA8IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRXaWR0aCA9IGNvZXJjZVBpeGVsc0Zyb21Dc3NWYWx1ZSh0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmNvbEVsZW1lbnQuc3R5bGUud2lkdGgpO1xuICAgICAgICAgICAgaWYgKHRoaXMucmVzaXplQ29sc1tpbmRleF0uYmFzZVdpZHRoID4gY3VycmVudFdpZHRoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucmVzaXplQ29sc1tpbmRleF0uYmFzZVdpZHRoID4gY3VycmVudFdpZHRoICsgTWF0aC5hYnMoZGVsdGFYKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmNvbEVsZW1lbnQuc3R5bGUud2lkdGggPSBjb2VyY2VDc3NQaXhlbFZhbHVlKGN1cnJlbnRXaWR0aCArIE1hdGguYWJzKGRlbHRhWCkpO1xuICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbHRhWCArPSB0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmJhc2VXaWR0aCAtIGN1cnJlbnRXaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNpemVDb2xzW2luZGV4XS5jb2xFbGVtZW50LnN0eWxlLndpZHRoID0gY29lcmNlQ3NzUGl4ZWxWYWx1ZSh0aGlzLnJlc2l6ZUNvbHNbaW5kZXhdLmJhc2VXaWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9wQ29sKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5kZXgtLTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGVsdGFYO1xuICAgIH1cblxuICAgIGdldFNjcm9sbFdpZHRoKGRlbHRhWDogbnVtYmVyKSB7XG4gICAgICAgIGlmICh0aGlzLnRhYmxlQ29scykge1xuICAgICAgICAgICAgcmV0dXJuIGdldENvbHNUb3RhbFdpZHRoKHRoaXMudGFibGVDb2xzLmNvbHMpIC0gdGhpcy50YWJsZUNvbHMuYmFzZVdpZHRoIC0gTWF0aC5hYnMoZGVsdGFYKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzUmVzdG9yaW5nKGRlbHRhVmFsdWUsIGlzWEF4aXMgPSB0cnVlKSB7XG4gICAgICAgIHJldHVybiAhdGhpcy5pc1Jlc2l6aW5nKGRlbHRhVmFsdWUsIGlzWEF4aXMpO1xuICAgIH1cblxuICAgIGlzUmVzaXppbmcoZGVsdGFWYWx1ZSwgaXNYQXhpcyA9IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlyZWN0aW9uID09PSB0aGlzLmdldERpcmVjdGlvbihkZWx0YVZhbHVlLCBpc1hBeGlzKTtcbiAgICB9XG5cbiAgICBpbml0RGlyZWN0aW9uKGRlbHRhVmFsdWU6IG51bWJlciwgaXNYQXhpcyA9IHRydWUpIHtcbiAgICAgICAgaWYgKHRoaXMucmVzaXplQ29scy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSB0aGlzLmdldERpcmVjdGlvbihkZWx0YVZhbHVlLCBpc1hBeGlzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERpcmVjdGlvbihkZWx0YVZhbHVlLCBpc1hBeGlzID0gdHJ1ZSkge1xuICAgICAgICByZXR1cm4gaXNYQXhpcyA/IChkZWx0YVZhbHVlID4gMCA/ICdyaWdodCcgOiAnbGVmdCcpIDogZGVsdGFWYWx1ZSA+IDAgPyAnYm90dG9tJyA6ICd0b3AnO1xuICAgIH1cblxuICAgIHByaXZhdGUgcG9wQ29sKCkge1xuICAgICAgICB0aGlzLnJlc2l6ZUNvbHMucG9wKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -57,10 +57,10 @@ export class TheContextMenu {
|
|
|
57
57
|
item.backgroundColor = color;
|
|
58
58
|
item.activeHandle(undefined, item);
|
|
59
59
|
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheContextMenu, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheContextMenu, isStandalone: true, selector: "the-contextmenu", inputs: { menuEntities: "menuEntities", actionHandle: "actionHandle", activeHandle: "activeHandle", deactivateHandle: "deactivateHandle" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)", "mousedown": "handleMouseDown($event)" }, properties: { "class.the-overlay-menu-wrap": "this.wrap" } }, ngImport: i0, template: "<div class=\"thy-dropdown-menu\">\n <ng-container *ngFor=\"let menuItem of menuEntities\">\n <ng-container *ngIf=\"menuItem.visibility && !menuItem?.isInputNumber && menuItem.key !== 'background-color'\">\n <ng-template [ngTemplateOutlet]=\"defaultMenuTemplate\" [ngTemplateOutletContext]=\"{ $implicit: menuItem }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"menuItem.visibility && menuItem.key === 'background-color'\">\n <ng-template [ngTemplateOutlet]=\"backgroundColorTemplate\" [ngTemplateOutletContext]=\"{ $implicit: menuItem }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"menuItem.visibility && menuItem?.isInputNumber\">\n <ng-template [ngTemplateOutlet]=\"inputNumberMenuTemplate\" [ngTemplateOutletContext]=\"{ $implicit: menuItem }\"></ng-template>\n </ng-container>\n <thy-dropdown-menu-divider *ngIf=\"menuItem.divider && menuItem.visibility\"></thy-dropdown-menu-divider>\n </ng-container>\n</div>\n\n<ng-template #defaultMenuTemplate let-item>\n <a\n href=\"javascript:;\"\n thyDropdownMenuItem\n (mousedown)=\"itemMousedown($event, item)\"\n (mouseenter)=\"itemMouseenter($event, item)\"\n (mouseleave)=\"itemMouseleave($event, item)\"\n >\n <span thyDropdownMenuItemIcon>\n <thy-icon [thyIconName]=\"item.icon\"></thy-icon>\n </span>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n <span *ngIf=\"item.extendIcon\" thyDropdownMenuItemExtendIcon>\n <thy-icon thyIconName=\"{{ item.extendIcon }}\"></thy-icon>\n </span>\n </a>\n</ng-template>\n\n<ng-template #backgroundColorTemplate let-item>\n <a\n href=\"javascript:;\"\n thyDropdownMenuItem\n thyColorPicker\n thyTrigger=\"hover\"\n thyPlacement=\"rightTop\"\n [(ngModel)]=\"item.backgroundColor\"\n (ngModelChange)=\"changeColor($event, item)\"\n [thyHasBackdrop]=\"false\"\n >\n <span thyDropdownMenuItemIcon>\n <thy-icon [thyIconName]=\"item.icon\" thyIconType=\"twotone\" [thyTwotoneColor]=\"item.backgroundColor\"></thy-icon>\n </span>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n <span *ngIf=\"item.extendIcon\" thyDropdownMenuItemExtendIcon>\n <thy-icon thyIconName=\"{{ item.extendIcon }}\"></thy-icon>\n </span>\n </a>\n</ng-template>\n\n<ng-template #inputNumberMenuTemplate let-item>\n <a href=\"javascript:;\" class=\"the-input-number-menu\" thyDropdownMenuItem (click)=\"itemMousedown($event, item)\">\n <span thyDropdownMenuItemIcon>\n <thy-icon [thyIconName]=\"item.icon\"></thy-icon>\n </span>\n <span thyDropdownMenuItemName class=\"d-flex align-items-center\">\n {{ item.name }}\n <thy-input-number\n #inputNumber\n class=\"mx-2\"\n thySize=\"sm\"\n [(ngModel)]=\"item.count\"\n [thyStep]=\"1\"\n [thyMin]=\"1\"\n (click)=\"inputNumberFocus($event)\"\n (thyEnter)=\"itemEnterHandle($event, item)\"\n thyStopPropagation\n ></thy-input-number>\n {{ item.nameSuffix }}\n </span>\n </a>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyInputNumber, selector: "thy-input-number", inputs: ["thyAutoFocus", "thyPlaceholder", "thyDisabled", "thyMax", "thyMin", "thyStep", "thyStepDelay", "thySize", "thyPrecision", "thySuffix"], outputs: ["thyBlur", "thyFocus"] }, { kind: "component", type: ThyDropdownMenuDivider, selector: "thy-dropdown-menu-divider" }, { kind: "directive", type: ThyEnterDirective, selector: "[thyEnter]", outputs: ["thyEnter"] }, { kind: "directive", type: ThyColorPickerDirective, selector: "[thyColorPicker]", inputs: ["thyOffset", "thyHasBackdrop", "thyDefaultColor", "thyTransparentColorSelectable", "thyPresetColors", "thyPlacement", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyDisabled"], outputs: ["thyPanelOpen", "thyPanelClose"] }, { kind: "directive", type: ThyStopPropagationDirective, selector: "[thyStopPropagation]", inputs: ["thyStopPropagation"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemIconDirective, selector: "[thyDropdownMenuItemIcon]" }, { kind: "directive", type: ThyDropdownMenuItemNameDirective, selector: "[thyDropdownMenuItemName]" }, { kind: "directive", type: ThyDropdownMenuItemExtendIconDirective, selector: "[thyDropdownMenuItemExtendIcon]" }] }); }
|
|
62
62
|
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheContextMenu, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ selector: 'the-contextmenu', standalone: true, imports: [
|
|
66
66
|
FormsModule,
|
|
@@ -32,10 +32,10 @@ export class TheConversionHint {
|
|
|
32
32
|
clearCloseTimer() {
|
|
33
33
|
clearInterval(this.closeTimer);
|
|
34
34
|
}
|
|
35
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheConversionHint, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheConversionHint, isStandalone: true, selector: "the-conversion-hint", inputs: { editor: "editor", conversion: "conversion" }, host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, classAttribute: "the-conversion-hint" }, ngImport: i0, template: "<ng-container>\n <thy-alert thyType=\"primary-weak\" thyIcon=\"info-circle-fill\" thyCloseable=\"true\" thyMessage=\"\u68C0\u6D4B\u5230\u7C98\u8D34\u5185\u5BB9\u7B26\u5408Markdown\u8BED\u6CD5\">\n <ng-template #operation>\n <a href=\"javascript:;\" thyAlertActionItem (click)=\"conversion()\"> \u7ACB\u5373\u8F6C\u6362 </a>\n </ng-template>\n </thy-alert>\n</ng-container>\n", dependencies: [{ kind: "component", type: ThyAlert, selector: "thy-alert", inputs: ["thyType", "thyTheme", "thyMessage", "thyIcon", "thyCloseable"] }, { kind: "directive", type: ThyAlertActionItemDirective, selector: "[thyAlertActionItem]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
37
37
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheConversionHint, decorators: [{
|
|
39
39
|
type: Component,
|
|
40
40
|
args: [{ selector: 'the-conversion-hint', host: {
|
|
41
41
|
class: 'the-conversion-hint'
|
|
@@ -5,10 +5,10 @@ export class TheDefaultElement extends TheBaseElement {
|
|
|
5
5
|
get indent() {
|
|
6
6
|
return this.element?.indent;
|
|
7
7
|
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheDefaultElement, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheDefaultElement, isStandalone: true, selector: "[theDefaultElement]", host: { properties: { "attr.the-indent": "this.indent" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheDefaultElement, decorators: [{
|
|
12
12
|
type: Component,
|
|
13
13
|
args: [{
|
|
14
14
|
selector: '[theDefaultElement]',
|
|
@@ -93,8 +93,8 @@ export class TheInlineToolbar {
|
|
|
93
93
|
this.destroy$.next();
|
|
94
94
|
this.destroy$.complete();
|
|
95
95
|
}
|
|
96
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
97
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
96
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheInlineToolbar, deps: [{ token: i0.ElementRef }, { token: i1.ScrollDispatcher }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.TheContextService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
97
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheInlineToolbar, isStandalone: true, selector: "the-inline-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems" }, host: { properties: { "class.hide": "toolbarItems.length === 0" } }, viewQueries: [{ propertyName: "inlineToolbar", first: true, predicate: ["inlineToolbar"], descendants: true }], ngImport: i0, template: `<the-toolbar
|
|
98
98
|
#inlineToolbar
|
|
99
99
|
class="the-inline-toolbar"
|
|
100
100
|
[editor]="editor"
|
|
@@ -102,7 +102,7 @@ export class TheInlineToolbar {
|
|
|
102
102
|
[isMore]="false"
|
|
103
103
|
></the-toolbar> `, isInline: true, dependencies: [{ kind: "component", type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheInlineToolbar, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
107
|
args: [{
|
|
108
108
|
selector: 'the-inline-toolbar',
|
|
@@ -42,15 +42,15 @@ export class TheListboxOptionDirective {
|
|
|
42
42
|
getActive() {
|
|
43
43
|
return this._active;
|
|
44
44
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
46
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxOptionDirective, deps: [{ token: THE_LISTBOX_PARENT_OPTION_TOKEN, optional: true, skipSelf: true }, { token: THE_LISTBOX_PARENT_GROUP_TOKEN }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
46
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TheListboxOptionDirective, isStandalone: true, selector: "[theListboxOption]", inputs: { theOptionValue: "theOptionValue", theOptionDisabled: "theOptionDisabled" }, host: { properties: { "class": "this.className" } }, providers: [
|
|
47
47
|
{
|
|
48
48
|
provide: THE_LISTBOX_PARENT_OPTION_TOKEN,
|
|
49
49
|
useExisting: TheListboxOptionDirective
|
|
50
50
|
}
|
|
51
51
|
], queries: [{ propertyName: "_options", predicate: i0.forwardRef(() => TheListboxOptionDirective), descendants: true }], exportAs: ["theListboxOption"], ngImport: i0 }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxOptionDirective, decorators: [{
|
|
54
54
|
type: Directive,
|
|
55
55
|
args: [{
|
|
56
56
|
selector: '[theListboxOption]',
|
|
@@ -126,15 +126,15 @@ export class TheListboxGroupDirective {
|
|
|
126
126
|
getLast() {
|
|
127
127
|
return this.options[this.options.length - 1];
|
|
128
128
|
}
|
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
130
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
129
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxGroupDirective, deps: [{ token: THE_LISTBOX_PARENT_OPTION_TOKEN, optional: true, skipSelf: true }, { token: THE_LISTBOX_TOKEN }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
130
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TheListboxGroupDirective, isStandalone: true, selector: "[theListboxGroup]", inputs: { horizontalColumn: "horizontalColumn" }, host: { properties: { "class": "this.className" } }, providers: [
|
|
131
131
|
{
|
|
132
132
|
provide: THE_LISTBOX_PARENT_GROUP_TOKEN,
|
|
133
133
|
useExisting: TheListboxGroupDirective
|
|
134
134
|
}
|
|
135
135
|
], queries: [{ propertyName: "_options", predicate: TheListboxOptionDirective, descendants: true }], exportAs: ["theListboxGroup"], ngImport: i0 }); }
|
|
136
136
|
}
|
|
137
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
137
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxGroupDirective, decorators: [{
|
|
138
138
|
type: Directive,
|
|
139
139
|
args: [{
|
|
140
140
|
selector: '[theListboxGroup]',
|
|
@@ -338,15 +338,15 @@ export class TheListboxDirective {
|
|
|
338
338
|
this._optionChangesSubscription.unsubscribe();
|
|
339
339
|
this._keyboardSubscription.unsubscribe();
|
|
340
340
|
}
|
|
341
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
342
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
341
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxDirective, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
342
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TheListboxDirective, isStandalone: true, selector: "[theListBox]", inputs: { keyboardContainer: "keyboardContainer", autoActiveFirstItem: "autoActiveFirstItem" }, outputs: { theListboxChange: "theListboxChange" }, host: { properties: { "class": "this.className" } }, providers: [
|
|
343
343
|
{
|
|
344
344
|
provide: THE_LISTBOX_TOKEN,
|
|
345
345
|
useExisting: TheListboxDirective
|
|
346
346
|
}
|
|
347
347
|
], queries: [{ propertyName: "_groups", predicate: TheListboxGroupDirective, descendants: true }, { propertyName: "_options", predicate: TheListboxOptionDirective, descendants: true }], exportAs: ["theListBox"], ngImport: i0 }); }
|
|
348
348
|
}
|
|
349
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheListboxDirective, decorators: [{
|
|
350
350
|
type: Directive,
|
|
351
351
|
args: [{
|
|
352
352
|
selector: '[theListBox]',
|
|
@@ -125,6 +125,20 @@ export class ThePluginMenuComponent {
|
|
|
125
125
|
if (this.keyWords && this.groupMenu.length > 0) {
|
|
126
126
|
this.groupMenu.unshift(this.searchGroup);
|
|
127
127
|
}
|
|
128
|
+
if (!this.keyWords) {
|
|
129
|
+
const menus = [...this.groupMenu];
|
|
130
|
+
this.groupMenu = menus.filter((item, index) => {
|
|
131
|
+
const isGroupMenu = ThePluginMenu.isMenuGroup(item);
|
|
132
|
+
const nextMenu = menus[index + 1];
|
|
133
|
+
const isLastMenu = index === menus.length - 1;
|
|
134
|
+
if ((nextMenu && isGroupMenu && ThePluginMenu.isMenuGroup(nextMenu)) ||
|
|
135
|
+
(isLastMenu && isGroupMenu) ||
|
|
136
|
+
(item?.children && item?.children?.length <= 0)) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
return true;
|
|
140
|
+
});
|
|
141
|
+
}
|
|
128
142
|
this.cdr.markForCheck();
|
|
129
143
|
}
|
|
130
144
|
handleItemSelection(menuItem) {
|
|
@@ -178,10 +192,10 @@ export class ThePluginMenuComponent {
|
|
|
178
192
|
trackByFn(index, item) {
|
|
179
193
|
return item?.key ?? index;
|
|
180
194
|
}
|
|
181
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
182
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ThePluginMenuComponent, isStandalone: true, selector: "the-plugin-menu", inputs: { editor: "editor", theDisplaySearch: "theDisplaySearch", thePluginMenu: "thePluginMenu", sceneKey: "sceneKey", subPanelClass: "subPanelClass", autoActiveFirstItem: "autoActiveFirstItem" }, host: { properties: { "class": "this.containerClassName" } }, viewQueries: [{ propertyName: "dropdownTriggers", predicate: ["dropdownTriggers"], descendants: true, read: ThyDropdownDirective }], ngImport: i0, template: "<div *ngIf=\"theDisplaySearch\" class=\"menu-search px-5 pt-5 pb-2\">\n <thy-input-search [(ngModel)]=\"keyWords\" placeholder=\"\u641C\u7D22\" thyIconPosition=\"after\" (ngModelChange)=\"updateKeywords(keyWords)\">\n </thy-input-search>\n</div>\n\n<div\n *ngIf=\"groupMenu.length > 0; else empty\"\n theListBox\n [keyboardContainer]=\"keyboardContainer\"\n [autoActiveFirstItem]=\"listBoxAutoActiveFirstItem\"\n (theListboxChange)=\"theListboxChange($event)\"\n class=\"thy-dropdown-menu the-plugin-menu-scroll-container pb-2 pt-0\"\n>\n <ng-container *ngIf=\"iconMenu?.length > 0\">\n <div theListboxGroup [horizontalColumn]=\"6\" class=\"icon-menu d-flex pl-5 py-1\">\n <ng-container *ngFor=\"let item of iconMenu; trackBy: trackByFn\">\n <a\n *ngIf=\"item.type === ThePluginMenuItemType.icon\"\n href=\"javascript:;\"\n class=\"mt-2\"\n thyAction\n theListboxOption\n [theOptionValue]=\"item\"\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item?.name\"\n [thyDisabled]=\"item.disabled\"\n [theOptionDisabled]=\"item.disabled\"\n thePreventDefault\n (click)=\"handleItemSelection(item)\"\n ></a>\n </ng-container>\n </div>\n <thy-divider class=\"my-2\"></thy-divider>\n </ng-container>\n\n <div theListboxGroup>\n <ng-container *ngFor=\"let item of groupMenu; trackBy: trackByFn\">\n <ng-container *ngIf=\"item.isMenuItem && !(item.children?.length > 0) && item.key !== 'table'\">\n <div\n thyDropdownMenuItem\n theListboxOption\n [theOptionValue]=\"item\"\n class=\"py-0\"\n thePreventDefault\n [thyDisabled]=\"item.disabled\"\n [theOptionDisabled]=\"item.disabled\"\n (click)=\"handleItemSelection(item)\"\n >\n <div *ngIf=\"item.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.isMenuItem && item.children?.length > 0\" #hasExpanded>\n <div\n #dropdownTriggers\n [thyDropdown]=\"expand\"\n thyTrigger=\"hover\"\n thyDropdownMenuItem\n [thyDisabled]=\"item.disabled\"\n theListboxOption\n [theOptionValue]=\"item\"\n [theOptionDisabled]=\"item.disabled\"\n [thyPopoverOptions]=\"expandPopoverOptions\"\n class=\"py-0\"\n thePreventDefault\n [thyPanelClass]=\"subPanelClass\"\n (click)=\"handleItemSelection(item)\"\n >\n <div *ngIf=\"item.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n <div *ngIf=\"item.children?.length > 0\">\n <thy-icon class=\"text-muted\" thyIconName=\"angle-right\"></thy-icon>\n </div>\n <thy-dropdown-menu #expand>\n <div class=\"the-plugin-menu-container expand-menu\" theListboxGroup>\n <ng-container *ngFor=\"let child of item.children\">\n <div\n *ngIf=\"child.type === ThePluginMenuItemType.group\"\n thyDropdownMenuItem\n theListboxOption\n class=\"py-0\"\n thePreventDefault\n [theOptionDisabled]=\"item.disabled\"\n [thyDisabled]=\"child.disabled\"\n (click)=\"handleItemSelection(child)\"\n [theOptionValue]=\"child\"\n >\n <div *ngIf=\"child.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"child.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ child.name }}\n </div>\n </div>\n </div>\n <thy-divider *ngIf=\"child === 'divider'\" class=\"my-2\"></thy-divider>\n </ng-container>\n </div>\n </thy-dropdown-menu>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.isMenuItem && item.key === 'table'\">\n <div\n #dropdownTriggers\n [thyPopover]=\"tableSelect\"\n thyPlacement=\"rightTop\"\n thyTrigger=\"hover\"\n thyDropdownMenuItem\n theListboxOption\n [thyConfig]=\"tableSelectPopoverConfig\"\n [theOptionValue]=\"item\"\n [theOptionDisabled]=\"item.disabled\"\n [thyDisabled]=\"item.disabled\"\n class=\"py-0\"\n thePreventDefault\n (click)=\"handleItemSelection(item)\"\n >\n <div class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n <div>\n <thy-icon class=\"text-muted\" thyIconName=\"angle-right\"></thy-icon>\n </div>\n\n <ng-template #tableSelect>\n <table-select\n class=\"plugin-menu-table the-table-selector-panel\"\n [editor]=\"editor\"\n [beforeInsert]=\"removeKeywords\"\n ></table-select>\n </ng-template>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!item.isMenuItem\" #menuGroup>\n <thy-dropdown-menu-group class=\"font-size-sm\" [thyTitle]=\"item.groupName\"></thy-dropdown-menu-group>\n </ng-container>\n </ng-container>\n </div>\n</div>\n\n<ng-template #empty>\n <div class=\"empty d-flex align-items-center justify-content-center\">\n <thy-empty [thyMessage]=\"thyMessage\"></thy-empty>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ThyEmptyModule }, { kind: "component", type: i3.ThyEmpty, selector: "thy-empty", inputs: ["thyMessage", "thyTranslationKey", "thyTranslationValues", "thyEntityName", "thyEntityNameTranslateKey", "thyIconName", "thySize", "thyMarginTop", "thyTopAuto", "thyContainer", "thyImageUrl", "thyImageLoading", "thyImageFetchPriority", "thyDescription"] }, { kind: "component", type: TheTableSelect, selector: "table-select", inputs: ["optionsParam", "editor", "beforeInsert"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }, { kind: "component", type: ThyInputSearch, selector: "thy-input-search", inputs: ["name", "placeholder", "thyTheme", "thySearchFocus", "thyIconPosition", "thySize"], outputs: ["clear", "thyClear"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "component", type: ThyDropdownMenuGroup, selector: "thy-dropdown-menu-group", inputs: ["thyTitle"] }, { kind: "pipe", type: PluginMenuPipe, name: "getMenuIcon" }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "directive", type: ThyPopoverDirective, selector: "[thyPopover]", inputs: ["thyPopover", "thyTrigger", "thyPlacement", "thyOffset", "thyConfig", "thyShowDelay", "thyHideDelay", "thyAutoAdaptive", "thyDisabled"] }, { kind: "directive", type: TheListboxDirective, selector: "[theListBox]", inputs: ["keyboardContainer", "autoActiveFirstItem"], outputs: ["theListboxChange"], exportAs: ["theListBox"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: TheListboxGroupDirective, selector: "[theListboxGroup]", inputs: ["horizontalColumn"], exportAs: ["theListboxGroup"] }, { kind: "directive", type: TheListboxOptionDirective, selector: "[theListboxOption]", inputs: ["theOptionValue", "theOptionDisabled"], exportAs: ["theListboxOption"] }, { kind: "directive", type: ThePreventDefaultDirective, selector: "[thePreventDefault]", exportAs: ["thePreventDefault"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }] }); }
|
|
195
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ThePluginMenuComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
196
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ThePluginMenuComponent, isStandalone: true, selector: "the-plugin-menu", inputs: { editor: "editor", theDisplaySearch: "theDisplaySearch", thePluginMenu: "thePluginMenu", sceneKey: "sceneKey", subPanelClass: "subPanelClass", autoActiveFirstItem: "autoActiveFirstItem" }, host: { properties: { "class": "this.containerClassName" } }, viewQueries: [{ propertyName: "dropdownTriggers", predicate: ["dropdownTriggers"], descendants: true, read: ThyDropdownDirective }], ngImport: i0, template: "<div *ngIf=\"theDisplaySearch\" class=\"menu-search px-5 pt-5 pb-2\">\n <thy-input-search [(ngModel)]=\"keyWords\" placeholder=\"\u641C\u7D22\" thyIconPosition=\"after\" (ngModelChange)=\"updateKeywords(keyWords)\">\n </thy-input-search>\n</div>\n\n<div\n *ngIf=\"groupMenu.length > 0; else empty\"\n theListBox\n [keyboardContainer]=\"keyboardContainer\"\n [autoActiveFirstItem]=\"listBoxAutoActiveFirstItem\"\n (theListboxChange)=\"theListboxChange($event)\"\n class=\"thy-dropdown-menu the-plugin-menu-scroll-container pb-2 pt-0\"\n>\n <ng-container *ngIf=\"iconMenu?.length > 0\">\n <div theListboxGroup [horizontalColumn]=\"6\" class=\"icon-menu d-flex pl-5 py-1\">\n <ng-container *ngFor=\"let item of iconMenu; trackBy: trackByFn\">\n <a\n *ngIf=\"item.type === ThePluginMenuItemType.icon\"\n href=\"javascript:;\"\n class=\"mt-2\"\n thyAction\n theListboxOption\n [theOptionValue]=\"item\"\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item?.name\"\n [thyDisabled]=\"item.disabled\"\n [theOptionDisabled]=\"item.disabled\"\n thePreventDefault\n (click)=\"handleItemSelection(item)\"\n ></a>\n </ng-container>\n </div>\n <thy-divider class=\"my-2\"></thy-divider>\n </ng-container>\n\n <div theListboxGroup>\n <ng-container *ngFor=\"let item of groupMenu; trackBy: trackByFn\">\n <ng-container *ngIf=\"item.isMenuItem && !(item.children?.length > 0) && item.key !== 'table'\">\n <div\n thyDropdownMenuItem\n theListboxOption\n [theOptionValue]=\"item\"\n class=\"py-0\"\n thePreventDefault\n [thyDisabled]=\"item.disabled\"\n [theOptionDisabled]=\"item.disabled\"\n (click)=\"handleItemSelection(item)\"\n >\n <div *ngIf=\"item.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.isMenuItem && item.children?.length > 0\" #hasExpanded>\n <div\n #dropdownTriggers\n [thyDropdown]=\"expand\"\n thyTrigger=\"hover\"\n thyDropdownMenuItem\n [thyDisabled]=\"item.disabled\"\n theListboxOption\n [theOptionValue]=\"item\"\n [theOptionDisabled]=\"item.disabled\"\n [thyPopoverOptions]=\"expandPopoverOptions\"\n class=\"py-0\"\n thePreventDefault\n [thyPanelClass]=\"subPanelClass\"\n (click)=\"handleItemSelection(item)\"\n >\n <div *ngIf=\"item.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n <div *ngIf=\"item.children?.length > 0\">\n <thy-icon class=\"text-muted\" thyIconName=\"angle-right\"></thy-icon>\n </div>\n <thy-dropdown-menu #expand>\n <div class=\"the-plugin-menu-container expand-menu\" theListboxGroup>\n <ng-container *ngFor=\"let child of item.children\">\n <div\n *ngIf=\"child.type === ThePluginMenuItemType.group\"\n thyDropdownMenuItem\n theListboxOption\n class=\"py-0\"\n thePreventDefault\n [theOptionDisabled]=\"item.disabled\"\n [thyDisabled]=\"child.disabled\"\n (click)=\"handleItemSelection(child)\"\n [theOptionValue]=\"child\"\n >\n <div *ngIf=\"child.menuIcon\" class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"child.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ child.name }}\n </div>\n </div>\n </div>\n <thy-divider *ngIf=\"child === 'divider'\" class=\"my-2\"></thy-divider>\n </ng-container>\n </div>\n </thy-dropdown-menu>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.isMenuItem && item.key === 'table'\">\n <div\n #dropdownTriggers\n [thyPopover]=\"tableSelect\"\n thyPlacement=\"rightTop\"\n thyTrigger=\"hover\"\n thyDropdownMenuItem\n theListboxOption\n [thyConfig]=\"tableSelectPopoverConfig\"\n [theOptionValue]=\"item\"\n [theOptionDisabled]=\"item.disabled\"\n [thyDisabled]=\"item.disabled\"\n class=\"py-0\"\n thePreventDefault\n (click)=\"handleItemSelection(item)\"\n >\n <div class=\"menu-icon mr-2\">\n <thy-icon [thyIconName]=\"item.menuIcon | getMenuIcon: sceneKey\"></thy-icon>\n </div>\n <div class=\"menu-content d-flex align-items-center\">\n <div class=\"menu-item-title w-100\">\n {{ item.name }}\n </div>\n </div>\n <div>\n <thy-icon class=\"text-muted\" thyIconName=\"angle-right\"></thy-icon>\n </div>\n\n <ng-template #tableSelect>\n <table-select\n class=\"plugin-menu-table the-table-selector-panel\"\n [editor]=\"editor\"\n [beforeInsert]=\"removeKeywords\"\n ></table-select>\n </ng-template>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!item.isMenuItem\" #menuGroup>\n <thy-dropdown-menu-group class=\"font-size-sm\" [thyTitle]=\"item.groupName\"></thy-dropdown-menu-group>\n </ng-container>\n </ng-container>\n </div>\n</div>\n\n<ng-template #empty>\n <div class=\"empty d-flex align-items-center justify-content-center\">\n <thy-empty [thyMessage]=\"thyMessage\"></thy-empty>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ThyEmptyModule }, { kind: "component", type: i3.ThyEmpty, selector: "thy-empty", inputs: ["thyMessage", "thyTranslationKey", "thyTranslationValues", "thyEntityName", "thyEntityNameTranslateKey", "thyIconName", "thySize", "thyMarginTop", "thyTopAuto", "thyContainer", "thyImageUrl", "thyImageLoading", "thyImageFetchPriority", "thyDescription"] }, { kind: "component", type: TheTableSelect, selector: "table-select", inputs: ["optionsParam", "editor", "beforeInsert"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }, { kind: "component", type: ThyInputSearch, selector: "thy-input-search", inputs: ["name", "placeholder", "thyTheme", "thySearchFocus", "thyIconPosition", "thySize"], outputs: ["clear", "thyClear"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "component", type: ThyDropdownMenuGroup, selector: "thy-dropdown-menu-group", inputs: ["thyTitle"] }, { kind: "pipe", type: PluginMenuPipe, name: "getMenuIcon" }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "directive", type: ThyPopoverDirective, selector: "[thyPopover]", inputs: ["thyPopover", "thyTrigger", "thyPlacement", "thyOffset", "thyConfig", "thyShowDelay", "thyHideDelay", "thyAutoAdaptive", "thyDisabled"] }, { kind: "directive", type: TheListboxDirective, selector: "[theListBox]", inputs: ["keyboardContainer", "autoActiveFirstItem"], outputs: ["theListboxChange"], exportAs: ["theListBox"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: TheListboxGroupDirective, selector: "[theListboxGroup]", inputs: ["horizontalColumn"], exportAs: ["theListboxGroup"] }, { kind: "directive", type: TheListboxOptionDirective, selector: "[theListboxOption]", inputs: ["theOptionValue", "theOptionDisabled"], exportAs: ["theListboxOption"] }, { kind: "directive", type: ThePreventDefaultDirective, selector: "[thePreventDefault]", exportAs: ["thePreventDefault"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }] }); }
|
|
183
197
|
}
|
|
184
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ThePluginMenuComponent, decorators: [{
|
|
185
199
|
type: Component,
|
|
186
200
|
args: [{ selector: 'the-plugin-menu', standalone: true, imports: [
|
|
187
201
|
NgIf,
|
|
@@ -224,4 +238,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
224
238
|
}], autoActiveFirstItem: [{
|
|
225
239
|
type: Input
|
|
226
240
|
}] } });
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvcGx1Z2luLW1lbnUvcGx1Z2luLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvcGx1Z2luLW1lbnUvcGx1Z2luLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQXFCLFNBQVMsRUFBYyxXQUFXLEVBQUUsS0FBSyxFQUFrQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0gsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IsRUFBRSxvQkFBb0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBaUIsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBaUIsTUFBTSxPQUFP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c0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBOZ1pvbmUsIE9uSW5pdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUFjdGlvbiB9IGZyb20gJ25neC10ZXRoeXMvYWN0aW9uJztcbmltcG9ydCB7IFNjcm9sbFRvU2VydmljZSB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlEaXZpZGVyIH0gZnJvbSAnbmd4LXRldGh5cy9kaXZpZGVyJztcbmltcG9ydCB7IFRoeURyb3Bkb3duRGlyZWN0aXZlLCBUaHlEcm9wZG93bk1lbnVDb21wb25lbnQsIFRoeURyb3Bkb3duTWVudUdyb3VwLCBUaHlEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy9kcm9wZG93bic7XG5pbXBvcnQgeyBUaHlFbXB0eU1vZHVsZSB9IGZyb20gJ25neC10ZXRoeXMvZW1wdHknO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBUaHlJbnB1dFNlYXJjaCB9IGZyb20gJ25neC10ZXRoeXMvaW5wdXQnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlckRpcmVjdGl2ZSwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBUaHlUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy90b29sdGlwJztcbmltcG9ydCB7IEVkaXRvciwgTm9kZSwgUGF0aFJlZiwgVGV4dCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3IgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IERlZmF1bHRQbHVnaW5NZW51LCBUaGVQbHVnaW5NZW51SXRlbVR5cGUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgYnVpbGRQbHVnaW5NZW51LCBidWlsZFBsdWdpbk1lbnVJdGVtTWFwIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBUaGVQbHVnaW5NZW51LCBUaGVQbHVnaW5NZW51R3JvdXAsIFRoZVBsdWdpbk1lbnVJdGVtLCBUaGVQbHVnaW5NZW51SXRlbUNvbmZpZywgVGhlUGx1Z2luTWVudUl0ZW1XcmFwIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBQbHVnaW5NZW51UGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcbmltcG9ydCB7IFF1aWNrSW5zZXJ0RWRpdG9yIH0gZnJvbSAnLi4vLi4vcGx1Z2lucy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IHJlZm9jdXMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBUaGVQcmV2ZW50RGVmYXVsdERpcmVjdGl2ZSB9IGZyb20gJy4uL2FjdGlvbi9wcmV2ZW50LWRlZmF1bHQnO1xuaW1wb3J0IHsgVGhlTGlzdGJveENoYW5nZUV2ZW50LCBUaGVMaXN0Ym94RGlyZWN0aXZlLCBUaGVMaXN0Ym94R3JvdXBEaXJlY3RpdmUsIFRoZUxpc3Rib3hPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9saXN0Ym94L2xpc3Rib3gnO1xuaW1wb3J0IHsgVGhlVGFibGVTZWxlY3QgfSBmcm9tICcuLi90YWJsZS1zZWxlY3QvdGFibGUtc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXBsdWdpbi1tZW51JyxcbiAgICB0ZW1wbGF0ZVVybDogJ3BsdWdpbi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdJZixcbiAgICAgICAgTmdGb3IsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBUaHlFbXB0eU1vZHVsZSxcbiAgICAgICAgVGhlVGFibGVTZWxlY3QsXG4gICAgICAgIFRoeUljb24sXG4gICAgICAgIFRoeUFjdGlvbixcbiAgICAgICAgVGh5RGl2aWRlcixcbiAgICAgICAgVGh5SW5wdXRTZWFyY2gsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51R3JvdXAsXG4gICAgICAgIFBsdWdpbk1lbnVQaXBlLFxuICAgICAgICBUaHlUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICBUaHlQb3BvdmVyRGlyZWN0aXZlLFxuICAgICAgICBUaGVMaXN0Ym94RGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGhlTGlzdGJveEdyb3VwRGlyZWN0aXZlLFxuICAgICAgICBUaGVMaXN0Ym94T3B0aW9uRGlyZWN0aXZlLFxuICAgICAgICBUaGVQcmV2ZW50RGVmYXVsdERpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlUGx1Z2luTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgbGlzdEJveEF1dG9BY3RpdmVGaXJzdEl0ZW0gPSB0cnVlO1xuXG4gICAgcGF0aFJlZjogUGF0aFJlZjtcblxuICAgIGtleWJvYXJkQ29udGFpbmVyOiBIVE1MRWxlbWVudDtcblxuICAgIF9wbHVnaW5NZW51OiBUaGVQbHVnaW5NZW51O1xuXG4gICAgZ3JvdXBNZW51OiBUaGVQbHVnaW5NZW51ID0gW107XG5cbiAgICBpY29uTWVudTogVGhlUGx1Z2luTWVudSA9IFtdO1xuXG4gICAgVGhlUGx1Z2luTWVudUl0ZW1UeXBlID0gVGhlUGx1Z2luTWVudUl0ZW1UeXBlO1xuXG4gICAga2V5V29yZHM6IHN0cmluZztcblxuICAgIHRoeU1lc3NhZ2UgPSAn5pqC5peg5pWw5o2uJztcblxuICAgIHNjcm9sbENvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XG5cbiAgICBzZWFyY2hHcm91cDogVGhlUGx1Z2luTWVudUdyb3VwID0ge1xuICAgICAgICBncm91cE5hbWU6ICfmkJzntKLnu5PmnpwnXG4gICAgfTtcblxuICAgIGV4cGFuZFBvcG92ZXJPcHRpb25zID0ge1xuICAgICAgICBwbGFjZW1lbnQ6ICdyaWdodFRvcCcsXG4gICAgICAgIHdpZHRoOiAnMjYycHgnLFxuICAgICAgICBtaW5XaWR0aDogJzI2MnB4J1xuICAgIH07XG5cbiAgICB0YWJsZVNlbGVjdFBvcG92ZXJDb25maWcgPSB7XG4gICAgICAgIHBhbmVsQ2xhc3M6ICdwbHVnaW4tbWVudS10YWJsZS1zZWxlY3QtY29udGFpbmVyJyxcbiAgICAgICAgbWluV2lkdGg6IDAsXG4gICAgICAgIC8vICDpgb/lhY3ph43lhplcbiAgICAgICAgb3JpZ2luQWN0aXZlQ2xhc3M6ICd0aHktcG9wb3Zlci1vcmlnaW4tYWN0aXZlJ1xuICAgIH07XG5cbiAgICBAVmlld0NoaWxkcmVuKCdkcm9wZG93blRyaWdnZXJzJywgeyByZWFkOiBUaHlEcm9wZG93bkRpcmVjdGl2ZSB9KSBkcm9wZG93blRyaWdnZXJzOiBUaHlEcm9wZG93bkRpcmVjdGl2ZVtdO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNvbnRhaW5lckNsYXNzTmFtZSA9IGB0aGUtcGx1Z2luLW1lbnUtY29udGFpbmVyYDtcblxuICAgIEBJbnB1dCgpIGVkaXRvcjogRWRpdG9yO1xuXG4gICAgQElucHV0KCkgdGhlRGlzcGxheVNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgdGhlUGx1Z2luTWVudTogVGhlUGx1Z2luTWVudUl0ZW1Db25maWdbXTtcblxuICAgIEBJbnB1dCgpIHNjZW5lS2V5Pzogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgc3ViUGFuZWxDbGFzczogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgICBASW5wdXQoKSBhdXRvQWN0aXZlRmlyc3RJdGVtOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHRoeVBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8VGhlUGx1Z2luTWVudUNvbXBvbmVudD5cbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmF1dG9BY3RpdmVGaXJzdEl0ZW0gfHwgdGhpcy50aGVEaXNwbGF5U2VhcmNoKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RCb3hBdXRvQWN0aXZlRmlyc3RJdGVtID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbml0aWFsaXplU2VhcmNoKCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVBsdWdpbk1lbnUoKTtcbiAgICAgICAgdGhpcy5idWlsZE1lbnVzKCk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxDb250YWluZXIgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudGhlLXBsdWdpbi1tZW51LXNjcm9sbC1jb250YWluZXInKTtcbiAgICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZVNlYXJjaCgpIHtcbiAgICAgICAgaWYgKHRoaXMudGhlRGlzcGxheVNlYXJjaCkge1xuICAgICAgICAgICAgdGhpcy5rZXlib2FyZENvbnRhaW5lciA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8g6K6w5L2P5L2N572uXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZWRpdG9yLnNlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdGhSZWYgPSBFZGl0b3IucGF0aFJlZih0aGlzLmVkaXRvciwgdGhpcy5lZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmtleWJvYXJkQ29udGFpbmVyID0gQW5ndWxhckVkaXRvci50b0RPTU5vZGUodGhpcy5lZGl0b3IsIHRoaXMuZWRpdG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGluaXRpYWxpemVQbHVnaW5NZW51KCkge1xuICAgICAgICBjb25zdCBjdXJyZW50TWVudSA9IHRoaXMudGhlUGx1Z2luTWVudSB8fCBEZWZhdWx0UGx1Z2luTWVudTtcbiAgICAgICAgY29uc3QgbWVudUl0ZW1zTWFwID0gYnVpbGRQbHVnaW5NZW51SXRlbU1hcCh0aGlzLmVkaXRvcik7XG4gICAgICAgIHRoaXMuX3BsdWdpbk1lbnUgPSBidWlsZFBsdWdpbk1lbnUobWVudUl0ZW1zTWFwLCBjdXJyZW50TWVudSk7XG4gICAgfVxuXG4gICAgYnVpbGRNZW51cygpIHtcbiAgICAgICAgdGhpcy5pY29uTWVudSA9IFtdO1xuICAgICAgICB0aGlzLmdyb3VwTWVudSA9IFtdO1xuXG4gICAgICAgIHRoaXMuX3BsdWdpbk1lbnUuZm9yRWFjaCgoaXRlbTogVGhlUGx1Z2luTWVudUl0ZW1XcmFwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpc0hpZGRlbiA9IGl0ZW0/LmlzSGlkZGVuICYmIGl0ZW0uaXNIaWRkZW4odGhpcy5lZGl0b3IpO1xuXG4gICAgICAgICAgICBpZiAoVGhlUGx1Z2luTWVudS5pc01lbnVJdGVtKGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgaXRlbS5pc01lbnVJdGVtID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpdGVtLmRpc2FibGVkID0gaXRlbS5pc0Rpc2FibGVkICYmIGl0ZW0uaXNEaXNhYmxlZCh0aGlzLmVkaXRvcik7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMua2V5V29yZHMgJiYgIWlzSGlkZGVuICYmIGl0ZW0ua2V5d29yZHMgJiYgaXRlbS5rZXl3b3Jkcz8uaW5jbHVkZXModGhpcy5rZXlXb3JkcykpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKCFpc0hpZGRlbiAmJiBpdGVtLmNoaWxkcmVuICYmIGl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmNoaWxkcmVuPy5mb3JFYWNoKChjaGlsZDogVGhlUGx1Z2luTWVudUl0ZW1XcmFwIHwgJ2RpdmlkZXInKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGQgPT09ICdkaXZpZGVyJykgcmV0dXJuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5pc01lbnVJdGVtID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkLmRpc2FibGVkID0gY2hpbGQuaXNEaXNhYmxlZCAmJiBjaGlsZC5pc0Rpc2FibGVkKHRoaXMuZWRpdG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNIaWRkZW5DaGlkID0gaXRlbS5pc0hpZGRlbiAmJiBpdGVtLmlzSGlkZGVuKHRoaXMuZWRpdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmtleVdvcmRzICYmICFpc0hpZGRlbkNoaWQgJiYgY2hpbGQua2V5d29yZHMgJiYgY2hpbGQua2V5d29yZHM/LmluY2x1ZGVzKHRoaXMua2V5V29yZHMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUucHVzaChjaGlsZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0aGlzLmtleVdvcmRzICYmICFpc0hpZGRlbikge1xuICAgICAgICAgICAgICAgIGl0ZW0/LnR5cGUgPT09IFRoZVBsdWdpbk1lbnVJdGVtVHlwZS5pY29uID8gdGhpcy5pY29uTWVudS5wdXNoKGl0ZW0pIDogdGhpcy5ncm91cE1lbnUucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMua2V5V29yZHMgJiYgdGhpcy5ncm91cE1lbnUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUudW5zaGlmdCh0aGlzLnNlYXJjaEdyb3VwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGhhbmRsZUl0ZW1TZWxlY3Rpb24obWVudUl0ZW06IFRoZVBsdWdpbk1lbnVJdGVtKSB7XG4gICAgICAgIGlmIChtZW51SXRlbS5pc0Rpc2FibGVkICYmIG1lbnVJdGVtLmlzRGlzYWJsZWQodGhpcy5lZGl0b3IpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmVkaXRvci5zZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJlZm9jdXModGhpcy5lZGl0b3IpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy50aGVEaXNwbGF5U2VhcmNoKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUtleXdvcmRzKCk7XG4gICAgICAgIH1cbiAgICAgICAgbWVudUl0ZW0uZXhlY3V0ZSh0aGlzLmVkaXRvcik7XG4gICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICBRdWlja0luc2VydEVkaXRvci51cGRhdGVQbHVnaW5NZW51UmVmKHRoaXMuZWRpdG9yLCBudWxsKTtcbiAgICB9XG5cbiAgICByZW1vdmVLZXl3b3JkcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IE5vZGUuZ2V0KHRoaXMuZWRpdG9yLCB0aGlzLmVkaXRvci5zZWxlY3Rpb24uYW5jaG9yLnBhdGgpIGFzIFRleHQ7XG4gICAgICAgIGNvbnN0IG5vZGVTdHJpbmcgPSBOb2RlLnN0cmluZyhub2RlKTtcbiAgICAgICAgY29uc3QgaXNTdGFydFdpdGhIb3RrZXkgPSBub2RlU3RyaW5nLnN0YXJ0c1dpdGgoJy8nKTtcbiAgICAgICAgY29uc3QgaXNJbmNsdWRlS2V5d29yZHMgPSBub2RlU3RyaW5nLnRvTG9jYWxlTG93ZXJDYXNlKCkudHJpbSgpLmluY2x1ZGVzKHRoaXMua2V5V29yZHMpO1xuICAgICAgICBpZiAobm9kZSAmJiBub2RlU3RyaW5nLmxlbmd0aCA+IDAgJiYgKGlzU3RhcnRXaXRoSG90a2V5IHx8IGlzSW5jbHVkZUtleXdvcmRzKSkge1xuICAgICAgICAgICAgRWRpdG9yLmRlbGV0ZUJhY2t3YXJkKHRoaXMuZWRpdG9yLCB7IHVuaXQ6ICdibG9jaycgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgdXBkYXRlS2V5d29yZHMoa2V5d29yZHM6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5hdXRvQWN0aXZlRmlyc3RJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RCb3hBdXRvQWN0aXZlRmlyc3RJdGVtID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmtleVdvcmRzID0ga2V5d29yZHMudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIHRoaXMuYnVpbGRNZW51cygpO1xuICAgICAgICBpZiAodGhpcy5zY3JvbGxDb250YWluZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aGVMaXN0Ym94Q2hhbmdlKGV2ZW50OiBUaGVMaXN0Ym94Q2hhbmdlRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3Rpb24oZXZlbnQub3B0aW9uLnRoZU9wdGlvblZhbHVlIGFzIFRoZVBsdWdpbk1lbnVJdGVtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2NoaWxkJykge1xuICAgICAgICAgICAgY29uc3QgZHJvcGRvd24gPSB0aGlzLmZpbmREcm9wZG93blRyaWdnZXIoZXZlbnQub3B0aW9uLnBhcmVudE9wdGlvbik7XG4gICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIGRyb3Bkb3duLnNob3coKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAncGFyZW50Jykge1xuICAgICAgICAgICAgY29uc3QgZHJvcGRvd24gPSB0aGlzLmZpbmREcm9wZG93blRyaWdnZXIoZXZlbnQub3B0aW9uKTtcbiAgICAgICAgICAgIGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ3R1cm4nICYmICFldmVudC5vcHRpb24ucGFyZW50T3B0aW9uKSB7XG4gICAgICAgICAgICBTY3JvbGxUb1NlcnZpY2Uuc2Nyb2xsVG9FbGVtZW50KGV2ZW50Lm9wdGlvbi5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc2Nyb2xsQ29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZpbmREcm9wZG93blRyaWdnZXIob3B0aW9uOiBUaGVMaXN0Ym94T3B0aW9uRGlyZWN0aXZlKSB7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duID0gdGhpcy5kcm9wZG93blRyaWdnZXJzLmZpbmQodmFsdWUgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlWydlbGVtZW50UmVmJ10ubmF0aXZlRWxlbWVudCA9PT0gb3B0aW9uLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBkcm9wZG93bjtcbiAgICB9XG5cbiAgICB0cmFja0J5Rm4oaW5kZXg6IFRoZVBsdWdpbk1lbnVJdGVtLCBpdGVtOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0/LmtleSA/PyBpbmRleDtcbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwidGhlRGlzcGxheVNlYXJjaFwiIGNsYXNzPVwibWVudS1zZWFyY2ggcHgtNSBwdC01IHBiLTJcIj5cbiAgPHRoeS1pbnB1dC1zZWFyY2ggWyhuZ01vZGVsKV09XCJrZXlXb3Jkc1wiIHBsYWNlaG9sZGVyPVwi5pCc57SiXCIgdGh5SWNvblBvc2l0aW9uPVwiYWZ0ZXJcIiAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVLZXl3b3JkcyhrZXlXb3JkcylcIj5cbiAgPC90aHktaW5wdXQtc2VhcmNoPlxuPC9kaXY+XG5cbjxkaXZcbiAgKm5nSWY9XCJncm91cE1lbnUubGVuZ3RoID4gMDsgZWxzZSBlbXB0eVwiXG4gIHRoZUxpc3RCb3hcbiAgW2tleWJvYXJkQ29udGFpbmVyXT1cImtleWJvYXJkQ29udGFpbmVyXCJcbiAgW2F1dG9BY3RpdmVGaXJzdEl0ZW1dPVwibGlzdEJveEF1dG9BY3RpdmVGaXJzdEl0ZW1cIlxuICAodGhlTGlzdGJveENoYW5nZSk9XCJ0aGVMaXN0Ym94Q2hhbmdlKCRldmVudClcIlxuICBjbGFzcz1cInRoeS1kcm9wZG93bi1tZW51IHRoZS1wbHVnaW4tbWVudS1zY3JvbGwtY29udGFpbmVyIHBiLTIgcHQtMFwiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uTWVudT8ubGVuZ3RoID4gMFwiPlxuICAgIDxkaXYgdGhlTGlzdGJveEdyb3VwIFtob3Jpem9udGFsQ29sdW1uXT1cIjZcIiBjbGFzcz1cImljb24tbWVudSBkLWZsZXggcGwtNSBweS0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGljb25NZW51OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgPGFcbiAgICAgICAgICAqbmdJZj1cIml0ZW0udHlwZSA9PT0gVGhlUGx1Z2luTWVudUl0ZW1UeXBlLmljb25cIlxuICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgIGNsYXNzPVwibXQtMlwiXG4gICAgICAgICAgdGh5QWN0aW9uXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aGVPcHRpb25WYWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICBbdGh5QWN0aW9uSWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICAgIFt0aHlUb29sdGlwXT1cIml0ZW0/Lm5hbWVcIlxuICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICBbdGhlT3B0aW9uRGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgdGhlUHJldmVudERlZmF1bHRcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtKVwiXG4gICAgICAgID48L2E+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8dGh5LWRpdmlkZXIgY2xhc3M9XCJteS0yXCI+PC90aHktZGl2aWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPGRpdiB0aGVMaXN0Ym94R3JvdXA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cE1lbnU7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uaXNNZW51SXRlbSAmJiAhKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCA+IDApICYmIGl0ZW0ua2V5ICE9PSAndGFibGUnXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aGVPcHRpb25WYWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgIHRoZVByZXZlbnREZWZhdWx0XG4gICAgICAgICAgW3RoeURpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aGVPcHRpb25EaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5tZW51SWNvblwiIGNsYXNzPVwibWVudS1pY29uIG1yLTJcIj5cbiAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiaXRlbS5tZW51SWNvbiB8IGdldE1lbnVJY29uOiBzY2VuZUtleVwiPjwvdGh5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtY29udGVudCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtLXRpdGxlIHctMTAwXCI+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmlzTWVudUl0ZW0gJiYgaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID4gMFwiICNoYXNFeHBhbmRlZD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICNkcm9wZG93blRyaWdnZXJzXG4gICAgICAgICAgW3RoeURyb3Bkb3duXT1cImV4cGFuZFwiXG4gICAgICAgICAgdGh5VHJpZ2dlcj1cImhvdmVyXCJcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgW3RoeURpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIHRoZUxpc3Rib3hPcHRpb25cbiAgICAgICAgICBbdGhlT3B0aW9uVmFsdWVdPVwiaXRlbVwiXG4gICAgICAgICAgW3RoZU9wdGlvbkRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aHlQb3BvdmVyT3B0aW9uc109XCJleHBhbmRQb3BvdmVyT3B0aW9uc1wiXG4gICAgICAgICAgY2xhc3M9XCJweS0wXCJcbiAgICAgICAgICB0aGVQcmV2ZW50RGVmYXVsdFxuICAgICAgICAgIFt0aHlQYW5lbENsYXNzXT1cInN1YlBhbmVsQ2xhc3NcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVJdGVtU2VsZWN0aW9uKGl0ZW0pXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLm1lbnVJY29uXCIgY2xhc3M9XCJtZW51LWljb24gbXItMlwiPlxuICAgICAgICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJpdGVtLm1lbnVJY29uIHwgZ2V0TWVudUljb246IHNjZW5lS2V5XCI+PC90aHktaWNvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51LWl0ZW0tdGl0bGUgdy0xMDBcIj5cbiAgICAgICAgICAgICAge3sgaXRlbS5uYW1lIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID4gMFwiPlxuICAgICAgICAgICAgPHRoeS1pY29uIGNsYXNzPVwidGV4dC1tdXRlZFwiIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHRcIj48L3RoeS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDx0aHktZHJvcGRvd24tbWVudSAjZXhwYW5kPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRoZS1wbHVnaW4tbWVudS1jb250YWluZXIgZXhwYW5kLW1lbnVcIiB0aGVMaXN0Ym94R3JvdXA+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImNoaWxkLnR5cGUgPT09IFRoZVBsdWdpbk1lbnVJdGVtVHlwZS5ncm91cFwiXG4gICAgICAgICAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgICAgICAgICB0aGVMaXN0Ym94T3B0aW9uXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgICAgICAgICAgdGhlUHJldmVudERlZmF1bHRcbiAgICAgICAgICAgICAgICAgIFt0aGVPcHRpb25EaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJjaGlsZC5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihjaGlsZClcIlxuICAgICAgICAgICAgICAgICAgW3RoZU9wdGlvblZhbHVlXT1cImNoaWxkXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hpbGQubWVudUljb25cIiBjbGFzcz1cIm1lbnUtaWNvbiBtci0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiY2hpbGQubWVudUljb24gfCBnZXRNZW51SWNvbjogc2NlbmVLZXlcIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS10aXRsZSB3LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IGNoaWxkLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8dGh5LWRpdmlkZXIgKm5nSWY9XCJjaGlsZCA9PT0gJ2RpdmlkZXInXCIgY2xhc3M9XCJteS0yXCI+PC90aHktZGl2aWRlcj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RoeS1kcm9wZG93bi1tZW51PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5pc01lbnVJdGVtICYmIGl0ZW0ua2V5ID09PSAndGFibGUnXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAjZHJvcGRvd25UcmlnZ2Vyc1xuICAgICAgICAgIFt0aHlQb3BvdmVyXT1cInRhYmxlU2VsZWN0XCJcbiAgICAgICAgICB0aHlQbGFjZW1lbnQ9XCJyaWdodFRvcFwiXG4gICAgICAgICAgdGh5VHJpZ2dlcj1cImhvdmVyXCJcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aHlDb25maWddPVwidGFibGVTZWxlY3RQb3BvdmVyQ29uZmlnXCJcbiAgICAgICAgICBbdGhlT3B0aW9uVmFsdWVdPVwiaXRlbVwiXG4gICAgICAgICAgW3RoZU9wdGlvbkRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgIHRoZVByZXZlbnREZWZhdWx0XG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaWNvbiBtci0yXCI+XG4gICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIml0ZW0ubWVudUljb24gfCBnZXRNZW51SWNvbjogc2NlbmVLZXlcIj48L3RoeS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51LWNvbnRlbnQgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS10aXRsZSB3LTEwMFwiPlxuICAgICAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJ0ZXh0LW11dGVkXCIgdGh5SWNvbk5hbWU9XCJhbmdsZS1yaWdodFwiPjwvdGh5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RhYmxlU2VsZWN0PlxuICAgICAgICAgICAgPHRhYmxlLXNlbGVjdFxuICAgICAgICAgICAgICBjbGFzcz1cInBsdWdpbi1tZW51LXRhYmxlIHRoZS10YWJsZS1zZWxlY3Rvci1wYW5lbFwiXG4gICAgICAgICAgICAgIFtlZGl0b3JdPVwiZWRpdG9yXCJcbiAgICAgICAgICAgICAgW2JlZm9yZUluc2VydF09XCJyZW1vdmVLZXl3b3Jkc1wiXG4gICAgICAgICAgICA+PC90YWJsZS1zZWxlY3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmlzTWVudUl0ZW1cIiAjbWVudUdyb3VwPlxuICAgICAgICA8dGh5LWRyb3Bkb3duLW1lbnUtZ3JvdXAgY2xhc3M9XCJmb250LXNpemUtc21cIiBbdGh5VGl0bGVdPVwiaXRlbS5ncm91cE5hbWVcIj48L3RoeS1kcm9wZG93bi1tZW51LWdyb3VwPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG4gIDxkaXYgY2xhc3M9XCJlbXB0eSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICA8dGh5LWVtcHR5IFt0aHlNZXNzYWdlXT1cInRoeU1lc3NhZ2VcIj48L3RoeS1lbXB0eT5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
241
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvcGx1Z2luLW1lbnUvcGx1Z2luLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvcGx1Z2luLW1lbnUvcGx1Z2luLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQXFCLFNBQVMsRUFBYyxXQUFXLEVBQUUsS0FBSyxFQUFrQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0gsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IsRUFBRSxvQkFBb0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBaUIsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBaUIsTUFBTSxPQUFP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Qix3QkFBd0IsMkhBQ3hCLHlCQUF5QixnSkFDekIsMEJBQTBCLGlHQUMxQiw0QkFBNEI7OzJGQUd2QixzQkFBc0I7a0JBM0JsQyxTQUFTOytCQUNJLGlCQUFpQixjQUVmLElBQUksV0FDUDt3QkFDTCxJQUFJO3dCQUNKLEtBQUs7d0JBQ0wsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxTQUFTO3dCQUNULFVBQVU7d0JBQ1YsY0FBYzt3QkFDZCx3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6QiwwQkFBMEI7d0JBQzFCLDRCQUE0QjtxQkFDL0I7Z0tBd0NpRSxnQkFBZ0I7c0JBQWpGLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7Z0JBRTFDLGtCQUFrQjtzQkFBdkMsV0FBVzt1QkFBQyxPQUFPO2dCQUVYLE1BQU07c0JBQWQsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsbUJBQW1CO3NCQUEzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBOZ1pvbmUsIE9uSW5pdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUFjdGlvbiB9IGZyb20gJ25neC10ZXRoeXMvYWN0aW9uJztcbmltcG9ydCB7IFNjcm9sbFRvU2VydmljZSB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlEaXZpZGVyIH0gZnJvbSAnbmd4LXRldGh5cy9kaXZpZGVyJztcbmltcG9ydCB7IFRoeURyb3Bkb3duRGlyZWN0aXZlLCBUaHlEcm9wZG93bk1lbnVDb21wb25lbnQsIFRoeURyb3Bkb3duTWVudUdyb3VwLCBUaHlEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy9kcm9wZG93bic7XG5pbXBvcnQgeyBUaHlFbXB0eU1vZHVsZSB9IGZyb20gJ25neC10ZXRoeXMvZW1wdHknO1xuaW1wb3J0IHsgVGh5SWNvbiB9IGZyb20gJ25neC10ZXRoeXMvaWNvbic7XG5pbXBvcnQgeyBUaHlJbnB1dFNlYXJjaCB9IGZyb20gJ25neC10ZXRoeXMvaW5wdXQnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlckRpcmVjdGl2ZSwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBUaHlUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy90b29sdGlwJztcbmltcG9ydCB7IEVkaXRvciwgTm9kZSwgUGF0aFJlZiwgVGV4dCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3IgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IERlZmF1bHRQbHVnaW5NZW51LCBUaGVQbHVnaW5NZW51SXRlbVR5cGUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgYnVpbGRQbHVnaW5NZW51LCBidWlsZFBsdWdpbk1lbnVJdGVtTWFwIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBUaGVQbHVnaW5NZW51LCBUaGVQbHVnaW5NZW51R3JvdXAsIFRoZVBsdWdpbk1lbnVJdGVtLCBUaGVQbHVnaW5NZW51SXRlbUNvbmZpZywgVGhlUGx1Z2luTWVudUl0ZW1XcmFwIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBQbHVnaW5NZW51UGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcbmltcG9ydCB7IFF1aWNrSW5zZXJ0RWRpdG9yIH0gZnJvbSAnLi4vLi4vcGx1Z2lucy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IHJlZm9jdXMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBUaGVQcmV2ZW50RGVmYXVsdERpcmVjdGl2ZSB9IGZyb20gJy4uL2FjdGlvbi9wcmV2ZW50LWRlZmF1bHQnO1xuaW1wb3J0IHsgVGhlTGlzdGJveENoYW5nZUV2ZW50LCBUaGVMaXN0Ym94RGlyZWN0aXZlLCBUaGVMaXN0Ym94R3JvdXBEaXJlY3RpdmUsIFRoZUxpc3Rib3hPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9saXN0Ym94L2xpc3Rib3gnO1xuaW1wb3J0IHsgVGhlVGFibGVTZWxlY3QgfSBmcm9tICcuLi90YWJsZS1zZWxlY3QvdGFibGUtc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXBsdWdpbi1tZW51JyxcbiAgICB0ZW1wbGF0ZVVybDogJ3BsdWdpbi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdJZixcbiAgICAgICAgTmdGb3IsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBUaHlFbXB0eU1vZHVsZSxcbiAgICAgICAgVGhlVGFibGVTZWxlY3QsXG4gICAgICAgIFRoeUljb24sXG4gICAgICAgIFRoeUFjdGlvbixcbiAgICAgICAgVGh5RGl2aWRlcixcbiAgICAgICAgVGh5SW5wdXRTZWFyY2gsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51R3JvdXAsXG4gICAgICAgIFBsdWdpbk1lbnVQaXBlLFxuICAgICAgICBUaHlUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICBUaHlQb3BvdmVyRGlyZWN0aXZlLFxuICAgICAgICBUaGVMaXN0Ym94RGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGhlTGlzdGJveEdyb3VwRGlyZWN0aXZlLFxuICAgICAgICBUaGVMaXN0Ym94T3B0aW9uRGlyZWN0aXZlLFxuICAgICAgICBUaGVQcmV2ZW50RGVmYXVsdERpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlUGx1Z2luTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgbGlzdEJveEF1dG9BY3RpdmVGaXJzdEl0ZW0gPSB0cnVlO1xuXG4gICAgcGF0aFJlZjogUGF0aFJlZjtcblxuICAgIGtleWJvYXJkQ29udGFpbmVyOiBIVE1MRWxlbWVudDtcblxuICAgIF9wbHVnaW5NZW51OiBUaGVQbHVnaW5NZW51O1xuXG4gICAgZ3JvdXBNZW51OiBUaGVQbHVnaW5NZW51ID0gW107XG5cbiAgICBpY29uTWVudTogVGhlUGx1Z2luTWVudSA9IFtdO1xuXG4gICAgVGhlUGx1Z2luTWVudUl0ZW1UeXBlID0gVGhlUGx1Z2luTWVudUl0ZW1UeXBlO1xuXG4gICAga2V5V29yZHM6IHN0cmluZztcblxuICAgIHRoeU1lc3NhZ2UgPSAn5pqC5peg5pWw5o2uJztcblxuICAgIHNjcm9sbENvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XG5cbiAgICBzZWFyY2hHcm91cDogVGhlUGx1Z2luTWVudUdyb3VwID0ge1xuICAgICAgICBncm91cE5hbWU6ICfmkJzntKLnu5PmnpwnXG4gICAgfTtcblxuICAgIGV4cGFuZFBvcG92ZXJPcHRpb25zID0ge1xuICAgICAgICBwbGFjZW1lbnQ6ICdyaWdodFRvcCcsXG4gICAgICAgIHdpZHRoOiAnMjYycHgnLFxuICAgICAgICBtaW5XaWR0aDogJzI2MnB4J1xuICAgIH07XG5cbiAgICB0YWJsZVNlbGVjdFBvcG92ZXJDb25maWcgPSB7XG4gICAgICAgIHBhbmVsQ2xhc3M6ICdwbHVnaW4tbWVudS10YWJsZS1zZWxlY3QtY29udGFpbmVyJyxcbiAgICAgICAgbWluV2lkdGg6IDAsXG4gICAgICAgIC8vICDpgb/lhY3ph43lhplcbiAgICAgICAgb3JpZ2luQWN0aXZlQ2xhc3M6ICd0aHktcG9wb3Zlci1vcmlnaW4tYWN0aXZlJ1xuICAgIH07XG5cbiAgICBAVmlld0NoaWxkcmVuKCdkcm9wZG93blRyaWdnZXJzJywgeyByZWFkOiBUaHlEcm9wZG93bkRpcmVjdGl2ZSB9KSBkcm9wZG93blRyaWdnZXJzOiBUaHlEcm9wZG93bkRpcmVjdGl2ZVtdO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNvbnRhaW5lckNsYXNzTmFtZSA9IGB0aGUtcGx1Z2luLW1lbnUtY29udGFpbmVyYDtcblxuICAgIEBJbnB1dCgpIGVkaXRvcjogRWRpdG9yO1xuXG4gICAgQElucHV0KCkgdGhlRGlzcGxheVNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgdGhlUGx1Z2luTWVudTogVGhlUGx1Z2luTWVudUl0ZW1Db25maWdbXTtcblxuICAgIEBJbnB1dCgpIHNjZW5lS2V5Pzogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgc3ViUGFuZWxDbGFzczogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgICBASW5wdXQoKSBhdXRvQWN0aXZlRmlyc3RJdGVtOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHRoeVBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8VGhlUGx1Z2luTWVudUNvbXBvbmVudD5cbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmF1dG9BY3RpdmVGaXJzdEl0ZW0gfHwgdGhpcy50aGVEaXNwbGF5U2VhcmNoKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RCb3hBdXRvQWN0aXZlRmlyc3RJdGVtID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbml0aWFsaXplU2VhcmNoKCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVBsdWdpbk1lbnUoKTtcbiAgICAgICAgdGhpcy5idWlsZE1lbnVzKCk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxDb250YWluZXIgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudGhlLXBsdWdpbi1tZW51LXNjcm9sbC1jb250YWluZXInKTtcbiAgICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZVNlYXJjaCgpIHtcbiAgICAgICAgaWYgKHRoaXMudGhlRGlzcGxheVNlYXJjaCkge1xuICAgICAgICAgICAgdGhpcy5rZXlib2FyZENvbnRhaW5lciA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8g6K6w5L2P5L2N572uXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZWRpdG9yLnNlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdGhSZWYgPSBFZGl0b3IucGF0aFJlZih0aGlzLmVkaXRvciwgdGhpcy5lZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmtleWJvYXJkQ29udGFpbmVyID0gQW5ndWxhckVkaXRvci50b0RPTU5vZGUodGhpcy5lZGl0b3IsIHRoaXMuZWRpdG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGluaXRpYWxpemVQbHVnaW5NZW51KCkge1xuICAgICAgICBjb25zdCBjdXJyZW50TWVudSA9IHRoaXMudGhlUGx1Z2luTWVudSB8fCBEZWZhdWx0UGx1Z2luTWVudTtcbiAgICAgICAgY29uc3QgbWVudUl0ZW1zTWFwID0gYnVpbGRQbHVnaW5NZW51SXRlbU1hcCh0aGlzLmVkaXRvcik7XG4gICAgICAgIHRoaXMuX3BsdWdpbk1lbnUgPSBidWlsZFBsdWdpbk1lbnUobWVudUl0ZW1zTWFwLCBjdXJyZW50TWVudSk7XG4gICAgfVxuXG4gICAgYnVpbGRNZW51cygpIHtcbiAgICAgICAgdGhpcy5pY29uTWVudSA9IFtdO1xuICAgICAgICB0aGlzLmdyb3VwTWVudSA9IFtdO1xuXG4gICAgICAgIHRoaXMuX3BsdWdpbk1lbnUuZm9yRWFjaCgoaXRlbTogVGhlUGx1Z2luTWVudUl0ZW1XcmFwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpc0hpZGRlbiA9IGl0ZW0/LmlzSGlkZGVuICYmIGl0ZW0uaXNIaWRkZW4odGhpcy5lZGl0b3IpO1xuXG4gICAgICAgICAgICBpZiAoVGhlUGx1Z2luTWVudS5pc01lbnVJdGVtKGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgaXRlbS5pc01lbnVJdGVtID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpdGVtLmRpc2FibGVkID0gaXRlbS5pc0Rpc2FibGVkICYmIGl0ZW0uaXNEaXNhYmxlZCh0aGlzLmVkaXRvcik7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMua2V5V29yZHMgJiYgIWlzSGlkZGVuICYmIGl0ZW0ua2V5d29yZHMgJiYgaXRlbS5rZXl3b3Jkcz8uaW5jbHVkZXModGhpcy5rZXlXb3JkcykpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKCFpc0hpZGRlbiAmJiBpdGVtLmNoaWxkcmVuICYmIGl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmNoaWxkcmVuPy5mb3JFYWNoKChjaGlsZDogVGhlUGx1Z2luTWVudUl0ZW1XcmFwIHwgJ2RpdmlkZXInKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGQgPT09ICdkaXZpZGVyJykgcmV0dXJuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5pc01lbnVJdGVtID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkLmRpc2FibGVkID0gY2hpbGQuaXNEaXNhYmxlZCAmJiBjaGlsZC5pc0Rpc2FibGVkKHRoaXMuZWRpdG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNIaWRkZW5DaGlkID0gaXRlbS5pc0hpZGRlbiAmJiBpdGVtLmlzSGlkZGVuKHRoaXMuZWRpdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmtleVdvcmRzICYmICFpc0hpZGRlbkNoaWQgJiYgY2hpbGQua2V5d29yZHMgJiYgY2hpbGQua2V5d29yZHM/LmluY2x1ZGVzKHRoaXMua2V5V29yZHMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUucHVzaChjaGlsZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0aGlzLmtleVdvcmRzICYmICFpc0hpZGRlbikge1xuICAgICAgICAgICAgICAgIGl0ZW0/LnR5cGUgPT09IFRoZVBsdWdpbk1lbnVJdGVtVHlwZS5pY29uID8gdGhpcy5pY29uTWVudS5wdXNoKGl0ZW0pIDogdGhpcy5ncm91cE1lbnUucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMua2V5V29yZHMgJiYgdGhpcy5ncm91cE1lbnUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUudW5zaGlmdCh0aGlzLnNlYXJjaEdyb3VwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5rZXlXb3Jkcykge1xuICAgICAgICAgICAgY29uc3QgbWVudXMgPSBbLi4udGhpcy5ncm91cE1lbnVdO1xuICAgICAgICAgICAgdGhpcy5ncm91cE1lbnUgPSBtZW51cy5maWx0ZXIoKGl0ZW06IFRoZVBsdWdpbk1lbnVJdGVtV3JhcCwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzR3JvdXBNZW51ID0gVGhlUGx1Z2luTWVudS5pc01lbnVHcm91cChpdGVtKTtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXh0TWVudSA9IG1lbnVzW2luZGV4ICsgMV07XG4gICAgICAgICAgICAgICAgY29uc3QgaXNMYXN0TWVudSA9IGluZGV4ID09PSBtZW51cy5sZW5ndGggLSAxO1xuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAobmV4dE1lbnUgJiYgaXNHcm91cE1lbnUgJiYgVGhlUGx1Z2luTWVudS5pc01lbnVHcm91cChuZXh0TWVudSkpIHx8XG4gICAgICAgICAgICAgICAgICAgIChpc0xhc3RNZW51ICYmIGlzR3JvdXBNZW51KSB8fFxuICAgICAgICAgICAgICAgICAgICAoaXRlbT8uY2hpbGRyZW4gJiYgaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA8PSAwKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGhhbmRsZUl0ZW1TZWxlY3Rpb24obWVudUl0ZW06IFRoZVBsdWdpbk1lbnVJdGVtKSB7XG4gICAgICAgIGlmIChtZW51SXRlbS5pc0Rpc2FibGVkICYmIG1lbnVJdGVtLmlzRGlzYWJsZWQodGhpcy5lZGl0b3IpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmVkaXRvci5zZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJlZm9jdXModGhpcy5lZGl0b3IpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy50aGVEaXNwbGF5U2VhcmNoKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUtleXdvcmRzKCk7XG4gICAgICAgIH1cbiAgICAgICAgbWVudUl0ZW0uZXhlY3V0ZSh0aGlzLmVkaXRvcik7XG4gICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICBRdWlja0luc2VydEVkaXRvci51cGRhdGVQbHVnaW5NZW51UmVmKHRoaXMuZWRpdG9yLCBudWxsKTtcbiAgICB9XG5cbiAgICByZW1vdmVLZXl3b3JkcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IE5vZGUuZ2V0KHRoaXMuZWRpdG9yLCB0aGlzLmVkaXRvci5zZWxlY3Rpb24uYW5jaG9yLnBhdGgpIGFzIFRleHQ7XG4gICAgICAgIGNvbnN0IG5vZGVTdHJpbmcgPSBOb2RlLnN0cmluZyhub2RlKTtcbiAgICAgICAgY29uc3QgaXNTdGFydFdpdGhIb3RrZXkgPSBub2RlU3RyaW5nLnN0YXJ0c1dpdGgoJy8nKTtcbiAgICAgICAgY29uc3QgaXNJbmNsdWRlS2V5d29yZHMgPSBub2RlU3RyaW5nLnRvTG9jYWxlTG93ZXJDYXNlKCkudHJpbSgpLmluY2x1ZGVzKHRoaXMua2V5V29yZHMpO1xuICAgICAgICBpZiAobm9kZSAmJiBub2RlU3RyaW5nLmxlbmd0aCA+IDAgJiYgKGlzU3RhcnRXaXRoSG90a2V5IHx8IGlzSW5jbHVkZUtleXdvcmRzKSkge1xuICAgICAgICAgICAgRWRpdG9yLmRlbGV0ZUJhY2t3YXJkKHRoaXMuZWRpdG9yLCB7IHVuaXQ6ICdibG9jaycgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgdXBkYXRlS2V5d29yZHMoa2V5d29yZHM6IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5hdXRvQWN0aXZlRmlyc3RJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RCb3hBdXRvQWN0aXZlRmlyc3RJdGVtID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmtleVdvcmRzID0ga2V5d29yZHMudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIHRoaXMuYnVpbGRNZW51cygpO1xuICAgICAgICBpZiAodGhpcy5zY3JvbGxDb250YWluZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aGVMaXN0Ym94Q2hhbmdlKGV2ZW50OiBUaGVMaXN0Ym94Q2hhbmdlRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdzZWxlY3QnKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3Rpb24oZXZlbnQub3B0aW9uLnRoZU9wdGlvblZhbHVlIGFzIFRoZVBsdWdpbk1lbnVJdGVtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2NoaWxkJykge1xuICAgICAgICAgICAgY29uc3QgZHJvcGRvd24gPSB0aGlzLmZpbmREcm9wZG93blRyaWdnZXIoZXZlbnQub3B0aW9uLnBhcmVudE9wdGlvbik7XG4gICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIGRyb3Bkb3duLnNob3coKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAncGFyZW50Jykge1xuICAgICAgICAgICAgY29uc3QgZHJvcGRvd24gPSB0aGlzLmZpbmREcm9wZG93blRyaWdnZXIoZXZlbnQub3B0aW9uKTtcbiAgICAgICAgICAgIGRyb3Bkb3duLmhpZGUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ3R1cm4nICYmICFldmVudC5vcHRpb24ucGFyZW50T3B0aW9uKSB7XG4gICAgICAgICAgICBTY3JvbGxUb1NlcnZpY2Uuc2Nyb2xsVG9FbGVtZW50KGV2ZW50Lm9wdGlvbi5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc2Nyb2xsQ29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZpbmREcm9wZG93blRyaWdnZXIob3B0aW9uOiBUaGVMaXN0Ym94T3B0aW9uRGlyZWN0aXZlKSB7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duID0gdGhpcy5kcm9wZG93blRyaWdnZXJzLmZpbmQodmFsdWUgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlWydlbGVtZW50UmVmJ10ubmF0aXZlRWxlbWVudCA9PT0gb3B0aW9uLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBkcm9wZG93bjtcbiAgICB9XG5cbiAgICB0cmFja0J5Rm4oaW5kZXg6IFRoZVBsdWdpbk1lbnVJdGVtLCBpdGVtOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0/LmtleSA/PyBpbmRleDtcbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwidGhlRGlzcGxheVNlYXJjaFwiIGNsYXNzPVwibWVudS1zZWFyY2ggcHgtNSBwdC01IHBiLTJcIj5cbiAgPHRoeS1pbnB1dC1zZWFyY2ggWyhuZ01vZGVsKV09XCJrZXlXb3Jkc1wiIHBsYWNlaG9sZGVyPVwi5pCc57SiXCIgdGh5SWNvblBvc2l0aW9uPVwiYWZ0ZXJcIiAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVLZXl3b3JkcyhrZXlXb3JkcylcIj5cbiAgPC90aHktaW5wdXQtc2VhcmNoPlxuPC9kaXY+XG5cbjxkaXZcbiAgKm5nSWY9XCJncm91cE1lbnUubGVuZ3RoID4gMDsgZWxzZSBlbXB0eVwiXG4gIHRoZUxpc3RCb3hcbiAgW2tleWJvYXJkQ29udGFpbmVyXT1cImtleWJvYXJkQ29udGFpbmVyXCJcbiAgW2F1dG9BY3RpdmVGaXJzdEl0ZW1dPVwibGlzdEJveEF1dG9BY3RpdmVGaXJzdEl0ZW1cIlxuICAodGhlTGlzdGJveENoYW5nZSk9XCJ0aGVMaXN0Ym94Q2hhbmdlKCRldmVudClcIlxuICBjbGFzcz1cInRoeS1kcm9wZG93bi1tZW51IHRoZS1wbHVnaW4tbWVudS1zY3JvbGwtY29udGFpbmVyIHBiLTIgcHQtMFwiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uTWVudT8ubGVuZ3RoID4gMFwiPlxuICAgIDxkaXYgdGhlTGlzdGJveEdyb3VwIFtob3Jpem9udGFsQ29sdW1uXT1cIjZcIiBjbGFzcz1cImljb24tbWVudSBkLWZsZXggcGwtNSBweS0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGljb25NZW51OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgPGFcbiAgICAgICAgICAqbmdJZj1cIml0ZW0udHlwZSA9PT0gVGhlUGx1Z2luTWVudUl0ZW1UeXBlLmljb25cIlxuICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgIGNsYXNzPVwibXQtMlwiXG4gICAgICAgICAgdGh5QWN0aW9uXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aGVPcHRpb25WYWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICBbdGh5QWN0aW9uSWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICAgIFt0aHlUb29sdGlwXT1cIml0ZW0/Lm5hbWVcIlxuICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICBbdGhlT3B0aW9uRGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgdGhlUHJldmVudERlZmF1bHRcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtKVwiXG4gICAgICAgID48L2E+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8dGh5LWRpdmlkZXIgY2xhc3M9XCJteS0yXCI+PC90aHktZGl2aWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPGRpdiB0aGVMaXN0Ym94R3JvdXA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cE1lbnU7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uaXNNZW51SXRlbSAmJiAhKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCA+IDApICYmIGl0ZW0ua2V5ICE9PSAndGFibGUnXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aGVPcHRpb25WYWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgIHRoZVByZXZlbnREZWZhdWx0XG4gICAgICAgICAgW3RoeURpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aGVPcHRpb25EaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5tZW51SWNvblwiIGNsYXNzPVwibWVudS1pY29uIG1yLTJcIj5cbiAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiaXRlbS5tZW51SWNvbiB8IGdldE1lbnVJY29uOiBzY2VuZUtleVwiPjwvdGh5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtY29udGVudCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtLXRpdGxlIHctMTAwXCI+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmlzTWVudUl0ZW0gJiYgaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID4gMFwiICNoYXNFeHBhbmRlZD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICNkcm9wZG93blRyaWdnZXJzXG4gICAgICAgICAgW3RoeURyb3Bkb3duXT1cImV4cGFuZFwiXG4gICAgICAgICAgdGh5VHJpZ2dlcj1cImhvdmVyXCJcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgW3RoeURpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIHRoZUxpc3Rib3hPcHRpb25cbiAgICAgICAgICBbdGhlT3B0aW9uVmFsdWVdPVwiaXRlbVwiXG4gICAgICAgICAgW3RoZU9wdGlvbkRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aHlQb3BvdmVyT3B0aW9uc109XCJleHBhbmRQb3BvdmVyT3B0aW9uc1wiXG4gICAgICAgICAgY2xhc3M9XCJweS0wXCJcbiAgICAgICAgICB0aGVQcmV2ZW50RGVmYXVsdFxuICAgICAgICAgIFt0aHlQYW5lbENsYXNzXT1cInN1YlBhbmVsQ2xhc3NcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVJdGVtU2VsZWN0aW9uKGl0ZW0pXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLm1lbnVJY29uXCIgY2xhc3M9XCJtZW51LWljb24gbXItMlwiPlxuICAgICAgICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJpdGVtLm1lbnVJY29uIHwgZ2V0TWVudUljb246IHNjZW5lS2V5XCI+PC90aHktaWNvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51LWl0ZW0tdGl0bGUgdy0xMDBcIj5cbiAgICAgICAgICAgICAge3sgaXRlbS5uYW1lIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5jaGlsZHJlbj8ubGVuZ3RoID4gMFwiPlxuICAgICAgICAgICAgPHRoeS1pY29uIGNsYXNzPVwidGV4dC1tdXRlZFwiIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHRcIj48L3RoeS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDx0aHktZHJvcGRvd24tbWVudSAjZXhwYW5kPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRoZS1wbHVnaW4tbWVudS1jb250YWluZXIgZXhwYW5kLW1lbnVcIiB0aGVMaXN0Ym94R3JvdXA+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImNoaWxkLnR5cGUgPT09IFRoZVBsdWdpbk1lbnVJdGVtVHlwZS5ncm91cFwiXG4gICAgICAgICAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgICAgICAgICB0aGVMaXN0Ym94T3B0aW9uXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgICAgICAgICAgdGhlUHJldmVudERlZmF1bHRcbiAgICAgICAgICAgICAgICAgIFt0aGVPcHRpb25EaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJjaGlsZC5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGlvbihjaGlsZClcIlxuICAgICAgICAgICAgICAgICAgW3RoZU9wdGlvblZhbHVlXT1cImNoaWxkXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hpbGQubWVudUljb25cIiBjbGFzcz1cIm1lbnUtaWNvbiBtci0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiY2hpbGQubWVudUljb24gfCBnZXRNZW51SWNvbjogc2NlbmVLZXlcIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS10aXRsZSB3LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IGNoaWxkLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8dGh5LWRpdmlkZXIgKm5nSWY9XCJjaGlsZCA9PT0gJ2RpdmlkZXInXCIgY2xhc3M9XCJteS0yXCI+PC90aHktZGl2aWRlcj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RoeS1kcm9wZG93bi1tZW51PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5pc01lbnVJdGVtICYmIGl0ZW0ua2V5ID09PSAndGFibGUnXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAjZHJvcGRvd25UcmlnZ2Vyc1xuICAgICAgICAgIFt0aHlQb3BvdmVyXT1cInRhYmxlU2VsZWN0XCJcbiAgICAgICAgICB0aHlQbGFjZW1lbnQ9XCJyaWdodFRvcFwiXG4gICAgICAgICAgdGh5VHJpZ2dlcj1cImhvdmVyXCJcbiAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgdGhlTGlzdGJveE9wdGlvblxuICAgICAgICAgIFt0aHlDb25maWddPVwidGFibGVTZWxlY3RQb3BvdmVyQ29uZmlnXCJcbiAgICAgICAgICBbdGhlT3B0aW9uVmFsdWVdPVwiaXRlbVwiXG4gICAgICAgICAgW3RoZU9wdGlvbkRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICBjbGFzcz1cInB5LTBcIlxuICAgICAgICAgIHRoZVByZXZlbnREZWZhdWx0XG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaWNvbiBtci0yXCI+XG4gICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIml0ZW0ubWVudUljb24gfCBnZXRNZW51SWNvbjogc2NlbmVLZXlcIj48L3RoeS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51LWNvbnRlbnQgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS10aXRsZSB3LTEwMFwiPlxuICAgICAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJ0ZXh0LW11dGVkXCIgdGh5SWNvbk5hbWU9XCJhbmdsZS1yaWdodFwiPjwvdGh5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3RhYmxlU2VsZWN0PlxuICAgICAgICAgICAgPHRhYmxlLXNlbGVjdFxuICAgICAgICAgICAgICBjbGFzcz1cInBsdWdpbi1tZW51LXRhYmxlIHRoZS10YWJsZS1zZWxlY3Rvci1wYW5lbFwiXG4gICAgICAgICAgICAgIFtlZGl0b3JdPVwiZWRpdG9yXCJcbiAgICAgICAgICAgICAgW2JlZm9yZUluc2VydF09XCJyZW1vdmVLZXl3b3Jkc1wiXG4gICAgICAgICAgICA+PC90YWJsZS1zZWxlY3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmlzTWVudUl0ZW1cIiAjbWVudUdyb3VwPlxuICAgICAgICA8dGh5LWRyb3Bkb3duLW1lbnUtZ3JvdXAgY2xhc3M9XCJmb250LXNpemUtc21cIiBbdGh5VGl0bGVdPVwiaXRlbS5ncm91cE5hbWVcIj48L3RoeS1kcm9wZG93bi1tZW51LWdyb3VwPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG4gIDxkaXYgY2xhc3M9XCJlbXB0eSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICA8dGh5LWVtcHR5IFt0aHlNZXNzYWdlXT1cInRoeU1lc3NhZ2VcIj48L3RoeS1lbXB0eT5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -33,10 +33,10 @@ export class TheTableSelect {
|
|
|
33
33
|
this.maxRowIndex = -1;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheTableSelect, deps: [{ token: i1.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: TheTableSelect, isStandalone: true, selector: "table-select", inputs: { optionsParam: "optionsParam", editor: "editor", beforeInsert: "beforeInsert" }, ngImport: i0, template: "<div class=\"table-selector-container\">\n <div *ngFor=\"let item of tableData; let rowIndex = index\" class=\"selector-row\" (mousedown)=\"executeTable($event)\">\n <span\n *ngFor=\"let item of tableData; let colIndex = index\"\n [ngClass]=\"{ 'active-cell': rowIndex <= maxRowIndex && colIndex <= maxColIndex, 'selector-cell': true }\"\n (mouseenter)=\"onSelectCells(rowIndex, colIndex)\"\n >\n </span>\n </div>\n <span class=\"selector-text\">{{ maxRowIndex + 1 }} x {{ maxColIndex + 1 }}</span>\n</div>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
38
38
|
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TheTableSelect, decorators: [{
|
|
40
40
|
type: Component,
|
|
41
41
|
args: [{ selector: 'table-select', standalone: true, imports: [NgFor, NgClass], template: "<div class=\"table-selector-container\">\n <div *ngFor=\"let item of tableData; let rowIndex = index\" class=\"selector-row\" (mousedown)=\"executeTable($event)\">\n <span\n *ngFor=\"let item of tableData; let colIndex = index\"\n [ngClass]=\"{ 'active-cell': rowIndex <= maxRowIndex && colIndex <= maxColIndex, 'selector-cell': true }\"\n (mouseenter)=\"onSelectCells(rowIndex, colIndex)\"\n >\n </span>\n </div>\n <span class=\"selector-text\">{{ maxRowIndex + 1 }} x {{ maxColIndex + 1 }}</span>\n</div>\n" }]
|
|
42
42
|
}], ctorParameters: () => [{ type: i1.ThyPopoverRef }], propDecorators: { optionsParam: [{
|