@covalent/markdown-navigator 8.23.2 → 9.0.0-beta.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/markdown-navigator-window/markdown-navigator-window.component.mjs +4 -4
- package/esm2022/markdown-navigator-window-directive/markdown-navigator-window.directive.mjs +4 -4
- package/esm2022/markdown-navigator-window-service/markdown-navigator-window.service.mjs +4 -5
- package/esm2022/markdown-navigator.component.mjs +4 -4
- package/esm2022/markdown-navigator.module.mjs +5 -5
- package/fesm2022/covalent-markdown-navigator.mjs +18 -19
- package/fesm2022/covalent-markdown-navigator.mjs.map +1 -1
- package/package.json +8 -8
|
@@ -54,10 +54,10 @@ export class TdMarkdownNavigatorWindowComponent {
|
|
|
54
54
|
toggleDockedState() {
|
|
55
55
|
this.dockToggled.emit(this.docked);
|
|
56
56
|
}
|
|
57
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
58
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
57
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorWindowComponent, selector: "td-markdown-navigator-window", inputs: { items: "items", labels: "labels", toolbarColor: "toolbarColor", startAt: "startAt", compareWith: "compareWith", docked: "docked", copyCodeToClipboard: "copyCodeToClipboard", copyCodeTooltips: "copyCodeTooltips", footer: "footer" }, outputs: { closed: "closed", dockToggled: "dockToggled", buttonClicked: "buttonClicked", itemSelected: "itemSelected" }, ngImport: i0, template: "<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n", styles: [":host{height:100%;display:flex;flex-direction:column}td-markdown-navigator{height:calc(100% - 56px)}\n"], dependencies: [{ kind: "component", type: i1.TdWindowDialogComponent, selector: "td-window-dialog", inputs: ["toolbarColor", "docked", "title", "toggleDockedStateLabel", "closeLabel"], outputs: ["dockToggled", "closed"] }, { kind: "component", type: i2.TdMarkdownNavigatorComponent, selector: "td-markdown-navigator", inputs: ["items", "labels", "startAt", "copyCodeToClipboard", "copyCodeTooltips", "footer", "compareWith"], outputs: ["buttonClicked", "itemSelected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
59
59
|
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowComponent, decorators: [{
|
|
61
61
|
type: Component,
|
|
62
62
|
args: [{ selector: 'td-markdown-navigator-window', changeDetection: ChangeDetectionStrategy.OnPush, template: "<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n", styles: [":host{height:100%;display:flex;flex-direction:column}td-markdown-navigator{height:calc(100% - 56px)}\n"] }]
|
|
63
63
|
}], propDecorators: { items: [{
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
87
87
|
}], itemSelected: [{
|
|
88
88
|
type: Output
|
|
89
89
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21hcmtkb3duLW5hdmlnYXRvci9zcmMvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvbWFya2Rvd24tbmF2aWdhdG9yL3NyYy9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93L21hcmtkb3duLW5hdmlnYXRvci13aW5kb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLEtBQUssRUFDTCx1QkFBdUIsRUFDdkIsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFDOzs7O0FBaUJ2QixNQUFNLENBQUMsTUFBTSx3Q0FBd0MsR0FDbkQ7SUFDRSxLQUFLLEVBQUUsTUFBTTtJQUNiLEtBQUssRUFBRSxPQUFPO0lBQ2QsSUFBSSxFQUFFLE1BQU07SUFDWixNQUFNLEVBQUUsUUFBUTtDQUNqQixDQUFDO0FBUUosTUFBTSxPQUFPLGtDQUFrQztJQUNwQyxLQUFLLENBQTRCO0lBQ2pDLE1BQU0sQ0FBa0M7SUFDeEMsWUFBWSxHQUFpQixTQUFTLENBQUM7SUFDdkMsT0FBTyxDQUFxRDtJQUM1RCxXQUFXLENBQWlDO0lBQzVDLE1BQU0sR0FBSSxLQUFLLENBQUM7SUFDaEIsbUJBQW1CLEdBQUksS0FBSyxDQUFDO0lBQzdCLGdCQUFnQixHQUF1QixFQUFFLENBQUM7SUFDMUMsTUFBTSxDQUFhO0lBRWxCLE1BQU0sR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNoRCxXQUFXLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7SUFDeEQsYUFBYSxHQUNyQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ1gsWUFBWSxHQUNwQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXJCLElBQUksdUJBQXVCO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2QsT0FBTztZQUNMLE1BQU07WUFDTixNQUFNO1lBQ04sVUFBVTtTQUNYLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNsQyx3Q0FBd0MsQ0FBQyxLQUFLLENBQy9DLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNsQyx3Q0FBd0MsQ0FBQyxLQUFLLENBQy9DLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxzQkFBc0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDbkMsd0NBQXdDLENBQUMsTUFBTSxDQUNoRCxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQ0wsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNqQyx3Q0FBd0MsQ0FBQyxJQUFJLENBQzlDLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO3dHQTdEVSxrQ0FBa0M7NEZBQWxDLGtDQUFrQywrYUN0Qy9DLHd1QkFzQkE7OzRGRGdCYSxrQ0FBa0M7a0JBTjlDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUcsWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7XG4gIElNYXJrZG93bk5hdmlnYXRvckl0ZW0sXG4gIElNYXJrZG93bk5hdmlnYXRvckxhYmVscyxcbiAgSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGgsXG59IGZyb20gJy4uL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSVRkRmxhdm9yZWRNYXJrZG93bkJ1dHRvbkNsaWNrRXZlbnQgfSBmcm9tICdAY292YWxlbnQvZmxhdm9yZWQtbWFya2Rvd24nO1xuaW1wb3J0IHsgSUNvcHlDb2RlVG9vbHRpcHMgfSBmcm9tICdAY292YWxlbnQvaGlnaGxpZ2h0JztcblxuZXhwb3J0IGludGVyZmFjZSBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dMYWJlbHNcbiAgZXh0ZW5kcyBJTWFya2Rvd25OYXZpZ2F0b3JMYWJlbHMge1xuICB0aXRsZT86IHN0cmluZztcbiAgY2xvc2U/OiBzdHJpbmc7XG4gIGRvY2s/OiBzdHJpbmc7XG4gIHVuRG9jaz86IHN0cmluZztcbn1cbmV4cG9ydCBjb25zdCBERUZBVUxUX01BUktET1dOX05BVklHQVRPUl9XSU5ET1dfTEFCRUxTOiBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dMYWJlbHMgPVxuICB7XG4gICAgdGl0bGU6ICdIZWxwJyxcbiAgICBjbG9zZTogJ0Nsb3NlJyxcbiAgICBkb2NrOiAnRG9jaycsXG4gICAgdW5Eb2NrOiAnVW5kb2NrJyxcbiAgfTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdO1xuICBASW5wdXQoKSBsYWJlbHM/OiBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dMYWJlbHM7XG4gIEBJbnB1dCgpIHRvb2xiYXJDb2xvcjogVGhlbWVQYWxldHRlID0gJ3ByaW1hcnknO1xuICBASW5wdXQoKSBzdGFydEF0PzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXTtcbiAgQElucHV0KCkgY29tcGFyZVdpdGg/OiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aDtcbiAgQElucHV0KCkgZG9ja2VkPyA9IGZhbHNlO1xuICBASW5wdXQoKSBjb3B5Q29kZVRvQ2xpcGJvYXJkPyA9IGZhbHNlO1xuICBASW5wdXQoKSBjb3B5Q29kZVRvb2x0aXBzPzogSUNvcHlDb2RlVG9vbHRpcHMgPSB7fTtcbiAgQElucHV0KCkgZm9vdGVyPzogVHlwZTxhbnk+O1xuXG4gIEBPdXRwdXQoKSBjbG9zZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGRvY2tUb2dnbGVkOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBidXR0b25DbGlja2VkOiBFdmVudEVtaXR0ZXI8SVRkRmxhdm9yZWRNYXJrZG93bkJ1dHRvbkNsaWNrRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBpdGVtU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxJTWFya2Rvd25OYXZpZ2F0b3JJdGVtPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGdldCBtYXJrZG93bk5hdmlnYXRvckxhYmVscygpOiBJTWFya2Rvd25OYXZpZ2F0b3JMYWJlbHMgfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5sYWJlbHMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3QgeyBnb0hvbWUsIGdvQmFjaywgZW1wdHlTdGF0ZSB9OiBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dMYWJlbHMgPVxuICAgICAgdGhpcy5sYWJlbHM7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdvSG9tZSxcbiAgICAgIGdvQmFjayxcbiAgICAgIGVtcHR5U3RhdGUsXG4gICAgfTtcbiAgfVxuICBnZXQgdGl0bGVMYWJlbCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMudGl0bGUpIHx8XG4gICAgICBERUZBVUxUX01BUktET1dOX05BVklHQVRPUl9XSU5ET1dfTEFCRUxTLnRpdGxlXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjbG9zZUxhYmVsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIChcbiAgICAgICh0aGlzLmxhYmVscyAmJiB0aGlzLmxhYmVscy5jbG9zZSkgfHxcbiAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX1dJTkRPV19MQUJFTFMuY2xvc2VcbiAgICApO1xuICB9XG5cbiAgZ2V0IHRvZ2dsZURvY2tlZFN0YXRlTGFiZWwoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5kb2NrZWQpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgICh0aGlzLmxhYmVscyAmJiB0aGlzLmxhYmVscy51bkRvY2spIHx8XG4gICAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX1dJTkRPV19MQUJFTFMudW5Eb2NrXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMuZG9jaykgfHxcbiAgICAgICAgREVGQVVMVF9NQVJLRE9XTl9OQVZJR0FUT1JfV0lORE9XX0xBQkVMUy5kb2NrXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZURvY2tlZFN0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuZG9ja1RvZ2dsZWQuZW1pdCh0aGlzLmRvY2tlZCk7XG4gIH1cbn1cbiIsIjx0ZC13aW5kb3ctZGlhbG9nXG4gIFt0b29sYmFyQ29sb3JdPVwidG9vbGJhckNvbG9yXCJcbiAgW2RvY2tlZF09XCJkb2NrZWRcIlxuICBbdGl0bGVdPVwidGl0bGVMYWJlbFwiXG4gIFt0b2dnbGVEb2NrZWRTdGF0ZUxhYmVsXT1cInRvZ2dsZURvY2tlZFN0YXRlTGFiZWxcIlxuICBbY2xvc2VMYWJlbF09XCJjbG9zZUxhYmVsXCJcbiAgKGRvY2tUb2dnbGVkKT1cInRvZ2dsZURvY2tlZFN0YXRlKClcIlxuICAoY2xvc2VkKT1cImNsb3NlZC5lbWl0KClcIlxuPlxuICA8dGQtbWFya2Rvd24tbmF2aWdhdG9yXG4gICAgW2l0ZW1zXT1cIml0ZW1zXCJcbiAgICBbbGFiZWxzXT1cIm1hcmtkb3duTmF2aWdhdG9yTGFiZWxzXCJcbiAgICBbc3R5bGUuZGlzcGxheV09XCJkb2NrZWQgPyAnbm9uZScgOiAnaW5oZXJpdCdcIlxuICAgIFtzdGFydEF0XT1cInN0YXJ0QXRcIlxuICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlV2l0aFwiXG4gICAgW2Zvb3Rlcl09XCJmb290ZXJcIlxuICAgIFtjb3B5Q29kZVRvQ2xpcGJvYXJkXT1cImNvcHlDb2RlVG9DbGlwYm9hcmRcIlxuICAgIFtjb3B5Q29kZVRvb2x0aXBzXT1cImNvcHlDb2RlVG9vbHRpcHNcIlxuICAgIChidXR0b25DbGlja2VkKT1cImJ1dHRvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcbiAgICAoaXRlbVNlbGVjdGVkKT1cIml0ZW1TZWxlY3RlZC5lbWl0KCRldmVudClcIlxuICA+PC90ZC1tYXJrZG93bi1uYXZpZ2F0b3I+XG48L3RkLXdpbmRvdy1kaWFsb2c+XG4iXX0=
|
|
@@ -14,10 +14,10 @@ export class TdMarkdownNavigatorWindowDirective {
|
|
|
14
14
|
this._markdownNavigatorWindowService.open(this.config);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
18
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowDirective, deps: [{ token: i1.TdMarkdownNavigatorWindowService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorWindowDirective, selector: "[tdMarkdownNavigatorWindow]", inputs: { config: ["tdMarkdownNavigatorWindow", "config"], disabled: "disabled" }, host: { listeners: { "click": "click()" } }, ngImport: i0 });
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowDirective, decorators: [{
|
|
21
21
|
type: Directive,
|
|
22
22
|
args: [{
|
|
23
23
|
selector: '[tdMarkdownNavigatorWindow]',
|
|
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
31
31
|
type: HostListener,
|
|
32
32
|
args: ['click']
|
|
33
33
|
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21hcmtkb3duLW5hdmlnYXRvci9zcmMvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy1kaXJlY3RpdmUvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFDTCxnQ0FBZ0MsR0FFakMsTUFBTSx3RUFBd0UsQ0FBQzs7O0FBS2hGLE1BQU0sT0FBTyxrQ0FBa0M7SUFJbkM7SUFIMEIsTUFBTSxDQUFrQztJQUNuRSxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFlBQ1UsK0JBQWlFO1FBQWpFLG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBa0M7SUFDeEUsQ0FBQztJQUVtQixLQUFLO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsK0JBQStCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxDQUFDO0lBQ0gsQ0FBQzt3R0FYVSxrQ0FBa0M7NEZBQWxDLGtDQUFrQzs7NEZBQWxDLGtDQUFrQztrQkFIOUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkJBQTZCO2lCQUN4QztxR0FFcUMsTUFBTTtzQkFBekMsS0FBSzt1QkFBQywyQkFBMkI7Z0JBQ3pCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS2lCLEtBQUs7c0JBQTNCLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd1NlcnZpY2UsXG4gIElNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbmZpZyxcbn0gZnJvbSAnLi4vbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy1zZXJ2aWNlL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3cuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZE1hcmtkb3duTmF2aWdhdG9yV2luZG93XScsXG59KVxuZXhwb3J0IGNsYXNzIFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaXJlY3RpdmUge1xuICBASW5wdXQoJ3RkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3cnKSBjb25maWc/OiBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb25maWc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX21hcmtkb3duTmF2aWdhdG9yV2luZG93U2VydmljZTogVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd1NlcnZpY2VcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgY2xpY2soKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkICYmIHRoaXMuY29uZmlnKSB7XG4gICAgICB0aGlzLl9tYXJrZG93bk5hdmlnYXRvcldpbmRvd1NlcnZpY2Uub3Blbih0aGlzLmNvbmZpZyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -8,7 +8,6 @@ const CDK_OVERLAY_CUSTOM_CLASS = 'td-window-dialog';
|
|
|
8
8
|
const DEFAULT_POSITION = { bottom: '0px', right: '0px' };
|
|
9
9
|
const DEFAULT_WIDTH = '360px';
|
|
10
10
|
const DEFAULT_HEIGHT = '75vh';
|
|
11
|
-
const MIN_HEIGHT = '56px';
|
|
12
11
|
const MAX_WIDTH = '100vw';
|
|
13
12
|
const DEFAULT_DRAGGABLE_DIALOG_CONFIG = {
|
|
14
13
|
hasBackdrop: false,
|
|
@@ -91,13 +90,13 @@ export class TdMarkdownNavigatorWindowService {
|
|
|
91
90
|
this.markdownNavigatorWindowDialogsOpen--;
|
|
92
91
|
});
|
|
93
92
|
}
|
|
94
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
95
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
93
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService, deps: [{ token: i1.TdDialogService }, { token: DOCUMENT }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
94
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService });
|
|
96
95
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService, decorators: [{
|
|
98
97
|
type: Injectable
|
|
99
98
|
}], ctorParameters: () => [{ type: i1.TdDialogService }, { type: undefined, decorators: [{
|
|
100
99
|
type: Inject,
|
|
101
100
|
args: [DOCUMENT]
|
|
102
101
|
}] }, { type: i0.RendererFactory2 }] });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tYXJrZG93bi1uYXZpZ2F0b3Ivc3JjL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3ctc2VydmljZS9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sZ0JBQWdCLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFDTCxrQ0FBa0MsR0FFbkMsTUFBTSxrRUFBa0UsQ0FBQztBQUMxRSxPQUFPLEVBQ0wsZUFBZSxFQUVmLHdCQUF3QixHQUN6QixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBbUIzQyxNQUFNLHdCQUF3QixHQUFHLGtCQUFrQixDQUFDO0FBRXBELE1BQU0sZ0JBQWdCLEdBQW1CLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDekUsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDO0FBQzlCLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQztBQUM5QixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUM7QUFDMUIsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDO0FBRTFCLE1BQU0sK0JBQStCLEdBQW9CO0lBQ3ZELFdBQVcsRUFBRSxLQUFLO0lBQ2xCLGlCQUFpQixFQUFFLElBQUk7SUFDdkIsVUFBVSxFQUFFLENBQUMsd0JBQXdCLENBQUM7SUFDdEMsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixNQUFNLEVBQUUsY0FBYztJQUN0QixLQUFLLEVBQUUsYUFBYTtJQUNwQixRQUFRLEVBQUUsU0FBUztDQUNwQixDQUFDO0FBUUYsTUFBTSxPQUFPLGdDQUFnQztJQVFqQztJQUNr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QTZCLENBQUM7SUFDNUMsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1lBQ3ZDLElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN6QyxDQUFDO1lBQ0QsSUFBSSxDQUFDLDZCQUE2QixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsa0NBQWtDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUN6RSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQ2IsQ0FBQztRQUVGLElBQUksQ0FBQyw2QkFBNkI7YUFDL0IsV0FBVyxFQUFFO2FBQ2IsU0FBUyxFQUFFO2FBQ1gsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNULElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt1R0EzRlUsZ0NBQWdDLGlEQVNqQyxRQUFROzJHQVRQLGdDQUFnQzs7MkZBQWhDLGdDQUFnQztrQkFENUMsVUFBVTs7MEJBVU4sTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZSxcbiAgSW5qZWN0LFxuICBSZW5kZXJlckZhY3RvcnkyLFxuICBSZW5kZXJlcjIsXG4gIFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTWF0RGlhbG9nUmVmLFxuICBNYXREaWFsb2dDb25maWcsXG4gIERpYWxvZ1Bvc2l0aW9uLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge1xuICBUZE1hcmtkb3duTmF2aWdhdG9yV2luZG93Q29tcG9uZW50LFxuICBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dMYWJlbHMsXG59IGZyb20gJy4uL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3cvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgVGREaWFsb2dTZXJ2aWNlLFxuICBJRHJhZ2dhYmxlUmVmcyxcbiAgUmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nLFxufSBmcm9tICdAY292YWxlbnQvY29yZS9kaWFsb2dzJztcbmltcG9ydCB7IERyYWdSZWYsIFBvaW50IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtLFxuICBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aCxcbn0gZnJvbSAnLi4vbWFya2Rvd24tbmF2aWdhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJQ29weUNvZGVUb29sdGlwcyB9IGZyb20gJ0Bjb3ZhbGVudC9oaWdobGlnaHQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbmZpZyB7XG4gIGl0ZW1zOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG4gIGRpYWxvZ0NvbmZpZz86IE1hdERpYWxvZ0NvbmZpZztcbiAgbGFiZWxzPzogSU1hcmtkb3duTmF2aWdhdG9yV2luZG93TGFiZWxzO1xuICB0b29sYmFyQ29sb3I/OiBUaGVtZVBhbGV0dGU7XG4gIHN0YXJ0QXQ/OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtIHwgSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdO1xuICBjb21wYXJlV2l0aD86IElNYXJrZG93bk5hdmlnYXRvckNvbXBhcmVXaXRoO1xuICBjb3B5Q29kZVRvQ2xpcGJvYXJkPzogYm9vbGVhbjtcbiAgY29weUNvZGVUb29sdGlwcz86IElDb3B5Q29kZVRvb2x0aXBzO1xuICBmb290ZXI/OiBUeXBlPGFueT47XG59XG5cbmNvbnN0IENES19PVkVSTEFZX0NVU1RPTV9DTEFTUyA9ICd0ZC13aW5kb3ctZGlhbG9nJztcblxuY29uc3QgREVGQVVMVF9QT1NJVElPTjogRGlhbG9nUG9zaXRpb24gPSB7IGJvdHRvbTogJzBweCcsIHJpZ2h0OiAnMHB4JyB9O1xuY29uc3QgREVGQVVMVF9XSURUSCA9ICczNjBweCc7XG5jb25zdCBERUZBVUxUX0hFSUdIVCA9ICc3NXZoJztcbmNvbnN0IE1JTl9IRUlHSFQgPSAnNTZweCc7XG5jb25zdCBNQVhfV0lEVEggPSAnMTAwdncnO1xuXG5jb25zdCBERUZBVUxUX0RSQUdHQUJMRV9ESUFMT0dfQ09ORklHOiBNYXREaWFsb2dDb25maWcgPSB7XG4gIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgY2xvc2VPbk5hdmlnYXRpb246IHRydWUsXG4gIHBhbmVsQ2xhc3M6IFtDREtfT1ZFUkxBWV9DVVNUT01fQ0xBU1NdLFxuICBwb3NpdGlvbjogREVGQVVMVF9QT1NJVElPTixcbiAgaGVpZ2h0OiBERUZBVUxUX0hFSUdIVCxcbiAgd2lkdGg6IERFRkFVTFRfV0lEVEgsXG4gIG1heFdpZHRoOiBNQVhfV0lEVEgsXG59O1xuXG5pbnRlcmZhY2UgSURpYWxvZ0RpbWVuc2lvbnMge1xuICB3aWR0aDogc3RyaW5nO1xuICBoZWlnaHQ6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBfcmVuZGVyZXIyOiBSZW5kZXJlcjI7XG4gIHByaXZhdGUgZHJhZ1JlZiE6IERyYWdSZWY7XG4gIHByaXZhdGUgcmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nITogUmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nO1xuICBwcml2YXRlIG1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nITogTWF0RGlhbG9nUmVmPFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb21wb25lbnQ+O1xuICBwcml2YXRlIG1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nc09wZW4gPSAwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3RkRGlhbG9nU2VydmljZTogVGREaWFsb2dTZXJ2aWNlLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBhbnksXG4gICAgcHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTJcbiAgKSB7XG4gICAgdGhpcy5fcmVuZGVyZXIyID0gcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKHVuZGVmaW5lZCwgbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbihcbiAgICBjb25maWc6IElNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbmZpZ1xuICApOiBNYXREaWFsb2dSZWY8VGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbXBvbmVudD4ge1xuICAgIHRoaXMuY2xvc2UoKTtcblxuICAgIGNvbnN0IGNvbmZpZ0NsYXNzID0gY29uZmlnPy5kaWFsb2dDb25maWc/LnBhbmVsQ2xhc3M7XG4gICAgY29uc3QgcGFuZWxDbGFzcyA9XG4gICAgICBjb25maWdDbGFzcyAmJiAhQXJyYXkuaXNBcnJheShjb25maWdDbGFzcykgPyBbY29uZmlnQ2xhc3NdIDogW107XG5cbiAgICBjb25zdCBkcmFnZ2FibGVDb25maWc6IE1hdERpYWxvZ0NvbmZpZyA9IHtcbiAgICAgIC4uLkRFRkFVTFRfRFJBR0dBQkxFX0RJQUxPR19DT05GSUcsXG4gICAgICAuLi5jb25maWcuZGlhbG9nQ29uZmlnLFxuICAgICAgLi4ucGFuZWxDbGFzcyxcbiAgICB9O1xuICAgIGNvbnN0IHtcbiAgICAgIG1hdERpYWxvZ1JlZixcbiAgICAgIGRyYWdSZWZTdWJqZWN0LFxuICAgIH06IElEcmFnZ2FibGVSZWZzPFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb21wb25lbnQ+ID1cbiAgICAgIHRoaXMuX3RkRGlhbG9nU2VydmljZS5vcGVuRHJhZ2dhYmxlKHtcbiAgICAgICAgY29tcG9uZW50OiBUZE1hcmtkb3duTmF2aWdhdG9yV2luZG93Q29tcG9uZW50LFxuICAgICAgICBjb25maWc6IGRyYWdnYWJsZUNvbmZpZyxcbiAgICAgICAgZHJhZ0hhbmRsZVNlbGVjdG9yczogWycudGQtd2luZG93LWRpYWxvZy10b29sYmFyJ10sXG4gICAgICAgIGRyYWdnYWJsZUNsYXNzOiAndGQtZHJhZ2dhYmxlLW1hcmtkb3duLW5hdmlnYXRvci13aW5kb3cnLFxuICAgICAgfSk7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZyA9IG1hdERpYWxvZ1JlZjtcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLml0ZW1zID0gY29uZmlnLml0ZW1zO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UubGFiZWxzID0gY29uZmlnLmxhYmVscztcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLnN0YXJ0QXQgPVxuICAgICAgY29uZmlnLnN0YXJ0QXQ7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5jb3B5Q29kZVRvQ2xpcGJvYXJkID1cbiAgICAgIGNvbmZpZy5jb3B5Q29kZVRvQ2xpcGJvYXJkO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UuY29weUNvZGVUb29sdGlwcyA9XG4gICAgICBjb25maWcuY29weUNvZGVUb29sdGlwcztcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLmNvbXBhcmVXaXRoID1cbiAgICAgIGNvbmZpZy5jb21wYXJlV2l0aDtcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLnRvb2xiYXJDb2xvciA9XG4gICAgICAndG9vbGJhckNvbG9yJyBpbiBjb25maWcgPyBjb25maWcudG9vbGJhckNvbG9yIDogJ3ByaW1hcnknO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2dzT3BlbisrO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UuZm9vdGVyID0gY29uZmlnLmZvb3RlcjtcbiAgICBkcmFnUmVmU3ViamVjdC5zdWJzY3JpYmUoKGRyYWdSZjogRHJhZ1JlZikgPT4ge1xuICAgICAgdGhpcy5kcmFnUmVmID0gZHJhZ1JmO1xuICAgICAgdGhpcy5yZXNpemFibGVEcmFnZ2FibGVEaWFsb2cgPSBuZXcgUmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nKFxuICAgICAgICB0aGlzLl9kb2N1bWVudCxcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLFxuICAgICAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLFxuICAgICAgICB0aGlzLmRyYWdSZWZcbiAgICAgICk7XG4gICAgfSk7XG4gICAgdGhpcy5faGFuZGxlRXZlbnRzKCk7XG4gICAgcmV0dXJuIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2c7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cpIHtcbiAgICAgIGlmICh0aGlzLnJlc2l6YWJsZURyYWdnYWJsZURpYWxvZykge1xuICAgICAgICB0aGlzLnJlc2l6YWJsZURyYWdnYWJsZURpYWxvZy5kZXRhY2goKTtcbiAgICAgIH1cbiAgICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZ3NPcGVuID4gMDtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKCkgPT5cbiAgICAgIHRoaXMuY2xvc2UoKVxuICAgICk7XG5cbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nXG4gICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgLnRvUHJvbWlzZSgpXG4gICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2dzT3Blbi0tO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9tYXJrZG93bi1uYXZpZ2F0b3Ivc3JjL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3ctc2VydmljZS9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sZ0JBQWdCLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFDTCxrQ0FBa0MsR0FFbkMsTUFBTSxrRUFBa0UsQ0FBQztBQUMxRSxPQUFPLEVBQ0wsZUFBZSxFQUVmLHdCQUF3QixHQUN6QixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBbUIzQyxNQUFNLHdCQUF3QixHQUFHLGtCQUFrQixDQUFDO0FBRXBELE1BQU0sZ0JBQWdCLEdBQW1CLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDekUsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDO0FBQzlCLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQztBQUM5QixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUM7QUFFMUIsTUFBTSwrQkFBK0IsR0FBb0I7SUFDdkQsV0FBVyxFQUFFLEtBQUs7SUFDbEIsaUJBQWlCLEVBQUUsSUFBSTtJQUN2QixVQUFVLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztJQUN0QyxRQUFRLEVBQUUsZ0JBQWdCO0lBQzFCLE1BQU0sRUFBRSxjQUFjO0lBQ3RCLEtBQUssRUFBRSxhQUFhO0lBQ3BCLFFBQVEsRUFBRSxTQUFTO0NBQ3BCLENBQUM7QUFHRixNQUFNLE9BQU8sZ0NBQWdDO0lBUWpDO0lBQ2tCO0lBQ2xCO0lBVEYsVUFBVSxDQUFZO0lBQ3RCLE9B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QUNWLElBQUksSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7WUFDdkMsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3pDLENBQUM7WUFDRCxJQUFJLENBQUMsNkJBQTZCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxrQ0FBa0MsR0FBRyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLDZCQUE2QixDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQ3pFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDYixDQUFDO1FBRUYsSUFBSSxDQUFDLDZCQUE2QjthQUMvQixXQUFXLEVBQUU7YUFDYixTQUFTLEVBQUU7YUFDWCxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1QsSUFBSSxDQUFDLGtDQUFrQyxFQUFFLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dHQTNGVSxnQ0FBZ0MsaURBU2pDLFFBQVE7NEdBVFAsZ0NBQWdDOzs0RkFBaEMsZ0NBQWdDO2tCQUQ1QyxVQUFVOzswQkFVTixNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlLFxuICBJbmplY3QsXG4gIFJlbmRlcmVyRmFjdG9yeTIsXG4gIFJlbmRlcmVyMixcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBNYXREaWFsb2dSZWYsXG4gIE1hdERpYWxvZ0NvbmZpZyxcbiAgRGlhbG9nUG9zaXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7XG4gIFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb21wb25lbnQsXG4gIElNYXJrZG93bk5hdmlnYXRvcldpbmRvd0xhYmVscyxcbn0gZnJvbSAnLi4vbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBUZERpYWxvZ1NlcnZpY2UsXG4gIElEcmFnZ2FibGVSZWZzLFxuICBSZXNpemFibGVEcmFnZ2FibGVEaWFsb2csXG59IGZyb20gJ0Bjb3ZhbGVudC9jb3JlL2RpYWxvZ3MnO1xuaW1wb3J0IHsgRHJhZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgSU1hcmtkb3duTmF2aWdhdG9ySXRlbSxcbiAgSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGgsXG59IGZyb20gJy4uL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSUNvcHlDb2RlVG9vbHRpcHMgfSBmcm9tICdAY292YWxlbnQvaGlnaGxpZ2h0JztcblxuZXhwb3J0IGludGVyZmFjZSBJTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb25maWcge1xuICBpdGVtczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdO1xuICBkaWFsb2dDb25maWc/OiBNYXREaWFsb2dDb25maWc7XG4gIGxhYmVscz86IElNYXJrZG93bk5hdmlnYXRvcldpbmRvd0xhYmVscztcbiAgdG9vbGJhckNvbG9yPzogVGhlbWVQYWxldHRlO1xuICBzdGFydEF0PzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXTtcbiAgY29tcGFyZVdpdGg/OiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aDtcbiAgY29weUNvZGVUb0NsaXBib2FyZD86IGJvb2xlYW47XG4gIGNvcHlDb2RlVG9vbHRpcHM/OiBJQ29weUNvZGVUb29sdGlwcztcbiAgZm9vdGVyPzogVHlwZTxhbnk+O1xufVxuXG5jb25zdCBDREtfT1ZFUkxBWV9DVVNUT01fQ0xBU1MgPSAndGQtd2luZG93LWRpYWxvZyc7XG5cbmNvbnN0IERFRkFVTFRfUE9TSVRJT046IERpYWxvZ1Bvc2l0aW9uID0geyBib3R0b206ICcwcHgnLCByaWdodDogJzBweCcgfTtcbmNvbnN0IERFRkFVTFRfV0lEVEggPSAnMzYwcHgnO1xuY29uc3QgREVGQVVMVF9IRUlHSFQgPSAnNzV2aCc7XG5jb25zdCBNQVhfV0lEVEggPSAnMTAwdncnO1xuXG5jb25zdCBERUZBVUxUX0RSQUdHQUJMRV9ESUFMT0dfQ09ORklHOiBNYXREaWFsb2dDb25maWcgPSB7XG4gIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgY2xvc2VPbk5hdmlnYXRpb246IHRydWUsXG4gIHBhbmVsQ2xhc3M6IFtDREtfT1ZFUkxBWV9DVVNUT01fQ0xBU1NdLFxuICBwb3NpdGlvbjogREVGQVVMVF9QT1NJVElPTixcbiAgaGVpZ2h0OiBERUZBVUxUX0hFSUdIVCxcbiAgd2lkdGg6IERFRkFVTFRfV0lEVEgsXG4gIG1heFdpZHRoOiBNQVhfV0lEVEgsXG59O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd1NlcnZpY2Uge1xuICBwcml2YXRlIF9yZW5kZXJlcjI6IFJlbmRlcmVyMjtcbiAgcHJpdmF0ZSBkcmFnUmVmITogRHJhZ1JlZjtcbiAgcHJpdmF0ZSByZXNpemFibGVEcmFnZ2FibGVEaWFsb2chOiBSZXNpemFibGVEcmFnZ2FibGVEaWFsb2c7XG4gIHByaXZhdGUgbWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2chOiBNYXREaWFsb2dSZWY8VGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbXBvbmVudD47XG4gIHByaXZhdGUgbWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2dzT3BlbiA9IDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfdGREaWFsb2dTZXJ2aWNlOiBUZERpYWxvZ1NlcnZpY2UsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IGFueSxcbiAgICBwcml2YXRlIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLl9yZW5kZXJlcjIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKFxuICAgIGNvbmZpZzogSU1hcmtkb3duTmF2aWdhdG9yV2luZG93Q29uZmlnXG4gICk6IE1hdERpYWxvZ1JlZjxUZE1hcmtkb3duTmF2aWdhdG9yV2luZG93Q29tcG9uZW50PiB7XG4gICAgdGhpcy5jbG9zZSgpO1xuXG4gICAgY29uc3QgY29uZmlnQ2xhc3MgPSBjb25maWc/LmRpYWxvZ0NvbmZpZz8ucGFuZWxDbGFzcztcbiAgICBjb25zdCBwYW5lbENsYXNzID1cbiAgICAgIGNvbmZpZ0NsYXNzICYmICFBcnJheS5pc0FycmF5KGNvbmZpZ0NsYXNzKSA/IFtjb25maWdDbGFzc10gOiBbXTtcblxuICAgIGNvbnN0IGRyYWdnYWJsZUNvbmZpZzogTWF0RGlhbG9nQ29uZmlnID0ge1xuICAgICAgLi4uREVGQVVMVF9EUkFHR0FCTEVfRElBTE9HX0NPTkZJRyxcbiAgICAgIC4uLmNvbmZpZy5kaWFsb2dDb25maWcsXG4gICAgICAuLi5wYW5lbENsYXNzLFxuICAgIH07XG4gICAgY29uc3Qge1xuICAgICAgbWF0RGlhbG9nUmVmLFxuICAgICAgZHJhZ1JlZlN1YmplY3QsXG4gICAgfTogSURyYWdnYWJsZVJlZnM8VGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbXBvbmVudD4gPVxuICAgICAgdGhpcy5fdGREaWFsb2dTZXJ2aWNlLm9wZW5EcmFnZ2FibGUoe1xuICAgICAgICBjb21wb25lbnQ6IFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb21wb25lbnQsXG4gICAgICAgIGNvbmZpZzogZHJhZ2dhYmxlQ29uZmlnLFxuICAgICAgICBkcmFnSGFuZGxlU2VsZWN0b3JzOiBbJy50ZC13aW5kb3ctZGlhbG9nLXRvb2xiYXInXSxcbiAgICAgICAgZHJhZ2dhYmxlQ2xhc3M6ICd0ZC1kcmFnZ2FibGUtbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdycsXG4gICAgICB9KTtcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nID0gbWF0RGlhbG9nUmVmO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UuaXRlbXMgPSBjb25maWcuaXRlbXM7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5sYWJlbHMgPSBjb25maWcubGFiZWxzO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2Uuc3RhcnRBdCA9XG4gICAgICBjb25maWcuc3RhcnRBdDtcbiAgICB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLmNvcHlDb2RlVG9DbGlwYm9hcmQgPVxuICAgICAgY29uZmlnLmNvcHlDb2RlVG9DbGlwYm9hcmQ7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5jb3B5Q29kZVRvb2x0aXBzID1cbiAgICAgIGNvbmZpZy5jb3B5Q29kZVRvb2x0aXBzO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UuY29tcGFyZVdpdGggPVxuICAgICAgY29uZmlnLmNvbXBhcmVXaXRoO1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UudG9vbGJhckNvbG9yID1cbiAgICAgICd0b29sYmFyQ29sb3InIGluIGNvbmZpZyA/IGNvbmZpZy50b29sYmFyQ29sb3IgOiAncHJpbWFyeSc7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZ3NPcGVuKys7XG4gICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5mb290ZXIgPSBjb25maWcuZm9vdGVyO1xuICAgIGRyYWdSZWZTdWJqZWN0LnN1YnNjcmliZSgoZHJhZ1JmOiBEcmFnUmVmKSA9PiB7XG4gICAgICB0aGlzLmRyYWdSZWYgPSBkcmFnUmY7XG4gICAgICB0aGlzLnJlc2l6YWJsZURyYWdnYWJsZURpYWxvZyA9IG5ldyBSZXNpemFibGVEcmFnZ2FibGVEaWFsb2coXG4gICAgICAgIHRoaXMuX2RvY3VtZW50LFxuICAgICAgICB0aGlzLl9yZW5kZXJlcjIsXG4gICAgICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2csXG4gICAgICAgIHRoaXMuZHJhZ1JlZlxuICAgICAgKTtcbiAgICB9KTtcbiAgICB0aGlzLl9oYW5kbGVFdmVudHMoKTtcbiAgICByZXR1cm4gdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZztcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZykge1xuICAgICAgaWYgKHRoaXMucmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nKSB7XG4gICAgICAgIHRoaXMucmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nLmRldGFjaCgpO1xuICAgICAgfVxuICAgICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZy5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlhbG9nc09wZW4gPiAwO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2cuY29tcG9uZW50SW5zdGFuY2UuY2xvc2VkLnN1YnNjcmliZSgoKSA9PlxuICAgICAgdGhpcy5jbG9zZSgpXG4gICAgKTtcblxuICAgIHRoaXMubWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaWFsb2dcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAudG9Qcm9taXNlKClcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5tYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpYWxvZ3NPcGVuLS07XG4gICAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -372,10 +372,10 @@ export class TdMarkdownNavigatorComponent {
|
|
|
372
372
|
}
|
|
373
373
|
this._changeDetectorRef.markForCheck();
|
|
374
374
|
}
|
|
375
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
376
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
375
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorComponent, deps: [{ token: i1.TdMarkdownLoaderService }, { token: i0.ChangeDetectorRef }, { token: i2.DomSanitizer }, { token: i3.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
|
|
376
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorComponent, selector: "td-markdown-navigator", inputs: { items: "items", labels: "labels", startAt: "startAt", copyCodeToClipboard: "copyCodeToClipboard", copyCodeTooltips: "copyCodeTooltips", footer: "footer", compareWith: "compareWith" }, outputs: { buttonClicked: "buttonClicked", itemSelected: "itemSelected" }, host: { listeners: { "click": "clickListener($event)" } }, viewQueries: [{ propertyName: "markdownWrapper", first: true, predicate: ["markdownWrapper"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n", styles: [":host{position:relative;height:inherit;height:100%;box-sizing:border-box;display:flex;flex-direction:column}:host .breadcrumb-current-title{margin-bottom:16px;padding-left:16px}:host .breadcrumb-end-icon{margin-left:8px;font-size:16px;width:16px;height:16px}:host .scroll-area{min-height:1px;overflow-y:auto;flex:1;box-sizing:border-box}:host .markdown-wrapper{padding:16px 16px 0}:host .td-markdown-list>.mat-list{padding-top:0}:host td-breadcrumbs{padding:8px 8px 0 16px}:host td-flavored-markdown-loader ::ng-deep .mat-progress-bar{top:0;left:0;right:0;position:absolute}:host .title{display:inline-block;vertical-align:middle;margin:8px 0;padding-left:16px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:32px}.empty-state mat-icon{font-size:4em}\n"], dependencies: [{ kind: "directive", type: i4.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i6.MatActionList, selector: "mat-action-list", exportAs: ["matActionList"] }, { kind: "component", type: i6.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i6.MatListItemAvatar, selector: "[matListItemAvatar]" }, { kind: "directive", type: i6.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: i7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i6.MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: i6.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i10.TdBreadcrumbsComponent, selector: "td-breadcrumbs", inputs: ["separatorIcon"] }, { kind: "component", type: i10.TdBreadcrumbComponent, selector: "td-breadcrumb, a[td-breadcrumb]" }, { kind: "component", type: i11.TdFlavoredMarkdownComponent, selector: "td-flavored-markdown", inputs: ["content", "simpleLineBreaks", "hostedUrl", "anchor", "copyCodeToClipboard", "copyCodeTooltips", "toggleRawCode", "rawToggleLabels", "useCfmList", "fileLinkExtensions"], outputs: ["fileLinkClicked", "contentReady", "buttonClicked"] }, { kind: "component", type: i11.TdFlavoredMarkdownLoaderComponent, selector: "td-flavored-markdown-loader", inputs: ["url", "httpOptions", "anchor", "copyCodeToClipboard", "copyCodeTooltips", "useCfmList"], outputs: ["contentReady", "loadFailed", "buttonClicked"] }, { kind: "component", type: i12.TdMessageComponent, selector: "td-message", inputs: ["label", "sublabel", "icon", "color", "opened"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
377
377
|
}
|
|
378
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
378
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorComponent, decorators: [{
|
|
379
379
|
type: Component,
|
|
380
380
|
args: [{ selector: 'td-markdown-navigator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n", styles: [":host{position:relative;height:inherit;height:100%;box-sizing:border-box;display:flex;flex-direction:column}:host .breadcrumb-current-title{margin-bottom:16px;padding-left:16px}:host .breadcrumb-end-icon{margin-left:8px;font-size:16px;width:16px;height:16px}:host .scroll-area{min-height:1px;overflow-y:auto;flex:1;box-sizing:border-box}:host .markdown-wrapper{padding:16px 16px 0}:host .td-markdown-list>.mat-list{padding-top:0}:host td-breadcrumbs{padding:8px 8px 0 16px}:host td-flavored-markdown-loader ::ng-deep .mat-progress-bar{top:0;left:0;right:0;position:absolute}:host .title{display:inline-block;vertical-align:middle;margin:8px 0;padding-left:16px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:32px}.empty-state mat-icon{font-size:4em}\n"] }]
|
|
381
381
|
}], ctorParameters: () => [{ type: i1.TdMarkdownLoaderService }, { type: i0.ChangeDetectorRef }, { type: i2.DomSanitizer }, { type: i3.HttpClient }], propDecorators: { items: [{
|
|
@@ -433,4 +433,4 @@ function defaultCompareWith(o1, o2) {
|
|
|
433
433
|
}
|
|
434
434
|
return o1 === o2;
|
|
435
435
|
}
|
|
436
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvbWFya2Rvd24tbmF2aWdhdG9yL3NyYy9tYXJrZG93bi1uYXZpZ2F0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGlicy9tYXJrZG93bi1uYXZpZ2F0b3Ivc3JjL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixpQkFBaUIsRUFDakIsdUJBQXVCLEVBRXZCLE1BQU0sRUFDTixZQUFZLEVBQ1osZUFBZSxHQUNoQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWix1QkFBdUIsR0FDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBNEJ0QyxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBNkI7SUFDekUsTUFBTSxFQUFFLFNBQVM7SUFDakIsTUFBTSxFQUFFLFNBQVM7SUFDakIsVUFBVSxFQUFFLHVCQUF1QjtDQUNwQyxDQUFDO0FBUUYsTUFBTSxPQUFPLDRCQUE0QjtJQXFFN0I7SUFDQTtJQUNBO0lBQ0E7SUF2RVY7Ozs7T0FJRztJQUNNLEtBQUssQ0FBNEI7SUFFMUM7Ozs7T0FJRztJQUNNLE1BQU0sQ0FBNEI7SUFFM0M7Ozs7T0FJRztJQUNNLE9BQU8sQ0FBcUQ7SUFFckU7Ozs7O09BS0c7SUFDTSxtQkFBbUIsR0FBSSxLQUFLLENBQUM7SUFFdEM7Ozs7T0FJ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ICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIEhvc3RMaXN0ZW5lcixcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFR5cGUsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBTZWN1cml0eUNvbnRleHQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgcmVtb3ZlTGVhZGluZ0hhc2gsXG4gIGlzQW5jaG9yTGluayxcbiAgVGRNYXJrZG93bkxvYWRlclNlcnZpY2UsXG59IGZyb20gJ0Bjb3ZhbGVudC9tYXJrZG93bic7XG5pbXBvcnQgeyBJVGRGbGF2b3JlZE1hcmtkb3duQnV0dG9uQ2xpY2tFdmVudCB9IGZyb20gJ0Bjb3ZhbGVudC9mbGF2b3JlZC1tYXJrZG93bic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJQ29weUNvZGVUb29sdGlwcyB9IGZyb20gJ0Bjb3ZhbGVudC9oaWdobGlnaHQnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtIHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG4gIGh0dHBPcHRpb25zPzogb2JqZWN0O1xuICBtYXJrZG93blN0cmluZz86IHN0cmluZzsgLy8gcmF3IG1hcmtkb3duXG4gIGFuY2hvcj86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG4gIGNoaWxkcmVuVXJsPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgZm9vdGVyPzogVHlwZTxhbnk+O1xuICBzdGFydEF0TGluaz86IElNYXJrZG93bk5hdmlnYXRvckl0ZW07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcmtkb3duTmF2aWdhdG9yTGFiZWxzIHtcbiAgZ29Ib21lPzogc3RyaW5nO1xuICBnb0JhY2s/OiBzdHJpbmc7XG4gIGVtcHR5U3RhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElNYXJrZG93bk5hdmlnYXRvckNvbXBhcmVXaXRoID0gKFxuICBvMTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSxcbiAgbzI6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1cbikgPT4gYm9vbGVhbjtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUzogSU1hcmtkb3duTmF2aWdhdG9yTGFiZWxzID0ge1xuICBnb0hvbWU6ICdHbyBob21lJyxcbiAgZ29CYWNrOiAnR28gYmFjaycsXG4gIGVtcHR5U3RhdGU6ICdObyBpdGVtKHMpIHRvIGRpc3BsYXknLFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtbWFya2Rvd24tbmF2aWdhdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGRNYXJrZG93bk5hdmlnYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIC8qKlxuICAgKiBpdGVtczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdXG4gICAqXG4gICAqIExpc3Qgb2YgSU1hcmtkb3duTmF2aWdhdG9ySXRlbXMgdG8gYmUgcmVuZGVyZWRcbiAgICovXG4gIEBJbnB1dCgpIGl0ZW1zPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdO1xuXG4gIC8qKlxuICAgKiBsYWJlbHM/OiBJTWFya2Rvd25OYXZpZ2F0b3JMYWJlbHNcbiAgICpcbiAgICogVHJhbnNsYXRlZCBsYWJlbHNcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVscz86IElNYXJrZG93bk5hdmlnYXRvckxhYmVscztcblxuICAvKipcbiAgICogc3RhcnRBdD86IElNYXJrZG93bk5hdmlnYXRvckl0ZW0gfCBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG4gICAqXG4gICAqIEl0ZW0gb3IgcGF0aCB0byBzdGFydCBhdFxuICAgKi9cbiAgQElucHV0KCkgc3RhcnRBdD86IElNYXJrZG93bk5hdmlnYXRvckl0ZW0gfCBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG5cbiAgLyoqXG4gICAqIGNvcHlDb2RlVG9DbGlwYm9hcmQ/OiBib29sZWFuXG4gICAqXG4gICAqIERpc3BsYXkgY29weSBidXR0b24gb24gY29kZSBzbmlwcGV0cyB0byBjb3B5IGNvZGUgdG8gY2xpcGJvYXJkLlxuICAgKlxuICAgKi9cbiAgQElucHV0KCkgY29weUNvZGVUb0NsaXBib2FyZD8gPSBmYWxzZTtcblxuICAvKipcbiAgICogY29weUNvZGVUb29sdGlwcz86IElDb3B5Q29kZVRvb2x0aXBzXG4gICAqXG4gICAqIFRvb2x0aXBzIGZvciBjb3B5IGJ1dHRvbiB0byBjb3B5IGFuZCB1cG9uIGNvcHlpbmcuXG4gICAqL1xuICBASW5wdXQoKSBjb3B5Q29kZVRvb2x0aXBzPzogSUNvcHlDb2RlVG9vbHRpcHMgPSB7fTtcblxuICAvKipcbiAgICogZm9vdGVyPzogVHlwZTxhbnk+XG4gICAqXG4gICAqIENvbXBvbmVudCB0byBiZSBkaXNwbGF5ZWQgaW4gZm9vdGVyXG4gICAqL1xuICBASW5wdXQoKSBmb290ZXI/OiBhbnk7XG5cbiAgLyoqXG4gICAqIGNvbXBhcmVXaXRoPzogSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGhcbiAgICpcbiAgICogRnVuY3Rpb24gdXNlZCB0byBmaW5kIHN0YXJ0QXQgaXRlbVxuICAgKiBEZWZhdWx0cyB0byBjb21wYXJpc29uIGJ5IHN0cmljdCBlcXVhbGl0eSAoPT09KVxuICAgKi9cbiAgQElucHV0KCkgY29tcGFyZVdpdGg/OiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aDtcblxuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPElUZEZsYXZvcmVkTWFya2Rvd25CdXR0b25DbGlja0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaXRlbVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8SU1hcmtkb3duTmF2aWdhdG9ySXRlbT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdtYXJrZG93bldyYXBwZXInKSBtYXJrZG93bldyYXBwZXIhOiBFbGVtZW50UmVmO1xuXG4gIGhpc3RvcnlTdGFjazogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gW107IC8vIGhpc3RvcnlcbiAgY3VycmVudE1hcmtkb3duSXRlbT86IElNYXJrZG93bk5hdmlnYXRvckl0ZW07IC8vIGN1cnJlbnRseSByZW5kZXJlZFxuICBjdXJyZW50TWVudUl0ZW1zPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gW107IC8vIGN1cnJlbnQgbWVudSBpdGVtc1xuXG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBtYXJrZG93bkxvYWRlckVycm9yPzogc3RyaW5nO1xuICBjaGlsZHJlblVybEVycm9yPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX21hcmtkb3duVXJsTG9hZGVyU2VydmljZTogVGRNYXJrZG93bkxvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnRcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgY2xpY2tMaXN0ZW5lcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCA9IDxIVE1MRWxlbWVudD5ldmVudC5zcmNFbGVtZW50O1xuICAgIGlmIChcbiAgICAgIGVsZW1lbnQubWF0Y2hlcygnYVtocmVmXScpICYmXG4gICAgICBpc01hcmtkb3duSHJlZig8SFRNTEFuY2hvckVsZW1lbnQ+ZWxlbWVudClcbiAgICApIHtcbiAgICAgIHRoaXMuaGFuZGxlTGlua0NsaWNrKGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2hvd0dvQmFja0J1dHRvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5oaXN0b3J5U3RhY2subGVuZ3RoID4gMDtcbiAgfVxuXG4gIGdldCBzaG93SGVhZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuY3VycmVudEl0ZW1UaXRsZTtcbiAgfVxuXG4gIGdldCBzaG93TWVudSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaG93TWVudSA9IHRoaXMuY3VycmVudE1lbnVJdGVtcyAmJiB0aGlzLmN1cnJlbnRNZW51SXRlbXMubGVuZ3RoID4gMDtcbiAgICByZXR1cm4gc2hvd01lbnUgPz8gZmFsc2U7XG4gIH1cblxuICBnZXQgc2hvd1RkTWFya2Rvd25Mb2FkZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICEhdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtICYmXG4gICAgICAhIXRoaXMuY3VycmVudE1hcmtkb3duSXRlbS51cmwgJiZcbiAgICAgICF0aGlzLnNob3dUZE1hcmtkb3duXG4gICAgKTtcbiAgfVxuXG4gIGdldCBzaG93VGRNYXJrZG93bigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgISF0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gJiYgISF0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0ubWFya2Rvd25TdHJpbmdcbiAgICApO1xuICB9XG5cbiAgZ2V0IHVybCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0udXJsO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGZvb3RlckNvbXBvbmVudCgpOiBhbnkge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gJiYgdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtLmZvb3Rlcikge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbS5mb290ZXI7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmZvb3RlcjtcbiAgfVxuICBnZXQgaHR0cE9wdGlvbnMoKTogb2JqZWN0IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50TWFya2Rvd25JdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtLmh0dHBPcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGdldCBtYXJrZG93blN0cmluZygpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0ubWFya2Rvd25TdHJpbmc7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgYW5jaG9yKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbS5hbmNob3I7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgc2hvd0VtcHR5U3RhdGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLml0ZW1zIHx8IHRoaXMuaXRlbXMubGVuZ3RoIDwgMTtcbiAgfVxuXG4gIGdldCBnb0hvbWVMYWJlbCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMuZ29Ib21lKSB8fFxuICAgICAgREVGQVVMVF9NQVJLRE9XTl9OQVZJR0FUT1JfTEFCRUxTLmdvSG9tZVxuICAgICk7XG4gIH1cblxuICBnZXQgZ29CYWNrTGFiZWwoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHRoaXMubGFiZWxzICYmIHRoaXMubGFiZWxzLmdvQmFjaykgfHxcbiAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUy5nb0JhY2tcbiAgICApO1xuICB9XG5cbiAgZ2V0IGVtcHR5U3RhdGVMYWJlbCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMuZW1wdHlTdGF0ZSkgfHxcbiAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUy5lbXB0eVN0YXRlXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50SXRlbVRpdGxlKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VGl0bGUodGhpcy5jdXJyZW50TWFya2Rvd25JdGVtKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFRpdGxlKHRoaXMuaGlzdG9yeVN0YWNrW3RoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIDFdKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgYXN5bmMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChjaGFuZ2VzWydpdGVtcyddKSB7XG4gICAgICB0aGlzLnJlc2V0KCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydzdGFydEF0J10gJiYgdGhpcy5pdGVtcyAmJiB0aGlzLnN0YXJ0QXQpIHtcbiAgICAgIHRoaXMuX2p1bXBUbyh0aGlzLnN0YXJ0QXQsIHVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG5cbiAgaGFzQ2hpbGRyZW5PckNoaWxkcmVuVXJsKGl0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gKGl0ZW0uY2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbi5sZW5ndGggPiAwKSB8fCAhIWl0ZW0uY2hpbGRyZW5Vcmw7XG4gIH1cbiAgY2xlYXJFcnJvcnMoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrZG93bkxvYWRlckVycm9yID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY2hpbGRyZW5VcmxFcnJvciA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuY2xlYXJFcnJvcnMoKTtcbiAgICAvLyBpZiBzaW5nbGUgaXRlbSBhbmQgbm8gY2hpbGRyZW5cbiAgICBpZiAoXG4gICAgICB0aGlzLml0ZW1zICYmXG4gICAgICB0aGlzLml0ZW1zLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgIXRoaXMuaGFzQ2hpbGRyZW5PckNoaWxkcmVuVXJsKHRoaXMuaXRlbXNbMF0pXG4gICAgKSB7XG4gICAgICB0aGlzLmN1cnJlbnRNZW51SXRlbXMgPSBbXTtcbiAgICAgIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSA9IHRoaXMuaXRlbXNbMF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3VycmVudE1lbnVJdGVtcyA9IHRoaXMuaXRlbXM7XG4gICAgICB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHRoaXMuaGlzdG9yeVN0YWNrID0gW107XG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdCh1bmRlZmluZWQpO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgZ29CYWNrKGdvQmFja0xlbmd0aCA9IDIpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmNsZWFyRXJyb3JzKCk7XG4gICAgbGV0IHBhcmVudDogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IHVuZGVmaW5lZCA9XG4gICAgICB0aGlzLmhpc3RvcnlTdGFja1t0aGlzLmhpc3RvcnlTdGFjay5sZW5ndGggLSBnb0JhY2tMZW5ndGhdO1xuXG4gICAgaWYgKHBhcmVudD8uc3RhcnRBdExpbmspIHtcbiAgICAgIHBhcmVudCA9IHRoaXMuaGlzdG9yeVN0YWNrW3RoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIDNdXG4gICAgICAgID8gdGhpcy5oaXN0b3J5U3RhY2tbdGhpcy5oaXN0b3J5U3RhY2subGVuZ3RoIC0gM11cbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmhpc3RvcnlTdGFjayA9IHRoaXMuaGlzdG9yeVN0YWNrLnNsaWNlKDAsIC1nb0JhY2tMZW5ndGgpO1xuICAgIH1cblxuICAgIGlmIChwYXJlbnQpIHtcbiAgICAgIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSA9IHBhcmVudDtcbiAgICAgIHRoaXMuaGlzdG9yeVN0YWNrID0gdGhpcy5oaXN0b3J5U3RhY2suc2xpY2UoXG4gICAgICAgIDAsXG4gICAgICAgIHRoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIGdvQmFja0xlbmd0aCArIDFcbiAgICAgICk7XG4gICAgICB0aGlzLnNldENoaWxkcmVuQXNDdXJyZW50TWVudUl0ZW1zKHBhcmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXQoKTtcbiAgICB9XG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChwYXJlbnQpO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgaGFuZGxlSXRlbVNlbGVjdGVkKGl0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0pOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyRXJyb3JzKCk7XG4gICAgdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtID0gaXRlbTtcbiAgICB0aGlzLmhpc3RvcnlTdGFjayA9IFsuLi50aGlzLmhpc3RvcnlTdGFjaywgaXRlbV07XG4gICAgdGhpcy5zZXRDaGlsZHJlbkFzQ3VycmVudE1lbnVJdGVtcyhpdGVtKTtcbiAgICB0aGlzLml0ZW1TZWxlY3RlZC5lbWl0KGl0ZW0pO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYXN5bmMgc2V0Q2hpbGRyZW5Bc0N1cnJlbnRNZW51SXRlbXMoXG4gICAgaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmN1cnJlbnRNZW51SXRlbXMgPSBbXTtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgY29uc3Qgc3RhY2tTbmFwc2hvdDogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5oaXN0b3J5U3RhY2s7XG4gICAgbGV0IGNoaWxkcmVuOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10gPSBbXTtcbiAgICBpZiAoaXRlbS5jaGlsZHJlbikge1xuICAgICAgY2hpbGRyZW4gPSBpdGVtLmNoaWxkcmVuO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5jaGlsZHJlblVybCkge1xuICAgICAgY2hpbGRyZW4gPSBhd2FpdCB0aGlzLmxvYWRDaGlsZHJlblVybChpdGVtKTtcbiAgICB9XG4gICAgaWYgKGNoaWxkcmVuICYmIGNoaWxkcmVuLmxlbmd0aCAmJiBpdGVtLnN0YXJ0QXRMaW5rKSB7XG4gICAgICB0aGlzLl9qdW1wVG8oaXRlbS5zdGFydEF0TGluaywgY2hpbGRyZW4pO1xuICAgIH1cbiAgICBjb25zdCBuZXdTdGFja1NuYXBzaG90OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10gPSB0aGlzLmhpc3RvcnlTdGFjaztcbiAgICBpZiAoXG4gICAgICBzdGFja1NuYXBzaG90Lmxlbmd0aCA9PT0gbmV3U3RhY2tTbmFwc2hvdC5sZW5ndGggJiZcbiAgICAgIHN0YWNrU25hcHNob3QuZXZlcnkoXG4gICAgICAgIChzdGFja0l0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0sIGluZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgc3RhY2tJdGVtID09PSBuZXdTdGFja1NuYXBzaG90W2luZGV4XVxuICAgICAgKVxuICAgICkge1xuICAgICAgdGhpcy5jdXJyZW50TWVudUl0ZW1zID0gY2hpbGRyZW47XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBhc3luYyBsb2FkQ2hpbGRyZW5VcmwoXG4gICAgaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVxuICApOiBQcm9taXNlPElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXT4ge1xuICAgIGNvbnN0IHNhbml0aXplZFVybCA9XG4gICAgICB0aGlzLl9zYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LlVSTCwgaXRlbS5jaGlsZHJlblVybCA/PyBudWxsKSA/P1xuICAgICAgJyc7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmaXJzdFZhbHVlRnJvbTxJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10+KFxuICAgICAgICB0aGlzLl9odHRwLmdldDxJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10+KHNhbml0aXplZFVybCwge1xuICAgICAgICAgIC4uLml0ZW0uaHR0cE9wdGlvbnMsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHRoaXMuaGFuZGxlQ2hpbGRyZW5VcmxFcnJvcihlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgZ2V0VGl0bGUoaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSk6IHN0cmluZyB7XG4gICAgaWYgKCFpdGVtKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiAoXG4gICAgICByZW1vdmVMZWFkaW5nSGFzaChpdGVtLmFuY2hvciA/PyAnJykgfHxcbiAgICAgIGl0ZW0udGl0bGUgfHxcbiAgICAgIGdldFRpdGxlRnJvbVVybChpdGVtLnVybCA/PyAnJykgfHxcbiAgICAgIGdldFRpdGxlRnJvbU1hcmtkb3duU3RyaW5nKGl0ZW0ubWFya2Rvd25TdHJpbmcgPz8gJycpIHx8XG4gICAgICAnJ1xuICAgICkudHJpbSgpO1xuICB9XG5cbiAgZ2V0SWNvbihpdGVtOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaXRlbT8uaWNvbiB8fCAnc3ViamVjdCc7XG4gIH1cblxuICBoYW5kbGVDaGlsZHJlblVybEVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuY2hpbGRyZW5VcmxFcnJvciA9IGVycm9yLm1lc3NhZ2U7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgaGFuZGxlTWFya2Rvd25Mb2FkZXJFcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtkb3duTG9hZGVyRXJyb3IgPSBlcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnJztcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2p1bXBUbyhcbiAgICBpdGVtT3JQYXRoOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtIHwgSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdLFxuICAgIGNoaWxkcmVuPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdXG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGhpc3RvcnlTdGFjazogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5oaXN0b3J5U3RhY2s7XG4gICAgbGV0IHBhdGg6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IFtdO1xuXG4gICAgaWYgKHRoaXMuaXRlbXM/Lmxlbmd0aCkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbU9yUGF0aCkpIHtcbiAgICAgICAgcGF0aCA9IGF3YWl0IHRoaXMuZm9sbG93UGF0aCh0aGlzLml0ZW1zLCBpdGVtT3JQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLmhpc3RvcnlTdGFjayA9IGhpc3RvcnlTdGFjaztcbiAgICAgICAgcGF0aCA9IHRoaXMuZmluZFBhdGgoY2hpbGRyZW4sIGl0ZW1PclBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGF0aCA9IHRoaXMuZmluZFBhdGgodGhpcy5pdGVtcywgaXRlbU9yUGF0aCk7XG4gICAgICB9XG4gICAgICBwYXRoLmZvckVhY2goKHBhdGhJdGVtOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3RlZChwYXRoSXRlbSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gISFwYXRoLmxlbmd0aDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZm9sbG93UGF0aChcbiAgICBpdGVtczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdLFxuICAgIHBhdGg6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXVxuICApOiBQcm9taXNlPElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXT4ge1xuICAgIGxldCBwYXRoSXRlbXM6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IFtdO1xuICAgIGxldCBjdXJyZW50TGV2ZWw6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IGl0ZW1zO1xuICAgIGNvbnN0IGNvbXBhcmVXaXRoOiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aCA9XG4gICAgICB0aGlzLmNvbXBhcmVXaXRoIHx8IGRlZmF1bHRDb21wYXJlV2l0aDtcbiAgICBmb3IgKGNvbnN0IHBhdGhJdGVtIG9mIHBhdGgpIHtcbiAgICAgIGNvbnN0IGZvdW5kSXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IHVuZGVmaW5lZCA9IGN1cnJlbnRMZXZlbC5maW5kKFxuICAgICAgICAoaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSkgPT4gY29tcGFyZVdpdGgocGF0aEl0ZW0sIGl0ZW0pXG4gICAgICApO1xuXG4gICAgICBpZiAoZm91bmRJdGVtKSB7XG4gICAgICAgIHBhdGhJdGVtcyA9IFsuLi5wYXRoSXRlbXMsIGZvdW5kSXRlbV07XG5cbiAgICAgICAgaWYgKGZvdW5kSXRlbS5jaGlsZHJlbikge1xuICAgICAgICAgIGN1cnJlbnRMZXZlbCA9IGZvdW5kSXRlbS5jaGlsZHJlbjtcbiAgICAgICAgfSBlbHNlIGlmIChmb3VuZEl0ZW0uY2hpbGRyZW5VcmwpIHtcbiAgICAgICAgICBjdXJyZW50TGV2ZWwgPSBhd2FpdCB0aGlzLmxvYWRDaGlsZHJlblVybChmb3VuZEl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHBhdGhJdGVtcy5sZW5ndGggIT09IHBhdGgubGVuZ3RoKSB7XG4gICAgICBwYXRoSXRlbXMgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGhJdGVtcztcbiAgfVxuXG4gIHByaXZhdGUgZmluZFBhdGgoXG4gICAgaXRlbXM/OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10sXG4gICAgaXRlbT86IElNYXJrZG93bk5hdmlnYXRvckl0ZW1cbiAgKTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdIHtcbiAgICBjb25zdCBjb21wYXJlV2l0aDogSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGggPVxuICAgICAgdGhpcy5jb21wYXJlV2l0aCB8fCBkZWZhdWx0Q29tcGFyZVdpdGg7XG4gICAgaWYgKGl0ZW1zKSB7XG4gICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGl0ZW1zKSB7XG4gICAgICAgIGlmIChpdGVtICYmIGNvbXBhcmVXaXRoKGNoaWxkLCBpdGVtKSkge1xuICAgICAgICAgIHJldHVybiBbY2hpbGRdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFuY2VzdG9yczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5maW5kUGF0aChcbiAgICAgICAgICBjaGlsZC5jaGlsZHJlbixcbiAgICAgICAgICBpdGVtXG4gICAgICAgICk7XG4gICAgICAgIGlmIChhbmNlc3RvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuIFtjaGlsZCwgLi4uYW5jZXN0b3JzXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGhhbmRsZUxpbmtDbGljayhldmVudDogRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGNvbnN0IGxpbms6IEhUTUxBbmNob3JFbGVtZW50ID0gPEhUTUxBbmNob3JFbGVtZW50PmV2ZW50LnRhcmdldDtcbiAgICBjb25zdCB1cmw6IFVSTCA9IG5ldyBVUkwobGluay5ocmVmKTtcbiAgICBjb25zdCB1cmxQYXJ0cyA9IHVybC5ocmVmLnNwbGl0KCcvJyk7XG4gICAgY29uc3QgaWQgPSB1cmxQYXJ0c1t1cmxQYXJ0cy5sZW5ndGggLSAxXS5zcGxpdCgnLm1kJylbMF07XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICBjb25zdCBwYXRoRm91bmQgPSBhd2FpdCB0aGlzLl9qdW1wVG8oeyBpZCB9KTtcblxuICAgIGlmIChwYXRoRm91bmQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgbWFya2Rvd25TdHJpbmc6IHN0cmluZyA9IGF3YWl0IHRoaXMuX21hcmtkb3duVXJsTG9hZGVyU2VydmljZS5sb2FkKFxuICAgICAgICB1cmwuaHJlZlxuICAgICAgKTtcbiAgICAgIC8vIHBhc3MgaW4gdXJsIHRvIGJlIGFibGUgdG8gdXNlIGN1cnJlbnRNYXJrZG93bkl0ZW0udXJsIGxhdGVyIG9uXG4gICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3RlZCh7IG1hcmtkb3duU3RyaW5nLCB1cmw6IHVybC5ocmVmIH0pO1xuICAgICAgdGhpcy5tYXJrZG93bldyYXBwZXIubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPSAwO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCB3aW4gPSB3aW5kb3cub3Blbih1cmwuaHJlZiwgJ19ibGFuaycpO1xuICAgICAgd2luPy5mb2N1cygpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0VGl0bGVGcm9tVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHVybCkge1xuICAgIGNvbnN0IHRlbXA6IFVSTCA9IG5ldyBVUkwodXJsKTtcbiAgICBpZiAodGVtcC5oYXNoKSB7XG4gICAgICByZXR1cm4gcmVtb3ZlTGVhZGluZ0hhc2godGVtcC5oYXNoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcGF0aDogc3RyaW5nW10gPSB0ZW1wLnBhdGhuYW1lLnNwbGl0KCcvJyk7XG4gICAgICBjb25zdCBmaWxlTmFtZTogc3RyaW5nID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuICAgICAgcmV0dXJuIGZpbGVOYW1lLnJlcGxhY2UoL1xcLlteLy5dKyQvLCAnJyk7IC8vIHJlbW92ZSAubWRcbiAgICB9XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBnZXRUaXRsZUZyb21NYXJrZG93blN0cmluZyhtYXJrZG93blN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKG1hcmtkb3duU3RyaW5nKSB7XG4gICAgY29uc3QgZmlyc3RMaW5lOiBzdHJpbmcgPVxuICAgICAgbWFya2Rvd25TdHJpbmcuc3BsaXQoL1tcXHJcXG5dKy8pLmZpbmQoKGxpbmU6IHN0cmluZykgPT4gISFsaW5lKSA/PyAnJztcbiAgICByZXR1cm4gcmVtb3ZlTGVhZGluZ0hhc2goZmlyc3RMaW5lKS50cmltKCk7XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBpc01hcmtkb3duSHJlZihhbmNob3I6IEhUTUxBbmNob3JFbGVtZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiAhaXNBbmNob3JMaW5rKGFuY2hvcikgJiYgYW5jaG9yLnBhdGhuYW1lLmVuZHNXaXRoKCcubWQnKTtcbn1cbmZ1bmN0aW9uIGRlZmF1bHRDb21wYXJlV2l0aChcbiAgbzE6IElNYXJrZG93bk5hdmlnYXRvckl0ZW0sXG4gIG8yOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtXG4pOiBib29sZWFuIHtcbiAgaWYgKG8xLmlkICYmIG8yLmlkKSB7XG4gICAgcmV0dXJuIG8xLmlkID09PSBvMi5pZDtcbiAgfVxuICByZXR1cm4gbzEgPT09IG8yO1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzaG93RW1wdHlTdGF0ZVwiPlxuICA8bWF0LXByb2dyZXNzLWJhclxuICAgICpuZ0lmPVwibG9hZGluZ1wiXG4gICAgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxuICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dIZWFkZXJcIj5cbiAgICA8dGQtYnJlYWRjcnVtYnM+XG4gICAgICA8YVxuICAgICAgICB0ZC1icmVhZGNydW1iXG4gICAgICAgIFttYXRUb29sdGlwXT1cImdvSG9tZUxhYmVsID8/ICcnXCJcbiAgICAgICAgKGNsaWNrKT1cInJlc2V0KClcIlxuICAgICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiJ2hvbWUtYnV0dG9uJ1wiXG4gICAgICAgID5Ib21lPC9hXG4gICAgICA+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0Zvcj1cImxldCBzdGFjayBvZiBoaXN0b3J5U3RhY2s7IGxhc3QgYXMgaXNMYXN0OyBpbmRleCBhcyBpbmRleFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMYXN0OyBlbHNlIGxhc3RCcmVhZENydW1iXCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIHRkLWJyZWFkY3J1bWJcbiAgICAgICAgICAgIChjbGljayk9XCJnb0JhY2soaGlzdG9yeVN0YWNrLmxlbmd0aCAtIGluZGV4KVwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiJ2JhY2stYnV0dG9uJ1wiXG4gICAgICAgICAgICA+e3sgc3RhY2sudGl0bGUgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2xhc3RCcmVhZENydW1iPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImJyZWFkY3J1bWItZW5kLWljb25cIj5jaGV2cm9uX3JpZ2h0PC9tYXQtaWNvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGQtYnJlYWRjcnVtYnM+XG4gICAgPGRpdiBjbGFzcz1cImJyZWFkY3J1bWItY3VycmVudC10aXRsZVwiIFthdHRyLmRhdGEtdGVzdF09XCIndGl0bGUnXCI+XG4gICAgICB7eyBjdXJyZW50SXRlbVRpdGxlIH19XG4gICAgPC9kaXY+XG5cbiAgICA8bWF0LWRpdmlkZXIgW3N0eWxlLnBvc2l0aW9uXT1cIidyZWxhdGl2ZSdcIj48L21hdC1kaXZpZGVyPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8ZGl2IGNsYXNzPVwic2Nyb2xsLWFyZWFcIiBpZD1cInRkLW1hcmtkb3duLW5hdmlnYXRvci1jb250ZW50XCI+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzaG93VGRNYXJrZG93bkxvYWRlciB8fCBzaG93VGRNYXJrZG93blwiXG4gICAgICBjbGFzcz1cIm1hcmtkb3duLXdyYXBwZXJcIlxuICAgICAgI21hcmtkb3duV3JhcHBlclxuICAgID5cbiAgICAgIDx0ZC1tZXNzYWdlXG4gICAgICAgICpuZ0lmPVwibWFya2Rvd25Mb2FkZXJFcnJvclwiXG4gICAgICAgIFtzdWJsYWJlbF09XCJtYXJrZG93bkxvYWRlckVycm9yXCJcbiAgICAgICAgY29sb3I9XCJ3YXJuXCJcbiAgICAgICAgaWNvbj1cImVycm9yXCJcbiAgICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIidtYXJrZG93bi1sb2FkZXItZXJyb3InXCJcbiAgICAgID48L3RkLW1lc3NhZ2U+XG4gICAgICA8dGQtZmxhdm9yZWQtbWFya2Rvd24tbG9hZGVyXG4gICAgICAgICpuZ0lmPVwic2hvd1RkTWFya2Rvd25Mb2FkZXJcIlxuICAgICAgICBbdXJsXT1cInVybCA/PyAnJ1wiXG4gICAgICAgIFtodHRwT3B0aW9uc109XCJodHRwT3B0aW9ucyA/PyB7fVwiXG4gICAgICAgIFthbmNob3JdPVwiYW5jaG9yID8/ICcnXCJcbiAgICAgICAgW2NvcHlDb2RlVG9DbGlwYm9hcmRdPVwiY29weUNvZGVUb0NsaXBib2FyZFwiXG4gICAgICAgIFtjb3B5Q29kZVRvb2x0aXBzXT1cImNvcHlDb2RlVG9vbHRpcHNcIlxuICAgICAgICAobG9hZEZhaWxlZCk9XCJoYW5kbGVNYXJrZG93bkxvYWRlckVycm9yKCRldmVudClcIlxuICAgICAgICAoYnV0dG9uQ2xpY2tlZCk9XCJidXR0b25DbGlja2VkLmVtaXQoJGV2ZW50KVwiXG4gICAgICA+PC90ZC1mbGF2b3JlZC1tYXJrZG93bi1sb2FkZXI+XG4gICAgICA8dGQtZmxhdm9yZWQtbWFya2Rvd25cbiAgICAgICAgKm5nSWY9XCJzaG93VGRNYXJrZG93blwiXG4gICAgICAgIFtjb250ZW50XT1cIm1hcmtkb3duU3RyaW5nID8/ICcnXCJcbiAgICAgICAgW2hvc3RlZFVybF09XCJ1cmwgPz8gJydcIlxuICAgICAgICBbYW5jaG9yXT1cImFuY2hvciA/PyAnJ1wiXG4gICAgICAgIFtjb3B5Q29kZVRvQ2xpcGJvYXJkXT1cImNvcHlDb2RlVG9DbGlwYm9hcmRcIlxuICAgICAgICBbY29weUNvZGVUb29sdGlwc109XCJjb3B5Q29kZVRvb2x0aXBzXCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrZWQpPVwiYnV0dG9uQ2xpY2tlZC5lbWl0KCRldmVudClcIlxuICAgICAgPjwvdGQtZmxhdm9yZWQtbWFya2Rvd24+XG4gICAgPC9kaXY+XG5cbiAgICA8dGQtbWVzc2FnZVxuICAgICAgKm5nSWY9XCJjaGlsZHJlblVybEVycm9yXCJcbiAgICAgIFtzdWJsYWJlbF09XCJjaGlsZHJlblVybEVycm9yXCJcbiAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICBpY29uPVwiZXJyb3JcIlxuICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIidjaGlsZHJlbi11cmwtZXJyb3InXCJcbiAgICA+PC90ZC1tZXNzYWdlPlxuICAgIDxkaXYgKm5nSWY9XCJzaG93TWVudVwiIGNsYXNzPVwidGQtbWFya2Rvd24tbGlzdFwiPlxuICAgICAgPG1hdC1hY3Rpb24tbGlzdD5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGN1cnJlbnRNZW51SXRlbXM7IGluZGV4IGFzIGluZGV4XCJcbiAgICAgICAgICBbaWRdPVwiXG4gICAgICAgICAgICAndGQtbWFya2Rvd24tbmF2aWdhdG9yLWxpc3QtaXRlbS0nICsgKGl0ZW0uaWQgPyBpdGVtLmlkIDogaW5kZXgpXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGVkKGl0ZW0pXCJcbiAgICAgICAgICBtYXQtbGlzdC1pdGVtXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiZ2V0VGl0bGUoaXRlbSlcIlxuICAgICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImJlZm9yZVwiXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgID5cbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAge3sgZ2V0SWNvbihpdGVtKSB9fVxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4gbWF0TGlzdEl0ZW1UaXRsZSBjbGFzcz1cInRydW5jYXRlXCI+XG4gICAgICAgICAgICB7eyBnZXRUaXRsZShpdGVtKSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBtYXRMaXN0SXRlbUxpbmUgY2xhc3M9XCJ0cnVuY2F0ZVwiPnt7IGl0ZW0uZGVzY3JpcHRpb24gfX08L3NwYW4+XG4gICAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9tYXQtYWN0aW9uLWxpc3Q+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImZvb3RlckNvbXBvbmVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2XG4gICpuZ0lmPVwic2hvd0VtcHR5U3RhdGVcIlxuICBsYXlvdXQ9XCJjb2x1bW5cIlxuICBsYXlvdXQtYWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgY2xhc3M9XCJlbXB0eS1zdGF0ZVwiXG4+XG4gIDxtYXQtaWNvbiBtYXRMaXN0SXRlbUF2YXRhcj5zdWJqZWN0PC9tYXQtaWNvbj5cbiAgPGgyPnt7IGVtcHR5U3RhdGVMYWJlbCB9fTwvaDI+XG48L2Rpdj5cbiJdfQ==
|
|
436
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvbWFya2Rvd24tbmF2aWdhdG9yL3NyYy9tYXJrZG93bi1uYXZpZ2F0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGlicy9tYXJrZG93bi1uYXZpZ2F0b3Ivc3JjL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixpQkFBaUIsRUFDakIsdUJBQXVCLEVBRXZCLE1BQU0sRUFDTixZQUFZLEVBQ1osZUFBZSxHQUNoQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWix1QkFBdUIsR0FDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBNEJ0QyxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBNkI7SUFDekUsTUFBTSxFQUFFLFNBQVM7SUFDakIsTUFBTSxFQUFFLFNBQVM7SUFDakIsVUFBVSxFQUFFLHVCQUF1QjtDQUNwQyxDQUFDO0FBUUYsTUFBTSxPQUFPLDRCQUE0QjtJQXFFN0I7SUFDQTtJQUNBO0lBQ0E7SUF2RVY7Ozs7T0FJRztJQUNNLEtBQUssQ0FBNEI7SUFFMUM7Ozs7T0FJRztJQUNNLE1BQU0sQ0FBNEI7SUFFM0M7Ozs7T0FJRztJQUNNLE9BQU8sQ0FBcUQ7SUFFckU7Ozs7O09BS0c7SUFDTSxtQkFBbUIsR0FBSSxLQUFLLENBQUM7SUFFdEM7Ozs7T0FJ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ICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIEhvc3RMaXN0ZW5lcixcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFR5cGUsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBTZWN1cml0eUNvbnRleHQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgcmVtb3ZlTGVhZGluZ0hhc2gsXG4gIGlzQW5jaG9yTGluayxcbiAgVGRNYXJrZG93bkxvYWRlclNlcnZpY2UsXG59IGZyb20gJ0Bjb3ZhbGVudC9tYXJrZG93bic7XG5pbXBvcnQgeyBJVGRGbGF2b3JlZE1hcmtkb3duQnV0dG9uQ2xpY2tFdmVudCB9IGZyb20gJ0Bjb3ZhbGVudC9mbGF2b3JlZC1tYXJrZG93bic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJQ29weUNvZGVUb29sdGlwcyB9IGZyb20gJ0Bjb3ZhbGVudC9oaWdobGlnaHQnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtIHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG4gIGh0dHBPcHRpb25zPzogb2JqZWN0O1xuICBtYXJrZG93blN0cmluZz86IHN0cmluZzsgLy8gcmF3IG1hcmtkb3duXG4gIGFuY2hvcj86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG4gIGNoaWxkcmVuVXJsPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgZm9vdGVyPzogVHlwZTxhbnk+O1xuICBzdGFydEF0TGluaz86IElNYXJrZG93bk5hdmlnYXRvckl0ZW07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcmtkb3duTmF2aWdhdG9yTGFiZWxzIHtcbiAgZ29Ib21lPzogc3RyaW5nO1xuICBnb0JhY2s/OiBzdHJpbmc7XG4gIGVtcHR5U3RhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElNYXJrZG93bk5hdmlnYXRvckNvbXBhcmVXaXRoID0gKFxuICBvMTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSxcbiAgbzI6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1cbikgPT4gYm9vbGVhbjtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUzogSU1hcmtkb3duTmF2aWdhdG9yTGFiZWxzID0ge1xuICBnb0hvbWU6ICdHbyBob21lJyxcbiAgZ29CYWNrOiAnR28gYmFjaycsXG4gIGVtcHR5U3RhdGU6ICdObyBpdGVtKHMpIHRvIGRpc3BsYXknLFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtbWFya2Rvd24tbmF2aWdhdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcmtkb3duLW5hdmlnYXRvci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGRNYXJrZG93bk5hdmlnYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIC8qKlxuICAgKiBpdGVtczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdXG4gICAqXG4gICAqIExpc3Qgb2YgSU1hcmtkb3duTmF2aWdhdG9ySXRlbXMgdG8gYmUgcmVuZGVyZWRcbiAgICovXG4gIEBJbnB1dCgpIGl0ZW1zPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdO1xuXG4gIC8qKlxuICAgKiBsYWJlbHM/OiBJTWFya2Rvd25OYXZpZ2F0b3JMYWJlbHNcbiAgICpcbiAgICogVHJhbnNsYXRlZCBsYWJlbHNcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVscz86IElNYXJrZG93bk5hdmlnYXRvckxhYmVscztcblxuICAvKipcbiAgICogc3RhcnRBdD86IElNYXJrZG93bk5hdmlnYXRvckl0ZW0gfCBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG4gICAqXG4gICAqIEl0ZW0gb3IgcGF0aCB0byBzdGFydCBhdFxuICAgKi9cbiAgQElucHV0KCkgc3RhcnRBdD86IElNYXJrZG93bk5hdmlnYXRvckl0ZW0gfCBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW107XG5cbiAgLyoqXG4gICAqIGNvcHlDb2RlVG9DbGlwYm9hcmQ/OiBib29sZWFuXG4gICAqXG4gICAqIERpc3BsYXkgY29weSBidXR0b24gb24gY29kZSBzbmlwcGV0cyB0byBjb3B5IGNvZGUgdG8gY2xpcGJvYXJkLlxuICAgKlxuICAgKi9cbiAgQElucHV0KCkgY29weUNvZGVUb0NsaXBib2FyZD8gPSBmYWxzZTtcblxuICAvKipcbiAgICogY29weUNvZGVUb29sdGlwcz86IElDb3B5Q29kZVRvb2x0aXBzXG4gICAqXG4gICAqIFRvb2x0aXBzIGZvciBjb3B5IGJ1dHRvbiB0byBjb3B5IGFuZCB1cG9uIGNvcHlpbmcuXG4gICAqL1xuICBASW5wdXQoKSBjb3B5Q29kZVRvb2x0aXBzPzogSUNvcHlDb2RlVG9vbHRpcHMgPSB7fTtcblxuICAvKipcbiAgICogZm9vdGVyPzogVHlwZTxhbnk+XG4gICAqXG4gICAqIENvbXBvbmVudCB0byBiZSBkaXNwbGF5ZWQgaW4gZm9vdGVyXG4gICAqL1xuICBASW5wdXQoKSBmb290ZXI/OiBhbnk7XG5cbiAgLyoqXG4gICAqIGNvbXBhcmVXaXRoPzogSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGhcbiAgICpcbiAgICogRnVuY3Rpb24gdXNlZCB0byBmaW5kIHN0YXJ0QXQgaXRlbVxuICAgKiBEZWZhdWx0cyB0byBjb21wYXJpc29uIGJ5IHN0cmljdCBlcXVhbGl0eSAoPT09KVxuICAgKi9cbiAgQElucHV0KCkgY29tcGFyZVdpdGg/OiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aDtcblxuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPElUZEZsYXZvcmVkTWFya2Rvd25CdXR0b25DbGlja0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaXRlbVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8SU1hcmtkb3duTmF2aWdhdG9ySXRlbT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdtYXJrZG93bldyYXBwZXInKSBtYXJrZG93bldyYXBwZXIhOiBFbGVtZW50UmVmO1xuXG4gIGhpc3RvcnlTdGFjazogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gW107IC8vIGhpc3RvcnlcbiAgY3VycmVudE1hcmtkb3duSXRlbT86IElNYXJrZG93bk5hdmlnYXRvckl0ZW07IC8vIGN1cnJlbnRseSByZW5kZXJlZFxuICBjdXJyZW50TWVudUl0ZW1zPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gW107IC8vIGN1cnJlbnQgbWVudSBpdGVtc1xuXG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBtYXJrZG93bkxvYWRlckVycm9yPzogc3RyaW5nO1xuICBjaGlsZHJlblVybEVycm9yPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX21hcmtkb3duVXJsTG9hZGVyU2VydmljZTogVGRNYXJrZG93bkxvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnRcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgY2xpY2tMaXN0ZW5lcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCA9IDxIVE1MRWxlbWVudD5ldmVudC5zcmNFbGVtZW50O1xuICAgIGlmIChcbiAgICAgIGVsZW1lbnQubWF0Y2hlcygnYVtocmVmXScpICYmXG4gICAgICBpc01hcmtkb3duSHJlZig8SFRNTEFuY2hvckVsZW1lbnQ+ZWxlbWVudClcbiAgICApIHtcbiAgICAgIHRoaXMuaGFuZGxlTGlua0NsaWNrKGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2hvd0dvQmFja0J1dHRvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5oaXN0b3J5U3RhY2subGVuZ3RoID4gMDtcbiAgfVxuXG4gIGdldCBzaG93SGVhZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuY3VycmVudEl0ZW1UaXRsZTtcbiAgfVxuXG4gIGdldCBzaG93TWVudSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaG93TWVudSA9IHRoaXMuY3VycmVudE1lbnVJdGVtcyAmJiB0aGlzLmN1cnJlbnRNZW51SXRlbXMubGVuZ3RoID4gMDtcbiAgICByZXR1cm4gc2hvd01lbnUgPz8gZmFsc2U7XG4gIH1cblxuICBnZXQgc2hvd1RkTWFya2Rvd25Mb2FkZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICEhdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtICYmXG4gICAgICAhIXRoaXMuY3VycmVudE1hcmtkb3duSXRlbS51cmwgJiZcbiAgICAgICF0aGlzLnNob3dUZE1hcmtkb3duXG4gICAgKTtcbiAgfVxuXG4gIGdldCBzaG93VGRNYXJrZG93bigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgISF0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gJiYgISF0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0ubWFya2Rvd25TdHJpbmdcbiAgICApO1xuICB9XG5cbiAgZ2V0IHVybCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0udXJsO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGZvb3RlckNvbXBvbmVudCgpOiBhbnkge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gJiYgdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtLmZvb3Rlcikge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbS5mb290ZXI7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmZvb3RlcjtcbiAgfVxuICBnZXQgaHR0cE9wdGlvbnMoKTogb2JqZWN0IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50TWFya2Rvd25JdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtLmh0dHBPcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGdldCBtYXJrZG93blN0cmluZygpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0ubWFya2Rvd25TdHJpbmc7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgYW5jaG9yKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbS5hbmNob3I7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgc2hvd0VtcHR5U3RhdGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLml0ZW1zIHx8IHRoaXMuaXRlbXMubGVuZ3RoIDwgMTtcbiAgfVxuXG4gIGdldCBnb0hvbWVMYWJlbCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMuZ29Ib21lKSB8fFxuICAgICAgREVGQVVMVF9NQVJLRE9XTl9OQVZJR0FUT1JfTEFCRUxTLmdvSG9tZVxuICAgICk7XG4gIH1cblxuICBnZXQgZ29CYWNrTGFiZWwoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHRoaXMubGFiZWxzICYmIHRoaXMubGFiZWxzLmdvQmFjaykgfHxcbiAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUy5nb0JhY2tcbiAgICApO1xuICB9XG5cbiAgZ2V0IGVtcHR5U3RhdGVMYWJlbCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5sYWJlbHMgJiYgdGhpcy5sYWJlbHMuZW1wdHlTdGF0ZSkgfHxcbiAgICAgIERFRkFVTFRfTUFSS0RPV05fTkFWSUdBVE9SX0xBQkVMUy5lbXB0eVN0YXRlXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50SXRlbVRpdGxlKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VGl0bGUodGhpcy5jdXJyZW50TWFya2Rvd25JdGVtKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFRpdGxlKHRoaXMuaGlzdG9yeVN0YWNrW3RoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIDFdKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgYXN5bmMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChjaGFuZ2VzWydpdGVtcyddKSB7XG4gICAgICB0aGlzLnJlc2V0KCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydzdGFydEF0J10gJiYgdGhpcy5pdGVtcyAmJiB0aGlzLnN0YXJ0QXQpIHtcbiAgICAgIHRoaXMuX2p1bXBUbyh0aGlzLnN0YXJ0QXQsIHVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG5cbiAgaGFzQ2hpbGRyZW5PckNoaWxkcmVuVXJsKGl0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gKGl0ZW0uY2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbi5sZW5ndGggPiAwKSB8fCAhIWl0ZW0uY2hpbGRyZW5Vcmw7XG4gIH1cbiAgY2xlYXJFcnJvcnMoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrZG93bkxvYWRlckVycm9yID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY2hpbGRyZW5VcmxFcnJvciA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuY2xlYXJFcnJvcnMoKTtcbiAgICAvLyBpZiBzaW5nbGUgaXRlbSBhbmQgbm8gY2hpbGRyZW5cbiAgICBpZiAoXG4gICAgICB0aGlzLml0ZW1zICYmXG4gICAgICB0aGlzLml0ZW1zLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgIXRoaXMuaGFzQ2hpbGRyZW5PckNoaWxkcmVuVXJsKHRoaXMuaXRlbXNbMF0pXG4gICAgKSB7XG4gICAgICB0aGlzLmN1cnJlbnRNZW51SXRlbXMgPSBbXTtcbiAgICAgIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSA9IHRoaXMuaXRlbXNbMF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3VycmVudE1lbnVJdGVtcyA9IHRoaXMuaXRlbXM7XG4gICAgICB0aGlzLmN1cnJlbnRNYXJrZG93bkl0ZW0gPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHRoaXMuaGlzdG9yeVN0YWNrID0gW107XG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdCh1bmRlZmluZWQpO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgZ29CYWNrKGdvQmFja0xlbmd0aCA9IDIpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmNsZWFyRXJyb3JzKCk7XG4gICAgbGV0IHBhcmVudDogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IHVuZGVmaW5lZCA9XG4gICAgICB0aGlzLmhpc3RvcnlTdGFja1t0aGlzLmhpc3RvcnlTdGFjay5sZW5ndGggLSBnb0JhY2tMZW5ndGhdO1xuXG4gICAgaWYgKHBhcmVudD8uc3RhcnRBdExpbmspIHtcbiAgICAgIHBhcmVudCA9IHRoaXMuaGlzdG9yeVN0YWNrW3RoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIDNdXG4gICAgICAgID8gdGhpcy5oaXN0b3J5U3RhY2tbdGhpcy5oaXN0b3J5U3RhY2subGVuZ3RoIC0gM11cbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmhpc3RvcnlTdGFjayA9IHRoaXMuaGlzdG9yeVN0YWNrLnNsaWNlKDAsIC1nb0JhY2tMZW5ndGgpO1xuICAgIH1cblxuICAgIGlmIChwYXJlbnQpIHtcbiAgICAgIHRoaXMuY3VycmVudE1hcmtkb3duSXRlbSA9IHBhcmVudDtcbiAgICAgIHRoaXMuaGlzdG9yeVN0YWNrID0gdGhpcy5oaXN0b3J5U3RhY2suc2xpY2UoXG4gICAgICAgIDAsXG4gICAgICAgIHRoaXMuaGlzdG9yeVN0YWNrLmxlbmd0aCAtIGdvQmFja0xlbmd0aCArIDFcbiAgICAgICk7XG4gICAgICB0aGlzLnNldENoaWxkcmVuQXNDdXJyZW50TWVudUl0ZW1zKHBhcmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXQoKTtcbiAgICB9XG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChwYXJlbnQpO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgaGFuZGxlSXRlbVNlbGVjdGVkKGl0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0pOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyRXJyb3JzKCk7XG4gICAgdGhpcy5jdXJyZW50TWFya2Rvd25JdGVtID0gaXRlbTtcbiAgICB0aGlzLmhpc3RvcnlTdGFjayA9IFsuLi50aGlzLmhpc3RvcnlTdGFjaywgaXRlbV07XG4gICAgdGhpcy5zZXRDaGlsZHJlbkFzQ3VycmVudE1lbnVJdGVtcyhpdGVtKTtcbiAgICB0aGlzLml0ZW1TZWxlY3RlZC5lbWl0KGl0ZW0pO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYXN5bmMgc2V0Q2hpbGRyZW5Bc0N1cnJlbnRNZW51SXRlbXMoXG4gICAgaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmN1cnJlbnRNZW51SXRlbXMgPSBbXTtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgY29uc3Qgc3RhY2tTbmFwc2hvdDogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5oaXN0b3J5U3RhY2s7XG4gICAgbGV0IGNoaWxkcmVuOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10gPSBbXTtcbiAgICBpZiAoaXRlbS5jaGlsZHJlbikge1xuICAgICAgY2hpbGRyZW4gPSBpdGVtLmNoaWxkcmVuO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5jaGlsZHJlblVybCkge1xuICAgICAgY2hpbGRyZW4gPSBhd2FpdCB0aGlzLmxvYWRDaGlsZHJlblVybChpdGVtKTtcbiAgICB9XG4gICAgaWYgKGNoaWxkcmVuICYmIGNoaWxkcmVuLmxlbmd0aCAmJiBpdGVtLnN0YXJ0QXRMaW5rKSB7XG4gICAgICB0aGlzLl9qdW1wVG8oaXRlbS5zdGFydEF0TGluaywgY2hpbGRyZW4pO1xuICAgIH1cbiAgICBjb25zdCBuZXdTdGFja1NuYXBzaG90OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10gPSB0aGlzLmhpc3RvcnlTdGFjaztcbiAgICBpZiAoXG4gICAgICBzdGFja1NuYXBzaG90Lmxlbmd0aCA9PT0gbmV3U3RhY2tTbmFwc2hvdC5sZW5ndGggJiZcbiAgICAgIHN0YWNrU25hcHNob3QuZXZlcnkoXG4gICAgICAgIChzdGFja0l0ZW06IElNYXJrZG93bk5hdmlnYXRvckl0ZW0sIGluZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgc3RhY2tJdGVtID09PSBuZXdTdGFja1NuYXBzaG90W2luZGV4XVxuICAgICAgKVxuICAgICkge1xuICAgICAgdGhpcy5jdXJyZW50TWVudUl0ZW1zID0gY2hpbGRyZW47XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBhc3luYyBsb2FkQ2hpbGRyZW5VcmwoXG4gICAgaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVxuICApOiBQcm9taXNlPElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXT4ge1xuICAgIGNvbnN0IHNhbml0aXplZFVybCA9XG4gICAgICB0aGlzLl9zYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LlVSTCwgaXRlbS5jaGlsZHJlblVybCA/PyBudWxsKSA/P1xuICAgICAgJyc7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmaXJzdFZhbHVlRnJvbTxJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10+KFxuICAgICAgICB0aGlzLl9odHRwLmdldDxJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10+KHNhbml0aXplZFVybCwge1xuICAgICAgICAgIC4uLml0ZW0uaHR0cE9wdGlvbnMsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHRoaXMuaGFuZGxlQ2hpbGRyZW5VcmxFcnJvcihlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgZ2V0VGl0bGUoaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSk6IHN0cmluZyB7XG4gICAgaWYgKCFpdGVtKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiAoXG4gICAgICByZW1vdmVMZWFkaW5nSGFzaChpdGVtLmFuY2hvciA/PyAnJykgfHxcbiAgICAgIGl0ZW0udGl0bGUgfHxcbiAgICAgIGdldFRpdGxlRnJvbVVybChpdGVtLnVybCA/PyAnJykgfHxcbiAgICAgIGdldFRpdGxlRnJvbU1hcmtkb3duU3RyaW5nKGl0ZW0ubWFya2Rvd25TdHJpbmcgPz8gJycpIHx8XG4gICAgICAnJ1xuICAgICkudHJpbSgpO1xuICB9XG5cbiAgZ2V0SWNvbihpdGVtOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaXRlbT8uaWNvbiB8fCAnc3ViamVjdCc7XG4gIH1cblxuICBoYW5kbGVDaGlsZHJlblVybEVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuY2hpbGRyZW5VcmxFcnJvciA9IGVycm9yLm1lc3NhZ2U7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgaGFuZGxlTWFya2Rvd25Mb2FkZXJFcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtkb3duTG9hZGVyRXJyb3IgPSBlcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnJztcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2p1bXBUbyhcbiAgICBpdGVtT3JQYXRoOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtIHwgSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdLFxuICAgIGNoaWxkcmVuPzogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdXG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGhpc3RvcnlTdGFjazogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5oaXN0b3J5U3RhY2s7XG4gICAgbGV0IHBhdGg6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IFtdO1xuXG4gICAgaWYgKHRoaXMuaXRlbXM/Lmxlbmd0aCkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbU9yUGF0aCkpIHtcbiAgICAgICAgcGF0aCA9IGF3YWl0IHRoaXMuZm9sbG93UGF0aCh0aGlzLml0ZW1zLCBpdGVtT3JQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLmhpc3RvcnlTdGFjayA9IGhpc3RvcnlTdGFjaztcbiAgICAgICAgcGF0aCA9IHRoaXMuZmluZFBhdGgoY2hpbGRyZW4sIGl0ZW1PclBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGF0aCA9IHRoaXMuZmluZFBhdGgodGhpcy5pdGVtcywgaXRlbU9yUGF0aCk7XG4gICAgICB9XG4gICAgICBwYXRoLmZvckVhY2goKHBhdGhJdGVtOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3RlZChwYXRoSXRlbSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gISFwYXRoLmxlbmd0aDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZm9sbG93UGF0aChcbiAgICBpdGVtczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdLFxuICAgIHBhdGg6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXVxuICApOiBQcm9taXNlPElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXT4ge1xuICAgIGxldCBwYXRoSXRlbXM6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IFtdO1xuICAgIGxldCBjdXJyZW50TGV2ZWw6IElNYXJrZG93bk5hdmlnYXRvckl0ZW1bXSA9IGl0ZW1zO1xuICAgIGNvbnN0IGNvbXBhcmVXaXRoOiBJTWFya2Rvd25OYXZpZ2F0b3JDb21wYXJlV2l0aCA9XG4gICAgICB0aGlzLmNvbXBhcmVXaXRoIHx8IGRlZmF1bHRDb21wYXJlV2l0aDtcbiAgICBmb3IgKGNvbnN0IHBhdGhJdGVtIG9mIHBhdGgpIHtcbiAgICAgIGNvbnN0IGZvdW5kSXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSB8IHVuZGVmaW5lZCA9IGN1cnJlbnRMZXZlbC5maW5kKFxuICAgICAgICAoaXRlbTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbSkgPT4gY29tcGFyZVdpdGgocGF0aEl0ZW0sIGl0ZW0pXG4gICAgICApO1xuXG4gICAgICBpZiAoZm91bmRJdGVtKSB7XG4gICAgICAgIHBhdGhJdGVtcyA9IFsuLi5wYXRoSXRlbXMsIGZvdW5kSXRlbV07XG5cbiAgICAgICAgaWYgKGZvdW5kSXRlbS5jaGlsZHJlbikge1xuICAgICAgICAgIGN1cnJlbnRMZXZlbCA9IGZvdW5kSXRlbS5jaGlsZHJlbjtcbiAgICAgICAgfSBlbHNlIGlmIChmb3VuZEl0ZW0uY2hpbGRyZW5VcmwpIHtcbiAgICAgICAgICBjdXJyZW50TGV2ZWwgPSBhd2FpdCB0aGlzLmxvYWRDaGlsZHJlblVybChmb3VuZEl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHBhdGhJdGVtcy5sZW5ndGggIT09IHBhdGgubGVuZ3RoKSB7XG4gICAgICBwYXRoSXRlbXMgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGhJdGVtcztcbiAgfVxuXG4gIHByaXZhdGUgZmluZFBhdGgoXG4gICAgaXRlbXM/OiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtW10sXG4gICAgaXRlbT86IElNYXJrZG93bk5hdmlnYXRvckl0ZW1cbiAgKTogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdIHtcbiAgICBjb25zdCBjb21wYXJlV2l0aDogSU1hcmtkb3duTmF2aWdhdG9yQ29tcGFyZVdpdGggPVxuICAgICAgdGhpcy5jb21wYXJlV2l0aCB8fCBkZWZhdWx0Q29tcGFyZVdpdGg7XG4gICAgaWYgKGl0ZW1zKSB7XG4gICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGl0ZW1zKSB7XG4gICAgICAgIGlmIChpdGVtICYmIGNvbXBhcmVXaXRoKGNoaWxkLCBpdGVtKSkge1xuICAgICAgICAgIHJldHVybiBbY2hpbGRdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFuY2VzdG9yczogSU1hcmtkb3duTmF2aWdhdG9ySXRlbVtdID0gdGhpcy5maW5kUGF0aChcbiAgICAgICAgICBjaGlsZC5jaGlsZHJlbixcbiAgICAgICAgICBpdGVtXG4gICAgICAgICk7XG4gICAgICAgIGlmIChhbmNlc3RvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuIFtjaGlsZCwgLi4uYW5jZXN0b3JzXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGhhbmRsZUxpbmtDbGljayhldmVudDogRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGNvbnN0IGxpbms6IEhUTUxBbmNob3JFbGVtZW50ID0gPEhUTUxBbmNob3JFbGVtZW50PmV2ZW50LnRhcmdldDtcbiAgICBjb25zdCB1cmw6IFVSTCA9IG5ldyBVUkwobGluay5ocmVmKTtcbiAgICBjb25zdCB1cmxQYXJ0cyA9IHVybC5ocmVmLnNwbGl0KCcvJyk7XG4gICAgY29uc3QgaWQgPSB1cmxQYXJ0c1t1cmxQYXJ0cy5sZW5ndGggLSAxXS5zcGxpdCgnLm1kJylbMF07XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICBjb25zdCBwYXRoRm91bmQgPSBhd2FpdCB0aGlzLl9qdW1wVG8oeyBpZCB9KTtcblxuICAgIGlmIChwYXRoRm91bmQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgbWFya2Rvd25TdHJpbmc6IHN0cmluZyA9IGF3YWl0IHRoaXMuX21hcmtkb3duVXJsTG9hZGVyU2VydmljZS5sb2FkKFxuICAgICAgICB1cmwuaHJlZlxuICAgICAgKTtcbiAgICAgIC8vIHBhc3MgaW4gdXJsIHRvIGJlIGFibGUgdG8gdXNlIGN1cnJlbnRNYXJrZG93bkl0ZW0udXJsIGxhdGVyIG9uXG4gICAgICB0aGlzLmhhbmRsZUl0ZW1TZWxlY3RlZCh7IG1hcmtkb3duU3RyaW5nLCB1cmw6IHVybC5ocmVmIH0pO1xuICAgICAgdGhpcy5tYXJrZG93bldyYXBwZXIubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPSAwO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCB3aW4gPSB3aW5kb3cub3Blbih1cmwuaHJlZiwgJ19ibGFuaycpO1xuICAgICAgd2luPy5mb2N1cygpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0VGl0bGVGcm9tVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHVybCkge1xuICAgIGNvbnN0IHRlbXA6IFVSTCA9IG5ldyBVUkwodXJsKTtcbiAgICBpZiAodGVtcC5oYXNoKSB7XG4gICAgICByZXR1cm4gcmVtb3ZlTGVhZGluZ0hhc2godGVtcC5oYXNoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcGF0aDogc3RyaW5nW10gPSB0ZW1wLnBhdGhuYW1lLnNwbGl0KCcvJyk7XG4gICAgICBjb25zdCBmaWxlTmFtZTogc3RyaW5nID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuICAgICAgcmV0dXJuIGZpbGVOYW1lLnJlcGxhY2UoL1xcLlteLy5dKyQvLCAnJyk7IC8vIHJlbW92ZSAubWRcbiAgICB9XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBnZXRUaXRsZUZyb21NYXJrZG93blN0cmluZyhtYXJrZG93blN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKG1hcmtkb3duU3RyaW5nKSB7XG4gICAgY29uc3QgZmlyc3RMaW5lOiBzdHJpbmcgPVxuICAgICAgbWFya2Rvd25TdHJpbmcuc3BsaXQoL1tcXHJcXG5dKy8pLmZpbmQoKGxpbmU6IHN0cmluZykgPT4gISFsaW5lKSA/PyAnJztcbiAgICByZXR1cm4gcmVtb3ZlTGVhZGluZ0hhc2goZmlyc3RMaW5lKS50cmltKCk7XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBpc01hcmtkb3duSHJlZihhbmNob3I6IEhUTUxBbmNob3JFbGVtZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiAhaXNBbmNob3JMaW5rKGFuY2hvcikgJiYgYW5jaG9yLnBhdGhuYW1lLmVuZHNXaXRoKCcubWQnKTtcbn1cbmZ1bmN0aW9uIGRlZmF1bHRDb21wYXJlV2l0aChcbiAgbzE6IElNYXJrZG93bk5hdmlnYXRvckl0ZW0sXG4gIG8yOiBJTWFya2Rvd25OYXZpZ2F0b3JJdGVtXG4pOiBib29sZWFuIHtcbiAgaWYgKG8xLmlkICYmIG8yLmlkKSB7XG4gICAgcmV0dXJuIG8xLmlkID09PSBvMi5pZDtcbiAgfVxuICByZXR1cm4gbzEgPT09IG8yO1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzaG93RW1wdHlTdGF0ZVwiPlxuICA8bWF0LXByb2dyZXNzLWJhclxuICAgICpuZ0lmPVwibG9hZGluZ1wiXG4gICAgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxuICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dIZWFkZXJcIj5cbiAgICA8dGQtYnJlYWRjcnVtYnM+XG4gICAgICA8YVxuICAgICAgICB0ZC1icmVhZGNydW1iXG4gICAgICAgIFttYXRUb29sdGlwXT1cImdvSG9tZUxhYmVsID8/ICcnXCJcbiAgICAgICAgKGNsaWNrKT1cInJlc2V0KClcIlxuICAgICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiJ2hvbWUtYnV0dG9uJ1wiXG4gICAgICAgID5Ib21lPC9hXG4gICAgICA+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0Zvcj1cImxldCBzdGFjayBvZiBoaXN0b3J5U3RhY2s7IGxhc3QgYXMgaXNMYXN0OyBpbmRleCBhcyBpbmRleFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMYXN0OyBlbHNlIGxhc3RCcmVhZENydW1iXCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIHRkLWJyZWFkY3J1bWJcbiAgICAgICAgICAgIChjbGljayk9XCJnb0JhY2soaGlzdG9yeVN0YWNrLmxlbmd0aCAtIGluZGV4KVwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiJ2JhY2stYnV0dG9uJ1wiXG4gICAgICAgICAgICA+e3sgc3RhY2sudGl0bGUgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2xhc3RCcmVhZENydW1iPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImJyZWFkY3J1bWItZW5kLWljb25cIj5jaGV2cm9uX3JpZ2h0PC9tYXQtaWNvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGQtYnJlYWRjcnVtYnM+XG4gICAgPGRpdiBjbGFzcz1cImJyZWFkY3J1bWItY3VycmVudC10aXRsZVwiIFthdHRyLmRhdGEtdGVzdF09XCIndGl0bGUnXCI+XG4gICAgICB7eyBjdXJyZW50SXRlbVRpdGxlIH19XG4gICAgPC9kaXY+XG5cbiAgICA8bWF0LWRpdmlkZXIgW3N0eWxlLnBvc2l0aW9uXT1cIidyZWxhdGl2ZSdcIj48L21hdC1kaXZpZGVyPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8ZGl2IGNsYXNzPVwic2Nyb2xsLWFyZWFcIiBpZD1cInRkLW1hcmtkb3duLW5hdmlnYXRvci1jb250ZW50XCI+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzaG93VGRNYXJrZG93bkxvYWRlciB8fCBzaG93VGRNYXJrZG93blwiXG4gICAgICBjbGFzcz1cIm1hcmtkb3duLXdyYXBwZXJcIlxuICAgICAgI21hcmtkb3duV3JhcHBlclxuICAgID5cbiAgICAgIDx0ZC1tZXNzYWdlXG4gICAgICAgICpuZ0lmPVwibWFya2Rvd25Mb2FkZXJFcnJvclwiXG4gICAgICAgIFtzdWJsYWJlbF09XCJtYXJrZG93bkxvYWRlckVycm9yXCJcbiAgICAgICAgY29sb3I9XCJ3YXJuXCJcbiAgICAgICAgaWNvbj1cImVycm9yXCJcbiAgICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIidtYXJrZG93bi1sb2FkZXItZXJyb3InXCJcbiAgICAgID48L3RkLW1lc3NhZ2U+XG4gICAgICA8dGQtZmxhdm9yZWQtbWFya2Rvd24tbG9hZGVyXG4gICAgICAgICpuZ0lmPVwic2hvd1RkTWFya2Rvd25Mb2FkZXJcIlxuICAgICAgICBbdXJsXT1cInVybCA/PyAnJ1wiXG4gICAgICAgIFtodHRwT3B0aW9uc109XCJodHRwT3B0aW9ucyA/PyB7fVwiXG4gICAgICAgIFthbmNob3JdPVwiYW5jaG9yID8/ICcnXCJcbiAgICAgICAgW2NvcHlDb2RlVG9DbGlwYm9hcmRdPVwiY29weUNvZGVUb0NsaXBib2FyZFwiXG4gICAgICAgIFtjb3B5Q29kZVRvb2x0aXBzXT1cImNvcHlDb2RlVG9vbHRpcHNcIlxuICAgICAgICAobG9hZEZhaWxlZCk9XCJoYW5kbGVNYXJrZG93bkxvYWRlckVycm9yKCRldmVudClcIlxuICAgICAgICAoYnV0dG9uQ2xpY2tlZCk9XCJidXR0b25DbGlja2VkLmVtaXQoJGV2ZW50KVwiXG4gICAgICA+PC90ZC1mbGF2b3JlZC1tYXJrZG93bi1sb2FkZXI+XG4gICAgICA8dGQtZmxhdm9yZWQtbWFya2Rvd25cbiAgICAgICAgKm5nSWY9XCJzaG93VGRNYXJrZG93blwiXG4gICAgICAgIFtjb250ZW50XT1cIm1hcmtkb3duU3RyaW5nID8/ICcnXCJcbiAgICAgICAgW2hvc3RlZFVybF09XCJ1cmwgPz8gJydcIlxuICAgICAgICBbYW5jaG9yXT1cImFuY2hvciA/PyAnJ1wiXG4gICAgICAgIFtjb3B5Q29kZVRvQ2xpcGJvYXJkXT1cImNvcHlDb2RlVG9DbGlwYm9hcmRcIlxuICAgICAgICBbY29weUNvZGVUb29sdGlwc109XCJjb3B5Q29kZVRvb2x0aXBzXCJcbiAgICAgICAgKGJ1dHRvbkNsaWNrZWQpPVwiYnV0dG9uQ2xpY2tlZC5lbWl0KCRldmVudClcIlxuICAgICAgPjwvdGQtZmxhdm9yZWQtbWFya2Rvd24+XG4gICAgPC9kaXY+XG5cbiAgICA8dGQtbWVzc2FnZVxuICAgICAgKm5nSWY9XCJjaGlsZHJlblVybEVycm9yXCJcbiAgICAgIFtzdWJsYWJlbF09XCJjaGlsZHJlblVybEVycm9yXCJcbiAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICBpY29uPVwiZXJyb3JcIlxuICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIidjaGlsZHJlbi11cmwtZXJyb3InXCJcbiAgICA+PC90ZC1tZXNzYWdlPlxuICAgIDxkaXYgKm5nSWY9XCJzaG93TWVudVwiIGNsYXNzPVwidGQtbWFya2Rvd24tbGlzdFwiPlxuICAgICAgPG1hdC1hY3Rpb24tbGlzdD5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGN1cnJlbnRNZW51SXRlbXM7IGluZGV4IGFzIGluZGV4XCJcbiAgICAgICAgICBbaWRdPVwiXG4gICAgICAgICAgICAndGQtbWFya2Rvd24tbmF2aWdhdG9yLWxpc3QtaXRlbS0nICsgKGl0ZW0uaWQgPyBpdGVtLmlkIDogaW5kZXgpXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVNlbGVjdGVkKGl0ZW0pXCJcbiAgICAgICAgICBtYXQtbGlzdC1pdGVtXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiZ2V0VGl0bGUoaXRlbSlcIlxuICAgICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImJlZm9yZVwiXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgID5cbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAge3sgZ2V0SWNvbihpdGVtKSB9fVxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4gbWF0TGlzdEl0ZW1UaXRsZSBjbGFzcz1cInRydW5jYXRlXCI+XG4gICAgICAgICAgICB7eyBnZXRUaXRsZShpdGVtKSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBtYXRMaXN0SXRlbUxpbmUgY2xhc3M9XCJ0cnVuY2F0ZVwiPnt7IGl0ZW0uZGVzY3JpcHRpb24gfX08L3NwYW4+XG4gICAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9tYXQtYWN0aW9uLWxpc3Q+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImZvb3RlckNvbXBvbmVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2XG4gICpuZ0lmPVwic2hvd0VtcHR5U3RhdGVcIlxuICBsYXlvdXQ9XCJjb2x1bW5cIlxuICBsYXlvdXQtYWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgY2xhc3M9XCJlbXB0eS1zdGF0ZVwiXG4+XG4gIDxtYXQtaWNvbiBtYXRMaXN0SXRlbUF2YXRhcj5zdWJqZWN0PC9tYXQtaWNvbj5cbiAgPGgyPnt7IGVtcHR5U3RhdGVMYWJlbCB9fTwvaDI+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -15,8 +15,8 @@ import { TdMarkdownNavigatorWindowService } from './markdown-navigator-window-se
|
|
|
15
15
|
import { CovalentBreadcrumbsModule } from '@covalent/core/breadcrumbs';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
export class CovalentMarkdownNavigatorModule {
|
|
18
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
19
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
19
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, declarations: [TdMarkdownNavigatorComponent,
|
|
20
20
|
TdMarkdownNavigatorWindowComponent,
|
|
21
21
|
TdMarkdownNavigatorWindowDirective], imports: [CommonModule,
|
|
22
22
|
// material
|
|
@@ -31,7 +31,7 @@ export class CovalentMarkdownNavigatorModule {
|
|
|
31
31
|
CovalentMessageModule], exports: [TdMarkdownNavigatorComponent,
|
|
32
32
|
TdMarkdownNavigatorWindowComponent,
|
|
33
33
|
TdMarkdownNavigatorWindowDirective] });
|
|
34
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
34
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, providers: [TdMarkdownNavigatorWindowService], imports: [CommonModule,
|
|
35
35
|
// material
|
|
36
36
|
MatButtonModule,
|
|
37
37
|
MatTooltipModule,
|
|
@@ -43,7 +43,7 @@ export class CovalentMarkdownNavigatorModule {
|
|
|
43
43
|
CovalentFlavoredMarkdownModule,
|
|
44
44
|
CovalentMessageModule] });
|
|
45
45
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, decorators: [{
|
|
47
47
|
type: NgModule,
|
|
48
48
|
args: [{
|
|
49
49
|
imports: [
|
|
@@ -72,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
72
72
|
providers: [TdMarkdownNavigatorWindowService],
|
|
73
73
|
}]
|
|
74
74
|
}] });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tbmF2aWdhdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvbWFya2Rvd24tbmF2aWdhdG9yL3NyYy9tYXJrZG93bi1uYXZpZ2F0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDJFQUEyRSxDQUFDO0FBQy9ILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQ3pILE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQTZCdkUsTUFBTSxPQUFPLCtCQUErQjt3R0FBL0IsK0JBQStCO3lHQUEvQiwrQkFBK0IsaUJBWHhDLDRCQUE0QjtZQUM1QixrQ0FBa0M7WUFDbEMsa0NBQWtDLGFBaEJsQyxZQUFZO1lBRVosV0FBVztZQUNYLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIseUJBQXlCO1lBQ3pCLHFCQUFxQjtZQUNyQiw4QkFBOEI7WUFDOUIscUJBQXFCLGFBUXJCLDRCQUE0QjtZQUM1QixrQ0FBa0M7WUFDbEMsa0NBQWtDO3lHQUl6QiwrQkFBK0IsYUFGL0IsQ0FBQyxnQ0FBZ0MsQ0FBQyxZQXZCM0MsWUFBWTtZQUVaLFdBQVc7WUFDWCxlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixhQUFhO1lBQ2Isb0JBQW9CO1lBQ3BCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsOEJBQThCO1lBQzlCLHFCQUFxQjs7NEZBY1osK0JBQStCO2tCQTNCM0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFFWixXQUFXO3dCQUNYLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQix5QkFBeUI7d0JBQ3pCLHFCQUFxQjt3QkFDckIsOEJBQThCO3dCQUM5QixxQkFBcUI7cUJBQ3RCO29CQUNELFlBQVksRUFBRTt3QkFDWiw0QkFBNEI7d0JBQzVCLGtDQUFrQzt3QkFDbEMsa0NBQWtDO3FCQUNuQztvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsNEJBQTRCO3dCQUM1QixrQ0FBa0M7d0JBQ2xDLGtDQUFrQztxQkFDbkM7b0JBQ0QsU0FBUyxFQUFFLENBQUMsZ0NBQWdDLENBQUM7aUJBQzlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUZE1hcmtkb3duTmF2aWdhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9tYXJrZG93bi1uYXZpZ2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dDb21wb25lbnQgfSBmcm9tICcuL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3cvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IENvdmFsZW50Rmxhdm9yZWRNYXJrZG93bk1vZHVsZSB9IGZyb20gJ0Bjb3ZhbGVudC9mbGF2b3JlZC1tYXJrZG93bic7XG5pbXBvcnQgeyBDb3ZhbGVudERpYWxvZ3NNb2R1bGUgfSBmcm9tICdAY292YWxlbnQvY29yZS9kaWFsb2dzJztcbmltcG9ydCB7IENvdmFsZW50TWVzc2FnZU1vZHVsZSB9IGZyb20gJ0Bjb3ZhbGVudC9jb3JlL21lc3NhZ2UnO1xuaW1wb3J0IHsgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0RpcmVjdGl2ZSB9IGZyb20gJy4vbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy1kaXJlY3RpdmUvbWFya2Rvd24tbmF2aWdhdG9yLXdpbmRvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd1NlcnZpY2UgfSBmcm9tICcuL21hcmtkb3duLW5hdmlnYXRvci13aW5kb3ctc2VydmljZS9tYXJrZG93bi1uYXZpZ2F0b3Itd2luZG93LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ292YWxlbnRCcmVhZGNydW1ic01vZHVsZSB9IGZyb20gJ0Bjb3ZhbGVudC9jb3JlL2JyZWFkY3J1bWJzJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcblxuICAgIC8vIG1hdGVyaWFsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlLFxuICAgIENvdmFsZW50QnJlYWRjcnVtYnNNb2R1bGUsXG4gICAgQ292YWxlbnREaWFsb2dzTW9kdWxlLFxuICAgIENvdmFsZW50Rmxhdm9yZWRNYXJrZG93bk1vZHVsZSxcbiAgICBDb3ZhbGVudE1lc3NhZ2VNb2R1bGUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRkTWFya2Rvd25OYXZpZ2F0b3JDb21wb25lbnQsXG4gICAgVGRNYXJrZG93bk5hdmlnYXRvcldpbmRvd0NvbXBvbmVudCxcbiAgICBUZE1hcmtkb3duTmF2aWdhdG9yV2luZG93RGlyZWN0aXZlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVGRNYXJrZG93bk5hdmlnYXRvckNvbXBvbmVudCxcbiAgICBUZE1hcmtkb3duTmF2aWdhdG9yV2luZG93Q29tcG9uZW50LFxuICAgIFRkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dEaXJlY3RpdmUsXG4gIF0sXG4gIHByb3ZpZGVyczogW1RkTWFya2Rvd25OYXZpZ2F0b3JXaW5kb3dTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgQ292YWxlbnRNYXJrZG93bk5hdmlnYXRvck1vZHVsZSB7fVxuIl19
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, SecurityContext,
|
|
2
|
+
import { EventEmitter, SecurityContext, HostListener, ViewChild, Output, Input, ChangeDetectionStrategy, Component, Inject, Injectable, Directive, NgModule } from '@angular/core';
|
|
3
3
|
import * as i4 from '@angular/common';
|
|
4
4
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1 from '@covalent/markdown';
|
|
6
|
-
import {
|
|
6
|
+
import { isAnchorLink, removeLeadingHash } from '@covalent/markdown';
|
|
7
7
|
import * as i2 from '@angular/platform-browser';
|
|
8
8
|
import * as i3 from '@angular/common/http';
|
|
9
9
|
import { firstValueFrom } from 'rxjs';
|
|
@@ -382,10 +382,10 @@ class TdMarkdownNavigatorComponent {
|
|
|
382
382
|
}
|
|
383
383
|
this._changeDetectorRef.markForCheck();
|
|
384
384
|
}
|
|
385
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
386
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
385
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorComponent, deps: [{ token: i1.TdMarkdownLoaderService }, { token: i0.ChangeDetectorRef }, { token: i2.DomSanitizer }, { token: i3.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
|
|
386
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorComponent, selector: "td-markdown-navigator", inputs: { items: "items", labels: "labels", startAt: "startAt", copyCodeToClipboard: "copyCodeToClipboard", copyCodeTooltips: "copyCodeTooltips", footer: "footer", compareWith: "compareWith" }, outputs: { buttonClicked: "buttonClicked", itemSelected: "itemSelected" }, host: { listeners: { "click": "clickListener($event)" } }, viewQueries: [{ propertyName: "markdownWrapper", first: true, predicate: ["markdownWrapper"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n", styles: [":host{position:relative;height:inherit;height:100%;box-sizing:border-box;display:flex;flex-direction:column}:host .breadcrumb-current-title{margin-bottom:16px;padding-left:16px}:host .breadcrumb-end-icon{margin-left:8px;font-size:16px;width:16px;height:16px}:host .scroll-area{min-height:1px;overflow-y:auto;flex:1;box-sizing:border-box}:host .markdown-wrapper{padding:16px 16px 0}:host .td-markdown-list>.mat-list{padding-top:0}:host td-breadcrumbs{padding:8px 8px 0 16px}:host td-flavored-markdown-loader ::ng-deep .mat-progress-bar{top:0;left:0;right:0;position:absolute}:host .title{display:inline-block;vertical-align:middle;margin:8px 0;padding-left:16px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:32px}.empty-state mat-icon{font-size:4em}\n"], dependencies: [{ kind: "directive", type: i4.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i6.MatActionList, selector: "mat-action-list", exportAs: ["matActionList"] }, { kind: "component", type: i6.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i6.MatListItemAvatar, selector: "[matListItemAvatar]" }, { kind: "directive", type: i6.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: i7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i6.MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: i6.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i10.TdBreadcrumbsComponent, selector: "td-breadcrumbs", inputs: ["separatorIcon"] }, { kind: "component", type: i10.TdBreadcrumbComponent, selector: "td-breadcrumb, a[td-breadcrumb]" }, { kind: "component", type: i11.TdFlavoredMarkdownComponent, selector: "td-flavored-markdown", inputs: ["content", "simpleLineBreaks", "hostedUrl", "anchor", "copyCodeToClipboard", "copyCodeTooltips", "toggleRawCode", "rawToggleLabels", "useCfmList", "fileLinkExtensions"], outputs: ["fileLinkClicked", "contentReady", "buttonClicked"] }, { kind: "component", type: i11.TdFlavoredMarkdownLoaderComponent, selector: "td-flavored-markdown-loader", inputs: ["url", "httpOptions", "anchor", "copyCodeToClipboard", "copyCodeTooltips", "useCfmList"], outputs: ["contentReady", "loadFailed", "buttonClicked"] }, { kind: "component", type: i12.TdMessageComponent, selector: "td-message", inputs: ["label", "sublabel", "icon", "color", "opened"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
387
387
|
}
|
|
388
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
388
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorComponent, decorators: [{
|
|
389
389
|
type: Component,
|
|
390
390
|
args: [{ selector: 'td-markdown-navigator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n", styles: [":host{position:relative;height:inherit;height:100%;box-sizing:border-box;display:flex;flex-direction:column}:host .breadcrumb-current-title{margin-bottom:16px;padding-left:16px}:host .breadcrumb-end-icon{margin-left:8px;font-size:16px;width:16px;height:16px}:host .scroll-area{min-height:1px;overflow-y:auto;flex:1;box-sizing:border-box}:host .markdown-wrapper{padding:16px 16px 0}:host .td-markdown-list>.mat-list{padding-top:0}:host td-breadcrumbs{padding:8px 8px 0 16px}:host td-flavored-markdown-loader ::ng-deep .mat-progress-bar{top:0;left:0;right:0;position:absolute}:host .title{display:inline-block;vertical-align:middle;margin:8px 0;padding-left:16px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:32px}.empty-state mat-icon{font-size:4em}\n"] }]
|
|
391
391
|
}], ctorParameters: () => [{ type: i1.TdMarkdownLoaderService }, { type: i0.ChangeDetectorRef }, { type: i2.DomSanitizer }, { type: i3.HttpClient }], propDecorators: { items: [{
|
|
@@ -496,10 +496,10 @@ class TdMarkdownNavigatorWindowComponent {
|
|
|
496
496
|
toggleDockedState() {
|
|
497
497
|
this.dockToggled.emit(this.docked);
|
|
498
498
|
}
|
|
499
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
500
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
499
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
500
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorWindowComponent, selector: "td-markdown-navigator-window", inputs: { items: "items", labels: "labels", toolbarColor: "toolbarColor", startAt: "startAt", compareWith: "compareWith", docked: "docked", copyCodeToClipboard: "copyCodeToClipboard", copyCodeTooltips: "copyCodeTooltips", footer: "footer" }, outputs: { closed: "closed", dockToggled: "dockToggled", buttonClicked: "buttonClicked", itemSelected: "itemSelected" }, ngImport: i0, template: "<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n", styles: [":host{height:100%;display:flex;flex-direction:column}td-markdown-navigator{height:calc(100% - 56px)}\n"], dependencies: [{ kind: "component", type: i1$1.TdWindowDialogComponent, selector: "td-window-dialog", inputs: ["toolbarColor", "docked", "title", "toggleDockedStateLabel", "closeLabel"], outputs: ["dockToggled", "closed"] }, { kind: "component", type: TdMarkdownNavigatorComponent, selector: "td-markdown-navigator", inputs: ["items", "labels", "startAt", "copyCodeToClipboard", "copyCodeTooltips", "footer", "compareWith"], outputs: ["buttonClicked", "itemSelected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
501
501
|
}
|
|
502
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
502
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowComponent, decorators: [{
|
|
503
503
|
type: Component,
|
|
504
504
|
args: [{ selector: 'td-markdown-navigator-window', changeDetection: ChangeDetectionStrategy.OnPush, template: "<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n", styles: [":host{height:100%;display:flex;flex-direction:column}td-markdown-navigator{height:calc(100% - 56px)}\n"] }]
|
|
505
505
|
}], propDecorators: { items: [{
|
|
@@ -534,7 +534,6 @@ const CDK_OVERLAY_CUSTOM_CLASS = 'td-window-dialog';
|
|
|
534
534
|
const DEFAULT_POSITION = { bottom: '0px', right: '0px' };
|
|
535
535
|
const DEFAULT_WIDTH = '360px';
|
|
536
536
|
const DEFAULT_HEIGHT = '75vh';
|
|
537
|
-
const MIN_HEIGHT = '56px';
|
|
538
537
|
const MAX_WIDTH = '100vw';
|
|
539
538
|
const DEFAULT_DRAGGABLE_DIALOG_CONFIG = {
|
|
540
539
|
hasBackdrop: false,
|
|
@@ -617,10 +616,10 @@ class TdMarkdownNavigatorWindowService {
|
|
|
617
616
|
this.markdownNavigatorWindowDialogsOpen--;
|
|
618
617
|
});
|
|
619
618
|
}
|
|
620
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
621
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
619
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService, deps: [{ token: i1$1.TdDialogService }, { token: DOCUMENT }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
620
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService });
|
|
622
621
|
}
|
|
623
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
622
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowService, decorators: [{
|
|
624
623
|
type: Injectable
|
|
625
624
|
}], ctorParameters: () => [{ type: i1$1.TdDialogService }, { type: undefined, decorators: [{
|
|
626
625
|
type: Inject,
|
|
@@ -639,10 +638,10 @@ class TdMarkdownNavigatorWindowDirective {
|
|
|
639
638
|
this._markdownNavigatorWindowService.open(this.config);
|
|
640
639
|
}
|
|
641
640
|
}
|
|
642
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
643
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
641
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowDirective, deps: [{ token: TdMarkdownNavigatorWindowService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
642
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.11", type: TdMarkdownNavigatorWindowDirective, selector: "[tdMarkdownNavigatorWindow]", inputs: { config: ["tdMarkdownNavigatorWindow", "config"], disabled: "disabled" }, host: { listeners: { "click": "click()" } }, ngImport: i0 });
|
|
644
643
|
}
|
|
645
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
644
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: TdMarkdownNavigatorWindowDirective, decorators: [{
|
|
646
645
|
type: Directive,
|
|
647
646
|
args: [{
|
|
648
647
|
selector: '[tdMarkdownNavigatorWindow]',
|
|
@@ -658,8 +657,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
658
657
|
}] } });
|
|
659
658
|
|
|
660
659
|
class CovalentMarkdownNavigatorModule {
|
|
661
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
662
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
660
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
661
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, declarations: [TdMarkdownNavigatorComponent,
|
|
663
662
|
TdMarkdownNavigatorWindowComponent,
|
|
664
663
|
TdMarkdownNavigatorWindowDirective], imports: [CommonModule,
|
|
665
664
|
// material
|
|
@@ -674,7 +673,7 @@ class CovalentMarkdownNavigatorModule {
|
|
|
674
673
|
CovalentMessageModule], exports: [TdMarkdownNavigatorComponent,
|
|
675
674
|
TdMarkdownNavigatorWindowComponent,
|
|
676
675
|
TdMarkdownNavigatorWindowDirective] });
|
|
677
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
676
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, providers: [TdMarkdownNavigatorWindowService], imports: [CommonModule,
|
|
678
677
|
// material
|
|
679
678
|
MatButtonModule,
|
|
680
679
|
MatTooltipModule,
|
|
@@ -686,7 +685,7 @@ class CovalentMarkdownNavigatorModule {
|
|
|
686
685
|
CovalentFlavoredMarkdownModule,
|
|
687
686
|
CovalentMessageModule] });
|
|
688
687
|
}
|
|
689
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
688
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CovalentMarkdownNavigatorModule, decorators: [{
|
|
690
689
|
type: NgModule,
|
|
691
690
|
args: [{
|
|
692
691
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"covalent-markdown-navigator.mjs","sources":["../../../../libs/markdown-navigator/src/markdown-navigator.component.ts","../../../../libs/markdown-navigator/src/markdown-navigator.component.html","../../../../libs/markdown-navigator/src/markdown-navigator-window/markdown-navigator-window.component.ts","../../../../libs/markdown-navigator/src/markdown-navigator-window/markdown-navigator-window.component.html","../../../../libs/markdown-navigator/src/markdown-navigator-window-service/markdown-navigator-window.service.ts","../../../../libs/markdown-navigator/src/markdown-navigator-window-directive/markdown-navigator-window.directive.ts","../../../../libs/markdown-navigator/src/markdown-navigator.module.ts","../../../../libs/markdown-navigator/src/covalent-markdown-navigator.ts"],"sourcesContent":["import {\n Component,\n Input,\n OnChanges,\n SimpleChanges,\n HostListener,\n ViewChild,\n ElementRef,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Type,\n Output,\n EventEmitter,\n SecurityContext,\n} from '@angular/core';\nimport {\n removeLeadingHash,\n isAnchorLink,\n TdMarkdownLoaderService,\n} from '@covalent/markdown';\nimport { ITdFlavoredMarkdownButtonClickEvent } from '@covalent/flavored-markdown';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\nimport { firstValueFrom } from 'rxjs';\n\nexport interface IMarkdownNavigatorItem {\n id?: string;\n title?: string;\n url?: string;\n httpOptions?: object;\n markdownString?: string; // raw markdown\n anchor?: string;\n children?: IMarkdownNavigatorItem[];\n childrenUrl?: string;\n description?: string;\n icon?: string;\n footer?: Type<any>;\n startAtLink?: IMarkdownNavigatorItem;\n}\n\nexport interface IMarkdownNavigatorLabels {\n goHome?: string;\n goBack?: string;\n emptyState?: string;\n}\n\nexport type IMarkdownNavigatorCompareWith = (\n o1: IMarkdownNavigatorItem,\n o2: IMarkdownNavigatorItem\n) => boolean;\n\nexport const DEFAULT_MARKDOWN_NAVIGATOR_LABELS: IMarkdownNavigatorLabels = {\n goHome: 'Go home',\n goBack: 'Go back',\n emptyState: 'No item(s) to display',\n};\n\n@Component({\n selector: 'td-markdown-navigator',\n templateUrl: './markdown-navigator.component.html',\n styleUrls: ['./markdown-navigator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TdMarkdownNavigatorComponent implements OnChanges {\n /**\n * items: IMarkdownNavigatorItem[]\n *\n * List of IMarkdownNavigatorItems to be rendered\n */\n @Input() items?: IMarkdownNavigatorItem[];\n\n /**\n * labels?: IMarkdownNavigatorLabels\n *\n * Translated labels\n */\n @Input() labels?: IMarkdownNavigatorLabels;\n\n /**\n * startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n *\n * Item or path to start at\n */\n @Input() startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n\n /**\n * copyCodeToClipboard?: boolean\n *\n * Display copy button on code snippets to copy code to clipboard.\n *\n */\n @Input() copyCodeToClipboard? = false;\n\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n\n /**\n * footer?: Type<any>\n *\n * Component to be displayed in footer\n */\n @Input() footer?: any;\n\n /**\n * compareWith?: IMarkdownNavigatorCompareWith\n *\n * Function used to find startAt item\n * Defaults to comparison by strict equality (===)\n */\n @Input() compareWith?: IMarkdownNavigatorCompareWith;\n\n @Output() buttonClicked: EventEmitter<ITdFlavoredMarkdownButtonClickEvent> =\n new EventEmitter();\n @Output() itemSelected: EventEmitter<IMarkdownNavigatorItem> =\n new EventEmitter();\n\n @ViewChild('markdownWrapper') markdownWrapper!: ElementRef;\n\n historyStack: IMarkdownNavigatorItem[] = []; // history\n currentMarkdownItem?: IMarkdownNavigatorItem; // currently rendered\n currentMenuItems?: IMarkdownNavigatorItem[] = []; // current menu items\n\n loading = false;\n\n markdownLoaderError?: string;\n childrenUrlError?: string;\n\n constructor(\n private _markdownUrlLoaderService: TdMarkdownLoaderService,\n private _changeDetectorRef: ChangeDetectorRef,\n private _sanitizer: DomSanitizer,\n private _http: HttpClient\n ) {}\n\n @HostListener('click', ['$event'])\n clickListener(event: Event): void {\n const element: HTMLElement = <HTMLElement>event.srcElement;\n if (\n element.matches('a[href]') &&\n isMarkdownHref(<HTMLAnchorElement>element)\n ) {\n this.handleLinkClick(event);\n }\n }\n\n get showGoBackButton(): boolean {\n return this.historyStack.length > 0;\n }\n\n get showHeader(): boolean {\n return !!this.currentItemTitle;\n }\n\n get showMenu(): boolean {\n const showMenu = this.currentMenuItems && this.currentMenuItems.length > 0;\n return showMenu ?? false;\n }\n\n get showTdMarkdownLoader(): boolean {\n return (\n !!this.currentMarkdownItem &&\n !!this.currentMarkdownItem.url &&\n !this.showTdMarkdown\n );\n }\n\n get showTdMarkdown(): boolean {\n return (\n !!this.currentMarkdownItem && !!this.currentMarkdownItem.markdownString\n );\n }\n\n get url(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.url;\n }\n return undefined;\n }\n\n get footerComponent(): any {\n if (this.currentMarkdownItem && this.currentMarkdownItem.footer) {\n return this.currentMarkdownItem.footer;\n }\n return this.footer;\n }\n get httpOptions(): object | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.httpOptions;\n }\n return undefined;\n }\n get markdownString(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.markdownString;\n }\n return undefined;\n }\n\n get anchor(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.anchor;\n }\n return undefined;\n }\n\n get showEmptyState(): boolean {\n return !this.items || this.items.length < 1;\n }\n\n get goHomeLabel(): string | undefined {\n return (\n (this.labels && this.labels.goHome) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.goHome\n );\n }\n\n get goBackLabel(): string | undefined {\n return (\n (this.labels && this.labels.goBack) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.goBack\n );\n }\n\n get emptyStateLabel(): string | undefined {\n return (\n (this.labels && this.labels.emptyState) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.emptyState\n );\n }\n\n get currentItemTitle(): string {\n if (this.currentMarkdownItem) {\n return this.getTitle(this.currentMarkdownItem);\n } else if (this.historyStack.length > 0) {\n return this.getTitle(this.historyStack[this.historyStack.length - 1]);\n }\n return '';\n }\n\n async ngOnChanges(changes: SimpleChanges): Promise<void> {\n if (changes['items']) {\n this.reset();\n }\n if (changes['startAt'] && this.items && this.startAt) {\n this._jumpTo(this.startAt, undefined);\n }\n }\n\n hasChildrenOrChildrenUrl(item: IMarkdownNavigatorItem): boolean {\n return (item.children && item.children.length > 0) || !!item.childrenUrl;\n }\n clearErrors(): void {\n this.markdownLoaderError = undefined;\n this.childrenUrlError = undefined;\n }\n\n reset(): void {\n this.loading = false;\n this.clearErrors();\n // if single item and no children\n if (\n this.items &&\n this.items.length === 1 &&\n !this.hasChildrenOrChildrenUrl(this.items[0])\n ) {\n this.currentMenuItems = [];\n this.currentMarkdownItem = this.items[0];\n } else {\n this.currentMenuItems = this.items;\n this.currentMarkdownItem = undefined;\n }\n this.historyStack = [];\n this.itemSelected.emit(undefined);\n this._changeDetectorRef.markForCheck();\n }\n\n goBack(goBackLength = 2): void {\n this.loading = false;\n this.clearErrors();\n let parent: IMarkdownNavigatorItem | undefined =\n this.historyStack[this.historyStack.length - goBackLength];\n\n if (parent?.startAtLink) {\n parent = this.historyStack[this.historyStack.length - 3]\n ? this.historyStack[this.historyStack.length - 3]\n : undefined;\n this.historyStack = this.historyStack.slice(0, -goBackLength);\n }\n\n if (parent) {\n this.currentMarkdownItem = parent;\n this.historyStack = this.historyStack.slice(\n 0,\n this.historyStack.length - goBackLength + 1\n );\n this.setChildrenAsCurrentMenuItems(parent);\n } else {\n this.reset();\n }\n this.itemSelected.emit(parent);\n this._changeDetectorRef.markForCheck();\n }\n\n handleItemSelected(item: IMarkdownNavigatorItem): void {\n this.clearErrors();\n this.currentMarkdownItem = item;\n this.historyStack = [...this.historyStack, item];\n this.setChildrenAsCurrentMenuItems(item);\n this.itemSelected.emit(item);\n this._changeDetectorRef.markForCheck();\n }\n\n async setChildrenAsCurrentMenuItems(\n item: IMarkdownNavigatorItem\n ): Promise<void> {\n this.currentMenuItems = [];\n this.loading = true;\n this._changeDetectorRef.markForCheck();\n\n const stackSnapshot: IMarkdownNavigatorItem[] = this.historyStack;\n let children: IMarkdownNavigatorItem[] = [];\n if (item.children) {\n children = item.children;\n } else if (item.childrenUrl) {\n children = await this.loadChildrenUrl(item);\n }\n if (children && children.length && item.startAtLink) {\n this._jumpTo(item.startAtLink, children);\n }\n const newStackSnapshot: IMarkdownNavigatorItem[] = this.historyStack;\n if (\n stackSnapshot.length === newStackSnapshot.length &&\n stackSnapshot.every(\n (stackItem: IMarkdownNavigatorItem, index: number) =>\n stackItem === newStackSnapshot[index]\n )\n ) {\n this.currentMenuItems = children;\n }\n\n this.loading = false;\n this._changeDetectorRef.markForCheck();\n }\n\n async loadChildrenUrl(\n item: IMarkdownNavigatorItem\n ): Promise<IMarkdownNavigatorItem[]> {\n const sanitizedUrl =\n this._sanitizer.sanitize(SecurityContext.URL, item.childrenUrl ?? null) ??\n '';\n try {\n return await firstValueFrom<IMarkdownNavigatorItem[]>(\n this._http.get<IMarkdownNavigatorItem[]>(sanitizedUrl, {\n ...item.httpOptions,\n })\n );\n } catch (error: any) {\n this.handleChildrenUrlError(error);\n return [];\n }\n }\n\n getTitle(item: IMarkdownNavigatorItem): string {\n if (!item) {\n return '';\n }\n return (\n removeLeadingHash(item.anchor ?? '') ||\n item.title ||\n getTitleFromUrl(item.url ?? '') ||\n getTitleFromMarkdownString(item.markdownString ?? '') ||\n ''\n ).trim();\n }\n\n getIcon(item: IMarkdownNavigatorItem): string {\n return item?.icon || 'subject';\n }\n\n handleChildrenUrlError(error: Error): void {\n this.childrenUrlError = error.message;\n this._changeDetectorRef.markForCheck();\n }\n handleMarkdownLoaderError(error: Error): void {\n this.markdownLoaderError = error ? error.message : '';\n this._changeDetectorRef.markForCheck();\n }\n\n private async _jumpTo(\n itemOrPath: IMarkdownNavigatorItem | IMarkdownNavigatorItem[],\n children?: IMarkdownNavigatorItem[]\n ): Promise<boolean> {\n const historyStack: IMarkdownNavigatorItem[] = this.historyStack;\n let path: IMarkdownNavigatorItem[] = [];\n\n if (this.items?.length) {\n if (Array.isArray(itemOrPath)) {\n path = await this.followPath(this.items, itemOrPath);\n } else if (children && children.length > 0) {\n this.historyStack = historyStack;\n path = this.findPath(children, itemOrPath);\n } else {\n path = this.findPath(this.items, itemOrPath);\n }\n path.forEach((pathItem: IMarkdownNavigatorItem, index) => {\n if (index === 0) {\n this.reset();\n }\n\n this.handleItemSelected(pathItem);\n });\n }\n\n return !!path.length;\n }\n\n private async followPath(\n items: IMarkdownNavigatorItem[],\n path: IMarkdownNavigatorItem[]\n ): Promise<IMarkdownNavigatorItem[]> {\n let pathItems: IMarkdownNavigatorItem[] = [];\n let currentLevel: IMarkdownNavigatorItem[] = items;\n const compareWith: IMarkdownNavigatorCompareWith =\n this.compareWith || defaultCompareWith;\n for (const pathItem of path) {\n const foundItem: IMarkdownNavigatorItem | undefined = currentLevel.find(\n (item: IMarkdownNavigatorItem) => compareWith(pathItem, item)\n );\n\n if (foundItem) {\n pathItems = [...pathItems, foundItem];\n\n if (foundItem.children) {\n currentLevel = foundItem.children;\n } else if (foundItem.childrenUrl) {\n currentLevel = await this.loadChildrenUrl(foundItem);\n }\n } else {\n break;\n }\n }\n if (pathItems.length !== path.length) {\n pathItems = [];\n }\n return pathItems;\n }\n\n private findPath(\n items?: IMarkdownNavigatorItem[],\n item?: IMarkdownNavigatorItem\n ): IMarkdownNavigatorItem[] {\n const compareWith: IMarkdownNavigatorCompareWith =\n this.compareWith || defaultCompareWith;\n if (items) {\n for (const child of items) {\n if (item && compareWith(child, item)) {\n return [child];\n }\n const ancestors: IMarkdownNavigatorItem[] = this.findPath(\n child.children,\n item\n );\n if (ancestors.length) {\n return [child, ...ancestors];\n }\n }\n }\n return [];\n }\n\n private async handleLinkClick(event: Event): Promise<void> {\n event.preventDefault();\n const link: HTMLAnchorElement = <HTMLAnchorElement>event.target;\n const url: URL = new URL(link.href);\n const urlParts = url.href.split('/');\n const id = urlParts[urlParts.length - 1].split('.md')[0];\n this.loading = true;\n this._changeDetectorRef.markForCheck();\n const pathFound = await this._jumpTo({ id });\n\n if (pathFound) {\n return;\n }\n\n try {\n const markdownString: string = await this._markdownUrlLoaderService.load(\n url.href\n );\n // pass in url to be able to use currentMarkdownItem.url later on\n this.handleItemSelected({ markdownString, url: url.href });\n this.markdownWrapper.nativeElement.scrollTop = 0;\n } catch (error) {\n const win = window.open(url.href, '_blank');\n win?.focus();\n } finally {\n this.loading = false;\n }\n this._changeDetectorRef.markForCheck();\n }\n}\n\nfunction getTitleFromUrl(url: string): string {\n if (url) {\n const temp: URL = new URL(url);\n if (temp.hash) {\n return removeLeadingHash(temp.hash);\n } else {\n const path: string[] = temp.pathname.split('/');\n const fileName: string = path[path.length - 1];\n return fileName.replace(/\\.[^/.]+$/, ''); // remove .md\n }\n }\n return '';\n}\n\nfunction getTitleFromMarkdownString(markdownString: string): string {\n if (markdownString) {\n const firstLine: string =\n markdownString.split(/[\\r\\n]+/).find((line: string) => !!line) ?? '';\n return removeLeadingHash(firstLine).trim();\n }\n return '';\n}\n\nfunction isMarkdownHref(anchor: HTMLAnchorElement): boolean {\n return !isAnchorLink(anchor) && anchor.pathname.endsWith('.md');\n}\nfunction defaultCompareWith(\n o1: IMarkdownNavigatorItem,\n o2: IMarkdownNavigatorItem\n): boolean {\n if (o1.id && o2.id) {\n return o1.id === o2.id;\n }\n return o1 === o2;\n}\n","<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n Type,\n} from '@angular/core';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n IMarkdownNavigatorItem,\n IMarkdownNavigatorLabels,\n IMarkdownNavigatorCompareWith,\n} from '../markdown-navigator.component';\nimport { ITdFlavoredMarkdownButtonClickEvent } from '@covalent/flavored-markdown';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\n\nexport interface IMarkdownNavigatorWindowLabels\n extends IMarkdownNavigatorLabels {\n title?: string;\n close?: string;\n dock?: string;\n unDock?: string;\n}\nexport const DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS: IMarkdownNavigatorWindowLabels =\n {\n title: 'Help',\n close: 'Close',\n dock: 'Dock',\n unDock: 'Undock',\n };\n\n@Component({\n selector: 'td-markdown-navigator-window',\n templateUrl: './markdown-navigator-window.component.html',\n styleUrls: ['./markdown-navigator-window.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TdMarkdownNavigatorWindowComponent {\n @Input() items?: IMarkdownNavigatorItem[];\n @Input() labels?: IMarkdownNavigatorWindowLabels;\n @Input() toolbarColor: ThemePalette = 'primary';\n @Input() startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n @Input() compareWith?: IMarkdownNavigatorCompareWith;\n @Input() docked? = false;\n @Input() copyCodeToClipboard? = false;\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n @Input() footer?: Type<any>;\n\n @Output() closed: EventEmitter<void> = new EventEmitter();\n @Output() dockToggled: EventEmitter<boolean> = new EventEmitter();\n @Output() buttonClicked: EventEmitter<ITdFlavoredMarkdownButtonClickEvent> =\n new EventEmitter();\n @Output() itemSelected: EventEmitter<IMarkdownNavigatorItem> =\n new EventEmitter();\n\n get markdownNavigatorLabels(): IMarkdownNavigatorLabels | undefined {\n if (!this.labels) {\n return undefined;\n }\n\n const { goHome, goBack, emptyState }: IMarkdownNavigatorWindowLabels =\n this.labels;\n return {\n goHome,\n goBack,\n emptyState,\n };\n }\n get titleLabel(): string | undefined {\n return (\n (this.labels && this.labels.title) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.title\n );\n }\n\n get closeLabel(): string | undefined {\n return (\n (this.labels && this.labels.close) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.close\n );\n }\n\n get toggleDockedStateLabel(): string | undefined {\n if (this.docked) {\n return (\n (this.labels && this.labels.unDock) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.unDock\n );\n } else {\n return (\n (this.labels && this.labels.dock) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.dock\n );\n }\n }\n\n toggleDockedState(): void {\n this.dockToggled.emit(this.docked);\n }\n}\n","<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n","import {\n Injectable,\n Inject,\n RendererFactory2,\n Renderer2,\n Type,\n} from '@angular/core';\nimport {\n MatDialogRef,\n MatDialogConfig,\n DialogPosition,\n} from '@angular/material/dialog';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n TdMarkdownNavigatorWindowComponent,\n IMarkdownNavigatorWindowLabels,\n} from '../markdown-navigator-window/markdown-navigator-window.component';\nimport {\n TdDialogService,\n IDraggableRefs,\n ResizableDraggableDialog,\n} from '@covalent/core/dialogs';\nimport { DragRef, Point } from '@angular/cdk/drag-drop';\nimport { DOCUMENT } from '@angular/common';\nimport {\n IMarkdownNavigatorItem,\n IMarkdownNavigatorCompareWith,\n} from '../markdown-navigator.component';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\n\nexport interface IMarkdownNavigatorWindowConfig {\n items: IMarkdownNavigatorItem[];\n dialogConfig?: MatDialogConfig;\n labels?: IMarkdownNavigatorWindowLabels;\n toolbarColor?: ThemePalette;\n startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n compareWith?: IMarkdownNavigatorCompareWith;\n copyCodeToClipboard?: boolean;\n copyCodeTooltips?: ICopyCodeTooltips;\n footer?: Type<any>;\n}\n\nconst CDK_OVERLAY_CUSTOM_CLASS = 'td-window-dialog';\n\nconst DEFAULT_POSITION: DialogPosition = { bottom: '0px', right: '0px' };\nconst DEFAULT_WIDTH = '360px';\nconst DEFAULT_HEIGHT = '75vh';\nconst MIN_HEIGHT = '56px';\nconst MAX_WIDTH = '100vw';\n\nconst DEFAULT_DRAGGABLE_DIALOG_CONFIG: MatDialogConfig = {\n hasBackdrop: false,\n closeOnNavigation: true,\n panelClass: [CDK_OVERLAY_CUSTOM_CLASS],\n position: DEFAULT_POSITION,\n height: DEFAULT_HEIGHT,\n width: DEFAULT_WIDTH,\n maxWidth: MAX_WIDTH,\n};\n\ninterface IDialogDimensions {\n width: string;\n height: string;\n}\n\n@Injectable()\nexport class TdMarkdownNavigatorWindowService {\n private _renderer2: Renderer2;\n private dragRef!: DragRef;\n private resizableDraggableDialog!: ResizableDraggableDialog;\n private markdownNavigatorWindowDialog!: MatDialogRef<TdMarkdownNavigatorWindowComponent>;\n private markdownNavigatorWindowDialogsOpen = 0;\n\n constructor(\n private _tdDialogService: TdDialogService,\n @Inject(DOCUMENT) private _document: any,\n private rendererFactory: RendererFactory2\n ) {\n this._renderer2 = rendererFactory.createRenderer(undefined, null);\n }\n\n public open(\n config: IMarkdownNavigatorWindowConfig\n ): MatDialogRef<TdMarkdownNavigatorWindowComponent> {\n this.close();\n\n const configClass = config?.dialogConfig?.panelClass;\n const panelClass =\n configClass && !Array.isArray(configClass) ? [configClass] : [];\n\n const draggableConfig: MatDialogConfig = {\n ...DEFAULT_DRAGGABLE_DIALOG_CONFIG,\n ...config.dialogConfig,\n ...panelClass,\n };\n const {\n matDialogRef,\n dragRefSubject,\n }: IDraggableRefs<TdMarkdownNavigatorWindowComponent> =\n this._tdDialogService.openDraggable({\n component: TdMarkdownNavigatorWindowComponent,\n config: draggableConfig,\n dragHandleSelectors: ['.td-window-dialog-toolbar'],\n draggableClass: 'td-draggable-markdown-navigator-window',\n });\n this.markdownNavigatorWindowDialog = matDialogRef;\n this.markdownNavigatorWindowDialog.componentInstance.items = config.items;\n this.markdownNavigatorWindowDialog.componentInstance.labels = config.labels;\n this.markdownNavigatorWindowDialog.componentInstance.startAt =\n config.startAt;\n this.markdownNavigatorWindowDialog.componentInstance.copyCodeToClipboard =\n config.copyCodeToClipboard;\n this.markdownNavigatorWindowDialog.componentInstance.copyCodeTooltips =\n config.copyCodeTooltips;\n this.markdownNavigatorWindowDialog.componentInstance.compareWith =\n config.compareWith;\n this.markdownNavigatorWindowDialog.componentInstance.toolbarColor =\n 'toolbarColor' in config ? config.toolbarColor : 'primary';\n this.markdownNavigatorWindowDialogsOpen++;\n this.markdownNavigatorWindowDialog.componentInstance.footer = config.footer;\n dragRefSubject.subscribe((dragRf: DragRef) => {\n this.dragRef = dragRf;\n this.resizableDraggableDialog = new ResizableDraggableDialog(\n this._document,\n this._renderer2,\n this.markdownNavigatorWindowDialog,\n this.dragRef\n );\n });\n this._handleEvents();\n return this.markdownNavigatorWindowDialog;\n }\n\n public close(): void {\n if (this.markdownNavigatorWindowDialog) {\n if (this.resizableDraggableDialog) {\n this.resizableDraggableDialog.detach();\n }\n this.markdownNavigatorWindowDialog.close();\n }\n }\n\n public get isOpen(): boolean {\n return this.markdownNavigatorWindowDialogsOpen > 0;\n }\n\n private _handleEvents(): void {\n this.markdownNavigatorWindowDialog.componentInstance.closed.subscribe(() =>\n this.close()\n );\n\n this.markdownNavigatorWindowDialog\n .afterClosed()\n .toPromise()\n .then(() => {\n this.markdownNavigatorWindowDialogsOpen--;\n });\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport {\n TdMarkdownNavigatorWindowService,\n IMarkdownNavigatorWindowConfig,\n} from '../markdown-navigator-window-service/markdown-navigator-window.service';\n\n@Directive({\n selector: '[tdMarkdownNavigatorWindow]',\n})\nexport class TdMarkdownNavigatorWindowDirective {\n @Input('tdMarkdownNavigatorWindow') config?: IMarkdownNavigatorWindowConfig;\n @Input() disabled = false;\n constructor(\n private _markdownNavigatorWindowService: TdMarkdownNavigatorWindowService\n ) {}\n\n @HostListener('click') click(): void {\n if (!this.disabled && this.config) {\n this._markdownNavigatorWindowService.open(this.config);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TdMarkdownNavigatorComponent } from './markdown-navigator.component';\nimport { TdMarkdownNavigatorWindowComponent } from './markdown-navigator-window/markdown-navigator-window.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatListModule } from '@angular/material/list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { CovalentFlavoredMarkdownModule } from '@covalent/flavored-markdown';\nimport { CovalentDialogsModule } from '@covalent/core/dialogs';\nimport { CovalentMessageModule } from '@covalent/core/message';\nimport { TdMarkdownNavigatorWindowDirective } from './markdown-navigator-window-directive/markdown-navigator-window.directive';\nimport { TdMarkdownNavigatorWindowService } from './markdown-navigator-window-service/markdown-navigator-window.service';\nimport { CovalentBreadcrumbsModule } from '@covalent/core/breadcrumbs';\n\n@NgModule({\n imports: [\n CommonModule,\n\n // material\n MatButtonModule,\n MatTooltipModule,\n MatListModule,\n MatIconModule,\n MatProgressBarModule,\n CovalentBreadcrumbsModule,\n CovalentDialogsModule,\n CovalentFlavoredMarkdownModule,\n CovalentMessageModule,\n ],\n declarations: [\n TdMarkdownNavigatorComponent,\n TdMarkdownNavigatorWindowComponent,\n TdMarkdownNavigatorWindowDirective,\n ],\n exports: [\n TdMarkdownNavigatorComponent,\n TdMarkdownNavigatorWindowComponent,\n TdMarkdownNavigatorWindowDirective,\n ],\n providers: [TdMarkdownNavigatorWindowService],\n})\nexport class CovalentMarkdownNavigatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2.TdMarkdownNavigatorComponent","i1.TdMarkdownNavigatorWindowService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"covalent-markdown-navigator.mjs","sources":["../../../../libs/markdown-navigator/src/markdown-navigator.component.ts","../../../../libs/markdown-navigator/src/markdown-navigator.component.html","../../../../libs/markdown-navigator/src/markdown-navigator-window/markdown-navigator-window.component.ts","../../../../libs/markdown-navigator/src/markdown-navigator-window/markdown-navigator-window.component.html","../../../../libs/markdown-navigator/src/markdown-navigator-window-service/markdown-navigator-window.service.ts","../../../../libs/markdown-navigator/src/markdown-navigator-window-directive/markdown-navigator-window.directive.ts","../../../../libs/markdown-navigator/src/markdown-navigator.module.ts","../../../../libs/markdown-navigator/src/covalent-markdown-navigator.ts"],"sourcesContent":["import {\n Component,\n Input,\n OnChanges,\n SimpleChanges,\n HostListener,\n ViewChild,\n ElementRef,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Type,\n Output,\n EventEmitter,\n SecurityContext,\n} from '@angular/core';\nimport {\n removeLeadingHash,\n isAnchorLink,\n TdMarkdownLoaderService,\n} from '@covalent/markdown';\nimport { ITdFlavoredMarkdownButtonClickEvent } from '@covalent/flavored-markdown';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\nimport { firstValueFrom } from 'rxjs';\n\nexport interface IMarkdownNavigatorItem {\n id?: string;\n title?: string;\n url?: string;\n httpOptions?: object;\n markdownString?: string; // raw markdown\n anchor?: string;\n children?: IMarkdownNavigatorItem[];\n childrenUrl?: string;\n description?: string;\n icon?: string;\n footer?: Type<any>;\n startAtLink?: IMarkdownNavigatorItem;\n}\n\nexport interface IMarkdownNavigatorLabels {\n goHome?: string;\n goBack?: string;\n emptyState?: string;\n}\n\nexport type IMarkdownNavigatorCompareWith = (\n o1: IMarkdownNavigatorItem,\n o2: IMarkdownNavigatorItem\n) => boolean;\n\nexport const DEFAULT_MARKDOWN_NAVIGATOR_LABELS: IMarkdownNavigatorLabels = {\n goHome: 'Go home',\n goBack: 'Go back',\n emptyState: 'No item(s) to display',\n};\n\n@Component({\n selector: 'td-markdown-navigator',\n templateUrl: './markdown-navigator.component.html',\n styleUrls: ['./markdown-navigator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TdMarkdownNavigatorComponent implements OnChanges {\n /**\n * items: IMarkdownNavigatorItem[]\n *\n * List of IMarkdownNavigatorItems to be rendered\n */\n @Input() items?: IMarkdownNavigatorItem[];\n\n /**\n * labels?: IMarkdownNavigatorLabels\n *\n * Translated labels\n */\n @Input() labels?: IMarkdownNavigatorLabels;\n\n /**\n * startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n *\n * Item or path to start at\n */\n @Input() startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n\n /**\n * copyCodeToClipboard?: boolean\n *\n * Display copy button on code snippets to copy code to clipboard.\n *\n */\n @Input() copyCodeToClipboard? = false;\n\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n\n /**\n * footer?: Type<any>\n *\n * Component to be displayed in footer\n */\n @Input() footer?: any;\n\n /**\n * compareWith?: IMarkdownNavigatorCompareWith\n *\n * Function used to find startAt item\n * Defaults to comparison by strict equality (===)\n */\n @Input() compareWith?: IMarkdownNavigatorCompareWith;\n\n @Output() buttonClicked: EventEmitter<ITdFlavoredMarkdownButtonClickEvent> =\n new EventEmitter();\n @Output() itemSelected: EventEmitter<IMarkdownNavigatorItem> =\n new EventEmitter();\n\n @ViewChild('markdownWrapper') markdownWrapper!: ElementRef;\n\n historyStack: IMarkdownNavigatorItem[] = []; // history\n currentMarkdownItem?: IMarkdownNavigatorItem; // currently rendered\n currentMenuItems?: IMarkdownNavigatorItem[] = []; // current menu items\n\n loading = false;\n\n markdownLoaderError?: string;\n childrenUrlError?: string;\n\n constructor(\n private _markdownUrlLoaderService: TdMarkdownLoaderService,\n private _changeDetectorRef: ChangeDetectorRef,\n private _sanitizer: DomSanitizer,\n private _http: HttpClient\n ) {}\n\n @HostListener('click', ['$event'])\n clickListener(event: Event): void {\n const element: HTMLElement = <HTMLElement>event.srcElement;\n if (\n element.matches('a[href]') &&\n isMarkdownHref(<HTMLAnchorElement>element)\n ) {\n this.handleLinkClick(event);\n }\n }\n\n get showGoBackButton(): boolean {\n return this.historyStack.length > 0;\n }\n\n get showHeader(): boolean {\n return !!this.currentItemTitle;\n }\n\n get showMenu(): boolean {\n const showMenu = this.currentMenuItems && this.currentMenuItems.length > 0;\n return showMenu ?? false;\n }\n\n get showTdMarkdownLoader(): boolean {\n return (\n !!this.currentMarkdownItem &&\n !!this.currentMarkdownItem.url &&\n !this.showTdMarkdown\n );\n }\n\n get showTdMarkdown(): boolean {\n return (\n !!this.currentMarkdownItem && !!this.currentMarkdownItem.markdownString\n );\n }\n\n get url(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.url;\n }\n return undefined;\n }\n\n get footerComponent(): any {\n if (this.currentMarkdownItem && this.currentMarkdownItem.footer) {\n return this.currentMarkdownItem.footer;\n }\n return this.footer;\n }\n get httpOptions(): object | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.httpOptions;\n }\n return undefined;\n }\n get markdownString(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.markdownString;\n }\n return undefined;\n }\n\n get anchor(): string | undefined {\n if (this.currentMarkdownItem) {\n return this.currentMarkdownItem.anchor;\n }\n return undefined;\n }\n\n get showEmptyState(): boolean {\n return !this.items || this.items.length < 1;\n }\n\n get goHomeLabel(): string | undefined {\n return (\n (this.labels && this.labels.goHome) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.goHome\n );\n }\n\n get goBackLabel(): string | undefined {\n return (\n (this.labels && this.labels.goBack) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.goBack\n );\n }\n\n get emptyStateLabel(): string | undefined {\n return (\n (this.labels && this.labels.emptyState) ||\n DEFAULT_MARKDOWN_NAVIGATOR_LABELS.emptyState\n );\n }\n\n get currentItemTitle(): string {\n if (this.currentMarkdownItem) {\n return this.getTitle(this.currentMarkdownItem);\n } else if (this.historyStack.length > 0) {\n return this.getTitle(this.historyStack[this.historyStack.length - 1]);\n }\n return '';\n }\n\n async ngOnChanges(changes: SimpleChanges): Promise<void> {\n if (changes['items']) {\n this.reset();\n }\n if (changes['startAt'] && this.items && this.startAt) {\n this._jumpTo(this.startAt, undefined);\n }\n }\n\n hasChildrenOrChildrenUrl(item: IMarkdownNavigatorItem): boolean {\n return (item.children && item.children.length > 0) || !!item.childrenUrl;\n }\n clearErrors(): void {\n this.markdownLoaderError = undefined;\n this.childrenUrlError = undefined;\n }\n\n reset(): void {\n this.loading = false;\n this.clearErrors();\n // if single item and no children\n if (\n this.items &&\n this.items.length === 1 &&\n !this.hasChildrenOrChildrenUrl(this.items[0])\n ) {\n this.currentMenuItems = [];\n this.currentMarkdownItem = this.items[0];\n } else {\n this.currentMenuItems = this.items;\n this.currentMarkdownItem = undefined;\n }\n this.historyStack = [];\n this.itemSelected.emit(undefined);\n this._changeDetectorRef.markForCheck();\n }\n\n goBack(goBackLength = 2): void {\n this.loading = false;\n this.clearErrors();\n let parent: IMarkdownNavigatorItem | undefined =\n this.historyStack[this.historyStack.length - goBackLength];\n\n if (parent?.startAtLink) {\n parent = this.historyStack[this.historyStack.length - 3]\n ? this.historyStack[this.historyStack.length - 3]\n : undefined;\n this.historyStack = this.historyStack.slice(0, -goBackLength);\n }\n\n if (parent) {\n this.currentMarkdownItem = parent;\n this.historyStack = this.historyStack.slice(\n 0,\n this.historyStack.length - goBackLength + 1\n );\n this.setChildrenAsCurrentMenuItems(parent);\n } else {\n this.reset();\n }\n this.itemSelected.emit(parent);\n this._changeDetectorRef.markForCheck();\n }\n\n handleItemSelected(item: IMarkdownNavigatorItem): void {\n this.clearErrors();\n this.currentMarkdownItem = item;\n this.historyStack = [...this.historyStack, item];\n this.setChildrenAsCurrentMenuItems(item);\n this.itemSelected.emit(item);\n this._changeDetectorRef.markForCheck();\n }\n\n async setChildrenAsCurrentMenuItems(\n item: IMarkdownNavigatorItem\n ): Promise<void> {\n this.currentMenuItems = [];\n this.loading = true;\n this._changeDetectorRef.markForCheck();\n\n const stackSnapshot: IMarkdownNavigatorItem[] = this.historyStack;\n let children: IMarkdownNavigatorItem[] = [];\n if (item.children) {\n children = item.children;\n } else if (item.childrenUrl) {\n children = await this.loadChildrenUrl(item);\n }\n if (children && children.length && item.startAtLink) {\n this._jumpTo(item.startAtLink, children);\n }\n const newStackSnapshot: IMarkdownNavigatorItem[] = this.historyStack;\n if (\n stackSnapshot.length === newStackSnapshot.length &&\n stackSnapshot.every(\n (stackItem: IMarkdownNavigatorItem, index: number) =>\n stackItem === newStackSnapshot[index]\n )\n ) {\n this.currentMenuItems = children;\n }\n\n this.loading = false;\n this._changeDetectorRef.markForCheck();\n }\n\n async loadChildrenUrl(\n item: IMarkdownNavigatorItem\n ): Promise<IMarkdownNavigatorItem[]> {\n const sanitizedUrl =\n this._sanitizer.sanitize(SecurityContext.URL, item.childrenUrl ?? null) ??\n '';\n try {\n return await firstValueFrom<IMarkdownNavigatorItem[]>(\n this._http.get<IMarkdownNavigatorItem[]>(sanitizedUrl, {\n ...item.httpOptions,\n })\n );\n } catch (error: any) {\n this.handleChildrenUrlError(error);\n return [];\n }\n }\n\n getTitle(item: IMarkdownNavigatorItem): string {\n if (!item) {\n return '';\n }\n return (\n removeLeadingHash(item.anchor ?? '') ||\n item.title ||\n getTitleFromUrl(item.url ?? '') ||\n getTitleFromMarkdownString(item.markdownString ?? '') ||\n ''\n ).trim();\n }\n\n getIcon(item: IMarkdownNavigatorItem): string {\n return item?.icon || 'subject';\n }\n\n handleChildrenUrlError(error: Error): void {\n this.childrenUrlError = error.message;\n this._changeDetectorRef.markForCheck();\n }\n handleMarkdownLoaderError(error: Error): void {\n this.markdownLoaderError = error ? error.message : '';\n this._changeDetectorRef.markForCheck();\n }\n\n private async _jumpTo(\n itemOrPath: IMarkdownNavigatorItem | IMarkdownNavigatorItem[],\n children?: IMarkdownNavigatorItem[]\n ): Promise<boolean> {\n const historyStack: IMarkdownNavigatorItem[] = this.historyStack;\n let path: IMarkdownNavigatorItem[] = [];\n\n if (this.items?.length) {\n if (Array.isArray(itemOrPath)) {\n path = await this.followPath(this.items, itemOrPath);\n } else if (children && children.length > 0) {\n this.historyStack = historyStack;\n path = this.findPath(children, itemOrPath);\n } else {\n path = this.findPath(this.items, itemOrPath);\n }\n path.forEach((pathItem: IMarkdownNavigatorItem, index) => {\n if (index === 0) {\n this.reset();\n }\n\n this.handleItemSelected(pathItem);\n });\n }\n\n return !!path.length;\n }\n\n private async followPath(\n items: IMarkdownNavigatorItem[],\n path: IMarkdownNavigatorItem[]\n ): Promise<IMarkdownNavigatorItem[]> {\n let pathItems: IMarkdownNavigatorItem[] = [];\n let currentLevel: IMarkdownNavigatorItem[] = items;\n const compareWith: IMarkdownNavigatorCompareWith =\n this.compareWith || defaultCompareWith;\n for (const pathItem of path) {\n const foundItem: IMarkdownNavigatorItem | undefined = currentLevel.find(\n (item: IMarkdownNavigatorItem) => compareWith(pathItem, item)\n );\n\n if (foundItem) {\n pathItems = [...pathItems, foundItem];\n\n if (foundItem.children) {\n currentLevel = foundItem.children;\n } else if (foundItem.childrenUrl) {\n currentLevel = await this.loadChildrenUrl(foundItem);\n }\n } else {\n break;\n }\n }\n if (pathItems.length !== path.length) {\n pathItems = [];\n }\n return pathItems;\n }\n\n private findPath(\n items?: IMarkdownNavigatorItem[],\n item?: IMarkdownNavigatorItem\n ): IMarkdownNavigatorItem[] {\n const compareWith: IMarkdownNavigatorCompareWith =\n this.compareWith || defaultCompareWith;\n if (items) {\n for (const child of items) {\n if (item && compareWith(child, item)) {\n return [child];\n }\n const ancestors: IMarkdownNavigatorItem[] = this.findPath(\n child.children,\n item\n );\n if (ancestors.length) {\n return [child, ...ancestors];\n }\n }\n }\n return [];\n }\n\n private async handleLinkClick(event: Event): Promise<void> {\n event.preventDefault();\n const link: HTMLAnchorElement = <HTMLAnchorElement>event.target;\n const url: URL = new URL(link.href);\n const urlParts = url.href.split('/');\n const id = urlParts[urlParts.length - 1].split('.md')[0];\n this.loading = true;\n this._changeDetectorRef.markForCheck();\n const pathFound = await this._jumpTo({ id });\n\n if (pathFound) {\n return;\n }\n\n try {\n const markdownString: string = await this._markdownUrlLoaderService.load(\n url.href\n );\n // pass in url to be able to use currentMarkdownItem.url later on\n this.handleItemSelected({ markdownString, url: url.href });\n this.markdownWrapper.nativeElement.scrollTop = 0;\n } catch (error) {\n const win = window.open(url.href, '_blank');\n win?.focus();\n } finally {\n this.loading = false;\n }\n this._changeDetectorRef.markForCheck();\n }\n}\n\nfunction getTitleFromUrl(url: string): string {\n if (url) {\n const temp: URL = new URL(url);\n if (temp.hash) {\n return removeLeadingHash(temp.hash);\n } else {\n const path: string[] = temp.pathname.split('/');\n const fileName: string = path[path.length - 1];\n return fileName.replace(/\\.[^/.]+$/, ''); // remove .md\n }\n }\n return '';\n}\n\nfunction getTitleFromMarkdownString(markdownString: string): string {\n if (markdownString) {\n const firstLine: string =\n markdownString.split(/[\\r\\n]+/).find((line: string) => !!line) ?? '';\n return removeLeadingHash(firstLine).trim();\n }\n return '';\n}\n\nfunction isMarkdownHref(anchor: HTMLAnchorElement): boolean {\n return !isAnchorLink(anchor) && anchor.pathname.endsWith('.md');\n}\nfunction defaultCompareWith(\n o1: IMarkdownNavigatorItem,\n o2: IMarkdownNavigatorItem\n): boolean {\n if (o1.id && o2.id) {\n return o1.id === o2.id;\n }\n return o1 === o2;\n}\n","<ng-container *ngIf=\"!showEmptyState\">\n <mat-progress-bar\n *ngIf=\"loading\"\n mode=\"indeterminate\"\n color=\"accent\"\n ></mat-progress-bar>\n <ng-container *ngIf=\"showHeader\">\n <td-breadcrumbs>\n <a\n td-breadcrumb\n [matTooltip]=\"goHomeLabel ?? ''\"\n (click)=\"reset()\"\n [attr.data-test]=\"'home-button'\"\n >Home</a\n >\n <ng-container\n *ngFor=\"let stack of historyStack; last as isLast; index as index\"\n >\n <ng-container *ngIf=\"!isLast; else lastBreadCrumb\">\n <a\n td-breadcrumb\n (click)=\"goBack(historyStack.length - index)\"\n [attr.data-test]=\"'back-button'\"\n >{{ stack.title }}</a\n >\n </ng-container>\n <ng-template #lastBreadCrumb>\n <mat-icon class=\"breadcrumb-end-icon\">chevron_right</mat-icon>\n </ng-template>\n </ng-container>\n </td-breadcrumbs>\n <div class=\"breadcrumb-current-title\" [attr.data-test]=\"'title'\">\n {{ currentItemTitle }}\n </div>\n\n <mat-divider [style.position]=\"'relative'\"></mat-divider>\n </ng-container>\n\n <div class=\"scroll-area\" id=\"td-markdown-navigator-content\">\n <div\n *ngIf=\"showTdMarkdownLoader || showTdMarkdown\"\n class=\"markdown-wrapper\"\n #markdownWrapper\n >\n <td-message\n *ngIf=\"markdownLoaderError\"\n [sublabel]=\"markdownLoaderError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'markdown-loader-error'\"\n ></td-message>\n <td-flavored-markdown-loader\n *ngIf=\"showTdMarkdownLoader\"\n [url]=\"url ?? ''\"\n [httpOptions]=\"httpOptions ?? {}\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (loadFailed)=\"handleMarkdownLoaderError($event)\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown-loader>\n <td-flavored-markdown\n *ngIf=\"showTdMarkdown\"\n [content]=\"markdownString ?? ''\"\n [hostedUrl]=\"url ?? ''\"\n [anchor]=\"anchor ?? ''\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n ></td-flavored-markdown>\n </div>\n\n <td-message\n *ngIf=\"childrenUrlError\"\n [sublabel]=\"childrenUrlError\"\n color=\"warn\"\n icon=\"error\"\n [attr.data-test]=\"'children-url-error'\"\n ></td-message>\n <div *ngIf=\"showMenu\" class=\"td-markdown-list\">\n <mat-action-list>\n <button\n *ngFor=\"let item of currentMenuItems; index as index\"\n [id]=\"\n 'td-markdown-navigator-list-item-' + (item.id ? item.id : index)\n \"\n (click)=\"handleItemSelected(item)\"\n mat-list-item\n [matTooltip]=\"getTitle(item)\"\n matTooltipPosition=\"before\"\n matTooltipShowDelay=\"500\"\n >\n <mat-icon matListItemIcon>\n {{ getIcon(item) }}\n </mat-icon>\n <span matListItemTitle class=\"truncate\">\n {{ getTitle(item) }}\n </span>\n <span matListItemLine class=\"truncate\">{{ item.description }}</span>\n <mat-divider></mat-divider>\n </button>\n </mat-action-list>\n </div>\n\n <ng-container *ngComponentOutlet=\"footerComponent\"></ng-container>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"showEmptyState\"\n layout=\"column\"\n layout-align=\"center center\"\n class=\"empty-state\"\n>\n <mat-icon matListItemAvatar>subject</mat-icon>\n <h2>{{ emptyStateLabel }}</h2>\n</div>\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n Type,\n} from '@angular/core';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n IMarkdownNavigatorItem,\n IMarkdownNavigatorLabels,\n IMarkdownNavigatorCompareWith,\n} from '../markdown-navigator.component';\nimport { ITdFlavoredMarkdownButtonClickEvent } from '@covalent/flavored-markdown';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\n\nexport interface IMarkdownNavigatorWindowLabels\n extends IMarkdownNavigatorLabels {\n title?: string;\n close?: string;\n dock?: string;\n unDock?: string;\n}\nexport const DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS: IMarkdownNavigatorWindowLabels =\n {\n title: 'Help',\n close: 'Close',\n dock: 'Dock',\n unDock: 'Undock',\n };\n\n@Component({\n selector: 'td-markdown-navigator-window',\n templateUrl: './markdown-navigator-window.component.html',\n styleUrls: ['./markdown-navigator-window.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TdMarkdownNavigatorWindowComponent {\n @Input() items?: IMarkdownNavigatorItem[];\n @Input() labels?: IMarkdownNavigatorWindowLabels;\n @Input() toolbarColor: ThemePalette = 'primary';\n @Input() startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n @Input() compareWith?: IMarkdownNavigatorCompareWith;\n @Input() docked? = false;\n @Input() copyCodeToClipboard? = false;\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n @Input() footer?: Type<any>;\n\n @Output() closed: EventEmitter<void> = new EventEmitter();\n @Output() dockToggled: EventEmitter<boolean> = new EventEmitter();\n @Output() buttonClicked: EventEmitter<ITdFlavoredMarkdownButtonClickEvent> =\n new EventEmitter();\n @Output() itemSelected: EventEmitter<IMarkdownNavigatorItem> =\n new EventEmitter();\n\n get markdownNavigatorLabels(): IMarkdownNavigatorLabels | undefined {\n if (!this.labels) {\n return undefined;\n }\n\n const { goHome, goBack, emptyState }: IMarkdownNavigatorWindowLabels =\n this.labels;\n return {\n goHome,\n goBack,\n emptyState,\n };\n }\n get titleLabel(): string | undefined {\n return (\n (this.labels && this.labels.title) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.title\n );\n }\n\n get closeLabel(): string | undefined {\n return (\n (this.labels && this.labels.close) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.close\n );\n }\n\n get toggleDockedStateLabel(): string | undefined {\n if (this.docked) {\n return (\n (this.labels && this.labels.unDock) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.unDock\n );\n } else {\n return (\n (this.labels && this.labels.dock) ||\n DEFAULT_MARKDOWN_NAVIGATOR_WINDOW_LABELS.dock\n );\n }\n }\n\n toggleDockedState(): void {\n this.dockToggled.emit(this.docked);\n }\n}\n","<td-window-dialog\n [toolbarColor]=\"toolbarColor\"\n [docked]=\"docked\"\n [title]=\"titleLabel\"\n [toggleDockedStateLabel]=\"toggleDockedStateLabel\"\n [closeLabel]=\"closeLabel\"\n (dockToggled)=\"toggleDockedState()\"\n (closed)=\"closed.emit()\"\n>\n <td-markdown-navigator\n [items]=\"items\"\n [labels]=\"markdownNavigatorLabels\"\n [style.display]=\"docked ? 'none' : 'inherit'\"\n [startAt]=\"startAt\"\n [compareWith]=\"compareWith\"\n [footer]=\"footer\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n (buttonClicked)=\"buttonClicked.emit($event)\"\n (itemSelected)=\"itemSelected.emit($event)\"\n ></td-markdown-navigator>\n</td-window-dialog>\n","import {\n Injectable,\n Inject,\n RendererFactory2,\n Renderer2,\n Type,\n} from '@angular/core';\nimport {\n MatDialogRef,\n MatDialogConfig,\n DialogPosition,\n} from '@angular/material/dialog';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n TdMarkdownNavigatorWindowComponent,\n IMarkdownNavigatorWindowLabels,\n} from '../markdown-navigator-window/markdown-navigator-window.component';\nimport {\n TdDialogService,\n IDraggableRefs,\n ResizableDraggableDialog,\n} from '@covalent/core/dialogs';\nimport { DragRef } from '@angular/cdk/drag-drop';\nimport { DOCUMENT } from '@angular/common';\nimport {\n IMarkdownNavigatorItem,\n IMarkdownNavigatorCompareWith,\n} from '../markdown-navigator.component';\nimport { ICopyCodeTooltips } from '@covalent/highlight';\n\nexport interface IMarkdownNavigatorWindowConfig {\n items: IMarkdownNavigatorItem[];\n dialogConfig?: MatDialogConfig;\n labels?: IMarkdownNavigatorWindowLabels;\n toolbarColor?: ThemePalette;\n startAt?: IMarkdownNavigatorItem | IMarkdownNavigatorItem[];\n compareWith?: IMarkdownNavigatorCompareWith;\n copyCodeToClipboard?: boolean;\n copyCodeTooltips?: ICopyCodeTooltips;\n footer?: Type<any>;\n}\n\nconst CDK_OVERLAY_CUSTOM_CLASS = 'td-window-dialog';\n\nconst DEFAULT_POSITION: DialogPosition = { bottom: '0px', right: '0px' };\nconst DEFAULT_WIDTH = '360px';\nconst DEFAULT_HEIGHT = '75vh';\nconst MAX_WIDTH = '100vw';\n\nconst DEFAULT_DRAGGABLE_DIALOG_CONFIG: MatDialogConfig = {\n hasBackdrop: false,\n closeOnNavigation: true,\n panelClass: [CDK_OVERLAY_CUSTOM_CLASS],\n position: DEFAULT_POSITION,\n height: DEFAULT_HEIGHT,\n width: DEFAULT_WIDTH,\n maxWidth: MAX_WIDTH,\n};\n\n@Injectable()\nexport class TdMarkdownNavigatorWindowService {\n private _renderer2: Renderer2;\n private dragRef!: DragRef;\n private resizableDraggableDialog!: ResizableDraggableDialog;\n private markdownNavigatorWindowDialog!: MatDialogRef<TdMarkdownNavigatorWindowComponent>;\n private markdownNavigatorWindowDialogsOpen = 0;\n\n constructor(\n private _tdDialogService: TdDialogService,\n @Inject(DOCUMENT) private _document: any,\n private rendererFactory: RendererFactory2\n ) {\n this._renderer2 = rendererFactory.createRenderer(undefined, null);\n }\n\n public open(\n config: IMarkdownNavigatorWindowConfig\n ): MatDialogRef<TdMarkdownNavigatorWindowComponent> {\n this.close();\n\n const configClass = config?.dialogConfig?.panelClass;\n const panelClass =\n configClass && !Array.isArray(configClass) ? [configClass] : [];\n\n const draggableConfig: MatDialogConfig = {\n ...DEFAULT_DRAGGABLE_DIALOG_CONFIG,\n ...config.dialogConfig,\n ...panelClass,\n };\n const {\n matDialogRef,\n dragRefSubject,\n }: IDraggableRefs<TdMarkdownNavigatorWindowComponent> =\n this._tdDialogService.openDraggable({\n component: TdMarkdownNavigatorWindowComponent,\n config: draggableConfig,\n dragHandleSelectors: ['.td-window-dialog-toolbar'],\n draggableClass: 'td-draggable-markdown-navigator-window',\n });\n this.markdownNavigatorWindowDialog = matDialogRef;\n this.markdownNavigatorWindowDialog.componentInstance.items = config.items;\n this.markdownNavigatorWindowDialog.componentInstance.labels = config.labels;\n this.markdownNavigatorWindowDialog.componentInstance.startAt =\n config.startAt;\n this.markdownNavigatorWindowDialog.componentInstance.copyCodeToClipboard =\n config.copyCodeToClipboard;\n this.markdownNavigatorWindowDialog.componentInstance.copyCodeTooltips =\n config.copyCodeTooltips;\n this.markdownNavigatorWindowDialog.componentInstance.compareWith =\n config.compareWith;\n this.markdownNavigatorWindowDialog.componentInstance.toolbarColor =\n 'toolbarColor' in config ? config.toolbarColor : 'primary';\n this.markdownNavigatorWindowDialogsOpen++;\n this.markdownNavigatorWindowDialog.componentInstance.footer = config.footer;\n dragRefSubject.subscribe((dragRf: DragRef) => {\n this.dragRef = dragRf;\n this.resizableDraggableDialog = new ResizableDraggableDialog(\n this._document,\n this._renderer2,\n this.markdownNavigatorWindowDialog,\n this.dragRef\n );\n });\n this._handleEvents();\n return this.markdownNavigatorWindowDialog;\n }\n\n public close(): void {\n if (this.markdownNavigatorWindowDialog) {\n if (this.resizableDraggableDialog) {\n this.resizableDraggableDialog.detach();\n }\n this.markdownNavigatorWindowDialog.close();\n }\n }\n\n public get isOpen(): boolean {\n return this.markdownNavigatorWindowDialogsOpen > 0;\n }\n\n private _handleEvents(): void {\n this.markdownNavigatorWindowDialog.componentInstance.closed.subscribe(() =>\n this.close()\n );\n\n this.markdownNavigatorWindowDialog\n .afterClosed()\n .toPromise()\n .then(() => {\n this.markdownNavigatorWindowDialogsOpen--;\n });\n }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport {\n TdMarkdownNavigatorWindowService,\n IMarkdownNavigatorWindowConfig,\n} from '../markdown-navigator-window-service/markdown-navigator-window.service';\n\n@Directive({\n selector: '[tdMarkdownNavigatorWindow]',\n})\nexport class TdMarkdownNavigatorWindowDirective {\n @Input('tdMarkdownNavigatorWindow') config?: IMarkdownNavigatorWindowConfig;\n @Input() disabled = false;\n constructor(\n private _markdownNavigatorWindowService: TdMarkdownNavigatorWindowService\n ) {}\n\n @HostListener('click') click(): void {\n if (!this.disabled && this.config) {\n this._markdownNavigatorWindowService.open(this.config);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TdMarkdownNavigatorComponent } from './markdown-navigator.component';\nimport { TdMarkdownNavigatorWindowComponent } from './markdown-navigator-window/markdown-navigator-window.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatListModule } from '@angular/material/list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { CovalentFlavoredMarkdownModule } from '@covalent/flavored-markdown';\nimport { CovalentDialogsModule } from '@covalent/core/dialogs';\nimport { CovalentMessageModule } from '@covalent/core/message';\nimport { TdMarkdownNavigatorWindowDirective } from './markdown-navigator-window-directive/markdown-navigator-window.directive';\nimport { TdMarkdownNavigatorWindowService } from './markdown-navigator-window-service/markdown-navigator-window.service';\nimport { CovalentBreadcrumbsModule } from '@covalent/core/breadcrumbs';\n\n@NgModule({\n imports: [\n CommonModule,\n\n // material\n MatButtonModule,\n MatTooltipModule,\n MatListModule,\n MatIconModule,\n MatProgressBarModule,\n CovalentBreadcrumbsModule,\n CovalentDialogsModule,\n CovalentFlavoredMarkdownModule,\n CovalentMessageModule,\n ],\n declarations: [\n TdMarkdownNavigatorComponent,\n TdMarkdownNavigatorWindowComponent,\n TdMarkdownNavigatorWindowDirective,\n ],\n exports: [\n TdMarkdownNavigatorComponent,\n TdMarkdownNavigatorWindowComponent,\n TdMarkdownNavigatorWindowDirective,\n ],\n providers: [TdMarkdownNavigatorWindowService],\n})\nexport class CovalentMarkdownNavigatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2.TdMarkdownNavigatorComponent","i1.TdMarkdownNavigatorWindowService"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@covalent/markdown-navigator",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "9.0.0-beta.2",
|
|
4
4
|
"description": "Teradata UI Platform Markdown Navigator Module",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"author": "Teradata UX",
|
|
26
26
|
"peerDependencies": {
|
|
27
|
-
"@angular/common": "
|
|
28
|
-
"@angular/core": "
|
|
29
|
-
"@angular/material": "
|
|
30
|
-
"@angular/cdk": "
|
|
31
|
-
"@covalent/core": "
|
|
32
|
-
"@covalent/flavored-markdown": "
|
|
33
|
-
"@covalent/highlight": "
|
|
27
|
+
"@angular/common": "18.x.x",
|
|
28
|
+
"@angular/core": "18.x.x",
|
|
29
|
+
"@angular/material": "18.x.x",
|
|
30
|
+
"@angular/cdk": "18.x.x",
|
|
31
|
+
"@covalent/core": "9.0.0-beta.2",
|
|
32
|
+
"@covalent/flavored-markdown": "9.0.0-beta.2",
|
|
33
|
+
"@covalent/highlight": "9.0.0-beta.2"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"tslib": "^2.0.0"
|