@worktile/theia 3.0.3 → 3.0.6
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/bundles/worktile-theia.umd.js +277 -371
- package/bundles/worktile-theia.umd.js.map +1 -1
- package/components/toolbar/toolbar.component.d.ts +1 -2
- package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +3 -13
- package/components/toolbar-group/toolbar-group.component.d.ts +2 -2
- package/components/toolbar-item/toolbar-item.component.d.ts +3 -11
- package/constants/node-types.d.ts +2 -1
- package/core/toolbar-item/base-toolbar-item.d.ts +29 -0
- package/editor.module.d.ts +42 -44
- package/esm2015/components/inline-toolbar/inline-toolbar.component.js +2 -2
- package/esm2015/components/toolbar/toolbar.component.js +14 -24
- package/esm2015/components/toolbar-dropdown/toolbar-dropdown.component.js +11 -41
- package/esm2015/components/toolbar-group/toolbar-group.component.js +4 -4
- package/esm2015/components/toolbar-item/toolbar-item.component.js +24 -41
- package/esm2015/constants/node-types.js +3 -2
- package/esm2015/core/toolbar-item/base-toolbar-item.js +92 -0
- package/esm2015/editor.component.js +2 -2
- package/esm2015/editor.module.js +1 -4
- package/esm2015/interfaces/plugins/plugins.js +1 -1
- package/esm2015/interfaces/toolbar.js +2 -2
- package/esm2015/plugins/align/align.editor.js +3 -7
- package/esm2015/plugins/align/align.plugin.js +7 -4
- package/esm2015/plugins/code/code.component.js +9 -6
- package/esm2015/plugins/color/color.plugin.js +6 -3
- package/esm2015/plugins/color/toolbar-item.component.js +14 -23
- package/esm2015/plugins/common/reset-type.plugin.js +3 -3
- package/esm2015/plugins/deserializers/deserialize-html.plugin.js +3 -3
- package/esm2015/plugins/font-size/font-size.editor.js +8 -14
- package/esm2015/plugins/heading/heading.editor.js +3 -2
- package/esm2015/plugins/heading/heading.plugin.js +2 -2
- package/esm2015/plugins/indent/indent.editor.js +1 -10
- package/esm2015/plugins/indent/indent.plugin.js +8 -7
- package/esm2015/plugins/inline-code/inline-code.plugin.js +6 -3
- package/esm2015/plugins/link/link.plugin.js +6 -3
- package/esm2015/plugins/mark/mark.plugin.js +6 -3
- package/esm2015/plugins/public-api.js +1 -2
- package/esm2015/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.js +2 -2
- package/esm2015/plugins/table/components/table.component.js +4 -1
- package/esm2015/plugins/table/toolbar-item.component.js +10 -20
- package/esm2015/plugins/vertical-align/toolbar-item.component.js +6 -20
- package/esm2015/plugins/vertical-align/vertical-align.editor.js +2 -2
- package/esm2015/public-api.js +2 -2
- package/esm2015/queries/get-insert-elements-path.js +1 -1
- package/esm2015/queries/get-plugin-by-toolbar.js +13 -0
- package/esm2015/queries/get-toolbar-disabled.js +14 -0
- package/esm2015/queries/index.js +4 -2
- package/esm2015/utils/fragment.js +7 -4
- package/fesm2015/worktile-theia.js +244 -336
- package/fesm2015/worktile-theia.js.map +1 -1
- package/interfaces/plugins/plugins.d.ts +5 -2
- package/interfaces/toolbar.d.ts +4 -1
- package/package.json +1 -1
- package/plugins/code/code.component.d.ts +2 -2
- package/plugins/color/toolbar-item.component.d.ts +3 -9
- package/plugins/font-size/font-size.editor.d.ts +0 -1
- package/plugins/heading/heading.plugin.d.ts +3 -3
- package/plugins/indent/indent.editor.d.ts +0 -1
- package/plugins/public-api.d.ts +0 -1
- package/plugins/table/toolbar-item.component.d.ts +3 -9
- package/plugins/vertical-align/toolbar-item.component.d.ts +5 -13
- package/public-api.d.ts +1 -1
- package/queries/get-plugin-by-toolbar.d.ts +3 -0
- package/queries/get-toolbar-disabled.d.ts +4 -0
- package/queries/index.d.ts +3 -1
- package/utils/fragment.d.ts +2 -2
- package/components/toolbar-base-item/toolbar-base-item.component.d.ts +0 -11
- package/esm2015/components/toolbar-base-item/toolbar-base-item.component.js +0 -24
- package/esm2015/plugins/indent/toolbar-item.component.js +0 -115
- package/plugins/indent/toolbar-item.component.d.ts +0 -36
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Component, Input, HostListener, ViewChild
|
|
1
|
+
import { Component, Input, HostListener, ViewChild } from '@angular/core';
|
|
2
2
|
import { DropdownMode } from '../../constants/toolbar';
|
|
3
|
-
import {
|
|
3
|
+
import { TheBaseToolbarDropdown } from '../../core/toolbar-item/base-toolbar-item';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "ngx-tethys/popover";
|
|
6
6
|
import * as i2 from "@angular/cdk/overlay";
|
|
@@ -9,23 +9,14 @@ import * as i4 from "ngx-tethys/icon";
|
|
|
9
9
|
import * as i5 from "ngx-tethys/action-menu";
|
|
10
10
|
import * as i6 from "@angular/common";
|
|
11
11
|
import * as i7 from "ngx-tethys/tooltip";
|
|
12
|
-
export class TheToolbarDropdownComponent extends
|
|
12
|
+
export class TheToolbarDropdownComponent extends TheBaseToolbarDropdown {
|
|
13
13
|
constructor(elementRef, thyPopover, viewContainerRef, overlay) {
|
|
14
14
|
super();
|
|
15
15
|
this.elementRef = elementRef;
|
|
16
16
|
this.thyPopover = thyPopover;
|
|
17
17
|
this.viewContainerRef = viewContainerRef;
|
|
18
18
|
this.overlay = overlay;
|
|
19
|
-
this.mode = DropdownMode.text;
|
|
20
19
|
this.dropdownMode = DropdownMode;
|
|
21
|
-
this.disabled = false;
|
|
22
|
-
}
|
|
23
|
-
set item(i) {
|
|
24
|
-
this._item = i;
|
|
25
|
-
this.activeMenu = i;
|
|
26
|
-
}
|
|
27
|
-
get item() {
|
|
28
|
-
return this._item;
|
|
29
20
|
}
|
|
30
21
|
get isOpen() {
|
|
31
22
|
return this.dropdownPopoverRef && this.dropdownPopoverRef.getOverlayRef() && this.dropdownPopoverRef.getOverlayRef().hasAttached();
|
|
@@ -43,34 +34,24 @@ export class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
43
34
|
this.closeDropdownPopover();
|
|
44
35
|
}
|
|
45
36
|
}
|
|
46
|
-
get disabledState() {
|
|
47
|
-
return this.disabled;
|
|
48
|
-
}
|
|
49
37
|
ngOnInit() {
|
|
50
38
|
var _a;
|
|
51
39
|
if (!this.template) {
|
|
52
40
|
this.template = this.mode === this.dropdownMode.icon ? this.iconModeTemplate : this.textModeTemplate;
|
|
53
41
|
}
|
|
54
|
-
if (!this.
|
|
55
|
-
this.
|
|
42
|
+
if (!this.activeMenuItem) {
|
|
43
|
+
this.activeMenuItem = this.defaultDropdownItem;
|
|
56
44
|
}
|
|
57
45
|
if (this.toolbarItem) {
|
|
58
46
|
this.elementRef.nativeElement.classList.add(`${(_a = this.toolbarItem) === null || _a === void 0 ? void 0 : _a.key}`);
|
|
59
47
|
}
|
|
60
48
|
}
|
|
61
|
-
statusChange(editor) {
|
|
62
|
-
var _a, _b;
|
|
63
|
-
this.disabled = ((_a = this.toolbarItem) === null || _a === void 0 ? void 0 : _a.disable) ? (_b = this.toolbarItem) === null || _b === void 0 ? void 0 : _b.disable(editor) : false;
|
|
64
|
-
const activeItem = this.menus.find(i => {
|
|
65
|
-
if (i === null || i === void 0 ? void 0 : i.active) {
|
|
66
|
-
return i === null || i === void 0 ? void 0 : i.active(editor);
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
this.activeMenu = activeItem ? activeItem : this.item;
|
|
70
|
-
}
|
|
71
49
|
itemMousedown(event, item) {
|
|
72
50
|
super.execute(event);
|
|
73
51
|
this.closeDropdownPopover();
|
|
52
|
+
if (!this.toolbarItem.dropdownFixedIcon) {
|
|
53
|
+
this.activeMenuItem = item;
|
|
54
|
+
}
|
|
74
55
|
if (this.itemMousedownHandle) {
|
|
75
56
|
this.itemMousedownHandle(item);
|
|
76
57
|
return;
|
|
@@ -120,7 +101,7 @@ export class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
120
101
|
}
|
|
121
102
|
}
|
|
122
103
|
TheToolbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarDropdownComponent, deps: [{ token: i0.ElementRef }, { token: i1.ThyPopover }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
|
|
123
|
-
TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: {
|
|
104
|
+
TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: { itemMousedownHandle: "itemMousedownHandle" }, host: { listeners: { "mousedown": "toggleDropdown($event)", "document: mousedown": "handleDocumentMouseDown($event)" }, classAttribute: "the-toolbar-dropdown-container" }, viewQueries: [{ propertyName: "iconModeTemplate", first: true, predicate: ["iconModeTemplate"], descendants: true, static: true }, { propertyName: "textModeTemplate", first: true, predicate: ["textModeTemplate"], descendants: true, static: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n\n<ng-template #iconModeTemplate>\n <a thyIconNavLink class=\"icon-mode link-with-down\" [thyTooltip]=\"activeMenuItem?.name\" thyTooltipPlacement=\"top\">\n <thy-icon [thyIconName]=\"activeMenuItem?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #textModeTemplate>\n <a thyIconNavLink class=\"text-mode\" [thyTooltip]=\"activeMenuItem?.name\" thyTooltipPlacement=\"top\">\n <span class=\"show-text\">{{ activeMenuItem?.name }}</span>\n <thy-icon class=\"text-caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #dropdownTemplate>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of menus\">\n <a\n *ngIf=\"menu.key !== 'split'\"\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenuItem?.key && !toolbarItem?.dropdownFixedIcon\"\n (mousedown)=\"itemMousedown($event, menu)\"\n [ngStyle]=\"menu?.styles\"\n >\n <span *ngIf=\"menu.icon && mode === dropdownMode.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu.icon\"></thy-icon>\n </span>\n <span *ngIf=\"menu.name\" thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n <thy-action-menu-divider *ngIf=\"menu.key === 'split'\"></thy-action-menu-divider>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }, { type: i5.ThyActionMenuDividerComponent, selector: "thy-action-menu-divider", inputs: ["thyTitle", "thyType"] }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5.ThyActionMenuItemActiveDirective, selector: "[thyActionMenuItemActive]", inputs: ["thyActionMenuItemActive"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }] });
|
|
124
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarDropdownComponent, decorators: [{
|
|
125
106
|
type: Component,
|
|
126
107
|
args: [{
|
|
@@ -130,15 +111,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
130
111
|
class: 'the-toolbar-dropdown-container'
|
|
131
112
|
}
|
|
132
113
|
}]
|
|
133
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.ThyPopover }, { type: i0.ViewContainerRef }, { type: i2.Overlay }]; }, propDecorators: {
|
|
134
|
-
type: Input
|
|
135
|
-
}], menus: [{
|
|
136
|
-
type: Input
|
|
137
|
-
}], mode: [{
|
|
138
|
-
type: Input
|
|
139
|
-
}], item: [{
|
|
140
|
-
type: Input
|
|
141
|
-
}], itemMousedownHandle: [{
|
|
114
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.ThyPopover }, { type: i0.ViewContainerRef }, { type: i2.Overlay }]; }, propDecorators: { itemMousedownHandle: [{
|
|
142
115
|
type: Input
|
|
143
116
|
}], iconModeTemplate: [{
|
|
144
117
|
type: ViewChild,
|
|
@@ -155,8 +128,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
155
128
|
}], handleDocumentMouseDown: [{
|
|
156
129
|
type: HostListener,
|
|
157
130
|
args: ['document: mousedown', ['$event']]
|
|
158
|
-
}], disabledState: [{
|
|
159
|
-
type: HostBinding,
|
|
160
|
-
args: ['class.disabled']
|
|
161
131
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1kcm9wZG93bi90b29sYmFyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxZQUFZLEVBQWUsU0FBUyxFQUFvQixXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLDJCQUE0QixTQUFRLDJCQUEyQjtJQTZEeEUsWUFDVyxVQUFzQixFQUNyQixVQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsT0FBZ0I7UUFFeEIsS0FBSyxFQUFFLENBQUM7UUFMRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3JCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBMURuQixTQUFJLEdBQWlCLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFlaEQsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFFNUIsYUFBUSxHQUFHLEtBQUssQ0FBQztJQTRDakIsQ0FBQztJQTNERCxJQUNJLElBQUksQ0FBQyxDQUFjO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBV0QsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2SSxDQUFDO0lBWUQsY0FBYyxDQUFDLEtBQWlCOztRQUM1QixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFFBQVEsS0FBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3hDLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFHRCx1QkFBdUIsQ0FBQyxLQUFpQjtRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFxQixDQUFDLEVBQUU7WUFDdEUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7U0FDL0I7SUFDTCxDQUFDO0lBRUQsSUFBbUMsYUFBYTtRQUM1QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQVdELFFBQVE7O1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztTQUN4RztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNuQztRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBQSxJQUFJLENBQUMsV0FBVywwQ0FBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQzNFO0lBQ0wsQ0FBQztJQUVNLFlBQVksQ0FBQyxNQUFjOztRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsV0FBVywwQ0FBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDdEYsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGFBQUQsQ0FBQyx1QkFBRCxDQUFDLENBQUUsTUFBTSxFQUFFO2dCQUNYLE9BQU8sQ0FBQyxhQUFELENBQUMsdUJBQUQsQ0FBQyxDQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUM1QjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUMxRCxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWlCLEVBQUUsSUFBaUI7UUFDOUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUU1QixJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0IsT0FBTztTQUNWO1FBRUQsSUFBSSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxFQUFFO1lBQ2YsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQsbUJBQW1COztRQUNmLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDbEUsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3ZCLFVBQVUsRUFBRSxDQUFDLDhCQUE4QixFQUFFLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsR0FBRyxDQUFDO1lBQ25FLFNBQVMsRUFBRSxZQUFZO1lBQ3ZCLGNBQWMsRUFBRSxLQUFLO1lBQ3JCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsTUFBTSxFQUFFLEVBQUU7WUFDVixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1lBQ3ZDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRTtTQUM3RCxDQUFDLENBQUM7UUFDSCxNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsYUFBYSxHQUFHLHNCQUFzQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVELG9CQUFvQjs7UUFDaEIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsTUFBQSxJQUFJLENBQUMsa0JBQWtCLDBDQUFFLEtBQUssRUFBRSxDQUFDO1NBQ3BDO0lBQ0wsQ0FBQztJQUVELHNCQUFzQjtRQUNsQixNQUFNLFdBQVcsR0FBc0I7WUFDbkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsT0FBTztZQUNqQixRQUFRLEVBQUUsUUFBUTtZQUNsQixPQUFPLEVBQUUsQ0FBQztZQUNWLE9BQU8sRUFBRSxDQUFDLEVBQUU7U0FDZixDQUFDO1FBQ0YsTUFBTSxjQUFjLG1DQUNiLFdBQVcsS0FDZCxRQUFRLEVBQUUsS0FBSyxFQUNmLE9BQU8sRUFBRSxFQUFFLEdBQ2QsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLE9BQU87YUFDZCxRQUFRLEVBQUU7YUFDVixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3BDLHNCQUFzQixDQUFDLEtBQUssQ0FBQzthQUM3QixpQkFBaUIsQ0FBQyxLQUFLLENBQUM7YUFDeEIsUUFBUSxDQUFDLEtBQUssQ0FBQzthQUNmLGFBQWEsQ0FBQyxDQUFDLGNBQWMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7O3lIQXRKUSwyQkFBMkI7NkdBQTNCLDJCQUEyQixxeUJDZnhDLG9wREFvQ0E7NEZEckJhLDJCQUEyQjtrQkFQdkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxXQUFXLEVBQUUsbUNBQW1DO29CQUNoRCxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGdDQUFnQztxQkFDMUM7aUJBQ0o7K0tBSVksV0FBVztzQkFBbkIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUdGLElBQUk7c0JBRFAsS0FBSztnQkFTRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBY04sZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUkvQyxnQkFBZ0I7c0JBRGYsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSS9DLGdCQUFnQjtzQkFEZixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJL0MsY0FBYztzQkFEYixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFXckMsdUJBQXVCO3NCQUR0QixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU9aLGFBQWE7c0JBQS9DLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEVsZW1lbnRSZWYsIElucHV0LCBIb3N0TGlzdGVuZXIsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2RlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVGhlVG9vbGJhckJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vdG9vbGJhci1iYXNlLWl0ZW0vdG9vbGJhci1iYXNlLWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdG9vbGJhci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aGUtdG9vbGJhci1kcm9wZG93bi1jb250YWluZXInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFyRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBUaGVUb29sYmFyQmFzZUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgX2l0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgdG9vbGJhckl0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgbWVudXM6IFRvb2xiYXJJdGVtW107XG5cbiAgICBASW5wdXQoKSBtb2RlOiBEcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGUudGV4dDtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGl0ZW0oaTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgdGhpcy5faXRlbSA9IGk7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IGk7XG4gICAgfVxuICAgIGdldCBpdGVtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBpdGVtTW91c2Vkb3duSGFuZGxlOiAoaXRlbTogVG9vbGJhckl0ZW0pID0+IHZvaWQ7XG5cbiAgICBlZGl0b3I6IEVkaXRvcjtcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBkcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGU7XG4gICAgYWN0aXZlTWVudTogVG9vbGJhckl0ZW07XG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBkcm9wZG93blBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8YW55PjtcblxuICAgIGdldCBpc09wZW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZiAmJiB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCkgJiYgdGhpcy5kcm9wZG93blBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpLmhhc0F0dGFjaGVkKCk7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZCgnaWNvbk1vZGVUZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgaWNvbk1vZGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ3RleHRNb2RlVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIHRleHRNb2RlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKCdkcm9wZG93blRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBkcm9wZG93blRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICB0b2dnbGVEcm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5lZGl0b3I/LmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5Ecm9wZG93blBvcG92ZXIoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDogbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICBoYW5kbGVEb2N1bWVudE1vdXNlRG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBnZXQgZGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHRoeVBvcG92ZXI6IFRoeVBvcG92ZXIsXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5XG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy50ZW1wbGF0ZSA9IHRoaXMubW9kZSA9PT0gdGhpcy5kcm9wZG93bk1vZGUuaWNvbiA/IHRoaXMuaWNvbk1vZGVUZW1wbGF0ZSA6IHRoaXMudGV4dE1vZGVUZW1wbGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5hY3RpdmVNZW51KSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZU1lbnUgPSB0aGlzLm1lbnVzWzBdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnRvb2xiYXJJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKGAke3RoaXMudG9vbGJhckl0ZW0/LmtleX1gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0dXNDaGFuZ2UoZWRpdG9yOiBFZGl0b3IpIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMudG9vbGJhckl0ZW0/LmRpc2FibGUgPyB0aGlzLnRvb2xiYXJJdGVtPy5kaXNhYmxlKGVkaXRvcikgOiBmYWxzZTtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMubWVudXMuZmluZChpID0+IHtcbiAgICAgICAgICAgIGlmIChpPy5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaT8uYWN0aXZlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2ZU1lbnUgPSBhY3RpdmVJdGVtID8gYWN0aXZlSXRlbSA6IHRoaXMuaXRlbTtcbiAgICB9XG5cbiAgICBpdGVtTW91c2Vkb3duKGV2ZW50OiBNb3VzZUV2ZW50LCBpdGVtOiBUb29sYmFySXRlbSkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd25Qb3BvdmVyKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXRlbU1vdXNlZG93bkhhbmRsZSkge1xuICAgICAgICAgICAgdGhpcy5pdGVtTW91c2Vkb3duSGFuZGxlKGl0ZW0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGl0ZW0/LmV4ZWN1dGUpIHtcbiAgICAgICAgICAgIGl0ZW0/LmV4ZWN1dGUodGhpcy5lZGl0b3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3BlbkRyb3Bkb3duUG9wb3ZlcigpIHtcbiAgICAgICAgdGhpcy5kcm9wZG93blBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbih0aGlzLmRyb3Bkb3duVGVtcGxhdGUsIHtcbiAgICAgICAgICAgIG9yaWdpbjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogWyd0aGUtdG9vbGJhci1kcm9wZG93bi1wb3BvdmVyJywgdGhpcy50b29sYmFySXRlbT8ua2V5XSxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbUxlZnQnLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgYmFja2Ryb3BDbG9zYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG9mZnNldDogMTAsXG4gICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZj8uZ2V0T3ZlcmxheVJlZigpLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodGhpcy5jcmVhdGVQb3NpdGlvblN0cmF0ZWd5KCkpO1xuICAgIH1cblxuICAgIGNsb3NlRHJvcGRvd25Qb3BvdmVyKCkge1xuICAgICAgICBpZiAodGhpcy5kcm9wZG93blBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmPy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY3JlYXRlUG9zaXRpb25TdHJhdGVneSgpIHtcbiAgICAgICAgY29uc3QgdG9wUG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvZmZzZXRYOiAwLFxuICAgICAgICAgICAgb2Zmc2V0WTogLTE1XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGJvdHRvbVBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIC4uLnRvcFBvc2l0aW9uLFxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgICAgICAgb2Zmc2V0WTogNDJcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuZWxlbWVudFJlZilcbiAgICAgICAgICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhHcm93QWZ0ZXJPcGVuKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQdXNoKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMoW2JvdHRvbVBvc2l0aW9uLCB0b3BQb3NpdGlvbl0pO1xuICAgIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaWNvbk1vZGVUZW1wbGF0ZT5cbiAgICA8YSB0aHlJY29uTmF2TGluayBjbGFzcz1cImljb24tbW9kZSBsaW5rLXdpdGgtZG93blwiIFt0aHlUb29sdGlwXT1cImFjdGl2ZU1lbnU/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCI+XG4gICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiYWN0aXZlTWVudT8uaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cImNhcmV0LWRvd24taWNvbiBmb250LXNpemUtc20gdGV4dC1kZXNjXCIgdGh5SWNvbk5hbWU9XCJjYXJldC1kb3duXCI+PC90aHktaWNvbj5cbiAgICA8L2E+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RleHRNb2RlVGVtcGxhdGU+XG4gICAgPGEgdGh5SWNvbk5hdkxpbmsgY2xhc3M9XCJ0ZXh0LW1vZGVcIiBbdGh5VG9vbHRpcF09XCJhY3RpdmVNZW51Py5uYW1lXCIgdGh5VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNob3ctdGV4dFwiPnt7IGFjdGl2ZU1lbnU/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cInRleHQtY2FyZXQtZG93bi1pY29uIGZvbnQtc2l6ZS1zbSB0ZXh0LWRlc2NcIiB0aHlJY29uTmFtZT1cImNhcmV0LWRvd25cIj48L3RoeS1pY29uPlxuICAgIDwvYT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd25UZW1wbGF0ZT5cbiAgICA8dGh5LWFjdGlvbi1tZW51IGNsYXNzPVwiZHJvcGRvd25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51c1wiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUua2V5ICE9PSAnc3BsaXQnXCJcbiAgICAgICAgICAgICAgICB0aHlBY3Rpb25NZW51SXRlbVxuICAgICAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgICAgICAgIFt0aHlBY3Rpb25NZW51SXRlbUFjdGl2ZV09XCJtZW51LmtleSA9PT0gYWN0aXZlTWVudS5rZXlcIlxuICAgICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiaXRlbU1vdXNlZG93bigkZXZlbnQsIG1lbnUpXCJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJtZW51Py5zdHlsZXNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwibWVudS5pY29uICYmIG1vZGUgPT09IGRyb3Bkb3duTW9kZS5pY29uXCIgdGh5QWN0aW9uTWVudUl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIm1lbnUuaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwibWVudS5uYW1lXCIgdGh5QWN0aW9uTWVudUl0ZW1OYW1lPnt7IG1lbnUubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDx0aHktYWN0aW9uLW1lbnUtZGl2aWRlciAqbmdJZj1cIm1lbnUua2V5ID09PSAnc3BsaXQnXCI+PC90aHktYWN0aW9uLW1lbnUtZGl2aWRlcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90aHktYWN0aW9uLW1lbnU+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1kcm9wZG93bi90b29sYmFyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxZQUFZLEVBQWUsU0FBUyxFQUFpQyxNQUFNLGVBQWUsQ0FBQztBQUkxSSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7Ozs7Ozs7OztBQVNuRixNQUFNLE9BQU8sMkJBQTRCLFNBQVEsc0JBQXNCO0lBc0NuRSxZQUNXLFVBQXNCLEVBQ3JCLFVBQXNCLEVBQ3RCLGdCQUFrQyxFQUNsQyxPQUFnQjtRQUV4QixLQUFLLEVBQUUsQ0FBQztRQUxELGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFyQzVCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO0lBd0M1QixDQUFDO0lBckNELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkksQ0FBQztJQVlELGNBQWMsQ0FBQyxLQUFpQjs7UUFDNUIsS0FBSyxDQUFDLE9BQU8s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QVEsQ0FBQztnQkFXckMsdUJBQXVCO3NCQUR0QixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEVsZW1lbnRSZWYsIElucHV0LCBIb3N0TGlzdGVuZXIsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2RlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVGhlQmFzZVRvb2xiYXJEcm9wZG93biB9IGZyb20gJy4uLy4uL2NvcmUvdG9vbGJhci1pdGVtL2Jhc2UtdG9vbGJhci1pdGVtJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdG9vbGJhci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aGUtdG9vbGJhci1kcm9wZG93bi1jb250YWluZXInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFyRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBUaGVCYXNlVG9vbGJhckRyb3Bkb3duIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBpdGVtTW91c2Vkb3duSGFuZGxlOiAoaXRlbTogVG9vbGJhckl0ZW0pID0+IHZvaWQ7XG5cbiAgICBlZGl0b3I6IEVkaXRvcjtcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBkcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGU7XG4gICAgZHJvcGRvd25Qb3BvdmVyUmVmOiBUaHlQb3BvdmVyUmVmPGFueT47XG5cbiAgICBnZXQgaXNPcGVuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kcm9wZG93blBvcG92ZXJSZWYgJiYgdGhpcy5kcm9wZG93blBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpICYmIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKS5oYXNBdHRhY2hlZCgpO1xuICAgIH1cblxuICAgIEBWaWV3Q2hpbGQoJ2ljb25Nb2RlVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGljb25Nb2RlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKCd0ZXh0TW9kZVRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICB0ZXh0TW9kZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQFZpZXdDaGlsZCgnZHJvcGRvd25UZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgZHJvcGRvd25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gICAgdG9nZ2xlRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgc3VwZXIuZXhlY3V0ZShldmVudCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZWRpdG9yPy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vcGVuRHJvcGRvd25Qb3BvdmVyKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6IG1vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gICAgaGFuZGxlRG9jdW1lbnRNb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd25Qb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXlcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLnRlbXBsYXRlID0gdGhpcy5tb2RlID09PSB0aGlzLmRyb3Bkb3duTW9kZS5pY29uID8gdGhpcy5pY29uTW9kZVRlbXBsYXRlIDogdGhpcy50ZXh0TW9kZVRlbXBsYXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLmFjdGl2ZU1lbnVJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZU1lbnVJdGVtID0gdGhpcy5kZWZhdWx0RHJvcGRvd25JdGVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMudG9vbGJhckl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoYCR7dGhpcy50b29sYmFySXRlbT8ua2V5fWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXRlbU1vdXNlZG93bihldmVudDogTW91c2VFdmVudCwgaXRlbTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgc3VwZXIuZXhlY3V0ZShldmVudCk7XG5cbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duUG9wb3ZlcigpO1xuXG4gICAgICAgIGlmICghdGhpcy50b29sYmFySXRlbS5kcm9wZG93bkZpeGVkSWNvbikge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVNZW51SXRlbSA9IGl0ZW07ICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pdGVtTW91c2Vkb3duSGFuZGxlKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1Nb3VzZWRvd25IYW5kbGUoaXRlbSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXRlbT8uZXhlY3V0ZSkge1xuICAgICAgICAgICAgaXRlbT8uZXhlY3V0ZSh0aGlzLmVkaXRvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvcGVuRHJvcGRvd25Qb3BvdmVyKCkge1xuICAgICAgICB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZiA9IHRoaXMudGh5UG9wb3Zlci5vcGVuKHRoaXMuZHJvcGRvd25UZW1wbGF0ZSwge1xuICAgICAgICAgICAgb3JpZ2luOiB0aGlzLmVsZW1lbnRSZWYsXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbJ3RoZS10b29sYmFyLWRyb3Bkb3duLXBvcG92ZXInLCB0aGlzLnRvb2xiYXJJdGVtPy5rZXldLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tTGVmdCcsXG4gICAgICAgICAgICBpbnNpZGVDbG9zYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBiYWNrZHJvcENsb3NhYmxlOiB0cnVlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgb2Zmc2V0OiAxMCxcbiAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKClcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmPy5nZXRPdmVybGF5UmVmKCkudXBkYXRlUG9zaXRpb25TdHJhdGVneSh0aGlzLmNyZWF0ZVBvc2l0aW9uU3RyYXRlZ3koKSk7XG4gICAgfVxuXG4gICAgY2xvc2VEcm9wZG93blBvcG92ZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5kcm9wZG93blBvcG92ZXJSZWY/LmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjcmVhdGVQb3NpdGlvblN0cmF0ZWd5KCkge1xuICAgICAgICBjb25zdCB0b3BQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgICAgIG9mZnNldFg6IDAsXG4gICAgICAgICAgICBvZmZzZXRZOiAtMTVcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgYm90dG9tUG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgICAgICAgICAgLi4udG9wUG9zaXRpb24sXG4gICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgICAgICBvZmZzZXRZOiA0MlxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbGVtZW50UmVmKVxuICAgICAgICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnMoZmFsc2UpXG4gICAgICAgICAgICAud2l0aEdyb3dBZnRlck9wZW4oZmFsc2UpXG4gICAgICAgICAgICAud2l0aFB1c2goZmFsc2UpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhbYm90dG9tUG9zaXRpb24sIHRvcFBvc2l0aW9uXSk7XG4gICAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpY29uTW9kZVRlbXBsYXRlPlxuICAgIDxhIHRoeUljb25OYXZMaW5rIGNsYXNzPVwiaWNvbi1tb2RlIGxpbmstd2l0aC1kb3duXCIgW3RoeVRvb2x0aXBdPVwiYWN0aXZlTWVudUl0ZW0/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCI+XG4gICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiYWN0aXZlTWVudUl0ZW0/Lmljb25cIj48L3RoeS1pY29uPlxuICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJjYXJldC1kb3duLWljb24gZm9udC1zaXplLXNtIHRleHQtZGVzY1wiIHRoeUljb25OYW1lPVwiY2FyZXQtZG93blwiPjwvdGh5LWljb24+XG4gICAgPC9hPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0ZXh0TW9kZVRlbXBsYXRlPlxuICAgIDxhIHRoeUljb25OYXZMaW5rIGNsYXNzPVwidGV4dC1tb2RlXCIgW3RoeVRvb2x0aXBdPVwiYWN0aXZlTWVudUl0ZW0/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2hvdy10ZXh0XCI+e3sgYWN0aXZlTWVudUl0ZW0/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cInRleHQtY2FyZXQtZG93bi1pY29uIGZvbnQtc2l6ZS1zbSB0ZXh0LWRlc2NcIiB0aHlJY29uTmFtZT1cImNhcmV0LWRvd25cIj48L3RoeS1pY29uPlxuICAgIDwvYT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd25UZW1wbGF0ZT5cbiAgICA8dGh5LWFjdGlvbi1tZW51IGNsYXNzPVwiZHJvcGRvd25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51c1wiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUua2V5ICE9PSAnc3BsaXQnXCJcbiAgICAgICAgICAgICAgICB0aHlBY3Rpb25NZW51SXRlbVxuICAgICAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgICAgICAgIFt0aHlBY3Rpb25NZW51SXRlbUFjdGl2ZV09XCJtZW51LmtleSA9PT0gYWN0aXZlTWVudUl0ZW0/LmtleSAmJiAhdG9vbGJhckl0ZW0/LmRyb3Bkb3duRml4ZWRJY29uXCJcbiAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cIml0ZW1Nb3VzZWRvd24oJGV2ZW50LCBtZW51KVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwibWVudT8uc3R5bGVzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm1lbnUuaWNvbiAmJiBtb2RlID09PSBkcm9wZG93bk1vZGUuaWNvblwiIHRoeUFjdGlvbk1lbnVJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJtZW51Lmljb25cIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm1lbnUubmFtZVwiIHRoeUFjdGlvbk1lbnVJdGVtTmFtZT57eyBtZW51Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8dGh5LWFjdGlvbi1tZW51LWRpdmlkZXIgKm5nSWY9XCJtZW51LmtleSA9PT0gJ3NwbGl0J1wiPjwvdGh5LWFjdGlvbi1tZW51LWRpdmlkZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGh5LWFjdGlvbi1tZW51PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -13,7 +13,7 @@ export class TheToolbarGroupComponent {
|
|
|
13
13
|
}
|
|
14
14
|
set item(i) {
|
|
15
15
|
this._item = i;
|
|
16
|
-
this.
|
|
16
|
+
this.activeMenuItem = i;
|
|
17
17
|
}
|
|
18
18
|
get item() {
|
|
19
19
|
return this._item;
|
|
@@ -44,9 +44,9 @@ export class TheToolbarGroupComponent {
|
|
|
44
44
|
this.openGroup(event);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
|
|
47
|
+
selectionChange(editor) {
|
|
48
48
|
const activeItem = this.menusActive(editor);
|
|
49
|
-
this.
|
|
49
|
+
this.activeMenuItem = activeItem ? activeItem : null;
|
|
50
50
|
this.activeChange();
|
|
51
51
|
this.colseGroup();
|
|
52
52
|
}
|
|
@@ -112,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
112
112
|
type: HostListener,
|
|
113
113
|
args: ['click', ['$event']]
|
|
114
114
|
}] } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWdyb3VwL3Rvb2xiYXItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1ncm91cC90b29sYmFyLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUErQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVl4SSxNQUFNLE9BQU8sd0JBQXdCO0lBc0NqQyxZQUFtQixVQUFzQixFQUFVLFVBQXNCLEVBQVUsZ0JBQWtDO1FBQWxHLGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWxCckgsV0FBTSxHQUFHLEtBQUssQ0FBQztJQWtCeUcsQ0FBQztJQWpDekgsSUFDSSxJQUFJLENBQUMsQ0FBcUI7UUFDMUIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlILENBQUM7SUFXRCxnQkFBZ0IsQ0FBQyxLQUFLO1FBQ2xCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztR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QUFFLG1CQUFtQjtvQkFDN0IsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxtQkFBbUI7cUJBQzdCO2lCQUNKO3lKQUlZLEtBQUs7c0JBQWIsS0FBSztnQkFHRixJQUFJO3NCQURQLEtBQUs7Z0JBb0JOLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSS9ELGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFPckMsV0FBVztzQkFEVixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgT25EZXN0cm95LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRGVmYXVsdFRvb2xiYXJJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRvb2xiYXItZ3JvdXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90b29sYmFyLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGhlLXRvb2xiYXItZ3JvdXAnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFyR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBfaXRlbTogRGVmYXVsdFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgbWVudXM6IERlZmF1bHRUb29sYmFySXRlbVtdO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgaXRlbShpOiBEZWZhdWx0VG9vbGJhckl0ZW0pIHtcbiAgICAgICAgdGhpcy5faXRlbSA9IGk7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudUl0ZW0gPSBpO1xuICAgIH1cblxuICAgIGdldCBpdGVtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbTtcbiAgICB9XG5cbiAgICBnZXQgaXNPcGVuZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyb3VwUG9wb3ZlclJlZiAmJiB0aGlzLmdyb3VwUG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCkgJiYgdGhpcy5ncm91cFBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpLmhhc0F0dGFjaGVkKCk7XG4gICAgfVxuXG4gICAgZWRpdG9yOiBFZGl0b3I7XG4gICAgYWN0aXZlID0gZmFsc2U7XG4gICAgYWN0aXZlTWVudUl0ZW06IERlZmF1bHRUb29sYmFySXRlbTtcbiAgICBncm91cFBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2dyb3VwVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgICBncm91cFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICBtb3VzZWRvd25IYW5kbGVyKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9nZ2xlR3JvdXBNZW51cyhldmVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIGNsaWNrSGFuZGxlKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHRoeVBvcG92ZXI6IFRoeVBvcG92ZXIsIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikge31cblxuICAgIG5nT25Jbml0KCkge31cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbHNlR3JvdXAoKTtcbiAgICB9XG5cbiAgICB0b2dnbGVHcm91cE1lbnVzKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmVkaXRvcj8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCkge1xuICAgICAgICAgICAgdGhpcy5jb2xzZUdyb3VwKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5Hcm91cChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0aW9uQ2hhbmdlKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgICAgIGNvbnN0IGFjdGl2ZUl0ZW0gPSB0aGlzLm1lbnVzQWN0aXZlKGVkaXRvcik7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudUl0ZW0gPSBhY3RpdmVJdGVtID8gYWN0aXZlSXRlbSA6IG51bGw7XG4gICAgICAgIHRoaXMuYWN0aXZlQ2hhbmdlKCk7XG4gICAgICAgIHRoaXMuY29sc2VHcm91cCgpO1xuICAgIH1cblxuICAgIG1lbnVzQWN0aXZlKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1lbnVzLmZpbmQoaSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5lZGl0b3I/LnNlbGVjdGlvbiAmJiBpPy5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaT8uYWN0aXZlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFjdGl2ZUNoYW5nZSgpIHtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMubWVudXNBY3RpdmUodGhpcy5lZGl0b3IpO1xuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCAmJiAhYWN0aXZlSXRlbSkge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFjdGl2ZSA9IGFjdGl2ZUl0ZW0gPyB0cnVlIDogZmFsc2U7XG4gICAgfVxuXG4gICAgb3Blbkdyb3VwKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHRoaXMuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5ncm91cFBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbih0aGlzLmdyb3VwVGVtcGxhdGUsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0aGUtdG9vbGJhci1ncm91cC1jb250YWluZXInLFxuICAgICAgICAgICAgb2Zmc2V0OiAxMCxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbVJpZ2h0JyxcbiAgICAgICAgICAgIG9yaWdpbjogZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5ncm91cFBvcG92ZXJSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVDaGFuZ2UoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29sc2VHcm91cCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBQb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8YSB0aHlJY29uTmF2TGluayBbdGh5SWNvbk5hdkxpbmtJY29uXT1cIml0ZW0uaWNvblwiIFt0aHlUb29sdGlwXT1cIml0ZW0/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCIgW3RoeUljb25OYXZMaW5rQWN0aXZlXT1cImFjdGl2ZVwiPjwvYT5cblxuPG5nLXRlbXBsYXRlICNncm91cFRlbXBsYXRlPlxuICAgIDx0aGUtdG9vbGJhciBjbGFzcz1cImdyb3VwXCIgW2VkaXRvcl09XCJlZGl0b3JcIiBbdG9vbGJhckl0ZW1zXT1cIm1lbnVzXCIgW2lzTW9yZV09XCJmYWxzZVwiPjwvdGhlLXRvb2xiYXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Component,
|
|
2
|
-
import {
|
|
1
|
+
import { Component, HostListener, Input, ViewChild, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { TheBaseToolbarItem } from '../../core/toolbar-item/base-toolbar-item';
|
|
3
3
|
import { ToolbarItemMode } from '../../constants/toolbar';
|
|
4
4
|
import { isComponentType } from 'slate-angular';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -7,68 +7,58 @@ import * as i1 from "ngx-tethys/nav";
|
|
|
7
7
|
import * as i2 from "ngx-tethys/icon";
|
|
8
8
|
import * as i3 from "@angular/common";
|
|
9
9
|
import * as i4 from "ngx-tethys/tooltip";
|
|
10
|
-
export class TheToolbarItemComponent extends
|
|
10
|
+
export class TheToolbarItemComponent extends TheBaseToolbarItem {
|
|
11
11
|
constructor(ngZone, cfr) {
|
|
12
12
|
super();
|
|
13
13
|
this.ngZone = ngZone;
|
|
14
14
|
this.cfr = cfr;
|
|
15
15
|
this.itemMode = ToolbarItemMode.horizontal;
|
|
16
16
|
this.ToolbarItemMode = ToolbarItemMode;
|
|
17
|
-
this.active = false;
|
|
18
|
-
this.disabled = false;
|
|
19
17
|
}
|
|
20
18
|
toggleDropdown(event) {
|
|
21
19
|
super.execute(event);
|
|
22
20
|
}
|
|
23
|
-
get disabledState() {
|
|
24
|
-
return this.disabled;
|
|
25
|
-
}
|
|
26
21
|
ngOnInit() {
|
|
27
22
|
var _a, _b;
|
|
28
|
-
if (((_a = this.
|
|
23
|
+
if (((_a = this.toolbarItem) === null || _a === void 0 ? void 0 : _a.quickItemComponent) && isComponentType((_b = this.toolbarItem) === null || _b === void 0 ? void 0 : _b.quickItemComponent)) {
|
|
29
24
|
this.renderToolbarItem();
|
|
30
25
|
}
|
|
31
26
|
}
|
|
32
|
-
statusChange(editor) {
|
|
33
|
-
var _a, _b, _c, _d;
|
|
34
|
-
this.disabled = ((_a = this.item) === null || _a === void 0 ? void 0 : _a.disable) ? (_b = this.item) === null || _b === void 0 ? void 0 : _b.disable(editor) : false;
|
|
35
|
-
this.active = ((_c = this.item) === null || _c === void 0 ? void 0 : _c.active) ? (_d = this.item) === null || _d === void 0 ? void 0 : _d.active(editor) : false;
|
|
36
|
-
}
|
|
37
27
|
execute(event) {
|
|
38
28
|
var _a, _b, _c;
|
|
39
29
|
super.execute(event);
|
|
40
|
-
if (((_a = this.editor) === null || _a === void 0 ? void 0 : _a.disabled) || this.disabled || !((_b = this.
|
|
30
|
+
if (((_a = this.editor) === null || _a === void 0 ? void 0 : _a.disabled) || this.disabled || !((_b = this.toolbarItem) === null || _b === void 0 ? void 0 : _b.execute)) {
|
|
41
31
|
return;
|
|
42
32
|
}
|
|
43
|
-
(_c = this.
|
|
33
|
+
(_c = this.toolbarItem) === null || _c === void 0 ? void 0 : _c.execute(this.editor);
|
|
44
34
|
}
|
|
45
35
|
renderToolbarItem() {
|
|
46
36
|
this.ngZone.run(() => {
|
|
47
|
-
const toolbarItemFactory = this.cfr.resolveComponentFactory(this.
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
37
|
+
const toolbarItemFactory = this.cfr.resolveComponentFactory(this.toolbarItem.quickItemComponent);
|
|
38
|
+
const toolbarItemRef = this.toolbarContainer.createComponent(toolbarItemFactory);
|
|
39
|
+
toolbarItemRef.instance.editor = this.editor;
|
|
40
|
+
toolbarItemRef.instance.item = this.toolbarItem;
|
|
41
|
+
toolbarItemRef.instance.itemMode = ToolbarItemMode.vertical;
|
|
52
42
|
});
|
|
53
43
|
}
|
|
54
44
|
}
|
|
55
45
|
TheToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarItemComponent, deps: [{ token: i0.NgZone }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
|
|
56
|
-
TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: {
|
|
46
|
+
TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: { itemMode: "itemMode" }, host: { listeners: { "mousedown": "toggleDropdown($event)" }, classAttribute: "the-toolbar-item" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
57
47
|
<ng-container *ngIf="itemMode === ToolbarItemMode.horizontal; else selectionItem">
|
|
58
48
|
<a
|
|
59
49
|
thyIconNavLink
|
|
60
|
-
[thyIconNavLinkIcon]="
|
|
50
|
+
[thyIconNavLinkIcon]="toolbarItem.icon"
|
|
61
51
|
[thyTooltip]="tooltip"
|
|
62
|
-
[thyTooltipTemplateContext]="{ name:
|
|
52
|
+
[thyTooltipTemplateContext]="{ name: toolbarItem.name, shortcutKey: toolbarItem.shortcutKey }"
|
|
63
53
|
thyTooltipPlacement="top"
|
|
64
54
|
[thyIconNavLinkActive]="active"
|
|
65
55
|
(mousedown)="execute($event)"
|
|
66
56
|
></a>
|
|
67
57
|
</ng-container>
|
|
68
58
|
<ng-template #selectionItem>
|
|
69
|
-
<ng-container *ngIf="!
|
|
70
|
-
<thy-icon [thyIconName]="
|
|
71
|
-
<span class="quick-toolbar-name">{{
|
|
59
|
+
<ng-container *ngIf="!toolbarItem?.quickItemComponent">
|
|
60
|
+
<thy-icon [thyIconName]="toolbarItem?.icon" [thyIconRotate]="0" class="quick-toolbar-icon"></thy-icon>
|
|
61
|
+
<span class="quick-toolbar-name">{{ toolbarItem?.name }}</span>
|
|
72
62
|
</ng-container>
|
|
73
63
|
</ng-template>
|
|
74
64
|
<ng-template #tooltip let-data> {{ data.name }} {{ data.shortcutKey }} </ng-template>
|
|
@@ -82,18 +72,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
82
72
|
<ng-container *ngIf="itemMode === ToolbarItemMode.horizontal; else selectionItem">
|
|
83
73
|
<a
|
|
84
74
|
thyIconNavLink
|
|
85
|
-
[thyIconNavLinkIcon]="
|
|
75
|
+
[thyIconNavLinkIcon]="toolbarItem.icon"
|
|
86
76
|
[thyTooltip]="tooltip"
|
|
87
|
-
[thyTooltipTemplateContext]="{ name:
|
|
77
|
+
[thyTooltipTemplateContext]="{ name: toolbarItem.name, shortcutKey: toolbarItem.shortcutKey }"
|
|
88
78
|
thyTooltipPlacement="top"
|
|
89
79
|
[thyIconNavLinkActive]="active"
|
|
90
80
|
(mousedown)="execute($event)"
|
|
91
81
|
></a>
|
|
92
82
|
</ng-container>
|
|
93
83
|
<ng-template #selectionItem>
|
|
94
|
-
<ng-container *ngIf="!
|
|
95
|
-
<thy-icon [thyIconName]="
|
|
96
|
-
<span class="quick-toolbar-name">{{
|
|
84
|
+
<ng-container *ngIf="!toolbarItem?.quickItemComponent">
|
|
85
|
+
<thy-icon [thyIconName]="toolbarItem?.icon" [thyIconRotate]="0" class="quick-toolbar-icon"></thy-icon>
|
|
86
|
+
<span class="quick-toolbar-name">{{ toolbarItem?.name }}</span>
|
|
97
87
|
</ng-container>
|
|
98
88
|
</ng-template>
|
|
99
89
|
<ng-template #tooltip let-data> {{ data.name }} {{ data.shortcutKey }} </ng-template>
|
|
@@ -103,11 +93,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
103
93
|
class: 'the-toolbar-item'
|
|
104
94
|
}
|
|
105
95
|
}]
|
|
106
|
-
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: {
|
|
107
|
-
type: Input
|
|
108
|
-
}], item: [{
|
|
109
|
-
type: Input
|
|
110
|
-
}], itemMode: [{
|
|
96
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { itemMode: [{
|
|
111
97
|
type: Input
|
|
112
98
|
}], toolbarContainer: [{
|
|
113
99
|
type: ViewChild,
|
|
@@ -115,8 +101,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
115
101
|
}], toggleDropdown: [{
|
|
116
102
|
type: HostListener,
|
|
117
103
|
args: ['mousedown', ['$event']]
|
|
118
|
-
}], disabledState: [{
|
|
119
|
-
type: HostBinding,
|
|
120
|
-
args: ['class.disabled']
|
|
121
104
|
}] } });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb21wb25lbnRzL3Rvb2xiYXItaXRlbS90b29sYmFyLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQTRCLFlBQVksRUFBRSxLQUFLLEVBQWtCLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBNkJoRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsa0JBQWtCO0lBYTNELFlBQW9CLE1BQWMsRUFBVSxHQUE2QjtRQUNyRSxLQUFLLEVBQUUsQ0FBQztRQURRLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQVpoRSxhQUFRLEdBQW9CLGVBQWUsQ0FBQyxVQUFVLENBQUM7UUFFaEUsb0JBQWUsR0FBRyxlQUFlLENBQUM7SUFZbEMsQ0FBQztJQU5ELGNBQWMsQ0FBQyxLQUFpQjtRQUM1QixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFNRCxRQUFROztRQUNKLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLGtCQUFrQixLQUFJLGVBQWUsQ0FBQyxNQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLGtCQUFrQixDQUFDLEVBQUU7WUFDL0YsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWlCOztRQUNyQixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFFBQVEsS0FBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLE9BQU8sQ0FBQSxFQUFFO1lBQ3RFLE9BQU87U0FDVjtRQUVELE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ2pCLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDakcsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ2pGLGNBQWMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDN0MsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUNoRCxjQUFjLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7cUhBekNRLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLCtSQUtPLGdCQUFnQixrRUE5QjdDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQW9CVDs0RkFLUSx1QkFBdUI7a0JBM0JuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FvQlQ7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxrQkFBa0I7cUJBQzVCO2lCQUNKO29JQUVZLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJdkUsY0FBYztzQkFEYixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBOZ1pvbmUsIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVCYXNlVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9jb3JlL3Rvb2xiYXItaXRlbS9iYXNlLXRvb2xiYXItaXRlbSc7XG5pbXBvcnQgeyBUb29sYmFySXRlbU1vZGUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvdG9vbGJhcic7XG5pbXBvcnQgeyBpc0NvbXBvbmVudFR5cGUgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdG9vbGJhci1pdGVtJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbU1vZGUgPT09IFRvb2xiYXJJdGVtTW9kZS5ob3Jpem9udGFsOyBlbHNlIHNlbGVjdGlvbkl0ZW1cIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgdGh5SWNvbk5hdkxpbmtcbiAgICAgICAgICAgICAgICBbdGh5SWNvbk5hdkxpbmtJY29uXT1cInRvb2xiYXJJdGVtLmljb25cIlxuICAgICAgICAgICAgICAgIFt0aHlUb29sdGlwXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFt0aHlUb29sdGlwVGVtcGxhdGVDb250ZXh0XT1cInsgbmFtZTogdG9vbGJhckl0ZW0ubmFtZSwgc2hvcnRjdXRLZXk6IHRvb2xiYXJJdGVtLnNob3J0Y3V0S2V5IH1cIlxuICAgICAgICAgICAgICAgIHRoeVRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgICAgICAgICAgIFt0aHlJY29uTmF2TGlua0FjdGl2ZV09XCJhY3RpdmVcIlxuICAgICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiZXhlY3V0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2E+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3NlbGVjdGlvbkl0ZW0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXRvb2xiYXJJdGVtPy5xdWlja0l0ZW1Db21wb25lbnRcIj5cbiAgICAgICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cInRvb2xiYXJJdGVtPy5pY29uXCIgW3RoeUljb25Sb3RhdGVdPVwiMFwiIGNsYXNzPVwicXVpY2stdG9vbGJhci1pY29uXCI+PC90aHktaWNvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInF1aWNrLXRvb2xiYXItbmFtZVwiPnt7IHRvb2xiYXJJdGVtPy5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjdG9vbHRpcCBsZXQtZGF0YT4ge3sgZGF0YS5uYW1lIH19IHt7IGRhdGEuc2hvcnRjdXRLZXkgfX0gPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAjdG9vbGJhckNvbnRhaW5lcj48L25nLWNvbnRhaW5lcj5cbiAgICBgLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aGUtdG9vbGJhci1pdGVtJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgVGhlVG9vbGJhckl0ZW1Db21wb25lbnQgZXh0ZW5kcyBUaGVCYXNlVG9vbGJhckl0ZW0gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGl0ZW1Nb2RlOiBUb29sYmFySXRlbU1vZGUgPSBUb29sYmFySXRlbU1vZGUuaG9yaXpvbnRhbDtcblxuICAgIFRvb2xiYXJJdGVtTW9kZSA9IFRvb2xiYXJJdGVtTW9kZTtcblxuICAgIEBWaWV3Q2hpbGQoJ3Rvb2xiYXJDb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICAgIHRvb2xiYXJDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICAgIHRvZ2dsZURyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHN1cGVyLmV4ZWN1dGUoZXZlbnQpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgY2ZyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMudG9vbGJhckl0ZW0/LnF1aWNrSXRlbUNvbXBvbmVudCAmJiBpc0NvbXBvbmVudFR5cGUodGhpcy50b29sYmFySXRlbT8ucXVpY2tJdGVtQ29tcG9uZW50KSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUb29sYmFySXRlbSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZXhlY3V0ZShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5lZGl0b3I/LmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQgfHwgIXRoaXMudG9vbGJhckl0ZW0/LmV4ZWN1dGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudG9vbGJhckl0ZW0/LmV4ZWN1dGUodGhpcy5lZGl0b3IpO1xuICAgIH1cblxuICAgIHJlbmRlclRvb2xiYXJJdGVtKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdG9vbGJhckl0ZW1GYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy50b29sYmFySXRlbS5xdWlja0l0ZW1Db21wb25lbnQpO1xuICAgICAgICAgICAgY29uc3QgdG9vbGJhckl0ZW1SZWYgPSB0aGlzLnRvb2xiYXJDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KHRvb2xiYXJJdGVtRmFjdG9yeSk7XG4gICAgICAgICAgICB0b29sYmFySXRlbVJlZi5pbnN0YW5jZS5lZGl0b3IgPSB0aGlzLmVkaXRvcjtcbiAgICAgICAgICAgIHRvb2xiYXJJdGVtUmVmLmluc3RhbmNlLml0ZW0gPSB0aGlzLnRvb2xiYXJJdGVtO1xuICAgICAgICAgICAgdG9vbGJhckl0ZW1SZWYuaW5zdGFuY2UuaXRlbU1vZGUgPSBUb29sYmFySXRlbU1vZGUudmVydGljYWw7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -128,5 +128,6 @@ export const ALIGN_BLOCK_TYPES = [ElementKinds.default, ElementKinds.listItem, E
|
|
|
128
128
|
export const CONTAINER_BLOCKS = [ElementKinds.blockquote, ElementKinds.tableCell];
|
|
129
129
|
export const LIST_BLOCK_TYPES = [ElementKinds.numberedList, ElementKinds.bulletedList];
|
|
130
130
|
export const VOID_BLOCK_TYPES = [ElementKinds.image, ElementKinds.hr];
|
|
131
|
-
export const
|
|
132
|
-
|
|
131
|
+
export const BLOCK_DELETE_BACKWARD_TYPES = [ElementKinds.tableCell];
|
|
132
|
+
export const DISABLED_OPERATE_TYPES = [ElementKinds.code, ElementKinds.hr];
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb25zdGFudHMvbm9kZS10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSxZQXlCWDtBQXpCRCxXQUFZLFlBQVk7SUFDcEIsK0JBQWUsQ0FBQTtJQUNmLHVDQUF1QixDQUFBO0lBQ3ZCLDRDQUE0QixDQUFBO0lBQzVCLHlDQUF5QixDQUFBO0lBQ3pCLHlDQUF5QixDQUFBO0lBQ3pCLDJDQUEyQixDQUFBO0lBQzNCLDBDQUEwQixDQUFBO0lBQzFCLDBDQUEwQixDQUFBO0lBQzFCLHlDQUF5QixDQUFBO0lBQ3pCLDhDQUE4QixDQUFBO0lBQzlCLDhDQUE4QixDQUFBO0lBQzlCLHNDQUFzQixDQUFBO0lBQ3RCLHdDQUF3QixDQUFBO0lBQ3hCLCtCQUFlLENBQUE7SUFDZixzQ0FBc0IsQ0FBQTtJQUN0Qix3Q0FBd0IsQ0FBQTtJQUN4QiwwQ0FBMEIsQ0FBQTtJQUMxQiw2QkFBYSxDQUFBO0lBQ2IsMENBQTBCLENBQUE7SUFDMUIseUJBQVMsQ0FBQTtJQUNULDZCQUFhLENBQUE7SUFDYixxQ0FBcUIsQ0FBQTtJQUNyQiwwQ0FBMEIsQ0FBQTtJQUMxQixpQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBekJXLFlBQVksS0FBWixZQUFZLFFBeUJ2QjtBQUVELE1BQU0sQ0FBTixJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDakIsMEJBQWEsQ0FBQTtJQUNiLDhCQUFpQixDQUFBO0lBQ2pCLDRCQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQsTUFBTSxDQUFOLElBQVksaUJBSVg7QUFKRCxXQUFZLGlCQUFpQjtJQUN6QixnQ0FBVyxDQUFBO0lBQ1gsc0NBQWlCLENBQUE7SUFDakIsc0NBQWlCLENBQUE7QUFDckIsQ0FBQyxFQUpXLGlCQUFpQixLQUFqQixpQkFBaUIs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QUMsU0FBUztJQUN0QixZQUFZLENBQUMsU0FBUztDQUN6QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUF5QixDQUFDLEdBQUcsc0JBQXNCLEVBQUUsWUFBWSxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFL0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQXlCLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxLQUFLLEVBQUUsR0FBRyxhQUFhLENBQUMsQ0FBQztBQUUzSSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBeUIsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUV4RyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBeUIsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUU3RyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBeUIsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU1RixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBeUIsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFMUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQXlCLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21FbGVtZW50S2luZHMgfSBmcm9tICcuLi9jdXN0b20tdHlwZXMnO1xuXG5leHBvcnQgZW51bSBFbGVtZW50S2luZHMge1xuICAgIGltYWdlID0gJ2ltYWdlJyxcbiAgICBwYXJhZ3JhcGggPSAncGFyYWdyYXBoJyxcbiAgICBoZWFkaW5nTGlzdCA9ICdoZWFkaW5nLWxpc3QnLFxuICAgIGhlYWRpbmdfMSA9ICdoZWFkaW5nLW9uZScsXG4gICAgaGVhZGluZ18yID0gJ2hlYWRpbmctdHdvJyxcbiAgICBoZWFkaW5nXzMgPSAnaGVhZGluZy10aHJlZScsXG4gICAgaGVhZGluZ180ID0gJ2hlYWRpbmctZm91cicsXG4gICAgaGVhZGluZ181ID0gJ2hlYWRpbmctZml2ZScsXG4gICAgaGVhZGluZ182ID0gJ2hlYWRpbmctc2l4JyxcbiAgICBudW1iZXJlZExpc3QgPSAnbnVtYmVyZWQtbGlzdCcsXG4gICAgYnVsbGV0ZWRMaXN0ID0gJ2J1bGxldGVkLWxpc3QnLFxuICAgIGxpc3RJdGVtID0gJ2xpc3QtaXRlbScsXG4gICAgY2hlY2tJdGVtID0gJ2NoZWNrLWl0ZW0nLFxuICAgIHRhYmxlID0gJ3RhYmxlJyxcbiAgICB0YWJsZVJvdyA9ICd0YWJsZS1yb3cnLFxuICAgIHRhYmxlQ2VsbCA9ICd0YWJsZS1jZWxsJyxcbiAgICB0YWJsZUNvbnRlbnQgPSAncGFyYWdyYXBoJyxcbiAgICBjb2RlID0gJ2NvZGUnLFxuICAgIGJsb2NrcXVvdGUgPSAnYmxvY2stcXVvdGUnLFxuICAgIGhyID0gJ2hyJyxcbiAgICBsaW5rID0gJ2xpbmsnLFxuICAgIGRlZmF1bHQgPSAncGFyYWdyYXBoJyxcbiAgICBpbmxpbmVDb2RlID0gJ2lubGluZS1jb2RlJyxcbiAgICBpbmRlbnQgPSAnaW5kZW50J1xufVxuXG5leHBvcnQgZW51bSBBbGlnbm1lbnQge1xuICAgIGxlZnQgPSAnbGVmdCcsXG4gICAgY2VudGVyID0gJ2NlbnRlcicsXG4gICAgcmlnaHQgPSAncmlnaHQnXG59XG5cbmV4cG9ydCBlbnVtIFZlcnRpY2FsQWxpZ25tZW50IHtcbiAgICB0b3AgPSAndG9wJyxcbiAgICBtaWRkbGUgPSAnbWlkZGxlJyxcbiAgICBib3R0b20gPSAnYm90dG9tJ1xufVxuXG5leHBvcnQgZW51bSBMYXlvdXRUeXBlcyB7XG4gICAgd3JhcExlZnQgPSAnd3JhcC1sZWZ0JyxcbiAgICB3cmFwUmlnaHQgPSAnd3JhcC1yaWdodCdcbn1cblxuZXhwb3J0IGVudW0gRm9udFNpemVzIHtcbiAgICAnZm9udFNpemUxMicgPSAnMTInLFxuICAgICdmb250U2l6ZTEzJyA9ICcxMycsXG4gICAgJ2ZvbnRTaXplMTQnID0gJzE0JyxcbiAgICAnZm9udFNpemUxNScgPSAnMTUnLFxuICAgICdmb250U2l6ZTE2JyA9ICcxNicsXG4gICAgJ2ZvbnRTaXplMTgnID0gJzE4JyxcbiAgICAnZm9udFNpemUyMCcgPSAnMjAnLFxuICAgICdmb250U2l6ZTI0JyA9ICcyNCcsXG4gICAgJ2ZvbnRTaXplMjgnID0gJzI4JyxcbiAgICAnZm9udFNpemUzMicgPSAnMzInLFxuICAgICdmb250U2l6ZTQwJyA9ICc0MCcsXG4gICAgJ2ZvbnRTaXplNDgnID0gJzQ4J1xufVxuXG5leHBvcnQgY29uc3QgRm9udFNpemVUeXBlcyA9IFtcbiAgICBGb250U2l6ZXMuZm9udFNpemUxMixcbiAgICBGb250U2l6ZXMuZm9udFNpemUxMyxcbiAgICBGb250U2l6ZXMuZm9udFNpemUxNCxcbiAgICBGb250U2l6ZXMuZm9udFNpemUxNSxcbiAgICBGb250U2l6ZXMuZm9udFNpemUxNixcbiAgICBGb250U2l6ZXMuZm9udFNpemUyMCxcbiAgICBGb250U2l6ZXMuZm9udFNpemUyNCxcbiAgICBGb250U2l6ZXMuZm9udFNpemUyOCxcbiAgICBGb250U2l6ZXMuZm9udFNpemUzMixcbiAgICBGb250U2l6ZXMuZm9udFNpemU0MCxcbiAgICBGb250U2l6ZXMuZm9udFNpemU0OFxuXTtcblxuZXhwb3J0IGVudW0gSW5kZW50cyB7XG4gICAgaW5kZW50UmlnaHQgPSAnaW5kZW50LXJpZ2h0JyxcbiAgICBpbmRlbnRMZWZ0ID0gJ2luZGVudC1sZWZ0J1xufVxuXG5leHBvcnQgZW51bSBNYXJrVHlwZXMge1xuICAgIGJvbGQgPSAnYm9sZCcsXG4gICAgaXRhbGljID0gJ2l0YWxpYycsXG4gICAgdW5kZXJsaW5lID0gJ3VuZGVybGluZWQnLFxuICAgIHN0cmlrZSA9ICdzdHJpa2UnLFxuICAgIGNvbG9yID0gJ2NvbG9yJyxcbiAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnYmFja2dyb3VuZC1jb2xvcicsXG4gICAgZm9udFNpemUgPSAnZm9udC1zaXplJyxcbiAgICBjb2RlTGluZSA9ICdjb2RlLWxpbmUnXG59XG5cbmV4cG9ydCBlbnVtIFRvb2xiYXJBY3Rpb25UeXBlcyB7XG4gICAgc3BsaXQgPSAnc3BsaXQnLFxuICAgIHVuZG8gPSAndW5kbycsXG4gICAgcmVkbyA9ICdyZWRvJyxcbiAgICBwYWludGZvcm1hdCA9ICdwYWludGZvcm1hdCcsXG4gICAgY2xlYW4gPSAnY2xlYW4nLFxuICAgIGFsaWduVHlwZSA9ICdhbGlnbi10eXBlJyxcbiAgICBhbGlnbkxlZnQgPSAnYWxpZ24tbGVmdCcsXG4gICAgYWxpZ25DZW50ZXIgPSAnYWxpZ24tY2VudGVyJyxcbiAgICBhbGlnblJpZ2h0ID0gJ2FsaWduLXJpZ2h0JyxcbiAgICB2ZXJ0aWNhbEFsaWduID0gJ3ZlcnRpY2FsLWFsaWduJyxcbiAgICB2ZXJ0aWNhbEFsaWduVG9wID0gJ3ZlcnRpY2FsLWFsaWduLXRvcCcsXG4gICAgdmVydGljYWxBbGlnbk1pZGRsZSA9ICd2ZXJ0aWNhbC1hbGlnbi1taWRkbGUnLFxuICAgIHZlcnRpY2FsQWxpZ25Cb3R0b20gPSAndmVydGljYWwtYWxpZ24tYm90dG9tJyxcbiAgICBoZWFkaW5nTGlzdCA9ICdoZWFkaW5nLWxpc3QnLFxuICAgIHRhYmxlUmVtb3ZlID0gJ3RhYmxlLXJlbW92ZScsXG4gICAgdGFibGVEZWxldGVSb3dzID0gJ3RhYmxlLWRlbGV0ZS1yb3dzJyxcbiAgICB0YWJsZURlbGV0ZUNvbHVtbnMgPSAndGFibGUtZGVsZXRlLWNvbHVtbnMnXG59XG5cbmV4cG9ydCBjb25zdCBNYXJrUHJvcHM6IEFycmF5PE1hcmtUeXBlcz4gPSBbXG4gICAgTWFya1R5cGVzLmJhY2tncm91bmRDb2xvcixcbiAgICBNYXJrVHlwZXMuYm9sZCxcbiAgICBNYXJrVHlwZXMuY29sb3IsXG4gICAgTWFya1R5cGVzLml0YWxpYyxcbiAgICBNYXJrVHlwZXMuc3RyaWtlLFxuICAgIE1hcmtUeXBlcy51bmRlcmxpbmUsXG4gICAgTWFya1R5cGVzLmZvbnRTaXplLFxuICAgIE1hcmtUeXBlcy5jb2RlTGluZVxuXTtcblxuZXhwb3J0IGNvbnN0IFRIRV9JTkxJTkVfVE9PTEJBUl9UWVBFUzogQXJyYXk8RWxlbWVudEtpbmRzPiA9IFtFbGVtZW50S2luZHMuZGVmYXVsdCwgRWxlbWVudEtpbmRzLmxpc3RJdGVtLCBFbGVtZW50S2luZHMuY2hlY2tJdGVtXTtcblxuZXhwb3J0IGNvbnN0IFNUQU5EQVJEX0hFQURJTkdfVFlQRVM6IEN1c3RvbUVsZW1lbnRLaW5kc1tdID0gW1xuICAgIEVsZW1lbnRLaW5kcy5oZWFkaW5nXzEsXG4gICAgRWxlbWVudEtpbmRzLmhlYWRpbmdfMixcbiAgICBFbGVtZW50S2luZHMuaGVhZGluZ18zLFxuICAgIEVsZW1lbnRLaW5kcy5oZWFkaW5nXzRcbl07XG5cbmV4cG9ydCBjb25zdCBIRUFESU5HX1RZUEVTOiBDdXN0b21FbGVtZW50S2luZHNbXSA9IFsuLi5TVEFOREFSRF9IRUFESU5HX1RZUEVTLCBFbGVtZW50S2luZHMuaGVhZGluZ181LCBFbGVtZW50S2luZHMuaGVhZGluZ182XTtcblxuZXhwb3J0IGNvbnN0IEFMSUdOX0JMT0NLX1RZUEVTOiBDdXN0b21FbGVtZW50S2luZHNbXSA9IFtFbGVtZW50S2luZHMuZGVmYXVsdCwgRWxlbWVudEtpbmRzLmxpc3RJdGVtLCBFbGVtZW50S2luZHMuaW1hZ2UsIC4uLkhFQURJTkdfVFlQRVNdO1xuXG5leHBvcnQgY29uc3QgQ09OVEFJTkVSX0JMT0NLUzogQ3VzdG9tRWxlbWVudEtpbmRzW10gPSBbRWxlbWVudEtpbmRzLmJsb2NrcXVvdGUsIEVsZW1lbnRLaW5kcy50YWJsZUNlbGxdO1xuXG5leHBvcnQgY29uc3QgTElTVF9CTE9DS19UWVBFUzogQ3VzdG9tRWxlbWVudEtpbmRzW10gPSBbRWxlbWVudEtpbmRzLm51bWJlcmVkTGlzdCwgRWxlbWVudEtpbmRzLmJ1bGxldGVkTGlzdF07XG5cbmV4cG9ydCBjb25zdCBWT0lEX0JMT0NLX1RZUEVTOiBDdXN0b21FbGVtZW50S2luZHNbXSA9IFtFbGVtZW50S2luZHMuaW1hZ2UsIEVsZW1lbnRLaW5kcy5ocl07XG5cbmV4cG9ydCBjb25zdCBCTE9DS19ERUxFVEVfQkFDS1dBUkRfVFlQRVM6IEN1c3RvbUVsZW1lbnRLaW5kc1tdID0gW0VsZW1lbnRLaW5kcy50YWJsZUNlbGxdO1xuXG5leHBvcnQgY29uc3QgRElTQUJMRURfT1BFUkFURV9UWVBFUzogQ3VzdG9tRWxlbWVudEtpbmRzW10gPSBbRWxlbWVudEtpbmRzLmNvZGUsIEVsZW1lbnRLaW5kcy5ocl07XG4iXX0=
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Directive, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { Editor, Transforms } from 'slate';
|
|
3
|
+
import { AngularEditor } from 'slate-angular';
|
|
4
|
+
import { DropdownMode } from '../../constants/toolbar';
|
|
5
|
+
import * as TheQueries from '../../queries';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class TheBaseToolbarItem {
|
|
8
|
+
set toolbarItem(value) {
|
|
9
|
+
this._toolbarItem = value;
|
|
10
|
+
}
|
|
11
|
+
get toolbarItem() {
|
|
12
|
+
return this._toolbarItem;
|
|
13
|
+
}
|
|
14
|
+
get disabledState() {
|
|
15
|
+
return this.disabled;
|
|
16
|
+
}
|
|
17
|
+
get activeState() {
|
|
18
|
+
return this.active;
|
|
19
|
+
}
|
|
20
|
+
execute(event) {
|
|
21
|
+
var _a;
|
|
22
|
+
event.preventDefault();
|
|
23
|
+
event.stopPropagation();
|
|
24
|
+
if (!this.itemMousedownHandle && !((_a = this.editor) === null || _a === void 0 ? void 0 : _a.selection)) {
|
|
25
|
+
const lastNode = TheQueries.getLastNode(this.editor, 1);
|
|
26
|
+
const end = Editor.end(this.editor, lastNode[1]);
|
|
27
|
+
Transforms.select(this.editor, end);
|
|
28
|
+
AngularEditor.focus(this.editor);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
selectionChange(editor) {
|
|
32
|
+
var _a, _b, _c, _d, _e;
|
|
33
|
+
if (editor.selection) {
|
|
34
|
+
this.active = ((_a = this._toolbarItem) === null || _a === void 0 ? void 0 : _a.active) ? (_b = this._toolbarItem) === null || _b === void 0 ? void 0 : _b.active(editor) : false;
|
|
35
|
+
if ((_c = this._toolbarItem) === null || _c === void 0 ? void 0 : _c.disable) {
|
|
36
|
+
this.disabled = ((_d = this._toolbarItem) === null || _d === void 0 ? void 0 : _d.disable) ? (_e = this._toolbarItem) === null || _e === void 0 ? void 0 : _e.disable(editor) : false;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const thePlugin = TheQueries.getPluginByToolbarItem(editor, this._toolbarItem);
|
|
40
|
+
this.disabled = thePlugin && TheQueries.getToolbarItemDisabled(editor, thePlugin.key);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
TheBaseToolbarItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseToolbarItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
46
|
+
TheBaseToolbarItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: TheBaseToolbarItem, inputs: { toolbarItem: "toolbarItem", editor: "editor" }, host: { properties: { "class.disabled": "this.disabledState", "class.active": "this.activeState" } }, ngImport: i0 });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseToolbarItem, decorators: [{
|
|
48
|
+
type: Directive
|
|
49
|
+
}], propDecorators: { toolbarItem: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], editor: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], disabledState: [{
|
|
54
|
+
type: HostBinding,
|
|
55
|
+
args: ['class.disabled']
|
|
56
|
+
}], activeState: [{
|
|
57
|
+
type: HostBinding,
|
|
58
|
+
args: ['class.active']
|
|
59
|
+
}] } });
|
|
60
|
+
export class TheBaseToolbarDropdown extends TheBaseToolbarItem {
|
|
61
|
+
constructor() {
|
|
62
|
+
super(...arguments);
|
|
63
|
+
this.mode = DropdownMode.text;
|
|
64
|
+
}
|
|
65
|
+
get defaultDropdownItem() {
|
|
66
|
+
const activeItem = this.dropdownItemKey && this.menus.find((item) => item.key === this.dropdownItemKey);
|
|
67
|
+
return activeItem ? activeItem : this.menus[0];
|
|
68
|
+
}
|
|
69
|
+
selectionChange(editor) {
|
|
70
|
+
super.selectionChange(editor);
|
|
71
|
+
const activeItem = this.menus.find(i => {
|
|
72
|
+
if (i === null || i === void 0 ? void 0 : i.active) {
|
|
73
|
+
return i === null || i === void 0 ? void 0 : i.active(editor);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
if (!this.toolbarItem.dropdownFixedIcon) {
|
|
77
|
+
this.activeMenuItem = activeItem ? activeItem : this.defaultDropdownItem;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
TheBaseToolbarDropdown.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseToolbarDropdown, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
82
|
+
TheBaseToolbarDropdown.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: TheBaseToolbarDropdown, inputs: { menus: "menus", mode: "mode", dropdownItemKey: "dropdownItemKey" }, usesInheritance: true, ngImport: i0 });
|
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseToolbarDropdown, decorators: [{
|
|
84
|
+
type: Directive
|
|
85
|
+
}], propDecorators: { menus: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], mode: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], dropdownItemKey: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b29sYmFyLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29yZS90b29sYmFyLWl0ZW0vYmFzZS10b29sYmFyLWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZELE9BQU8sS0FBSyxVQUFVLE1BQU0sZUFBZSxDQUFDOztBQUc1QyxNQUFNLE9BQWdCLGtCQUFrQjtJQUNwQyxJQUNJLFdBQVcsQ0FBQyxLQUFrQjtRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFPRCxJQUFtQyxhQUFhO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBaUMsV0FBVztRQUN4QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFpQjs7UUFDckIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixJQUFJLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFNBQVMsQ0FBQSxFQUFFO1lBQ3RELE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxD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Qjs0RkFBdEIsc0JBQXNCO2tCQUQzQyxTQUFTOzhCQUlHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFZGl0b3IsIFRyYW5zZm9ybXMgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBBbmd1bGFyRWRpdG9yIH0gZnJvbSAnc2xhdGUtYW5ndWxhcic7XG5pbXBvcnQgeyBEcm9wZG93bk1vZGUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvdG9vbGJhcic7XG5pbXBvcnQgeyBQbHVnaW5LZXlzLCBUb29sYmFySXRlbSwgVG9vbGJhcktleSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi8uLi9xdWVyaWVzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGhlQmFzZVRvb2xiYXJJdGVtIHtcbiAgICBASW5wdXQoKVxuICAgIHNldCB0b29sYmFySXRlbSh2YWx1ZTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgdGhpcy5fdG9vbGJhckl0ZW0gPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHRvb2xiYXJJdGVtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdG9vbGJhckl0ZW07XG4gICAgfVxuICAgIEBJbnB1dCgpIGVkaXRvcjogRWRpdG9yO1xuICAgIGRpc2FibGVkOiBib29sZWFuO1xuICAgIGFjdGl2ZTogc3RyaW5nIHwgYm9vbGVhbjtcbiAgICBfdG9vbGJhckl0ZW06IFRvb2xiYXJJdGVtO1xuICAgIGl0ZW1Nb3VzZWRvd25IYW5kbGU6IChpdGVtOiBUb29sYmFySXRlbSkgPT4gdm9pZDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBnZXQgZGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hY3RpdmUnKSBnZXQgYWN0aXZlU3RhdGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFjdGl2ZTtcbiAgICB9XG5cbiAgICBleGVjdXRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAoIXRoaXMuaXRlbU1vdXNlZG93bkhhbmRsZSAmJiAhdGhpcy5lZGl0b3I/LnNlbGVjdGlvbikge1xuICAgICAgICAgICAgY29uc3QgbGFzdE5vZGUgPSBUaGVRdWVyaWVzLmdldExhc3ROb2RlKHRoaXMuZWRpdG9yLCAxKTtcbiAgICAgICAgICAgIGNvbnN0IGVuZCA9IEVkaXRvci5lbmQodGhpcy5lZGl0b3IsIGxhc3ROb2RlWzFdKTtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KHRoaXMuZWRpdG9yLCBlbmQpO1xuICAgICAgICAgICAgQW5ndWxhckVkaXRvci5mb2N1cyh0aGlzLmVkaXRvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3Rpb25DaGFuZ2UoZWRpdG9yOiBFZGl0b3IpIHtcbiAgICAgICAgaWYgKGVkaXRvci5zZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gdGhpcy5fdG9vbGJhckl0ZW0/LmFjdGl2ZSA/IHRoaXMuX3Rvb2xiYXJJdGVtPy5hY3RpdmUoZWRpdG9yKSA6IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuX3Rvb2xiYXJJdGVtPy5kaXNhYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMuX3Rvb2xiYXJJdGVtPy5kaXNhYmxlID8gdGhpcy5fdG9vbGJhckl0ZW0/LmRpc2FibGUoZWRpdG9yKSA6IGZhbHNlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aGVQbHVnaW4gPSBUaGVRdWVyaWVzLmdldFBsdWdpbkJ5VG9vbGJhckl0ZW0oZWRpdG9yLCB0aGlzLl90b29sYmFySXRlbSk7XG4gICAgICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoZVBsdWdpbiAmJiBUaGVRdWVyaWVzLmdldFRvb2xiYXJJdGVtRGlzYWJsZWQoZWRpdG9yLCB0aGVQbHVnaW4ua2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGhlQmFzZVRvb2xiYXJEcm9wZG93biBleHRlbmRzIFRoZUJhc2VUb29sYmFySXRlbSB7XG4gICAgYWN0aXZlTWVudUl0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgbWVudXM6IFRvb2xiYXJJdGVtW107XG5cbiAgICBASW5wdXQoKSBtb2RlOiBEcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGUudGV4dDtcblxuICAgIEBJbnB1dCgpIGRyb3Bkb3duSXRlbUtleTogVG9vbGJhcktleTtcblxuICAgIGdldCBkZWZhdWx0RHJvcGRvd25JdGVtKCkge1xuICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5kcm9wZG93bkl0ZW1LZXkgJiYgdGhpcy5tZW51cy5maW5kKChpdGVtKSA9PiBpdGVtLmtleSA9PT0gdGhpcy5kcm9wZG93bkl0ZW1LZXkpO1xuICAgICAgICByZXR1cm4gYWN0aXZlSXRlbSA/IGFjdGl2ZUl0ZW0gOiB0aGlzLm1lbnVzWzBdO1xuICAgIH1cblxuICAgIHNlbGVjdGlvbkNoYW5nZShlZGl0b3I6IEVkaXRvcikge1xuICAgICAgICBzdXBlci5zZWxlY3Rpb25DaGFuZ2UoZWRpdG9yKTtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMubWVudXMuZmluZChpID0+IHtcbiAgICAgICAgICAgIGlmIChpPy5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaT8uYWN0aXZlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXRoaXMudG9vbGJhckl0ZW0uZHJvcGRvd25GaXhlZEljb24pIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlTWVudUl0ZW0gPSBhY3RpdmVJdGVtID8gYWN0aXZlSXRlbSA6IHRoaXMuZGVmYXVsdERyb3Bkb3duSXRlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|